#! /bin/sh #interface name IFNAME="hg0" # ko file path FMAC_KO_PATH="/lib/modules/3.10.14/kernel/drivers/net/wireless/hugeic/hgic_fmac/hgicf.ko" USB_KO_PATH="/lib/modules/3.10.14/kernel/drivers/net/wireless/hugeic/utils/hgic_usb.ko" SDIO_KO_PATH="/lib/modules/3.10.14/kernel/drivers/net/wireless/hugeic/utils/hgic_sdio.ko" #read paramters from system. AH_MODE=ap AH_SSID=ah_test_ssid AH_PSK=00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff AH_KEY_MGMT=NONE AH_FREQ_START=7600 AH_FREQ_END=7680 AH_BSS_BW=8 AH_TX_MCS=255 AH_CHAN_LIST= #set default values [ -z "$AH_MODE" ] && AH_MODE="ap" [ -z "$AH_FREQ_START" ] && AH_FREQ_START="7800" [ -z "$AH_FREQ_END" ] && AH_FREQ_END="8000" [ -z "$AH_BSS_BW" ] && AH_BSS_BW="8" [ -z "$AH_TX_MCS" ] && AH_TX_MCS="7" [ -z "$AH_CHANNEL" ] && AH_CHANNEL="1" [ -z "$AH_ACS" ] && AH_ACS="0" [ -z "$AH_ACS_TM" ] && AH_ACS_TM="10" [ -z "$AH_TX_POWER" ] && AH_TX_POWER="1" [ "$AH_MODE" == "sta" ] && AH_ACS="0" [ "$AH_ACS" == "1" ] && AH_CHANNEL="1" #insmod driver ko_exist=$(lsmod|grep hgicf) if [ -z "$ko_exist" ]; then [ -n "$FMAC_KO_PATH" ] && insmod $FMAC_KO_PATH $ARG_IF_TEST [ -n "$SDIO_KO_PATH" ] && insmod $SDIO_KO_PATH [ -n "$USB_KO_PATH" ] && insmod $USB_KO_PATH sleep 1 fi #set param CONN_STATE=$(cat /proc/hgic/conn_state|grep CONNECTED) if [ -z "$CONN_STATE" ]; then ifconfig $IFNAME down iwpriv $IFNAME set freq_range=$AH_FREQ_START,$AH_FREQ_END,$AH_BSS_BW iwpriv $IFNAME set mode=$AH_MODE iwpriv $IFNAME set bss_bw=$AH_BSS_BW iwpriv $IFNAME set tx_mcs=$AH_TX_MCS iwpriv $IFNAME set tx_power=$AH_TX_POWER iwpriv $IFNAME set channel=$AH_CHANNEL iwpriv $IFNAME set acs="$AH_ACS,$AH_ACS_TM" if [ x"$AH_KEY_MGMT" == "xWPA-PSK" ]; then iwpriv $IFNAME set key_mgmt=WPA-PSK iwpriv $IFNAME set wpa_psk=$AH_PSK else iwpriv $IFNAME set key_mgmt=NONE fi iwpriv $IFNAME set ssid=$AH_SSID #save config iwpriv $IFNAME save [ "$AH_BSS_BW" == "1" ] && ifconfig $IFNAME mtu 380 fi #up interface ifconfig $IFNAME up ############################################################ # 可以设置驱动参数文件,由驱动自动加载参数,需要如下3个步骤: # 1. 生成参数文件:/etc/hgicf.conf,内容如下: # freq_range=9000,9240,8 # mode=ap # ssid=ah_test_ssid # key_mgmt=WPA-PSK # wpa_psk=00112233445566778899aabbccddeeff00112233445566778899aabbccddeeff # [以上参数是最基本的参数设置,其他参数设置请参考 Linux开发指南] # # 2. insmod 驱动 # 3. ifconfig up 接口 ###########################################################