RT5370_USB无线网卡驱动移植

来源:互联网 发布:淘宝ebay代购流程 编辑:程序博客网 时间:2024/04/30 12:04

        在天嵌公司买了一个USB无线网卡,本以为就是移植手册上用到的那种网卡,可是当我收到网卡的时候就懵了,网卡背面就写了802.11n,也没说是哪种芯片的。问了天嵌的售后,说是和移植手册上的步骤是一样的。于是我就照着手册按部就班地做,但就是驱动不起来,开机的时候还提示手册上的驱动加载不上。再去问问售后,就没反应了。后来我用天嵌自带的烧录镜像来调试,插上网卡之后虽然手册上的驱动是加载上了,但是无线网卡还是没有驱动起来。用iwconfig等指令,都是提示没有设备。没有办法,只能自力更生了。于是就去网上找各种论坛。突然想是不是天嵌的售后诓我的,内核里根本没有这块无线网卡的驱动。然后我在网卡配套的小光盘里找到

2011_0719_RT3070_RT3370_RT5370_RT5372_Linux_STA_V2.5.0.3_DPO.bz2这个软件包,当时猜想这才是这块网卡在linux系统下的驱动源码,于是就抱着试试看的想法按照这篇文章上的内容http://blog.chinaunix.net/uid-26333327-id-3212280.html,一步一步移植。主要的步骤就是修改Makefile文件,

进入目录,修改Makefile
PLATFORM = PC 注释掉,同时将#PLATFORM = SMDK#去掉,即PLATFORM定义为
SMDK.
ifeq ($(PLATFORM),SMDK)这句后面的两句改为:

LINUX_SRC = /opt/EmbedSky/linux-2.6.31
CROSS_COMPILE = /opt/ EmbedSky /4.4.3/bin/arm-linux-

然后执行make编译该驱动,

.下载模块和配置文件
make生成的在os/linux目录生成最后的ko文件rt5370sta.ko传送到开发板的/lib目录下。同时要将源代码根目录的RT2870STA.dat文件传送到/etc/Wireless/RT2870STA/目录下,没有的话,新建目录即可。RT2870STA.dat文件的目录一定要正确,不然加载驱动的时候会报错。

然后加载驱动,再用ifconfig ra0 up启动无线网卡,就可以用ifconfig命令看到有ra0无线网卡设备了。

       接下来要做的就是配置和连接网络,是参考了这篇文章上的内容http://www.360doc.com/content/13/0505/09/7775902_283067714.shtml进行的,主要就是用:

iwlist scan搜索网络

iwconfig ra0 key s : xxxxx设置密码

iwconfig ra0 essid xxxxxx设置ESSID

iwconfig ra0 ap auto加入无线网络

文章中提到无线网络用WEP加密方式,但是我的无线网络设置成WEP加密模式,就是连不上,ESSID设置不了,无奈先设置路由器,不添加任何加密机制。试了一下,在路由器里可以看到我的设备的连接了。但是一开始就是ping不通在同一局域网下的电脑。于是又纠结了很久,后来也不知道怎么的,突然又可以ping通了。

       在天嵌自带的镜像上成功之后,接下来就将此无线网卡的驱动移植到自己的系统里。但是配置完USB后,插入无线网卡,只打印出:

usb 1-1: new full speed USB device using s3c2410-ohci and address 2

usb 1-1: configuration #1 chosen from 1 choice

但是自带的镜像插入USB无线网卡的时候能打印出无线网卡的一些信息,于是我又怀疑是不是我的无线网卡没有识别到,在网上搜了一段时间之后还是一无所获。于是就决定先不管它,接着往下做。

我先去掉之前所有关于无线网卡的配置,重新开始,在内核配置的时候也没有再加入TL-WN321GTL-WN322的驱动,然后同样以上的动作,显然没有出现驱动加载不上的错误,之前的错误应该是驱动不完整引起的。然后我加载自己编译的驱动,看到USB无线网卡驱动起来了!现在上面没有打印出无线网卡的信息并没关系。用ifconfig命令可以看到ra0设备。于是又配置无线网卡等一系列的动作。在路由器上看到我的设备已加入无线网络,但是又是同样的问题,ping不通!!!NND!设置了一下默认网关:route add default gw 192.168.1.1 与电脑一样,突然又好了!开心不已。

       第二天早上起来,我将USB设备配置里关于无线网的配置去掉试试,发现又是连得上ping不通。无奈又加上,发现还是老样子。估计这个配置有没有都一样。后来又是各种折腾。没辙了,把配置无线网卡的指令加入启动初始化代码试试,真是开玩笑一样的,居然ping通了!去掉USB设备配置里关于无线网的配置也是可以ping通的。

加入的顺序是这样子的:

insmod /lib/rt5370sta.ko
ifconfig eth0 down
ifconfig ra0 up
iwconfig ra0 essid "FAST_F1A936"
iwconfig ra0 ap auto
ifconfig ra0 192.168.1.30

       现在无线网卡能正常工作了,但是只能连接无加密方式的,就先将基本功能实现,至于连接加密方式的无线网络就等到时候优化再说了,届时再来接着完善这篇文章。

0 0
原创粉丝点击