内核版本:linux-3.1.4

我先把 无线网卡(TP-LINK  TL-WN721N)插到了我的PC上

用 lsusb 命令打印无线网卡ID
:Bus 001 Device 003: ID 148f:5370 Ralink Technology, Corp. 
照着这个ID百度搜一下你的无线网卡的芯片组,我的是 rt2870 。
但是直接百度“TP-LINK  TL-WN721N芯片组”得到的答案是AR9271芯片组,这显然是不正确的,就因为这个,困扰了很久,加载AR9271芯片组的驱动,网卡根本没反应。
PS :要正常使用无线网卡,还要正确配置。linux下的配置工具是wireless-tools,可以在这里下载到它的最新版。http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html
下载后,将源代码解压。再修改其中的makefile文件,将其中的编译器改为交叉工具链里的编译器
CC = gcc
AR = ar
RANLIB = ranlib
改为
CC = arm-linux-gcc
AR = arm-linux-ar
RANLIB = arm-linux-ranlib
再执行make,编译完成后,将生成的iwconfig,iwlist文件拷贝到开发板的根文件系统中的/bin目录下,将libiw.so.29拷贝到/lib目录下。
1.内核配置,3.1.4的内核已经支持rt2870
需按如下步骤配置内核
[*] Networking support  --->    -*-   Wireless  --->  <*>   Generic IEEE 802.11 Networking Stack(mac80211)          
Default rate control algorithm (Minstrel)  --->           
[*]   Enable mac80211 mesh networking (pre-802.11s) support 
Device Drivers  --->[*] Network device support  --->[*]   Wireless LAN  ---><*>   Ralink driver support  ---><*>   Ralink rt27xx/rt28xx/rt30xx (USB) support                  │ │  
│ │    [*]     rt2800usb - Include support for rt33xx devices           │ │  
│ │    [*]     rt2800usb - Include support for rt35xx devices (EXPERIMEN│ │  
│ │    [*]     rt2800usb - Include support for rt53xx devices (EXPERIMEN│ │  
│ │    [*]     rt2800usb - Include support for unknown (USB) devices   
配置好如上选项,编译内核
2.把  Ralink  的驱动全选了 然后是下载固件
http://www.ralinktech.com/cn/04_support/support.php?sn=501 驱动源码,这个可以不下,内核有了,可以根据下面的链接,直接下载固件
http://www.ralinktech.com/cn/04_support/license.php?sn=5030  
,rt2870.bin固件,(我还存在一个疑问,这个bin文件,在X86和arm间是通用的?理论不通用,但我放到开发板实际上是可用的,不知为什么,希望高人点拨)
我把它 cp到根文件系统  /lib/firmwire/ 下
然后
[root@FriendlyARM /]# ifconfig  wlan0 up     启动无线网卡
phy0 -> rt2x00lib_request_firmware: Info - Loading firmware file 'rt2870.bin'.
phy0 -> rt2x00lib_request_firmware: Info - Firmware detected - version: 0.22.
phy0 -> rt2x00mac_conf_tx: Info - Configured TX queue 0 - CWmin: 3, CWmax: 4, Aifs: 2, TXop: 102.
phy0 -> rt2x00mac_conf_tx: Info - Configured TX queue 1 - CWmin: 4, CWmax: 5, Aifs: 2, TXop: 188.
phy0 -> rt2x00mac_conf_tx: Info - Configured TX queue 2 - CWmin: 5, CWmax: 10, Aifs: 3, TXop: 0.
phy0 -> rt2x00mac_conf_tx: Info - Configured TX queue 3 - CWmin: 5, CWmax: 10, Aifs: 7, TXop: 0.
如果不下载相应固件rt2870.bin
ifconfig  wlan0 up
phy0 -> rt2x00lib_request_firmware: Info - Loading firmware file 'rt2870.bin'.
phy0 -> rt2x00lib_request_firmware: Error - Failed to request Firmware.
ifconfig: SIOCSIFFLAGS: No such file or directory
3.ifconfig  看一下 开发板上所有网络设备的信息 如果无线正确启动应该显示wlan0的信息
4.iwlist scanning   此命令可以搜索到可用的无线网络接入点  我的接入点"TENDA"
wlan0     Scan completed :
Cell 01 - Address: 00:B0:0C:38:29:C5
Channel:6
Frequency:2.437 GHz (Channel 6)
Quality=43/70  Signal level=-67 dBm  
Encryption key:on
ESSID:"TENDA"
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s
36 Mb/s; 48 Mb/s; 54 Mb/s
Mode:Master
Extra:tsf=0000006551567914
Extra: Last beacon: 2350ms ago
IE: Unknown: 000554454E4441
IE: Unknown: 010482848B96
IE: Unknown: 030106
IE: Unknown: 0406000200000000
IE: Unknown: 2A0100
IE: Unknown: 32080C1218243048606C
5.iwconfig wlan0 key  ABCD123456  设置路由器登录密码 ,如果你的路由器启用了加密,则用这条指令实现登录密码设置
6.iwconfig wlan0 essid "TENDA"  给无线网卡配置接入点
7.iwconfig wlan0 ap auto 加入无线网
然后 #iwconfig wlan0 
wlan0     IEEE 802.11bgn  ESSID:"TENDA"  
Mode:Managed  Frequency:2.437 GHz  Access Point: 00:B0:0C:38:29:C5   
Bit Rate=1 Mb/s   Tx-Power=20 dBm   
Retry  long limit:7   RTS thr:off   Fragment thr:off
Encryption key:ABCD-1234-56
Power Management:on
Link Quality=45/70  Signal level=-65 dBm  
Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
Tx excessive retries:0  Invalid misc:0   Missed beacon:0
可以看到路由信息,这样无线网卡就成功的连接到路由。
8.ifconfig wlan0 192.168.0.99 netmask 255.255.255.0  将开发板的IP地址配置成与主机同一网段
每次都逐条命令配置无线网卡确实麻烦,我们可以编写一个脚本来实现无线网卡的配置,以后只要执行此脚本,即可完成上述步骤的配置。脚本文件内容如下。
#! /bin/sh
ifconfig wlan0 up
iwconfig wlan0 key ABCD123456
iwconfig wlan0 essid "TENDA"
iwconfig wlan0 ap auto
ifconfig wlan0 192.168.0.99 netmask 255.255.255.0
下面你就可以在开发板和主机间互ping了
主机:
开发板:
然后可以再ifconfig 一下 看看wlan0 设备的信息变化
PS:如果遇到ifconfig  wlan0 up
phy0 -> rt2x00lib_request_firmware: Info - Loading firmware file 'rt2870.bin'.
phy0 -> rt2x00lib_request_firmware: Error - Failed to request Firmware.
ifconfig: SIOCSIFFLAGS: No such file or directory 
这个错误,而rt2870.bin已经在相应目录中了。执行cat /proc/sys/kernel/hotplug  看看是否显示/sbin/mdev,通常情况下,load firmware的动作是通过用户空间的hotplug handler,也就是/proc/sys/kernel/hotplug里设定的执行档,来完成。root_qtopia默认会在/etc/init.d/rcS里将/proc/sys/kernel/hotplug设定为/sbin/mdev,即busybox的mdev模块。它在收到来自内核的请求加载 rt2870 .bin这个firmware消息后,会从/lib/firmware目录下去找 rt2870 .bin,如果能找到就加载。
/etc/init.d/rcS  看看你的这个文件中有没有设置
echo /sbin/mdev > /proc/sys/kernel/hotplug
/sbin/mdev -s
/bin/hotplug
然后就是确定配置busybox时,选了mdev,另外,firmware的加载依赖于sysfs, 确保你的文件系统在启动后在/sys目录挂载了sysfs。

移植TP-LINK TL-WN721N 驱动到micro2440(by liukun321咕唧咕唧)相关推荐

  1. 小白 uBuntu20.04 2 安装TP Link TL-WDN5200 无线网卡驱动 亲测有效

    小白 uBuntu20.04 2 安装TP Link TL-WDN5200 无线网卡驱动 首先我先说一下,其实网上很多都是有用的,只是安装步骤不是很详细罢了,我这个只做参考,希望能帮到你. 我朋友问我 ...

  2. ubuntu20 安装TP Link TL-WDN5200无线网卡驱动

    sudo apt update sudo apt install build-essential git dkms git clone https://github.com/brektrou/rtl8 ...

  3. TP LINK TL SG3452 CONSOLE 超级终端查管理IP命令

    参考命令手册:https://service.tp-link.com.cn/download/20191/TL-SG3452P%20V1.0%E5%91%BD%E4%BB%A4%E8%A1%8C%E6 ...

  4. Android4.1.1_r1系统移植------TP移植篇

    原址 学有所得,得有共享,这才是进步之道.  最近天天加班,很多博文写了一半觉得不完善,只好忍痛丢进了草稿箱. 不管其他的,今天得讲讲移植TP的东西:        注:此处TP移植讲解以移植适应&q ...

  5. android的wifi网卡移植详细过程已经通用驱动的问题

    这里有一篇详细的教程,看完还有一个问题 就是android的wifi驱动移植,如果有wifi网卡的驱动代码,是一定需要对android系统本身的代码修改重写编译吗?就是说,有无可能不改变android ...

  6. i.MX6ULL裸机篇(二)NXP官方SDK移植之踩坑 网口驱动

    MX6ULL官方SDK移植之踩坑 网口驱动 一.引言 NXP MX6ULL 网口移植其实主要修改底层驱动程序,LWIP协议通用,一般不用修改,这里主要和大家分享在Linux环境下移植修改网口驱动程序. ...

  7. linux 内核 网卡驱动 移植,linux内核移植步骤添加dm9000网卡驱动(设备树).docx

    linux内核移植步骤添加dm9000网卡驱动(设备树).docx LINUX内核移植步骤2015年05月13日星期三上午1105往设备树中添加网卡驱动1.选平台,指定交叉编译工具链1.在MAKEFI ...

  8. 【路由器】TP Link TL-WR702N 迷你路由器为何无法进入管理后台

    TL-WR702N是TP Link在很多年前发布的一个迷你型的便携路由器,最近要搬家,我从箱子底翻出了这个小乖乖,年代有些久远,当初的账户密码全都忘到了九霄云外,无奈之下reset重新设置,但是却遇到 ...

  9. TP Link WN726N ubuntu18安装成功

    TP Link 的无线网卡确实在Ubuntu上不好使用, 这个大哥亲测了无数坑:https://blog.csdn.net/zhanghm1995/article/details/105334832 ...

  10. V370 Intel WiFi Link 1000 BGN驱动如何正确安装

    V370 Intel WiFi Link 1000 BGN驱动如何正确安装 刚买的杨天V370笔记本,自带WIN7 Basic系统开始可以使用Intel WiFi Link 1000 BGN上网,换W ...

最新文章

  1. Android 使用OpenCV的三种方式(Android Studio)
  2. nextcloud 中文乱码解决方案
  3. SpringMVC-方法四种类型返回值总结,你用过几种?
  4. vscode编辑python_VSCode+Python开发环境
  5. php检查在线用户,php – 检查用户是否在线laravel
  6. mysql 取最后一次登陆,获得最后一次插入mysql的id | 学步园
  7. $ajax不能识别,JQuery/JS Ajax功能无法识别
  8. SAP License:生产订单结算时候的几个差异
  9. Google 投资了京东
  10. 使用VC获取字符串的长度
  11. 【WPF】鼠标穿透窗口(类似于桌面歌词那样子)
  12. Axure RP 9.0 中继器增删改查实现[原型图]
  13. 机器学习中Bias(偏差)和Variance(方差)
  14. saved_model_cli查看SavedModel
  15. 读《我怎样设计飞机》
  16. 活跃在全球顶级会议的阿里新生代白帽:能挖漏洞会做焊工
  17. echarts 北京公交线路-线路效应
  18. 我想和这个世界说说2
  19. 如何查看/修改Linux时区和时间
  20. 浅谈汽车轮胎匹配视觉防错检测应用

热门文章

  1. PTA 网红点打卡攻略 c++详解
  2. 4-Javaweb学习-embed 标签
  3. 如何解决LSTM循环神经网络中的超长序列问题
  4. conflux开发NFT智能合约(ERC721 工厂合约 可升级合约)
  5. 让nginx支持php和path_info
  6. bootstrap支付宝充值html,jQuery+Bootstrap手机端支付宝金额充值表单页面代码
  7. centos8修改网卡名称成eth0
  8. Linux之C语言中如何抛出异常或将异常写入日志文件中
  9. Linux下通过修改网卡驱动的参数调整Intel网卡的性能zz
  10. 一个简单留言板ajax应用的启示备忘录