#!/bin/sh
ENUM_RETRY_LIMIT=9

killall -9 zte_topsw_lan
killall wpa_supplicant
killall hostapd

detect_wifi()
{
	echo 0 > /sys/class/leds/led:net-green/regon
	echo msm_hsic_host > /sys/bus/platform/drivers/msm_hsic_host/unbind
	sleep 0.5
	echo $1 > /sys/class/leds/led:net-green/timerset
	echo msm_hsic_host > /sys/bus/platform/drivers/msm_hsic_host/bind &
	sleep 0.7
}

if [ "$1" = "start_ftm" ]; then
	rmmod dhd
	rmmod cfg80211
	delay_interval=100
	detect_wifi $delay_interval
	retry=0
	lsusb|grep "0a5c:bd1c"  > /dev/nul
	while [ $? -ne 0 -a $retry -le $ENUM_RETRY_LIMIT ]; do
		delay_interval=`expr $delay_interval - 10`
		retry=`expr $retry + 1`
		detect_wifi $delay_interval
		lsusb|grep "0a5c:bd1c" > /dev/nul
	done
	bcmdl -n /etc/bcm43241/nvram_hsic.txt /etc/bcm43241/rf_hsic_fw.bin.trx
	usleep 100000
	insmod /lib/modules/3.4.0+/kernel/net/wireless/cfg80211.ko
	usleep 100000
	insmod /etc/bcm43241/dhd.ko iface_name=eth0
elif [ "$1" = "stop" ]; then
	rmmod dhd
	rmmod cfg80211
	echo msm_hsic_host > /sys/bus/platform/drivers/msm_hsic_host/unbind
	exit 0
else
	echo "wrong parameter $1"
	exit 0
fi
ifconfig eth0 up