公司项目要用到usb无线网卡,芯片是ralink的RT2870.以下是将其驱动移植到s3c2416的步骤。

1.下载驱动源码,雷凌官网的下载地址是:

http://www.ralinktech.com/en/04_support/support.php?sn=501

2.解压2011_0719_RT3070_RT3370_RT5370_RT5372_Linux_STA_V2.5.0.3_DPO.bz2

3.进入目录,修改Makefile

将PLATFORM = PC  注释掉,同时将#PLATFORM =
SMDK的#去掉,即PLATFORM定义为SMDK.

将ifeq ($(PLATFORM),SMDK)这句后面的两句改为:

LINUX_SRC =
/root/下载/linux-2.6.32.2  
(这里根据自己的开发板的内核源码路径来定义)

CROSS_COMPILE =
/usr/local/arm/4.4.3/bin/arm-linux-   
(交叉编译工具链所在的路径)

先看看内核配置是否把无线给加进去了:进入开发板内核 make
menuconfig

DeviceDrivers 
--->

Networkdevice
support 
--->

WirelessLAN
(non-hamradio) 
--->

[*]Wireless
LAN drivers (non-hamradio) &
WirelessExtensions

[*]  Wireless
Extension API
overRtNetlink

---  Obsolete
Wireless cards
support(pre-802.11)

<>  
STRIP (Metricom starmode
radioIP)

<>  
USB ZD1201 based Wireless
devicesupport

<>  
IEEE 802.11 for H

不然你即使编译好了这个模块也不能用

配置好后保存,最好make下!

生成一个新内核,这么做的目的是,完全配置好了所需的一些文件,以免在编译模块时老是报错,开始我居然编译了一个12M的驱动模块,后来成功了,其实是只有800多KB。最后的rt5370sta.ko的大小仅供参考。

注意:如果编译出来模块比较大(10M左右)可以试试一下方法:

用命令:arm-linux-strip -S
****.ko   就能解决了。

原理就是去除调试信息,如果出现错误有可能是你的arm-linux-gcc没指名路径,在前面再加上你的交叉编译路径即可。我的大小为800多K。
第二个值是交叉编译工具的路径。根据你自己的情况修改。

4.执行make

5.下载模块和配置文件

把make生成的在os/linux
目录生成最后的ko文件rt5370sta.ko传送到开发板的/lib/modules/2.6.32.2-FriendlyARM目录下。同时要将源代码根目录的RT2870STA.dat文件传送到/etc/Wireless/RT2870STA/
目录下,没有的话,新建目录即可。

6.安装模块。

insmod rt5370sta.ko

如果出现以下报错,说明你的内核源码错了,按照步骤3的说明重新去处理内核源码。

rt5370sta: version magic '2.6.32.59 mod_unload ARMv4 ' should be
'2.6.32.2-Frie'

insmod: cannot insert 'rt5370sta.ko': invalid module
format

最后就是插入网卡,这个时候ifconfig是看不到网卡的,你要启用网卡,用以下命令:


ifconfig ra0 up
我的情况是这样的:

点击(此处)折叠或打开


  1. [root@FriendlyARM /]# ifconfig
    ra0 up
  2. (Efuse for 3062/3562/3572) Size=0x2d [2d0-2fc]
  3. -->RTUSBVenderReset
  4. <</SPAN>--RTUSBVenderReset
  5. Key1Str is Invalid
    key length(0) or Type(0)
  6. Key2Str is Invalid
    key length(0) or Type(0)
  7. Key3Str is Invalid
    key length(0) or Type(0)
  8. Key4Str is Invalid
    key length(0) or Type(0)
  9. 1. Phy
    Mode = 5
  10. 2. Phy
    Mode = 5
  11. NVM is Efuse and its
    size =2d[2d0-2fc]
  12. phy mode> The
    chip does not support
    5G band
  13. RTMPSetPhyMode: channel is out
    of range, use
    first channel=1
  14. (Efuse for 3062/3562/3572) Size=0x2d [2d0-2fc]
  15. 3. Phy
    Mode = 9
  16. AntCfgInit: primary/secondary
    ant 0/1
  17. AsicSetRxAnt, switch to main
    antenna
  18. MCS Set = ff
    00 00 00 01
  19. <</SPAN>==== rt28xx_init, Status=0
  20. 0x1300 = 00064300


再次ifconfig,就能看到ra0的网卡了。

如何验证我的无线网卡是否已经可以正常使用了??

请看我的下片文章:RT2870移植到s3c2416后续验证无线网卡:iwconfig的使用方法

http://blog.sina.com.cn/s/blog_7d7e9d0f0101l13k.html

