2012年10月28日 星期日

建立無線網路

這個週未,拿到了一片usb的無線網卡,在桌面電腦ubuntu上看起來一切都是正常的,
但是我把這片網路放到 arm 的新平台上,使用linux-3.0.8,使用這個無線網卡。

首先要選驅動程式
Device Drivers --->
[*] Network device support --->
[*] Wireless LAN --->
<*> Ralink driver support --->
<*> Ralink rt27xx/rt28xx/rt30xx (USB) support

選了無線網卡的驅動程式後,再重新的編譯kernel後再燒入主片中。
現在就要開始使用無線網路了!

開機後要再開始使用無線網卡了!

先看usb有沒有抓到
#lsusb

Bus 001 Device 001: ID 1d6b:0002
Bus 002 Device 001: ID 1d6b:0001
Bus 001 Device 002: ID 148f:3070 <--這一張就是無線網卡


#cat /proc/net/dev
face |bytes packets errs drop fifo frame compressed multicast|bytes packd
lo: 0 0 0 0 0 0 0 0 0 0
wlan0: 0 0 0 0 0 0 0 0 0 0 <-無線
eth0: 28192 205 0 0 0 0 0 0 3662 0

啟動無線網卡
#ifconfig wlan0 up
phy0 -> rt2x00lib_request_firmware: Error

看來是有問題的查看到要的是什麼firmware
在kernel中 drivers/net/wireless/rt2x00/rt2x00firmware.c
修改

fw_name = rt2x00dev->ops->lib->get_firmware_name(rt2x00dev);
if (!fw_name) {
ERROR(rt2x00dev,
"Invalid firmware filename.\n"
"Please file bug report to %s.\n", DRV_PROJECT);
return -EINVAL;
}

-INFO(rt2x00dev, "Loading firmware file '%s'.\n", fw_name);
+ERROR(rt2x00dev, "Loading firmware file '%s'.\n", fw_name);

重燒kernel之後就看到的firmware的名字了。
phy0 -> rt2x00lib_request_firmware: Error - Loading firmware file 'rt2870.bin'.
原來找需要的firmware是rt2870.bin,我的電腦可以用那我的電腦應該有吧!我就找了一下,果然
在/lib/firmware資料夾下有rt2870.bin拿過來用果然就可一了!

沒有留言: