sdk-hwV1.3/external/eyesee-mpp/system/public/wifi/firmware/ap_ctrl.sh

187 lines
3.8 KiB
Bash
Executable File

#!/bin/sh
###############################################################################
DEVICE_NAME=""
DRIVER_PATH=
DRIVER_PATH1=
DRIVER_PATH2=
CONFIG_PATH=
WORK_MODE=
OPERATE=
###############################################################################
ini_check_param ()
{
case ${DEVICE_NAME} in
ap6335)
DRIVER_PATH=/lib/modules/$(uname -r)/bcmdhd.ko
CONFIG_PATH="etc/firmware/ap6335/"
;;
ap6255)
DRIVER_PATH=/lib/modules/$(uname -r)/bcmdhd.ko
CONFIG_PATH="etc/firmware/ap6255/"
;;
ap6181)
DRIVER_PATH=/lib/modules/$(uname -r)/bcmdhd.ko
CONFIG_PATH="etc/firmware/ap6181/"
;;
8189ftv)
DRIVER_PATH=/lib/modules/$(uname -r)/8189fs.ko
CONFIG_PATH="etc/firmware/8189ftv/"
;;
xr819)
DRIVER_PATH=/lib/modules/$(uname -r)/xradio_mac.ko
DRIVER_PATH1=/lib/modules/$(uname -r)/xradio_core.ko
DRIVER_PATH2=/lib/modules/$(uname -r)/xradio_wlan.ko
CONFIG_PATH="etc/firmware/xr819/"
;;
*)
echo "Device:${DEVICE_NAME} is not supported!"
exit -1;
;;
esac
case ${OPERATE} in
load)
;;
unload)
;;
*)
echo "Don't support this:${OPERATE} operate!"
exit -1;
;;
esac
}
ap_load ()
{
# insmod /lib/modules/$(uname -r)/sunxi-wlan.ko
case ${DEVICE_NAME} in
ap6335)
insmod ${DRIVER_PATH}
usleep 2000
echo "/etc/firmware/ap6335/fw_bcm4339a0_ag_apsta.bin " > /sys/module/bcmdhd/parameters/firmware_path
echo "/etc/firmware/ap6335/nvram_ap6335.txt" > /sys/module/bcmdhd/parameters/nvram_path
mkdir -p /var/run/hostapd/
touch /var/run/udhcpd.leases
usleep 2000
ifconfig wlan0 up
usleep 2000
;;
ap6255)
insmod ${DRIVER_PATH}
usleep 2000
echo "/etc/firmware/ap6255/fw_bcm43455c0_ag_apsta.bin " > /sys/module/bcmdhd/parameters/firmware_path
echo "/etc/firmware/ap6255/nvram_ap6255.txt" > /sys/module/bcmdhd/parameters/nvram_path
mkdir -p /var/run/hostapd/
touch /var/run/udhcpd.leases
usleep 2000
ifconfig wlan0 up
usleep 2000
;;
ap6181)
insmod ${DRIVER_PATH}
usleep 2000
echo "/etc/firmware/ap6181/fw_bcm40181a2_apsta.bin " > /sys/module/bcmdhd/parameters/firmware_path
echo "/etc/firmware/ap6181/nvram_ap6210.txt" > /sys/module/bcmdhd/parameters/nvram_path
mkdir -p /var/run/hostapd/
touch /var/run/udhcpd.leases
usleep 2000
ifconfig wlan0 up
usleep 2000
;;
8189ftv)
insmod ${DRIVER_PATH}
# usleep 2000
mkdir -p /var/run/hostapd/
touch /var/run/udhcpd.leases
# usleep 2000
# ifconfig wlan0 up
usleep 2000
;;
xr819)
insmod ${DRIVER_PATH}
usleep 2000
insmod ${DRIVER_PATH1}
usleep 2000
insmod ${DRIVER_PATH2}
usleep 2000
mkdir -p /var/run/hostapd/
touch /var/run/udhcpd.leases
usleep 2000
;;
*)
echo "Device:${DEVICE_NAME} is not supported!"
exit -1;
;;
esac
}
ap_unload ()
{
case ${DEVICE_NAME} in
ap6255 | ap6335 | ap6181 | 8189ftv)
# ifconfig wlan0 down
# usleep 6000
rmmod ${DRIVER_PATH}
usleep 2000
;;
xr819)
rmmod ${DRIVER_PATH2}
usleep 2000
rmmod ${DRIVER_PATH1}
usleep 2000
rmmod ${DRIVER_PATH}
usleep 2000
;;
*)
echo "Device:${DEVICE_NAME} is not supported!"
exit -1;
;;
esac
}
ap_operate ()
{
ini_check_param;
case ${OPERATE} in
load)
ap_load
;;
unload)
ap_unload
;;
*)
echo "Don't support this:${OPERATE} operate!"
exit -1;
;;
esac
}
do_help ()
{
self=`basename $0`
echo "Usage:"
echo " ./$self device operate"
echo " device - wifi device name. .e.g ap6335, rt3070, rtl8188"
echo " operate - such as load, unload"
echo "Example:"
echo " ./$self ap6335 load"
echo " ./$self ap6335 unload"
exit 0
}
###############################################################################
if [ $# = 2 ]; then
DEVICE_NAME="$1"
OPERATE="$2"
ap_operate
else
do_help
fi