Linuxでkai(アダプタ編) > rt73usb

Total: - (Today: - Yesterday: - )
最終更新日 2010/08/09 20:02

ここでは、debian lenny上のXLinkKaiでBUFFALO WLR-UC-G (Ralink RT2571WF)をカーネルソースのドライバモジュールの再構築をして使えるようにしたときのメモです。
当然ながらインストールなどすべての作業は 自己責任でお願いします。



debian lenny(2.6.26-2-686)に入ってるrt73usbドライバは、標準ではWLR-UC-G(Ralink RT2571WF)に対応していませんでした。
カーネルソースに含まれるドライバモジュールrt73usbのソースコードをほんの少し修正して、コンパイルおよびインストールします。
余談ですがubuntuやfedoraでは、この作業は不要です。最初から使えます。


1.ドライバのインストール

    #このページでは、"debian lenny"での記載をしています。
  • OS に関する情報の確認。
$ uname -a
    Linux utsusemi 2.6.26-2-686 #1 SMP Wed May 12 21:56:10 UTC 2010 i686 GNU/Linux
  • WiFiアダプタをPCに取り付けます。
  • WiFiアダプタのVID/PIDを確認します。
$ lsusb
    Bus 002 Device 005: ID 0411:0116 MelCo., Inc.
    #このアダプタのVenderIDは0411、ProductIDは0116になります。
  • カーネルソースをダウンロードします。
$ sudo aptitude install linux-source-2.6.26
$ cd /usr/src
$ sudo tar zxvf linux-source-2.6.26.tar.bz2
  • ドライバのソースを修正します。
$ cd /usr/src/linux-source-2.6.26
$ sudo cp $PWD/drivers/net/wireless/rt2x00/rt73usb.c{,.org}
$ sudo vi $PWD/drivers/net/wireless/rt2x00/rt73usb.c
  • ドライバをコンパイルします。
$ cd /usr/src/linux-source-2.6.26
$ sudo make -C "/lib/modules/`uname -r`/build" M="$PWD/drivers/net/wireless/rt2x00/" clean
$ sudo make -C "/lib/modules/`uname -r`/build" M="$PWD/drivers/net/wireless/rt2x00/" modules
  • オリジナルのドライバの所在を確認します。
$ sudo modprobe -l | grep rt73usb
    /lib/modules/2.6.26-2-686/kernel/drivers/net/wireless/rt2x00/rt73usb.ko
  • オリジナルのドライバをバックアップします。
$ sudo cp /lib/modules/`uname -r`/kernel/drivers/net/wireless/rt2x00/rt73usb.ko{,.org}
  • コンパイルしたドライバをインストールします。
$ sudo cp $PWD/drivers/net/wireless/rt2x00/rt73usb.ko /lib/modules/`uname -r`/kernel/drivers/net/wireless/rt2x00/
  • ドライバをロードします。
$ sudo modprobe rt73usb
  • ドライバ情報を確認します。
$ sudo lsmod | grep rt73usb
    rt73usb 22560 0
    ...
$ sudo modinfo rt73usb | head -10
    filename: /lib/modules/2.6.26-2-686/kernel/drivers/net/wireless/rt2x00/rt73usb.ko
    license: GPL
    firmware: rt73.bin
    description: Ralink RT73 USB Wireless LAN driver.
    version: 2.1.4
    ...
$ sudo ifconfig
    ...
    wlan1 Link encap:Ethernet HWaddr 00:16:01:??:??:??
    ...
$ sudo iwconfig
    ...
    wlan1 IEEE 802.11 ESSID:""
    ...

2.ドライバとインタフェースの確認

  • rt73usb初期化スクリプトを作成します。
$ sudo touch /usr/local/bin/rt73usb_adhoc.sh
$ sudo chmod 755 /usr/local/bin/rt73usb_adhoc.sh
$ sudo vi /usr/local/bin/rt73usb_adhoc.sh
    #!/bin/sh
    ifconfig wlan1 down
    sleep 2
    dbus-send --system --type=method_call --dest=org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.DBus.Properties.Set string:org.freedesktop.NetworkManager string:WirelessEnabled variant:boolean:false
    sleep 2
    iwconfig wlan1 channel 1
    iwconfig wlan1 mode ad-hoc
    iwconfig wlan1 essid PSP_AULJM05500_L_MHP2Q000
    ifconfig wlan1 up
  • インタフェースをXLinkKai用に初期化します。
$ sudo /usr/local/bin/rt73usb_adhoc.sh
  • インタフェース情報を確認します。
$ sudo ifconfig wlan1
    wlan1 Link encap:Ethernet HWaddr 00:16:01:??:??:??
      inet6 addr: xxxx::xxx:xxx:xxxx:xxxx/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
      RX packets:1660 errors:0 dropped:0 overruns:0 frame:0
      TX packets:4379 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000
      RX bytes:321886 (314.3 KiB) TX bytes:895513 (874.5 KiB)
$ sudo iwconfig wlan1
    wlan1 IEEE 802.11 ESSID:"PSP_AULJM05500_L_MHP2Q000"
      Mode:Ad-Hoc Frequency:2.412 GHz Cell: BE:E8:7A:??:??:??
      Tx-Power=13 dBm
      Retry min limit:7 RTS thr:off Fragment thr=2352 B
      Encryption key:off
      Link Quality:0 Signal level:0 Noise level:0
      Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
      Tx excessive retries:0 Invalid misc:0 Missed beacon:0
      #wlan0、wlan1、wlan2、...はお使いの環境によって異なります。
        お使いの環境に合わせて適宜読み替えてください。


3.kai設定

  • XLink Kai ConfigurationのNetworkAdapterは"wlan1"(↑の場合)を選択します。
    #XLink Kai Configurationは、kai設定編のkai設定を参照してください。

4.その他メモ

# プチ情報ですが、wlan0、wlan1、wlan2、...とWiFiアダプタのMACアドレスとの関連は以下のファイルに記録されています。
$ cat /etc/udev/rules.d/70-persistent-net.rules
    # PCI device 0x168c:0x001a (ath_pci)
    SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:90:cc:??:??:??", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="ath*", NAME="ath0"
    # USB device 0x07aa:0x002e (rt73usb)
    SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0a:79:??:??:??", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan0"
    # USB device 0x0411:0x0116 (rt73usb)
    SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:16:01:??:??:??", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan1"

このページについての指摘や情報がありましたらコメントに投稿をお願いします。


以上で主な設定は終わり。


コメント

名前:
コメント:
最終更新:2010年08月09日 20:02
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。