2.Hi3518E上USB Wifi模块移植记录

1.说明

Hi3518e+USB Wifi和PC作为station,路由器作为AP。
MT7601驱动可在此链接下载(5mj9):MT7601_sta_driver
IP分配:

  • 路由器:192.168.0.1
  • 开发板:192.168.0.10
  • windows主机:192.168.0.20

2.编译驱动

2.1修改Makefile
cd /sambashare/MT7601_driver/sta/DPO_MT7601U_LinuxSTA_3.0.0.4_20130913
vim Makefile 

主要修改如下标记my add的三处:

 66 #PLATFORM = MSTARTV
 67 
 68 #my_add
 69 PLATFORM = HISI_3518E
 70 
 71 #APSOC
 72 ifeq ($(MODULE),3050)
 73 PLATFORM = RALINK_3050
 74 endif

101 ifeq ($(TARGET), ECOS)
102 MAKE = make
103 MODULE = $(shell pwd | sed "s/.*\///" ).o
104 export MODULE
105 endif
106 
107 #my_add
108 ifeq ($(PLATFORM),HISI_3518E)
109 LINUX_SRC = /home/peco/sambashare/Hi3518E_SDK_V1.0.3.0/osdrv/opensource/kern    el/linux-3.4.y
110 CROSS_COMPILE = arm-hisiv300-linux-
111 export ARCH=arm
112 endif


407 ifeq ($(PLATFORM),DM6446)
408     $(MAKE)  ARCH=arm CROSS_COMPILE=arm_v5t_le- -C  $(LINUX_SRC) SUBDIRS=$(R    T28xx_DIR)/os/linux modules
409 else
410 #my add
411 ifeq ($(PLATFORM),HISI_3518E)
412     $(MAKE) ARCH=arm CROSS_COMPILE=$(CROSS_COMPILE) -C  $(LINUX_SRC) SUBDIRS    =$(RT28xx_DIR)/os/linux modules
413 else
414     $(MAKE) -C $(LINUX_SRC) SUBDIRS=$(RT28xx_DIR)/os/linux modules
415 endif
416 endif

2.2修改config.mk
vim os/linux/config.mk

修改如下一处:

1089 ifeq ($(PLATFORM),SMDK)
1090         EXTRA_CFLAGS := $(WFLAGS)
1091 endif
1092 
1093 #my add
1094 ifeq ($(PLATFORM),HISI_3518E)
1095         EXTRA_CFLAGS := $(WFLAGS)
1096 endif
1097 
2.3修改rtmp_def.h

此处修改为了让生成的网卡名字为wlan,也可以不修改,不修改则为ra。

vim include/rtmp_def.h 

修改如下一处:

1599 
1600 //#ifdef ANDROID_SUPPORT
1601 #define INF_MAIN_DEV_NAME       "wlan"
1602 #define INF_MBSSID_DEV_NAME     "wlan"
1603 //#else
1604 //#define INF_MAIN_DEV_NAME     "ra"
1605 //#define INF_MBSSID_DEV_NAME       "ra"
1606 //#endif /* ANDROID_SUPPORT */
2.4编译驱动
make clean && make

编译生成的驱动在os/linux/目录下。

3.编译openSSL

3.1解压文件
tar -xvf wpa_supplicant-2.5.tar.gz 
tar -xvf openssl-0.9.8za.tar.gz 
3.2给openSSL打补丁
cp wpa_supplicant-2.5/patches/openssl-0.9.8za-tls-extensions.patch ./openssl-0.9.8za
cd openssl-0.9.8za/
patch -p1 < openssl-0.9.8za-tls-extensions.patch
3.3修改openSSL Makefile

修改如下几处:

CC=arm-hisiv300-linux-gcc
AR=arm-hisiv300-linux-ar $(ARFLAGS) r
ARD=arm-hisiv300-linux-ar $(ARFLAGS) d
RANLIB=arm-hisiv300-linux-ranlib

INSTALLTOP =/tmp/openssl
OPENSSLDIR =/tmp/openssl

若报错xpected text after =item, not a number,则执行:

sudo rm -f /usr/bin/pod2man 

最后执行make install安装openSSL。

4.编译wpa_supplicant

cd wpa_supplicant-2.5/wpa_supplicant
cp defconfig .config

修改.config,增加以下内容:

CC=arm-hisiv300-linux-gcc -L/tmp/openssl/lib
CFLAGS+=-I /tmp/openssl/include
LIBS+=-L/tmp/openssl/lib

执行make,若报错:fatal error: netlink/genl/genl.h,修改.config文件,将CONFIG_DRIVER_NL80211=y 注释掉即可。
继续make,生成wpa_supplicantwpa_cli

5.部署wpa_supplicant

将wpa_supplicant、wpa_cli复制到开发板/usr/local/bin目录下。
创建配置文件/etc/wap_supplicant.conf,输入如下内容:

ctrl_interface=/var/run/wpa_supplicant
network={
ssid="路由器Wifi名字"
scan_ssid=1
key_mgmt= WPA-EAP WPA-PSK IEEE8021X NONE
pairwise=TKIP CCMP
group=CCMP TKIP WEP104 WEP40
psk="路由器Wifi密码"
}

安装驱动

insmod mt7601Usta.ko

设置静态IP地址

 ifconfig wlan0 192.168.0.10

开发板sta连接AP

wpa_supplicant -Dwext -iwlan0 -c/etc/wpa_supplicant.conf -dd &

ping 192.168.0.1成功,至此USB Wifi移植完成。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值