Ubuntu 10.04下的Ralink无线驱动

在Ubuntu 10.04,如果是Ralink的无线网卡,可能会发生可以连接上不加密或者TKIP的无线网络,却不能连接上CCMP的无线网。这由于系统自带的RT2870sta的驱动存在Bug。系统自带了2870sta和3070sta驱动,所以在加载的时候很容冲突,因此要把其他不用的加入blacklist或干脆直接删除,但我的系统原先的3070sta工作不太正常,被我一怒之下删掉了,那就只能自己动手编一个了。9.10的时候就折腾过,许久了记不清了,这回又折腾一会,以免下次再麻烦,谨以短文记之。

 

 

1. 将rt2870sta放入黑名单,即 blacklist rt2870sta

gedit /etc/modprobe.d/blacklist.conf 

在文件末尾添加如下几行

blacklist rt2800usb

blacklist rt2x00lib

blacklist rt2x00usb

blacklist rt2870sta

 

 

2. 下载Ralink为2.6内核chipset 3070准备驱动http://www.ralinktech.com/support.php?s=2

(我所用的是RT3070_LinuxSTA_V2.3.0.1_20100208.tar.gz2)

 

解压。编译。

手动加载内核,发现失败,错误提示:

 

insmod: error inserting './rt3070sta.ko': -1 Unknown symbol in module

通过命令#dmesg |grep -e rt3得到一下信息

 

 

[  721.216901] rt3070sta: module license 'unspecified' taints kernel.

[  721.217589] rt3070sta: Unknown symbol usb_alloc_urb

[  721.218137] rt3070sta: Unknown symbol usb_free_urb

[  721.219813] rt3070sta: Unknown symbol usb_register_driver

[  721.221132] rt3070sta: Unknown symbol usb_put_dev

[  721.221601] rt3070sta: Unknown symbol usb_get_dev

[  721.222507] rt3070sta: Unknown symbol usb_submit_urb

[  721.224638] rt3070sta: Unknown symbol usb_control_msg

[  721.226185] rt3070sta: Unknown symbol usb_deregister

[  721.228401] rt3070sta: Unknown symbol usb_kill_urb

[  721.228849] rt3070sta: Unknown symbol usb_buffer_free

[  721.230824] rt3070sta: Unknown symbol usb_buffer_alloc


注意第一行,没有指明模块的license会威胁内核,显然这是License问题,解决办法:
#grep MODULE_LIC* ./ -R --include=*.c
./common/rtmp_init.c:MODULE_LICENSE("RALINK");
./os/linux/rt_linux.c:MODULE_LICENSE("GPL");
./os/linux/rt_main_dev.c:MODULE_LICENSE("GPL")

编辑rt_linux.c和rt_main_dev.c,去掉限制MODULE_LICENSE("GPL")的ifdef
重新编译

 

 

3. 在sudo make install的时候有一个小问题,提示错误

 

cp: cannot stat `~/ralink/RT3070_LinuxSTA_V2.3.0.1_20100208/RT3070STA.dat': No such file or directory

解决办法很直接:cp RT2879STA.dat RT3070STA.dat,然后sudo make install

基本上我也是靠Gooooooogle做这些事情,真是个好东西,学技术的必须得把这玩意玩转了!
4. Reference:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值