今回入手した I-O DATA WN-G54/BB です。 |
WN-G54/BB の裏面です。 |
概要
本品はソフトバンク BB のモデムなどに付属して配布されている商品のようで、一般発売をしていないものでした。そのためかインターネット上でも情報が大変少なく、今回動作させるまでに大変苦労しました。ドライバ・モジュールの再ビルドに失敗
本品の情報が極端に少なかったこともあり、思い込みでドライバ・モジュールの再ビルドを行ってしまいました。外観が酷似している同社製品の WN-G54/US と同等と思い込んでいました。そのため搭載されているチップが Atheros AR5005UG との判断をして、ar5523 モジュールへデバイス ID (04bb:0936)を追加して再ビルドを行いました。しかし動作しませんでした。
AR5005UG へ対応している zd1211rw モジュールで動作するかもしれないと考えて、zd1211rw モジュールへデバイス ID を追加して再ビルドを行いましたが、これも動作しませんでした。
WN-G54/BB を分解
どうも内部チップに AR5005UG とは違うチップが使用されている模様です。そこで本体を分解して、内部のチップを確認してみました。分解した WN-G54/BB です。 |
USB プラグの根元からプラスチック筐体を上下に分割しました。小さな爪で上下の筐体がつなぎ留められていました。
WN-G54/BB の筐体の爪の様子です。 |
そして姿を現したチップを確認すると CONEXANT (コネクサント)社の GW3887 というチップが搭載されていました。ネット上を検索すると Intersil (インターシル)社の ISL3887 との互換チップのようでした。
CONEXANT GW3887 チップが搭載されていました。 |
p54usb モジュールを再ビルド
そこで ISL3887 チップに対応した p54usb モジュールへデバイス ID (04bb:0936)を追加して再ビルドを行いました。--- linux-source-3.16/drivers/net/wireless/p54/p54usb.c.orig 2016-01-01 18:23:06.826771715 +0900
+++ linux-source-3.16/drivers/net/wireless/p54/p54usb.c 2016-01-01 18:26:52.959788171 +0900
@@ -112,6 +112,7 @@
{USB_DEVICE(0x413c, 0x5513)}, /* Dell WLA3310 USB Wireless Adapter */
{USB_DEVICE(0x413c, 0x8102)}, /* Spinnaker DUT */
{USB_DEVICE(0x413c, 0x8104)}, /* Cohiba Proto board */
+ {USB_DEVICE(0x04bb, 0x0936)}, /* I-O DATA WN-G54/BB */
{}
};
動作確認
出来上がった p54usb モジュール(p54usb.ko)をカーネル・ドライバへ組み込んで動作確認を行いました。動作はしましたが、USB1.1 のポートへ装着したときに無線 LAN アクセスポイントへ接続失敗する場合がありました。USB2.0 のものでは問題は発生しませんでした。なお WN-G54/BB を動作させるには、このドライバ・モジュールの他に WN-G54/BB の内部で使用するファームウェアも事前にパソコンへインストールしておく必要があります。
prism54 - Debian Wiki
https://wiki.debian.org/prism54
$ wget https://daemonizer.de/prism54/prism54-fw/fw-usb/2.13.25.0.lm87.arm --no-check-certificate
$ su
# mv 2.13.25.0.lm87.arm /lib/firmware/isl3887usb
ダウンロード
今回ビルドしたドライバ・モジュールを「Debian 用ドライバ保管庫」へアップロードしています。自由にダウンロードして使用してください。ただし自己責任でお願いいたします。該当する Debian バージョンのホルダの中にあるドライバ・モジュールの p54usb.ko をダウンロードするか、私がビルドしたドライバ・モジュールを一纏めにした圧縮ファイル(tar.gz)をダウンロードして使用してください。ドライバ・モジュールを一纏めにした圧縮ファイルのダウンロードをお奨めします。
ドライバ・モジュールを一纏めにした圧縮ファイルの場合、解凍後、ドライバ・モジュールのインストール・スクリプト modules-update.sh を特権ユーザで実行させると、自動的にドライバ・モジュールをインストールしてくれます。
$ su
# ./modules-update.sh
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。