找回密码
 立即注册
收起左侧

TQ2440上移植RT3070AP过程

8
回复
6500
查看
[复制链接]
累计签到:82 天
连续签到:1 天
来源: Qt文章 2016-3-21 11:13:18 显示全部楼层 |阅读模式

马上注册,查看详细内容!注册请先查看:注册须知

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
 TQ2440是由广州天嵌计算机科技有限公司精心打造的一款开发板。以稳定的性能,过硬的质量,丰富的扩展接口,优质的售后服务和技术支持,赢得众多企业的青睐和支持。

  硬件:TQ2440,USB RT3070

  编译环境:ubuntu、TQ提供的EABI-4.3.3、网上下载的2010_0203_RT3070_SoftAP_v2.4.0.1_DPA包
  配置好编译环境,解压2010_0203_RT3070_SoftAP_v2.4.0.1_DPA

  移植过程:

  1、修改配置相关文件

  进入2010_0203_RT3070_SoftAP_v2.4.0.1_DPA
  下面有3个文件夹MODULE、NETIF、UTIL
  分别修改3个Makefile文件
  将PLATFORM = SMDK打开,其他注释掉
  然后配置平台,LINUX_SRC是内核的绝对路径
  ifeq ($(PLATFORM),SMDK)
  LINUX_SRC = /opt/EmbedSky/linux-2.6.30.4
  CROSS_COMPILE = arm-linux-
  endif
  另外需要修改的地方
  NETIF/os/linux/usb_main_dev.c中添加MODULE_LICENSE("GPL");
  MODULE/common/rtmp_init.c中的MODULE_LICENSE("RALINK");改为MODULE_LICENSE("GPL");

  2、编译

  用make或者make ARCH=arm KBUILD_NOPEDANTIC=1编译都行
  但是make编译时没有生成rtnet3070ap.ko
  进入NETIF文件夹直接make也可以生成ko文件

  3、拷到开发板上的文件

  上述三个文件夹的os/linux下的ko文件rtutil3070ap.ko、rt3070ap.ko、rtnet3070ap.ko
  再加一个MODULE下的RT2870AP.dat文件
  四个文件copy到u盘,插到开发板上

  4、开发板配置

  在开发板的/etc/Wireless下创建一个文件夹RT2870AP,将RT2870AP.dat放到此文件夹下
  将另外三个ko文件放到/usr下,这个可以自己定义

  5、加载

  按顺序加载
  #insmod rtutil3070ap.ko
  #insmod rt3070ap.ko
  #insmod rtnet3070ap.ko
  如果不允许加载
  用lsmod查看目前存在的模块
  如果有rt5370就卸载再上述顺序加载,TQ开发板默认安装了这个ko文件,卸载命令rmmod rt5370sta.ko

  6、可能遇到问题

  如果上述一切正常
  下面继续

  问题一:

  [root@embedsky /usr]# ifconfig ra0 up
  <-- ERROR in Alloc TX TxContext[3] HTTX_BUFFER !!
  <-- RTMPAllocTxRxRingMemory, Status=3
  ERROR!!! RTMPAllocDMAMemory failed, Status[=0x00000003]
  !!! rt28xx Initialized fail !!!
  ifconfig: SIOCSIFFLAGS: Operation not permitted

  解决:
  修改MODULE NETIF UTIL三个目录下的include/os/rt_linux.h中BULKAGGRE_SIZE参数,将100改为60

  问题二:

  [root@EmbedSky /usr]# ifconfig ra0 up
  <-- RTMPAllocTxRxRingMemory, Status=0
  -->RTUSBVenderReset
  <--RTUSBVenderReset
  RtmpOSFileOpen(): Error 2 opening /etc/Wireless/RT2870AP/RT2870AP.dat
  Open file "/etc/Wireless/RT2870AP/RT2870AP.dat" failed!
  1. Phy Mode = 0
  ERROR!!! RTMPReadParametersHook failed, Status[=0x00000001]
  ---> RTMPFreeTxRxRingMemory
  <--- RTMPFreeTxRxRingMemory
  !!! rt28xx Initialized fail !!!
  ifconfig: SIOCSIFFLAGS: Operation not permitted

  解决:
  应该是没有创建RT2870AP文件夹,创建好再把RT2870AP.dat烤过去,因为我先移植过RT3070STA,所以以为这个RT2870××.dat是通用的

  7、正常工作

  下面是正常打印
  [root@EmbedSky /]# ifconfig ra0 up
  <-- RTMPAllocTxRxRingMemory, Status=0
  -->RTUSBVenderReset
  <--RTUSBVenderReset
  Key1Str is Invalid key length(0) or Type(0)
  Key2Str is Invalid key length(0) or Type(0)
  Key3Str is Invalid key length(0) or Type(0)
  Key4Str is Invalid key length(0) or Type(0)
  1. Phy Mode = 9
  2. Phy Mode = 9
  NVM is Efuse and its size =2d[2d0-2fc]
  3. Phy Mode = 9
  MCS Set = ff 00 00 00 01
  SYNC - BBP R4 to 20MHz.l
  SYNC - BBP R4 to 20MHz.l
  SYNC - BBP R4 to 20MHz.l
  SYNC - BBP R4 to 20MHz.l
  SYNC - BBP R4 to 20MHz.l
  SYNC - BBP R4 to 20MHz.l
  SYNC - BBP R4 to 20MHz.l
  SYNC - BBP R4 to 20MHz.l
  Main bssid = 7c:dd:90:56:6d:84
  <==== rt28xx_init, Status=0
  0x1300 = 00064320
  配置IP命令:
  ifconfig ra0 192.168.8.25
  #iwconfig ra0
  ra0 RTWIFI SoftAP ESSID:"RT2860AP" Nickname:""
  Mode:Managed Channel=11 Access Point: 7C:DD:90:56:6D:84
  Bit Rate=150 Mb/s
  用android手里可以查到RT2870AP的wifi信号

  8、关闭模块

  结束后,可以通过以下命令卸载模块:
  #ifconfig ra0 down
  #rmmod rtnet3070ap.ko
  #rmmod rt3070ap.ko
  #rmmod rtutil3070ap.ko
  修改后的源码包可以到下面地址下载,注意内核路径的设置
  http://download.csdn.net/detail/stephen_yu/7179827

  感谢stephen_kl的分享!

  供货情况:
  天嵌科技提供专业嵌入式板卡和行业解决方案。如有需要,可以联系天嵌科技的销售人员。
  销售电话:020-38219416 38373101
  技术支持:020-38219416转807 820
  网址:http://www.embedsky.com

