1.附件中提供了RT3070驱动源码包DPO_RT5572_LinuxSTA_2.6.1.3_20121022.tar.gz和编译好的驱动,这里选择使用taget_file.tar.gz中已经编译好的文件,其中还包括了与驱动相匹配的linux-3.12.10内核镜像。

2.将target_file目录下的RT2870STA.dat和rt3070sta.ko拷贝进Rico Board板子中

1
2
3
4
5
mkdir

–p
/etc/Wireless/RT2870STA/ 
   
cp

RT2870STA.dat
/etc/Wireless/RT2870STA/ 
   
cp

rt3070sta.ko
/home

3.加载驱动

1
2
3
4
5
6
7
root@RicoBoard
home
#
insmod rt3070sta.ko
rtusb
init rt2870 --->
===
pAd = e0936000, size = 512288 ===
 
<--
RTMPAllocAdapterBlock, Status=0
NVM
is EFUSE
usbcore:
registered new interface driver rt2870

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

5 启动网卡ifconfig -a

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
root@RicoBoard
home
#
ifconfig ra0 up
NICLoadFirmware:
We need to load firmware
<--
RTMPAllocTxRxRingMemory, Status=0
RTMP_TimerListAdd:
add timer obj e097e0b8!
RTMP_TimerListAdd:
add timer obj e097e0e8!
RTMP_TimerListAdd:
add timer obj e097e118!
RTMP_TimerListAdd:
add timer obj e097e088!
RTMP_TimerListAdd:
add timer obj e097dff8!
RTMP_TimerListAdd:
add timer obj e097e028!
RTMP_TimerListAdd:
add timer obj e094882c!
RTMP_TimerListAdd:
add timer obj e0937d0c!
RTMP_TimerListAdd:
add timer obj e0937d40!
RTMP_TimerListAdd:
add timer obj e09488d0!
RTMP_TimerListAdd:
add timer obj e09487cc!
RTMP_TimerListAdd:
add timer obj e094889c!
-->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 = 5
2.
Phy Mode = 5
NVM
is Efuse and its size =2d[2d0-2fc]
phy
mode> Error! The chip does not support 5G band 5!
RTMPSetPhyMode:
channel is out of range, use first channel=1
3.
Phy Mode = 9
AntCfgInit:
primary
/secondary

ant 0
/1
MCS
Set = ff 00 00 00 01
<====
rt28xx_init, Status=0
0x1300
= 00064300

注:如果出现ERROR: 256 KiB atomic DMA coherent pool is too small!的错误,请将 coherent_pool=2M,添加在uboot的启动参数qspiargs后面。

6 .配置wpa_supplicant配置文件(wpa_supplicant相关工具已经移植好,包含在我们提供的文件系统中)

1
vi
/etc/wpa_supplicant.conf

编辑如下形式

1
2
3
4
5
6
7
8
9
ctrl_interface=/var/run/wpa_supplicant
network={
        ssid="XXXXXXXX"
        scan_ssid=1
        key_mgmt=WPA-EAP
WPA-PSK IEEE8021X NONE
        pairwise=TKIP
CCMP
        group=CCMP
TKIP WEP104 WEP40
        psk="XXXXXXXX"
}

注:ssid无线网名字,psk为无线网密码,请根据自己具体路由设置进行编辑配置文件

7.连接 wpa_supplicant -Dwext -ira0 -c/etc/wpa_supplicant.conf&

1
2
3
4
5
6
7
8
root@RicoBoard
home
#
wpa_supplicant -Dwext -ira0 -c/etc/wpa_supplicant.conf&
Successfully
initialized wpa_supplicant
===>rt_ioctl_giwscan.
7(7) BSS returned, data->length = 1509
ra0:
Trying to associate with 38:83:45:2c:c8:00 ==>rt_ioctl_siwfreq::SIOCSIWFREQ(Channel=1)
(SSID='TP-LINK-1201'

freq=2412 MHz)
ra0:
Associated with 38:83:45:2c:c8:00
ra0:
WPA: Key negotiation completed with 38:83:45:2c:c8:00 [PTK=CCMP GTK=CCMP]
ra0:
CTRL-EVENT-CONNECTED - Connection to 38:83:45:2c:c8:00 completed [
id=0
id_str=]

8.ping通外网

