在海思3511上面实现wifi模块变成ap站点功能+wifi rt3070驱动的移植
来源:互联网 发布:sql 数据库置疑 编辑:程序博客网 时间:2024/05/22 05:12
参照了网上的无数博客,结合自己的开发板,终于在海思3511开发板上面实现wifi模块变ap站的功能。首先开发板里面没有支持ap功能的驱动,这个就需要手工移植。整体的步骤都大同小异,主要是平台的差异,导致移植时候出现的微小差异。
下载源码:2010_0203_RT3070_SoftAP_v2.4.0.1_DPA.bz2
放到虚拟机里面,解压缩之后进入目录:发现有三个文件夹 MOUDLENETIFUTIL这三个文件夹里面都有makefile文件,在三个文件的对应的os/linux目录下有config.mk文件,驱动移植做主要的工作是修改这6个文件
下面是Makefile的修改的地方 +代表增添行 #代表删除行
#PLATFORM = PC(注释掉)
PLATFORM =IXP(平台选择,网上说可以随便选,关键是和改动对应源码和交叉编译器相一致,我选的是IXP)
找到
ifeq($(PLATFORM),IXP)
LINUX_SRC =/home/cys/haisi_soft/Hi3511_VSSDK_V1.1.2.3/pub/kbuild-FULL_REL
CROSS_COMPILE =/opt/hisi-linux/x86-arm/gcc-3.4.3-uClibc-0.9.28/usr/bin/arm-hismall-linux-
endif
这里的linux_src与自己的开发板源码对应 一致
cross_compile即为对应的交叉编译器
修改config.mk配置文件-这个修改步骤很简单,但是要很小心,这里体现出平台的差异
改动1.
ifeq ($(PLATFORM),IXP)
#WFLAGS += -DRT_BIG_ENDIAN
endif
我做的改动是注释掉WFLAGS arm不支持大端模式
改动2.
原来的样子
ifeq ($(PLATFORM),IXP)
CFLAGS := -v -D__KERNEL__ -DMODULE-I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include-mbig-endian -Wall -Wstrict-prototypes-Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -Uarm-fno-common -pipe -mapcs-32 -D__LINUX_ARM_ARCH__=5 -mcpu=xscale-mtune=xscale-malignment-traps-msoft-float $(WFLAGS)
EXTRA_CFLAGS := -v $(WFLAGS) -I$(RT28xx_DIR)/include-mbig-endian
exportCFLAGS
endif
改为:
ifeq ($(PLATFORM),IXP)
EXTRA_CFLAGS := -v -D__KERNEL__ -DMODULE-I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -Wall-Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing-fno-common -Uarm -fno-common -pipe -mapcs-32-D__LINUX_ARM_ARCH__=5 -mcpu=xscale -mtune=xscale -msoft-float $(WFLAGS)
EXTRA_CFLAGS := -v $(WFLAGS) -I$(RT28xx_DIR)/include
exportCFLAGS
endif
蓝色标记的地方为修改的, CFLAGS 部分的修改据说是makefile版本的不兼容,在有点平台上不要修改,这个在海思平台需要改,修改成 EXTRA_CFLAGS。
-mbig-endian这边的修改还是大小端的问题
-malignment-traps这个比较特殊一点,网上有多种修改方法,会去掉不同的选项,但是到底兼容哪些不兼容哪些,依据平台,我个人的经验是在编译的时候会出错,根据错误可以判断出应该把哪个选项去掉,我这个平台是去掉这一项。
其他文件夹里面的两个文件的修改方法一样。最后运行make,也可以到三个目录里面单独make
,当然make往往都会有错,依据错误修改就会解决。
最后编译出来在三个文件夹的os/linux目录下生成对应的.ko文件--rt3070ap.ko,rtutil3070ap.ko,rtnet3070ap.ko在MOUDLE文件夹下还会有RT2870AP.dat文件
把三个驱动拷贝到开发板某个目录,把.dat文件拷贝到/etc/Wireless/ RT2870AP文件夹下面,如果没有就新建一个。
驱动加载的顺序按照:rtutil3070ap.ko rt3070ap.ko rtnet3070ap.ko
加载成功之后,
然后可以通过ifconfig-a查看是否含有ra0网卡,如果有,代表已经加载成功了
下载源码:2010_0203_RT3070_SoftAP_v2.4.0.1_DPA.bz2
放到虚拟机里面,解压缩之后进入目录:发现有三个文件夹 MOUDLE
下面是Makefile的修改的地方
#PLATFORM = PC(注释掉)
PLATFORM =IXP(平台选择,网上说可以随便选,关键是和改动对应源码和交叉编译器相一致,我选的是IXP)
找到
ifeq($(PLATFORM),IXP)
LINUX_SRC =/home/cys/haisi_soft/Hi3511_VSSDK_V1.1.2.3/pub/kbuild-FULL_REL
CROSS_COMPILE =/opt/hisi-linux/x86-arm/gcc-3.4.3-uClibc-0.9.28/usr/bin/arm-hismall-linux-
endif
改动1.
ifeq ($(PLATFORM),IXP)
#WFLAGS += -DRT_BIG_ENDIAN
endif
我做的改动是注释掉WFLAGS
改动2.
原来的样子
ifeq ($(PLATFORM),IXP)
endif
改为:
ifeq ($(PLATFORM),IXP)
endif
蓝色标记的地方为修改的,
-mbig-endian这边的修改还是大小端的问题
-malignment-traps这个比较特殊一点,网上有多种修改方法,会去掉不同的选项,但是到底兼容哪些不兼容哪些,依据平台,我个人的经验是在编译的时候会出错,根据错误可以判断出应该把哪个选项去掉,我这个平台是去掉这一项。
其他文件夹里面的两个文件的修改方法一样。最后运行make,也可以到三个目录里面单独make
,当然make往往都会有错,依据错误修改就会解决。
最后编译出来在三个文件夹的os/linux目录下生成对应的.ko文件--rt3070ap.ko,rtutil3070ap.ko,rtnet3070ap.ko
把三个驱动拷贝到开发板某个目录,把.dat文件拷贝到/etc/Wireless/
驱动加载的顺序按照:rtutil3070ap.ko
加载成功之后,
然后可以通过ifconfig-a查看是否含有ra0网卡,如果有,代表已经加载成功了
可以给开发板赋ip地址
#ifconfig ra0 192.168.1.1 up
执行iwconfig 查看网络 (如果没有可以经过源码包编译移植)
这个默认的名为:RT2860AP的网络就建立起来了。名字等许多参数都是可以修改。
最后结束后 卸载模块先关闭ra0 网卡。
上面已经把默认网关设置为192.168.1.1所以当电脑设备连接这个ap点的时候,要先把wifi的默认网关修改为这个网关才能连接上。
#ifconfig ra0 192.168.1.1 up
执行iwconfig 查看网络
这个默认的名为:RT2860AP的网络就建立起来了。名字等许多参数都是可以修改。
最后结束后 卸载模块先关闭ra0 网卡。
上面已经把默认网关设置为192.168.1.1所以当电脑设备连接这个ap点的时候,要先把wifi的默认网关修改为这个网关才能连接上。
0 0
- 在海思3511上面实现wifi模块变成ap站点功能+wifi rt3070驱动的移植
- rt3070 wifi驱动移植
- WIFI 驱动 RT3070移植
- WIFI模块RT3070的ARM Linux移植
- WIFI模块RT3070的ARM Linux移植
- usb wifi模块 RT3070移植
- 天嵌E9平台下进行USB Wifi模块RT3070驱动的移植
- 基于IMX6 RT3070的USB接口wifi模块移植
- 在这里,TQ2416系列----wifi模块rt3070的arm+linux移植
- hi3518e移植USB-WiFi RT3070 STA驱动
- wifi RT3070驱动移植 网络转载
- rt3070 AP驱动移植
- wifi模块rtl8723b的驱动移植
- wifi AP驱动移植与使用
- 如何在pcduino上实现WiFi AP功能
- 雷凌wifi(RT3070)移植记录
- rt3070 wifi arm+linux移植
- rt3070 wifi arm+linux移植
- poj 2663 压缩DP
- 伸展树
- FPGA机器学习之stanford机器学习第十六堂
- boa服务器及cgic库的安装及使用
- hdu 1394 暴力
- 在海思3511上面实现wifi模块变成ap站点功能+wifi rt3070驱动的移植
- (未完成)matlab--矩阵运算技巧
- 需要手工register logfile的情况
- TQ210_裸机编程(三)——串口通信
- 第三章 数据预处理
- 黑马程序员之java多线程2
- ACM1、百度语言翻译机
- Android开发中尽量避免使用jpg图片
- 1019. 数字黑洞 (20)