主题 : 在RAMDISK上使用scan-wifi等命令 复制链接 | 浏览器收藏 | 打印
级别: 侠客
UID: 85651
精华: 0
发帖: 51
金钱: 255 两
威望: 51 点
综合积分: 102 分
注册时间: 2013-01-07
最后登录: 2015-09-04
楼主  发表于: 2014-06-03 11:26

 在RAMDISK上使用scan-wifi等命令

本来想用友善开发的wifi工具来使用SDIO的wifi模块,在自带的linux系统下,使用scan-linux命令可以有如下串口消息:
[root@FriendlyARM /]# scan-wifi
cfg80211: Calling CRDA to update world regulatory domain
libertas_sdio: Libertas SDIO driver
libertas_sdio: Copyright Pierre Ossman
libertas_sdio mmc1:0001:1: (unregistered net_device): fc:4d:d4:6d:d5:8b, fw 9.70.3p36, cap 0x00000303
libertas_sdio mmc1:0001:1: wlan0: Marvell WLAN 802.11 adapter
usbcore: registered new interface driver ath9k_htc
usbcore: registered new interface driver rt73usb
usbcore: registered new interface driver rt2800usb

rtw driver version=v3.3.2_3192.20120103
usbcore: registered new interface driver rtl8192cu
usbcore: registered new interface driver zd1211rw
         93% ChinaNet
         ....... ..........
19 Access Point Found
能够很成功的搜索到19个接入点。
将scan-wifi的库文件移植到ramdisk后,使用scan-wifi命令,发现未发现接入点:
/ # scan-wifi
cfg80211: Calling CRDA to update world regulatory domain
libertas_sdio: Libertas SDIO driver
libertas_sdio: Copyright Pierre Ossman
libertas_sdio mmc1:0001:1: (unregistered net_device): fc:4d:d4:6d:d5:8b, fw 9.70.3p36, cap 0x00000303
libertas_sdio mmc1:0001:1: wlan0: Marvell WLAN 802.11 adapter
usbcore: registered new interface driver ath9k_htc
usbcore: registered new interface driver rt73usb
usbcore: registered new interface driver rt2800usb

rtw driver version=v3.3.2_3192.20120103
usbcore: registered new interface driver rtl8192cu
usbcore: registered new interface driver zd1211rw
0 Access Point Found

级别: 侠客
UID: 85651
精华: 0
发帖: 51
金钱: 255 两
威望: 51 点
综合积分: 102 分
注册时间: 2013-01-07
最后登录: 2015-09-04
1楼  发表于: 2014-06-04 16:09
哎,看来只能自问自答了。
成功的搜索到无线信号,未能搜索到无线信号的原因在于没有缺乏库文件,但是串口完全没有报错,不知道为啥。
首先还是需要在ramdisk文件系统中install wirelesstools,下载网址:http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html
放在linux系统中,解压,修改
ifndef PREFIX
  PREFIX = rootfs/usr/
endif
这里是修改的需要安装wirelesstools的目录
## Compiler to use (modify this for cross compile).
CC = arm-linux-gcc
修改交叉编译工具
然后make、make install,就可以发现ramdisk的usr/sbin下多了iwlist等命令,然后就可以使用scan-wifi命令搜索网络了:
级别: 侠客
UID: 85651
精华: 0
发帖: 51
金钱: 255 两
威望: 51 点
综合积分: 102 分
注册时间: 2013-01-07
最后登录: 2015-09-04
2楼  发表于: 2014-06-04 16:11
scan-wifi能够很好地工作,但是随后的start-wifi命令就不好用了,出现了报错:
/ # start-wifi wpa2 [SSID] [KEY]
sh: wpa_supplicant: not found
udhcpc (v1.17.2) started
Sending discover...
udhcpc: sendto: Network is down
Read error: Network is down, reopening socket
Sending discover...
udhcpc: sendto: Network is down
Read error: Network is down, reopening socket
Sending discover...
udhcpc: sendto: Network is down
Read error: Network is down, reopening socket
Read error: Network is down, reopening socket
Read error: Network is down, reopening socket
Read error: Network is down, reopening socket
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
3楼  发表于: 2014-06-04 22:49
sh: wpa_supplicant: not found

还需要安装wpa_supplicant?
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 侠客
UID: 85651
精华: 0
发帖: 51
金钱: 255 两
威望: 51 点
综合积分: 102 分
注册时间: 2013-01-07
最后登录: 2015-09-04
4楼  发表于: 2014-06-06 10:27
友善开发的wifi命令估计就是调用wirelesstools和wpa_supplicant的相关文件,如果不安装的话,scan-wifi等命令就无法调用对应文件,也就无法配置对应的网络了