RT73 wifi无线网卡驱动移植过程 和wpa支持
轉(zhuǎn)
?
移植環(huán)境:
?????? 主機(jī)操作系統(tǒng):Ubantu 8.10
?????? 目標(biāo)系統(tǒng):linux-2.6.22.6
?????? 交叉編譯器:arm-softfloat-linux-gnu-gcc-3.4.5
一、RT73驅(qū)動(dòng)編譯
1、 下載RT73驅(qū)動(dòng)源碼
http://www.ralinktech.com/網(wǎng)站上下載2009_0713_RT73_Linux_STA_Drv1[1].1.0.3.zip
解壓unzip 2009_0713_RT73_Linux_STA_Drv1/[1/].1.0.3.zip
生成兩個(gè)目錄:
Module(驅(qū)動(dòng))? WPA_Supplicant-0.5.8(wpa網(wǎng)絡(luò)工具)
2、 修改Makefile
5 #PLATFORM=PC
6 PLATFORM=CMPC
33 #EXTRA_CFLAGS += -DDBG
40 ifeq ($(PLATFORM),CMPC)
41 LINUX_SRC = /source/kernel/linux-2.6.22
42 endif
?
注:#EXTRA_CFLAGS += -DDBG 一定要關(guān)掉,否則終端會(huì)不停的循環(huán)打印掃描網(wǎng)絡(luò)的信息
?
3、 配置內(nèi)核支持wifi網(wǎng)絡(luò)
否則會(huì)出現(xiàn)如下錯(cuò)誤:
/mnt/sdc/rt73/2009_0713_RT73_Linux_STA_Drv1.1.0.3/Module/rtmp_main.c:1163: error: structure has no member named `wireless_handlers'
<*> Packet socket
?
配置完畢后,需要編譯下內(nèi)核,目的是使配置在include/linux/autoconfig.h中生效
?
1、? 編譯源碼,生成rt73.ko
/rt73/2009_0713_RT73_Linux_STA_Drv1.1.0.3/Module# make
拷貝驅(qū)動(dòng)到目標(biāo)系統(tǒng)
#cp rt73.ko /source/rootfs/rt73/
?
2、? 拷貝固件到目標(biāo)系統(tǒng)
#cp rt73.bin /source/rootfs/etc/Wireless/RT73STA/
#cp rt73.rt73.dat /source/rootfs/etc/Wireless/RT73STA/
?
?
?
二、???????? 移植wpa_supplicant(我用ubuntu 10.04移植時(shí),openssl可以編譯安裝。但wpa_supplicant不行。換成root好了。不知道為什么)
?????? 因?yàn)楝F(xiàn)在的無線wifi網(wǎng)絡(luò)大多是wpa加密。所以需要移植wpa_supplicant工具
1、 下載源碼
http://hostap.epitest.fi/wpa_supplicant/
下載wpa_supplicant-0.7.2.tar.gz (openssl用到0.7.2提供的補(bǔ)丁)
下載wpa_supplicant-0.5.8.tar.gz? (最終工具版本)
#tar xvfz wpa_supplicant-0.7.2.tar.gz
#tar xvfz wpa_supplicant-0.5.8.tar.gz
下載www.openssl.org/source/openssl-0.9.8e.tar.gz
#tar zxvf openssl-0.9.8e.tar.gz
2、編譯openssl庫
將wpa_supplicant中的補(bǔ)丁拷貝到openssl中
# cp wpa_supplicant-0.7.2/patches/openssl-0.9.8e-tls-extensions.patch openssl-0.9.8e/
#cd openssl-0.9.8e
#mkdir? /usr/local/ssl
#vim? Makefile
CC= arm-softfloat-linux-gnu-gcc
AR= arm-softfloat-linux-gnu- r $(ARFLAGS) r
RANLIB= arm-softfloat-linux-gnu-ranlib
INSTALLTOP=/usr/local/ssl
OPENSSLDIR=/usr/local/ssl
#make?
#make install
在/usr/local/ssl目錄下安裝了ssl庫
?
3、 編譯wpa_supplicant
參照rt73驅(qū)動(dòng)源碼包中的:2009_0713_RT73_Linux_STA_Drv1.1.0.3/ WPA_Supplicant-0.5.8/readme文件提示的步驟完成下面的操作
進(jìn)入pa_supplicant-0.5.8.tar.gz解壓生成的wpa_supplicant-0.5.8目錄中:
#cp ../2009_0713_RT73_Linux_STA_Drv1.1.0.3/WPA_Supplicant-0.5.8/driver_ralink.* ./
#cp ../2009_0713_RT73_Linux_STA_Drv1.1.0.3/WPA_Supplicant-0.5.8/driver.h ./
#cp ../2009_0713_RT73_Linux_STA_Drv1.1.0.3/WPA_Supplicant-0.5.8/events.c ./
#cp ../2009_0713_RT73_Linux_STA_Drv1.1.0.3/WPA_Supplicant-0.5.8/wpa_supplicant.c ./
#cp ../2009_0713_RT73_Linux_STA_Drv1.1.0.3/WPA_Supplicant-0.5.8/wpa_supplicant_i.h ./
#cp ../2009_0713_RT73_Linux_STA_Drv1.1.0.3/WPA_Supplicant-0.5.8/defconfig ./
#cp ../2009_0713_RT73_Linux_STA_Drv1.1.0.3/WPA_Supplicant-0.5.8/drivers.c ./
#cp ../2009_0713_RT73_Linux_STA_Drv1.1.0.3/WPA_Supplicant-0.5.8/Makefile ./
#cp defconfig?? .config
#vim .config
CC= arm-softfloat-linux-gnu-gcc -L /usr/local/ssl/lib/
???? CFLAGS += -I/usr/local/ssl/include/
???? LIBS += -L/usr/local/ssl/lib/
#make
生成wpa_supplicant
#cp wpa_supplicant? /source/rootfs/bin
#cp wpa_supplicant-0.7.2/wpa_supplicant/examples/wpa-psk-tkip.conf? /source/rootfs/etc/wpa_supplicant.conf
#vi /source/rootfs/etc/wpa_supplicant.conf
修改內(nèi)容如下:
# WPA-PSK/TKIP
?
ctrl_interface=/var/run/wpa_supplicant
?
network={
????? ssid="farsight"?? //填寫無線網(wǎng)絡(luò)的的用戶名
????? key_mgmt=WPA-PSK
????? proto=WPA
????? pairwise=TKIP
????? group=TKIP
????? psk="12345678"?? //填寫密碼
}
在開發(fā)板終端:
#mkdir –p /var/run/wpa_supplicant
?
4、 wireless_tools移植
下載wireless_tools.28.tar.bz2
#tar xvfj wireless_tools.28.tar.bz2
#cd wireless_tools.28
#mkdir ../wireless_tools
#vi Makefile
???? PREFIX=$(PWD)/../wireless_tools
???? CC= arm-softfloat-linux-gnu-gcc
???? AR= arm-softfloat-linux-gnu-ar
#make
#make install
#cp ../wireless_tools/lib/*? /source/rootfs/lib/
#cp ../wireless_tools/sbin/*? /source/rootfs/sbin/
?
5、 設(shè)置開發(fā)板啟動(dòng)腳本
insmod /rt73/rt73.ko
ifconfig rausb0 192.168.0.12
/bin/wpa_supplicant -B -irausb0 –c /etc/wpa_supplicant.conf –Dralink
?? 無線網(wǎng)卡將被激活。
本文來自CSDN博客,轉(zhuǎn)載請(qǐng)標(biāo)明出處:http://blog.csdn.net/hongtao_liu/archive/2010/06/18/5679195.aspx
總結(jié)
以上是生活随笔為你收集整理的RT73 wifi无线网卡驱动移植过程 和wpa支持的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ubuntu 启动时 设置多个ip 修
- 下一篇: UBUNTU上VNC 配置