原创 TQ2440上移植RT3070AP过程

2016-3-21 11:18 963 16 22 分类: MCU/ 嵌入式

  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

PARTNER CONTENT

文章评论6条评论)

登录后参与讨论

用户1476573 2016-3-24 16:27

谢谢亲,为了你们的支持,我要发力才行了

用户1871543 2016-3-24 15:32

2440的资料就是给力,哈哈~~

用户1871598 2016-3-24 15:28

完美!谢谢楼主分享,已学习哦

用户164119 2016-3-24 14:30

谢谢楼主分享,谢谢,一直在用你们的板子!

用户1871561 2016-3-24 14:11

好帖,支持楼主,继续支持我们小白,我们也继续支持天嵌

用户1871547 2016-3-23 16:56

看完已学习,想帮楼主顶下贴还真是不容易。
相关推荐阅读
用户1476573 2016-06-27 15:48
TQ210 WINCE 大分辨率不启动的问题
   有客户在TQ210  WINCE系统下遇到大分辨率无法启动的问题,现解决方法如下:   修改了WINCE600\PLATFORM\COMMON\SRC\SOC\S5PV210_SEC_V...
用户1476573 2016-06-12 11:56
天嵌年中狂欢,只打折不打烊
    天嵌年中狂欢,一不做,二不休,终极抄底价,将打折进行到底,机会不是天天有,该出手时就出手!   活动时间     2016年6月13日至17日 ...
用户1476573 2016-05-27 11:02
Cortex-A9嵌入式开发板电池可充电解决方案
  有客户反应E9卡片电脑的rtc久了电池没电不能保存时间,咨询解决方案。E9卡片电脑在设计之初就考虑到客户产品化后可能遇到的这个问题,预留了可充电电池更换的硬件接口。   具体解决方法如下:...
用户1476573 2016-05-20 10:04
TQ210添加永不休眠选项
    很多朋友在使用TQ210做项目的时候都需要屏幕保持长亮,本文介绍如何修改TQ210 android源码,使系统可以永不休眠,代码如下:   1、添加英文选项   修改package...
用户1476573 2016-04-26 10:50
s5pv210中MFC的帧内存格式(转)
  最近调了一下TQ210的mfc硬件h264编码功能,编码是成功了,但出来的视频却是花的。这个问题困扰了我很久,网上关于这方面的资料也很少,没办法只能查看s5pv210的芯片手册,功夫不负有心人...
EE直播间
更多
我要评论
6
16
关闭 站长推荐上一条 /3 下一条