移植RT2870无线网卡驱动到s3c2416的更多相关文章

  1. 在CDlinux下编译安装无线网卡驱动

    环境 主机:ThinkPadT440P 系统:CDlinux9.7.1 概述 准备利用CDlinux来破解周围的wifi密码来免费蹭网,由于笔记本是新买的,系统没有自带驱动,只能自己手动到网上下载.编 ...

  2. TinkPad E40 CentOS 6.5 无线网卡驱动 RTL8191SEvB 安装

    最近把一台老本TinkPad E40 安装了CentOS 6.5 其他都没什么问题,唯独没有无线网卡驱动. 通过命令: lspci | grep Network 查看无线网卡型号: 然后去瑞昱官网找驱 ...

  3. Ubuntu 安装BCM 43142无线网卡驱动

    ubuntu14.04 安装 bcm43142无线网卡 用命令lspci 查看无线网卡类型 然后下载对应的无线网卡驱动. 之后,使用下列命令安装,即可搜索无线热点了: sudo apt-get ins ...

  4. CentOS6.5菜鸟之旅:安装Realtek无线网卡驱动

    一.前言 CentOS6.5不像CentOS7和Unbuntu那样自动安装好了无线网卡驱动,因此需要我们折腾一下. 二.安装前的准备工作   [a] 检查无线网卡驱动的安装情况(通过查看网络接口的安装 ...

  5. Ralink RT3290无线网卡驱动安装 (linux)

    Ralink RT3290无线网卡驱动安装 (linux, 笔记备忘) 1. 设备信息查看无线网卡设备信息 # lspci : 2. 驱动下载http://pan.baidu.com/s/1sjsHN ...

  6. UBUNTU12.4 安装磊科无线网卡驱动

    UBUNTU12.4 安装磊科无线网卡驱动 在淘宝低价买了一个网卡,回来发现不能用 ,擦 无语了. 无赖只能在网上各种找驱动,编译 安装 .今天在终于安装好了WIFI驱动了: 下载地址:https:/ ...

  7. iwpriv工具通过ioctl动态获取相应无线网卡驱动的private_args所有扩展参数

    iwpriv工具通过ioctl动态获取相应无线网卡驱动的private_args所有扩展参数 iwpriv是处理下面的wlan_private_args的所有扩展命令,iwpriv的实现上,是这样的, ...

  8. linux 下手动编译安装无线网卡驱动

    先参照 <本地yum源安装GCC >安装好gcc hp的笔记本上安装了CentOS6.3,没有安装无线网卡驱动,安装这个驱动,在Google上找了好多资料,最后终于解决了这个问题.在这里做 ...

  9. ThinkPad E431/E531 ubuntu 14.04 安装无线网卡驱动

    ubuntu系统装好之后无限网卡驱动并不能用.须要自己下载无线网卡驱动.以下是最简单的方法: sudo apt-get install linux-headers-generic build-esse ...

随机推荐

  1. PostgreSQL流复制记录

    参考了别人的部分,添加了自己在实践中的内容,仅做记录. 1.同步流复制中 主机操作 1.1postgresql.conf wal_level = hot_standby # 这个是设置主为wal的主机 ...

  2. Web目录结构

    /: Web应用的跟目录,该目录下所有文件在客户端都可以访问(JSP,HTML) /WEB-INF: 存放应用使用的各种资源.该目录及其子目录对客户端都是不可以访问的, 其中包括web.xml(部署表 ...

  3. Qt之图形(QPainterPath)

    简述 QPainterPath 类(绘图路径)提供了一个容器,用于绘图操作,可以创建和重用图形形状. 绘图路径是由许多图形化的构建块组成的对象,例如:矩形.椭圆.直线和曲线.构建块可以加入在封闭的子路 ...

  4. BloomFilter布隆过滤器使用

    从上一篇可以得知,BloomFilter的关键在于hash算法的设定和bit数组的大小确定,通过权衡得到一个错误概率可以接受的结果. 算法比较复杂,也不是我们研究的范畴,我们直接使用已有的实现. go ...

  5. auto_ptr, unique_ptr, shared_ptr and weak_ptr智能指针讲解

    笔者介绍:姜雪伟,IT公司技术合伙人,IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,已出版书籍:<手把手教你架构3D游戏引擎>电子工业出版社和<Unity3D实战核心技术详解 ...

  6. How to use NSRequest in Delphi XE4

    //Demo How to use NSRequest..procedure TiOSWebBrowserService.DoNavigate(const URL: string);var NewUR ...

  7. 利用Python进行文章特征提取(一)

    # 文字特征提取 词库模型(bag of words) 2016年2月26,星期五 # 1.词库表示法 In [9]: # sklearn 的 CountVectorizer类能够把文档词块化(tok ...

  8. 【英语】Bingo口语笔记(82) - go系列

  9. 【解题报告】[动态规划]RQNOJ - PID72 / 拔河比赛

    原题地址:http://www.rqnoj.cn/problem/72 解题思路:基本的01背包问题. 要求的就是在这些人中选出一些人,使得这些人的体重的和 不超过所有人的体重的一半 并最大. 代码: ...

  10. 重温CLR(七 ) 属性和事件

    无参属性 许多类型都定义了能被获取或更高的状态信息.这种状态信息一般作为类型的字段成员实现.例如一下类型包含两个字段: public sealed class Employee{ public str ...