天嵌E9平台下进行USB Wifi模块RT3070驱动的移植

由于项目工作需要,要在天嵌E9平台下实现wifi的点对点,点对多点的传输。

Wifi 模块芯片:雷凌3070芯片

嵌入式平台:E9(ARM)

交叉编译环境:arm-none-linux-gnueabi



1 首先下载了wifi模块的驱动 2011_0719_RT3070_RT3370_RT5370_RT5372_RT2070_Linux_STA_V2.5.0.3_DPO


2 对驱动进行交叉编译

a 打开驱动文件解压后的文件,如果需要WPA等功能,可打开./os/linux/config.mk进行编,如果不需要直接进入b步

b 打开驱动文件根目录下的Makefile进行修改,首先CHIPSET 改为3070

   然后对交叉编译环境进行配置,默认的PLATFORM = PC,我们对PC那块代码进行改动,改动后如下

ifeq ($(PLATFORM),PC)
# Linux 2.6
LINUX_SRC = /opt/E9_CD/Linux/linux_E9_3.0.35_for_Linux
# Linux 2.4 Change to your local setting
#LINUX_SRC = /usr/src/linux-2.4
LINUX_SRC_MODULE = /opt/E9_CD/Linux/linux_E9_3.0.35_for_Linux/drivers/net/wireless/
CROSS_COMPILE = /opt/Embedsky/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/tq-linaro-toolchain/bin/arm-none-linux-gnueabi-
endif
保存后进行sudo make
其中 linux_E9_3.0.35为linux内核的源码所在目录


3 编译成功后将根目录下的RT2870STA.dat和./os/linux/目录下的rt30870.sta.ko拷贝进板子中

mkdir –p /etc/Wireless/RT2870STA/

cp RT2870STA.dat / etc/Wireless/RT2870STA/

cp rt3070sta.ko /usr

4 加载驱动
insmod /usr/rt3070sta.ko 


5 然后可以通过ifconfig -a 可以看到系统已经正确识别网卡,名称为ra0


6 启动网卡 ifconfig ra0 up 看到有数据输出,成功移植


---------------------------------------------------------------------------------------------------------------------------------------------------

可能遇到的问题:

1 rtmp_chip.c:470:error: implicit declaration of function 'RT33xx_Init'

 解决:注释掉chips目录下rtmp_chip.c中第470行的RT33xx_Init(pAd)

2 insmod的时候出问题

解决:一般这里的问题都是板子内核版本与交叉编译时所用的内核版本不一致导致,可以uname -a查看板子内核版本,modinfo rt3070sta.ko查看生成的驱动版本号,看是否一致。我遇到这个问题解决了一上午,发现版本号一个armv5一个armv7,最后是先对linux源码进行了编译(设置交叉编译环境后,运行所带的build.sh),再编译wifi模块解决的。编译内核的时候,注意设置交叉编译环境。



相关博文推荐:

1 http://blog.chinaunix.net/uid-28599023-id-3483821.html

2 http://www.linuxidc.com/Linux/2011-03/33483.htm

3 http://blog.csdn.net/zhuqing_739/article/details/6259686#

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值