linuxOS_AP05/external/rkwifibt/S67wifi
2025-06-02 13:59:07 +08:00

52 lines
1.2 KiB
Bash
Executable File

#!/bin/sh
#
# Start/stop wifi
#
case "$1" in
start)
CONFIG=/userdata/cfg/wpa_supplicant.conf
echo "Starting wifi, checking driver status..."
[ -x /usr/bin/wifi_start.sh ] || exit 0
[ -f $CONFIG ] || exit 0
WIFI_READY=`cat /proc/net/dev | grep wlan0`
while [ -z "$WIFI_READY" ]
do
sleep 1
WIFI_READY=`cat /proc/net/dev | grep wlan0`
#echo "wifi ready: $WIFI_READY"
CNT=`expr $CNT + 1`
if [ $CNT -gt 100 ];then
echo "wifi driver is not ready. please check if /etc/init.d/S36load_wifi_modules run correctly. then run /etc/init.d/S67wifi start"
exit 0
fi
done
echo "wifi driver is ready"
SSID=`grep ssid /userdata/cfg/wpa_supplicant.conf | cut -d '"' -f 2`
PWD=`grep psk /userdata/cfg/wpa_supplicant.conf | cut -d '"' -f 2`
if [ x$SSID = xSSID ];then
echo "ssid in /userdata/cfg/wpa_supplicant.conf not valid"
exit 0
fi
if [ x$PWD = xPWD ];then
echo "passwd in /userdata/cfg/wpa_supplicant.conf not valid"
exit 0
fi
wifi_start.sh $SSID $PWD
;;
stop)
echo "Stopping wifi..."
;;
reload|force-reload)
echo "Reloading reload wifi..."
;;
restart)
"$0" stop
sleep 1 # Prevent race condition: ensure dhcpcd stops before start.
"$0" start
;;
*)
echo "Usage: $0 {start|stop|restart|reload|force-reload}"
exit 1
esac