01
02
03
04
05
06
07
08
09
10
11
12
root@RicoBoard
home
#
ifconfig ra0 192.168.1.24 netmask 255.255.255.0
root@RicoBoard
home
#
route add default gw 192.168.1.1
root@RicoBoard
home
#
ping [url=http://www.baidu.com]www.baidu.com[/url]
PING
[url=http:
//www.baidu.com]www.baidu.com[/url]
(119.75.217.109): 56 data bytes
64
bytes from 119.75.217.109:
seq=0
ttl=53
time=72.089
ms
64
bytes from 119.75.217.109:
seq=1
ttl=53
time=73.024
ms
64
bytes from 119.75.217.109:
seq=2
ttl=53
time=72.862
ms
64
bytes from 119.75.217.109:
seq=3
ttl=53
time=73.278
ms
64
bytes from 119.75.217.109:
seq=4
ttl=53
time=73.044
ms
64
bytes from 119.75.217.109:
seq=5
ttl=53
time=72.439
ms
64
bytes from 119.75.217.109:
seq=6
ttl=53
time=72.777
ms
64
bytes from 119.75.217.109:
seq=7
ttl=53
time=73.292
ms

9.附件



 taget_file.rar (6.79
MB, 下载次数: 1160) 

 DPO_RT5572_LinuxSTA_2.6.1.3_20121022.rar (5.52
MB, 下载次数: 985) 

【ARM-Linux开发】Rico Board上编译USB WiFi RT3070驱动的更多相关文章

  1. 在Ubuntu上建立Arm Linux 开发环境

    我使用的是友善2410的板子,以前都是用Fedora,现在家里的电脑被我转为Linux专用的了,装的是Ubuntu.但是嵌入式还是要玩的,在装载过程中也遇到一些小麻烦.在此记录一下,一来自己比较健忘, ...

  2. minigui移植到arm linux开发板上无法执行

    要保证目录下有该文件 /etc/MiniGUI.cfg 复制过程使用cp –af 强制复制

  3. 成功移植SQLite3到ARM Linux开发板

    SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了 ...

  4. 【Linux开发】OpenCV在ARM-linux上的移植过程遇到的问题4---共享库中嵌套库带路径【已解决】

    [Linux开发]OpenCV在ARM-linux上的移植过程遇到的问题4-共享库中嵌套库带路径[已解决] 标签:[Linux开发] 紧接着上一篇,我居然又尝试了一下编译opencv,主要是因为由于交 ...

  5. 在Mac/Linux/Windows上编译corefx遇到的问题及解决方法

    这两天尝试在Mac/Linux/Windows三大平台上编译.NET跨平台三驾马车(coreclr/corefx/dnx)之一的corefx(.NET Core Framework),结果三个平台的编 ...

  6. 009-2010网络最热的 嵌入式学习|ARM|Linux|wince|ucos|经典资料与实例分析

    前段时间做了一个关于ARM9 2440资料的汇总帖,很高兴看到21ic和CSDN等论坛朋友们的支持和鼓励.当年学单片机的时候datasheet和学习资料基本都是在论坛上找到的,也遇到很多好心的高手朋友 ...

  7. Linux下通过源码编译安装程序(configure/make/make install的作用,然后在/etc/profile文件里修改PATH环境变量)

    一.程序的组成部分 Linux下程序大都是由以下几部分组成: 二进制文件:也就是可以运行的程序文件 库文件:就是通常我们见到的lib目录下的文件 配置文件:这个不必多说,都知道 帮助文档:通常是我们在 ...

  8. arm linux 移植 x265

    背景 本来想着把 x265编译到ffmpeg里面,搞定了x265的编译:但是一直报ERROR: x265 not found using pkg-config这个错误,我按照网上的资料,查看了ffbu ...

  9. 树莓派学习笔记——USB wifi配置指南

    0 前言     树莓派既能够使用有线网络又能够无线网络,假设使用有线网络不方便的话能够借助USB wifi无线网卡让树莓派也插上无线"翅膀". 可是和使用有线网络即插即用的方式不 ...

随机推荐

  1. linux mint 19.1安装搜狗输入法

    1.到搜狗拼音输入法官网下载Linux版. 2.使用dpkg命令安装deb软件包: $ sudo dpkg -i sogoupinyin_2.2.0.0108_amd64.deb 3.安装成功;也有可 ...

  2. Appium自动化测试教程-自学网-monkeyrunner简介

    monkeyrunner简介 MonkeyRunner工具是使用Jython(使用Java编程语言实现的Python)写出来的,它提供了多个API,通过monkeyrunner API 可以写一个Py ...

  3. php MySQL 数据类型

    MySQL 数据类型 MySQL中定义数据字段的类型对你数据库的优化是非常重要的. MySQL支持多种类型,大致可以分为三类:数值.日期/时间和字符串(字符)类型. 数值类型 MySQL支持所有标准S ...

  4. eclipse和scala整合,打包配置文件及打包步骤

    我写的是maven项目,pom文件为: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=" ...

  5. [other] Div

    https://www.luogu.org/problemnew/show/U16765 解法一 随机输出一组合法解. 复杂度 O(1) 预计得分 10~??? 解法二 看完题目基本能想到大力贪心,通 ...

  6. LOJ2541. 「PKUWC2018」猎人杀 [概率,分治NTT]

    传送门 思路 好一个神仙题qwq 首先,发现由于一个人死之后分母会变,非常麻烦,考虑用某种方法定住分母. 我们稍微改一改游戏规则:一个人被打死时只打个标记,并不移走,也就是说可以被打多次但只算一次.容 ...

  7. 比Excel还简单的SQL语句查询

    大家好,我是jacky朱元禄,很高兴继续跟大家分享<MySQL数据分析实战>系列课程,前面的课程jacky分享了数据层面增删改查中的增删改,下面的课程我们要说增删改查的这个查,jacky说 ...

  8. python3编程基础之一:关键字

    在学习编程的过程中每种语言都会有一些特殊的字母组合在本语言中表示特定的含义,这种字母组合就是关键字.原则上,关键字是无法被重复定义的,否则,语言在应用中,就无法正确确定标号的意义了. 1.关键字的获取 ...

  9. LUA 在C函数中保存状态:registry、reference

    1 背景 lua的值一般都是保存在栈里面,调用函数完毕值在栈会被清掉,从而被GC回收.但有时候C函数需要在函数体的作用域之外保存某些Lua数据,这些数据不能存放在栈里面,有没有全局变量之类的可以存放. ...

  10. TCP HTTP SOCKET之间的有什么关系

    网络由下往上分为 物理层.数据链路层.网络层.传输层.会话层.表示层和应用层. 通过初步的了解,我知道IP协议对应于网络层,TCP协议对应于传输层,而HTTP协议对应于应用层, 三者从本质上来说没有可 ...