特徴など
WL54SU は、USB プラグの根本の部分が回転する構造となっており、USB ポートへ装着したあと、本体を任意の方向へ向けることができるようになっています。しかし、この自在に向きを変える構造が細くなっていることから、強度的な問題もあるようです。無線LAN環境は、IEEEE 802.11 a/b/g 対応となっており、チップセットとして Atheros AR5005UX (AR5523) を使用している模様です。
今回入手した NEC Aterm WL54SU です。 |
Debian Wheezy Backports では動作しません
Debian Jessie では、AR5523 に標準対応ということになっていますが、私が現在使用している Debian Wheezy では、Backports 対応ということでした。下記の Debian Wiki を参考にして、カーネル 3.16.0 と AR5523 用のファームウェアのインストールを行いました。Debian Wiki -- ar5523
https://wiki.debian.org/ar5523
Backports のカーネルと AR5523 ファームウェアのインストール
# apt-get -t wheezy-backports install linux-image-$(uname -r|sed 's,[^-]*-[^-]*-,,') firmware-atheros
(注意事項)AR5523 のファームウェア(ar5523.bin)は、Backports 用の firmware-atheros の中に入っています。標準の firmware-atheros には存在しませんので注意が必要です。すでに標準の firmware-atheros をインストール済みの場合には、一度アンインストールを行ったあと、再度 Backports の firmware-atheros をインストールしてください。
以上のインストール作業を Debian Wiki に基づいて行いましたが、WL54SU の認識すらしてくれませんでした。
ar5523 ドライバ・モジュールへデバイス ID の追加
このところ積極的に行なっているドライバ・モジュールに対してデバイス ID の追加をこの ar5523 にも行なってみました。1. ar5523 のドライバ・モジュールの存在するディレクトリへ移動します。
# cd /usr/src/linux-source-3.16/drivers/net/wireless/ath/ar5523/
2. ar5523.c を編集してデバイス ID (0409:0166) を 1786 行目あたりに追加します。
# vi ar5523.c
3. ビルドします。
# make -C /lib/modules/$(uname -r)/build M=$(pwd)
4. 出来上がった ar5523.ko をコピーしてインストールします。
# cp ar5523.ko /lib/modules/3.16.0-0.bpo.4-686-pae/kernel/drivers/net/wireless/ath/ar5523/ar5523.ko
5. カーネル・モジュールの依存関係の解決をします。
# depmod -a
6. 動作確認をします。
modprobe で ar5523 ドライバ・モジュールを一度アンロードしたあと、再度 WL54SU を装着します。
# modprobe -r ar5523
デバイス ID の追加では動作しません
残念ながらデバイス ID を単純に追加するだけでは、認識までするものの動作しませんでした。dmesg でカーネルからのメッセージを確認をすると次の内容が気になりました。could not initialize adapter
初期化が出来ていないというもので、ファームウェアが WL54SU 本体に導入されなかったのか、不適合であった場合によく見かけるものです。
そこで改めてデバイス ID のテーブルを観察してみました。そして出来上がった ar5523.ko のモジュール情報も観察してみました。
# modinfo ar5523すると不思議な現象を発見しました。
alias: usb:v0409p0167d*dc*dsc*dp*ic*isc*ip*in*
alias: usb:v0409p0166d*dc*dsc*dp*ic*isc*ip*in*
NEC のメーカ ID の 0409 はデバイス ID テーブルには、一個しか存在していないはずなのに、二個の 0409 のデバイスが登録されているのです。それも連続して二個です。他のデバイスも同様の状態となっていました。
Debian Wiki の ar5523 のページの対応デバイスの部分を見て原因がはっきりしました。デバイス ID が二個並んでおり、そのうち一つは「ファームウェア無し」のものでした。どうも ar5523 ドライバ・モジュールをビルドすると、自動的に二つのデバイス ID が登録されてしまうようです。
デバイス ID の対策を行なって再ビルド
ar5523.c の 1745 行目からの部分を観察すると、デバイス ID テーブルの ID そのものとデバイス ID に 1 を加算した ID を登録していることが判明しました。#define AR5523_DEVICE_UG(vendor, device) \
{ USB_DEVICE((vendor), (device)) }, \
{ USB_DEVICE((vendor), (device) + 1), \
.driver_info = AR5523_FLAG_PRE_FIRMWARE }
#define AR5523_DEVICE_UX(vendor, device) \
{ USB_DEVICE((vendor), (device)), \
.driver_info = AR5523_FLAG_ABG }, \
{ USB_DEVICE((vendor), (device) + 1), \
そこで、デバイス ID テーブルへ登録する デバイス ID から 1 を差し引いたものを登録してみました。
AR5523_DEVICE_UX(0x0409, 0x0165), /* NEC / WL54SU */
この状態で再度 ar5523 ドライバ・モジュールを再ビルドして動作確認を行なってみました。
新しいデバイス ID の登録で動作しました
デバイス ID を 1 ほど減算した ID を登録した ar5523 ドライバ・モジュールで動作しました。ただし 2.4GHz 帯の IEEE 802.11 b/g モードだけの動作でした。なぜか 5GHz 帯の IEEE 802.11 a では動作しませんでした。その他の ar5523 に依存する無線LANアダプタの確認
手元に AR5523 チップを使用している無線LANアダプタがあります。これらのデバイス ID を追加してar5523 ドライバ・モジュールを再ビルドしてみました。- コレガ CG-WLUSB2GS 07aa:0031
- バッファロー WLI-U2-KAMG54 0411:0092
- バッファロー WLI-U2-AMG54HP 0411:00aa
AR5523 チップ搭載の無線 LAN アダプタです。 |
ar5523.c への登録例
AR5523_DEVICE_UG(0x07aa, 0x0030), /* Corega K.K. / CG-WLUSB2GS */コレガ CG-WLUSB2GS
AR5523_DEVICE_UX(0x0411, 0x0091), /* Buffalo / WLI-U2-KAMG54 */
AR5523_DEVICE_UX(0x0411, 0x00a9), /* Buffalo / WLI-U2-AMG54HP */
IEEE 802.11 b/g 動作の製品ですが、ちゃんと認識して、正常に動作しました。
コレガ CG-WLUSB2GS |
バッファロー WLI-U2-KAMG54
IEEE 802.11 a/b/g 動作の製品ですが、WL54SU と同様に 2.4GHz 帯の IEEE 802.11 b/g モードだけの動作となっていました。
バッファロー WLI-U2-KAMG54 |
バッファロー WLI-U2-AMG54HP
IEEE 802.11 a/b/g 動作の製品ですが、WL54SU と同様に 2.4GHz 帯の IEEE 802.11 b/g モードだけの動作となっていました。
バッファロー WLI-U2-AMG54HP |
現時点では、手持ちの AR5523 チップを使用した無線 LAN アダプタで 5GHz 帯の IEEE 802.11 a モードで動作するものはありませんでした。残念ながら原因は不明です。
ダウンロード
次の URL から上記の四種類の無線 LAN アダプタのデバイス ID を追加した ar5523.ko ドライバ・モジュールをダウンロードすることができます。Debian Wheezy Backports (Linux-3.16.0) で使用可能なはずです。自己責任でどうぞ!ar5523.ko (デバイス ID 追加済みドライバ・モジュール)
https://drive.google.com/file/d/0B5QdaY5lu2e3X2pmQTQ4b29YdE0/view?usp=sharing
ar5523.c (デバイス ID 追加済みソースコード)
https://drive.google.com/file/d/0B5QdaY5lu2e3UVQ2RnJwRzVCWU0/view?usp=sharing
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。