You could try this. Here is the script from the eee-config that enables the wifi control in eeeBuntu. I don't know if it will work or not, but it seems like it would be a good starting point.
Code:
#!/bin/sh
#
# Wifi toggle -- EeePC 900A/901/1000/1000H -- Intrepid
# v2.1
# by elmurato
# Based on the script from Merkmal (forum.eeeuser.com)
model=`dmidecode -s system-product-name`
wlan_control=/sys/class/rfkill/rfkill0/state
WLANSTATE=$(cat $wlan_control)
wlan_remember=/etc/acpi/eeepc/wlan
LAST_STATE=$(cat $wlan_remember)
wifi_on_rt2860()
{
echo 1 > $wlan_control
modprobe rt2860sta
echo 1 > $wlan_remember
}
wifi_off_rt2860()
{
ifconfig ra0 down
modprobe -r rt2860sta
sleep 1
echo 0 > $wlan_control
echo 0 > $wlan_remember
}
wifi_on_ath()
{
modprobe -r pciehp
sleep 1
modprobe pciehp pciehp_force=1 pciehp_poll_mode=1
sleep 1
echo 1 > $wlan_control
sleep 1
modprobe ath5k
echo 1 > $wlan_remember
}
wifi_off_ath()
{
ifconfig ath0 down
sleep 1
modprobe -r ath5k
sleep 1
echo 0 > $wlan_control
echo 0 > $wlan_remember
}
toggle(){
case $WLANSTATE in
1)
if [ $model = "900A" ]
then
wifi_off_ath
else
wifi_off_rt2860
fi
dbus-send --system --type=signal /org/eeepc/osd org.eeepc.osd.OSD string:"network-wireless" string:"WLAN <b><span color='red'>disabled</span></b>"
;;
0)
if [ $model = "900A" ]
then
wifi_on_ath
else
wifi_on_rt2860
fi
dbus-send --system --type=signal /org/eeepc/osd org.eeepc.osd.OSD string:"network-wireless" string:"WLAN <b><span color='SpringGreen4'>enabled</span></b>"
;;
esac
}
restore(){
if test $LAST_STATE -eq 0
then
if [ $model = "900A" ]
then
wifi_off_ath
else
wifi_off_rt2860
fi
fi
}
case $1 in
"toggle")
toggle
;;
"restore")
restore
;;
*)
echo "eeepc-wifi-toggle: Invalid option - $1"
;;
esac
*Disclaimer - Make sure you have a backup of anything important before trying this script.
HTH
Dave