公司项目要用到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. (三)java程序的编译和执行

    编写java程序 eg class Demo { /* * 程序运行的入口 */ public static void main(String[] args) { System.out.println ...

  2. IOS Quartz 2D 学习(1)

    IOS提供两种创建图形的途径: 1.OpenGL. 2.Quartz.Core Animation.UIKit图形支持. UIKit的图形系统 1.视图绘画周期: DrawRect方法,在任何时候,当 ...

  3. [Luogu1527][国家集训队]矩阵乘法

    luogu 题意 给你一个\(N*N\)的矩阵,每次询问一个子矩形的第K小数.(居然连修改都不带的) \(N\le500,Q\le60000\) sol 整体二分+二维树状数组裸题. 复杂度是\(O( ...

  4. avalon 总线时序关系理解

    对于读,等待时间指的是从端口捕获数据的时间相对于read信号的延时 建立时间指的是read信号相对于chipselect和addr的延时时间 对于写,等待时间指的是相对于非等待情况下各个信号的延时时间 ...

  5. verilog 2001中的一些新语法

    比较有用的:1,generate语句,但需注意,generate-for中变量范围是已知的确定值, generate-case,generate-if语句中变量都必须是固定的, generate必须跟 ...

  6. 【java规则引擎】java规则引擎搭建开发环境

    Drools官网:http://www.jboss.org/drools Drools and jBPM consist out of several projects:(Drools软件包提供的几个 ...

  7. webpack新版本4.12应用九(配置文件之入口和上下文(entry and context))

    entry 对象是用于 webpack 查找启动并构建 bundle.其上下文是入口文件所处的目录的绝对路径的字符串. context string 基础目录,绝对路径,用于从配置中解析入口起点(en ...

  8. 系列文章--SharePoint 2013 Designer 入门教程

    SharePoint的使用中,SharePoint Designer是非常重要的工具,我们可以通过Designer设计页面.母版页,维护.管理站点,也可以定制列表表单.数据视图,设计工作流等等.下面总 ...

  9. Unity GUI自适应屏幕分辨率(一)布局自适应

    这里我们先谈第一个问题坐标矩阵变化实现布局自适应. 选取基准尺寸 通常你需要选择一个基准的屏幕尺寸,象现在开发的应用也需要跨平台在iOS(iPhone/iPad)/Android都可以运行,我这边选取 ...

  10. Nginx httpS server配置

    Nginx httpS 配置 配置同时支持http和httpS协议: server { listen ; #backlog:每个网络接口接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包 ...