历史上的今天
返回首页

历史上的今天

今天是:2024年11月26日(星期二)

正在发生

2018年11月26日 | TQ2440上移植RT3070AP过程

2018-11-26 来源:eefocus

  硬件: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


推荐阅读

史海拾趣

Allied Controls Incorporated公司的发展小趣事

Allied Controls Incorporated(ACI)是一家专注于设计和制造温度传感器和控制器的公司,以下是其发展历程的五个相关故事:

  1. 创立和早期发展: Allied Controls Incorporated成立于1983年,总部位于美国新泽西州。公司的创始人是一群对温度控制技术充满热情的工程师和企业家。起初,ACI专注于为工业和商业应用提供高品质的温度传感器和控制器。通过不断提高产品质量和性能,公司逐渐赢得了客户的信任和好评,实现了良好的初期发展。

  2. 技术创新与产品优化: 随着市场需求的变化和技术的发展,ACI不断进行技术创新,并不断优化其产品线。公司投入大量资源用于研发新型温度传感器和控制器,以满足不同行业的需求。ACI的工程团队与客户紧密合作,根据客户的反馈和需求不断改进产品设计和性能,确保产品的质量和可靠性。

  3. 扩大市场份额: 随着业务的稳步增长,ACI逐渐扩大了其市场份额,涵盖了更多的行业和应用领域。除了工业和商业应用外,公司还开始进军医疗、航空航天、汽车和消费电子等领域。通过开发定制化解决方案和与行业领先企业合作,ACI成功地拓展了其市场份额,并在各个行业中树立了良好的声誉。

  4. 国际市场拓展: 除了在美国市场取得成功外,ACI还积极拓展国际市场。公司与全球各地的合作伙伴建立了稳固的合作关系,拓展了产品的销售网络。ACI的产品出口到欧洲、亚洲和其他地区,赢得了国际客户的青睐和认可。通过不断开拓国际市场,ACI进一步巩固了其在全球温度传感器和控制器领域的领先地位。

  5. 持续创新和发展: 作为一家技术驱动型公司,ACI致力于持续创新和发展。公司不断投入研发和技术改进,推出更加先进和高性能的产品。ACI的工程团队不断探索新的技术和解决方案,以满足客户日益增长的需求。通过不断创新和发展,ACI得以在电子行业中保持竞争优势,并为客户提供更加可靠和高效的温度控制解决方案。

Festo公司的发展小趣事

Festo公司成立于1925年,由Albert Fezer和Gottlieb Stoll两位创始人共同创立。最初,公司专注于木工机械和木工工具的生产,其品牌Festool在行业内享有盛誉。凭借对工艺的精湛掌握和对品质的严格把控,Festo迅速在木工机械领域崭露头角,为公司的后续发展奠定了坚实的基础。

BREL International Components公司的发展小趣事

面对日益激烈的国际竞争,BREL International Components公司开始实施全球化战略。公司首先在亚洲设立生产基地,利用当地的低成本优势提高生产效率。随后,BREL在欧洲和北美设立研发中心,吸纳全球顶尖的技术人才,推动技术创新和产品升级。通过全球化的战略布局,BREL不仅降低了生产成本,还拓宽了市场渠道,实现了业务的快速增长。

意普(ESPE)公司的发展小趣事

随着市场需求的不断增长,意普(ESPE)公司开始拓展产品线,推出了包括通用光栅、反射板等一系列光电保护产品。同时,公司注重产品创新,不断引进国外先进技术,并结合国内市场需求进行改进,成功推出了多款具有竞争力的新产品。这些产品广泛应用于机械加工、汽车制造等行业,有效提升了客户的安全生产水平。

Anderson Electronics Inc公司的发展小趣事

随着公司规模的扩大和产品线的丰富,Anderson Electronics Inc公司开始积极拓展市场。公司通过与各大电子产品零售商建立合作关系,将产品销往全国各地。同时,公司还加大了品牌宣传力度,通过广告、展会等多种渠道提升品牌知名度和影响力。在市场拓展的过程中,公司始终坚持质量第一的原则,以优质的产品和服务赢得了客户的信赖和支持。

EPT公司的发展小趣事

随着品牌影响力的不断提升,EPT开始积极拓展OEM/ODM业务。公司凭借先进的生产技术和严格的质量管理体系,成功与多家国内外知名企业建立了合作关系。通过为客户提供定制化的产品和服务,EPT不仅实现了业务的快速增长,还为其积累了丰富的行业经验。

问答坊 | AI 解惑

99SE 转Gerber视频教程

教程分三部分: 1 PADS 转文件文字教程 2 99SE 转文件文字教程 3 CAM350 导入文件…

查看全部问答>

lwip 的性能到底怎样?我需要它长期运行,但它出现“重传”现象,而且十几分钟后会出现被PC端“FIN”断开。

lwip 的性能到底怎样?我需要它长期运行,但它会出现“重传”现象,而且十几分钟后会出现被PC端“FIN”断开。 本人刚开户,没有那么什么积分可以悬赏。sorry。…

查看全部问答>

关于DeviceIoControl控制摄像头的操作码

2440的开发板,编过摄像头的应用程序,就用DeviceIoControl函数对摄像头进行操作。记得IOCTL_CAM_CONT这个操作码是使能并初始化摄像头,CAM_IOCTL_GET_LATEST_FRAME这个是拍照,现在想问一下对于视频摄像,应该用哪个操作码?(想到一个很笨的方法 ...…

查看全部问答>

几个驱动同时对注册表某项读写,如何保证数据的完整和正确?

驱动程序是自己写的. 还要加些什么代码. 怎样写? 谢谢. …

查看全部问答>

请问s3c2410中addr0,addr1,addr2,addr3,addr4等地址线怎么操作

在S3C2410.h中找不到对应的寄存器定义啊?请问怎么进行读写操作?谢谢!…

查看全部问答>

为何不接收浮点参数????以及在shell中不能对浮点型全局变量赋值呢???

代码如下: #include \"vxworks.h\" #include \"stdio.h\" void test(float a,int b) { printf(\"a=%f,b=%d\"); } 编译完了,运行,在windshell中 敲入test(2.2,3)命令运行结果整型b可以打印正确结果,浮点a打印N/A。不明白为什么会这样 ...…

查看全部问答>

如何查找无线AP的IP

无线AP我设过静态IP地址。现在无线我可以连接使用,但是我忘了当时的ip地址,无线AP无法配置。 请高手支招。 在下先谢谢了!!^_^…

查看全部问答>

EVC下的程序问题,请大家帮帮忙!

我在调别人写的程序,刚开始用EVC3.0,有许多错误调也调不出来,如果我想用他原程序中的一部分,哪些文件必须留下呢? 我留下了一些.cpp和.h文件,还有.vcw和.vcp文件,以及程序中用到的.ico文件,还有.rc文件,但是在编译时还是出了错误,告诉我 ...…

查看全部问答>

大侠,来看看我的软件串口啥问题

我的软件串口,错在那,请指教,谢谢 //ACLK = 32768,波特率为2400的软件串口// #define Bitime_5 0x06 // ~ 0.5 的长度添加一点修正 #define Bitime 0x0E // 427us 长度 ~ 2341波特根据实际需要修改 ...…

查看全部问答>

【为2011大赛准备】集成运算放大器分析与设计

本帖最后由 paulhyde 于 2014-9-15 03:52 编辑 第一次发帖,希望大家能喜欢~~~  …

查看全部问答>