回复

使用道具 举报

累计签到:1568 天
连续签到:1 天
2016-3-21 11:20:12 显示全部楼层
写的挺详细的,建议以后多转载相关的教程。支持下!
回复 支持 反对

使用道具 举报

累计签到:1 天
连续签到:1 天
2016-3-23 16:51:43 显示全部楼层
认真看完此贴内容,学习了一些东西,不顶就是不道德。
回复 支持 反对

使用道具 举报

累计签到:2 天
连续签到:1 天
2016-3-23 17:29:25 显示全部楼层
收藏,支持,顶起来,噢耶!
回复 支持 反对

使用道具 举报

累计签到:6 天
连续签到:1 天
2016-3-24 13:36:55 显示全部楼层
谢谢分享,楼主努力,你离网红只差一步!
回复 支持 反对

使用道具 举报

尚未签到

2016-3-24 14:33:02 显示全部楼层
网红~网红~网红~
楼楼太美丽了~越分享,越美丽!!
回复 支持 反对

使用道具 举报

累计签到:1 天
连续签到:1 天
2016-3-24 15:53:54 显示全部楼层
2440学习的经典,楼主给力
回复 支持 反对

使用道具 举报

累计签到:82 天
连续签到:1 天
2016-3-24 16:12:15 显示全部楼层
yafeilinux 发表于 2016-3-21 11:20
写的挺详细的,建议以后多转载相关的教程。支持下!

谢谢支持
回复 支持 反对

使用道具 举报

累计签到:82 天
连续签到:1 天
2016-3-24 16:12:51 显示全部楼层
lzh 发表于 2016-3-24 13:36
谢谢分享,楼主努力,你离网红只差一步!

我会在网上带亲们一起红起来
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了