海思Hi3518E移植WIFI驱动(AP模式)

1 修改USB WIFI驱动

mt7601u驱动源码下载:https://www.mediatek.com/products/broadbandWifi/mt7610u

1.1  include/rtmp_def.h中1627行左右,修改网络名始终为:wlan

1.2 修改Makefile

(1)原来默认的平台是PC,然后添加平台

PLATFORM =  HISI_3518E

(2)添加Linux内核树源码路径,交叉编译工具链,CPU架构

ifeq ($(PLATFORM),HISI_3518E)
LINUX_SRC = /home/aston/sambashare/Hi3518E_SDK_V1.0.3.0/osdrv/opensource/kernel/linux-3.4.y
CROSS_COMPILE = arm-hisiv300-linux-
export ARCH=arm
endif

(3)添加HI3518E的模块编译路径

 ifeq ($(PLATFORM),HISI_3518E)
         $(MAKE) ARCH=arm CROSS_COMPILE=$(CROSS_COMPILE) -C  $(LINUX_SRC) SUBDIRS=$(RT28xx_DIR)/os/linux modules
 else
        $(MAKE) -C $(LINUX_SRC) SUBDIRS=$(RT28xx_DIR)/os/linux modules

(4)执行make 出现错误,

  CC [M]  /home/aston/sambashare/5/ap/mt7601u/os/linux/../../os/linux/rt_profile.o
/home/aston/sambashare/5/ap/mt7601u/os/linux/../../os/linux/rt_profile.c:26:23: fatal 
error: rt_config.h: No such file or directory
 #include "rt_config.h"

错误:在编译  ./os/linux/rt_profile.c 的时候找不到文件  rt_config.h,

解决:使用find -name rt_config.h 查找文件,

找到该文件,但提示没有该文件,说明配置文件中没有包含这个

修改:在   ./os/linux/config.mk  中添加HISI_3518E配置项

继续make  ,最后编译成功:在 ./os/linux/  下会生成KO文件  mt7601Uap.ko  ,根据文件配置的是会将mt7601Uap.ko复制到  /tftp/  下,根据我们的环境,我们需要将mt7601Uap.ko复制到nfs目录下,因此修改Makefile,当然,也可以手动复制

最后编译成功:在 ./os/linux/  下会生成KO文件  mt7601Uap.ko  ,根据文件配置的是会将mt7601Uap.ko复制到  /tftp/  下,根据我们的环境,我们需要将mt7601Uap.ko复制到nfs目录下,因此修改Makefile

2 部署驱动并安装驱动

(1)先lsusb,然后插入USB WIFI模块,再lsusb,确认模块被识别了

(2)添加安装驱动时的配置文件,在安装的时候,驱动会加载一个配置文件,这个文件在是源码中的RT2870AP.dat文件,所以要将这个文件复制到开发板中的/etc/Wireless/RT2870AP/目录中,手动创建这个路径,并将文件复制到这个文件夹下,

mkdir /etc/Wireless/RT2870AP -p

源码中的配置文件默认的是open模式  没有密码,我们对该配置文件做一下修改,

    SSID=MT7601AP_WPA(这里的名字是在pc机上看到的连接ssid名)
    AuthMode=WPA2PSK(加密方式)
    EncrypType=TKIP;AES
    WPAPSK=1234567890(这个是密码)

(3)安装驱动模块

查看是否有wlan网卡,

ifconfig      只是显示已经打开的网卡

ifconfig -a    显示所有的网卡

(4)给无线网卡设置IP地址

ifconfig wlan0 up, ifconfig wlan0 192.168.0.100

注:先开启网卡,然后再设置IP地址,两个命令可以一起执行,也可以只执行设置IP地址的命令,因为设置了IP地址也会将网卡打开,执行完成打印了好多信息,这是正常的,

说明,到目前为止,主机windows中与3518E中均有一个有线网卡跟一个无线网卡,两个网卡互不影响工作,既可以通过有限进行通信,也可以通过无线进行通信,前提是无线要在同一个网段下,有线也在同一个网段下,并且有线与无线不能再同一个网段下,以免影响工作。

主机:   有线 192.168.1.20

              无线 192.168.0.30

3518E:有线 192.168.1.10

               无线 192.168.0.100

ifconfig 查看网卡设置情况

(5)主机连接无线

将主机IP设置成192.168.0.30

查找并连接我们配置的无线,密码是配置文件中设置的 “1234567890”

关闭windows中的防火墙,并将PC与3518E互ping  

3 实验测试

(1)ORTP版本的sample,common/sample_common_venc.c中,修改LOCAL_HOST_IP为192.168.0.30


(2) make clean,make

(3)为了区分,将测试文件名修改为sample_venc_mt7601,将得到的sample_venc_mt7601,以及无线驱动模块mt7601Uap.ko复制到开发板的/home目录下

(4)修改sdp文件,IP地址为 192.168.0.30

(5)拔掉网线,断开PC与3518E的有线连接,重启开发板,进入/home目录安装mt7601Uap.ko复制到开发板的/home目录下驱动,并且设置wlan0 IP地址,运行sample_venc_mt7601,实验现象如下:

mt7601Uap.ko复制到开发板的/home目录下

参考:https://blog.csdn.net/qq_40732350/article/details/88660401

 

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值