是采用的RT73的wireless 网卡, TK_321g+,
http://www.ralinktech.com/ralink/Home/Support/Linux.html,它里面包含有rt73.bin,也有将rt73.Bin转成了c的C file,这个source code不需要rt73.bin文件了。
如果采用Linux kernel自带的Ralink driver,则先要选中wireless branch中的item,然后在device driver下的network 中的wireless下的ralink driver才能够选择,这个driver是需要rt73.bin文件的,请将这个文件copy到你的嵌入式Rootfs下的lib下的firmware 目录中,装载时会在这里读取。
2,编译
驱动的编译是比较容易的,如果遇到了unknown relocation 40:等的信息,则是缺少ARM的V4Bx的patch,patch的名叫arm_R_ARM_V4BX_fix.patch.bz2,
采用如下的方法来添加
$bunzip2 -dc arm_R_ARM_V4BX_fix.patch.bz2 |patch -p1
或 patch -p1 < arm_R_ARM_V4BX_fix.patch.bz2。
如果编译网络上下载的source code时出现了 没有定义 wireless_handlers 的error,则是您的kernel中没有定义CONFIG_WIRELESS_EXT,
3,配置
需要下载linux的wifi配置工具,我在这里下载的http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/wireless_tools.29.tar.gz,版本是29。
请修改其Makefile中的CC,AR,RANLIN 变量,如
CC = arm-linux-gcc
## Other tools you need to modify for cross compile (static lib only).
AR = arm-linux-ar
RANLIB = arm-none-linux-gnueabi-ranlib
然后我采用的,静态连接、不需要libM
BUILD_STATIC = y
BUILD_NOLIBM = y
,ok,编译完成后将生成 iwconfig,iwlist…等,只需iwconfig和iwlist就可以完成配置。(如果是动态编译,会生成 iwlib.29.so文件,copy到lib中)。如果出现invalid instruction,,则是您的编译设置有问题。
Ifconfig rausb0/wlan0 up
Need password
Iwconfig rausb0/wlan0 key on
Iwconfig rausb0/wlan0 key s:HongLin ####ASCII 的密码HongLin
Iwconfig rausb0/wlan0 essid tplink #####tplink 为ap端的名字
Iwconfig rausb0/wlan0 ap auto
Static ip
Ifconfig rausb0/wlan0 192.168.1.5 netmask 255.255.255.0
Dynamic ip
Udhcpc –b –i rausb0/wlan0 要保证有/usr/share/udhcpc和相关的 script文件(这个地址请看出错的提示吧)
动态的配置会吧nameserver 的name和gateway都配置好,
4,ping的问题,如果ping internet不过,
如ping www.google.com 无发解析,而nslookup 能得到其ip,则可能是您的kernel配置没有完全,请多选择network中的ip相关项。
转载请注明出处 http://herbertbt.blog.163.com/blog/static/57266582200981014331818/