Linux Tips

LinuxでBCM43xx搭載の無線LANカードを使うには

北浦訓行
2006/8/17

 LinuxでBCM43xx搭載の無線LANカードを使用するには、NdisWrapperが必要だった(LinuxでWindows用無線LANドライバを利用するには参照)。だが、カーネル2.6.17からBCM43xxシリーズのドライバがサポートされたため、簡単に使えるようになった。ここでは、Fedora Core 5(FC5)を例に、BCM43xxシリーズのドライバを使用する方法を説明する。

 カーネルでドライバがサポートされたため、[ネットワーク設定](system-configt-network)で自動的にハードウェアが認識される。

BCM4306が認識された[ネットワーク設定]の[ハードウェア]パネル

 このまま[デバイス]パネルで[新規]ボタンをクリックし、新規にデバイスタイプを登録すれば使えるような気がするが、その前にbcm43xx-fwcutterというツールでWindowsのドライバからファームウェアを取り出す必要がある。

 bcm43xx-fwcutterは、http://bcm43xx.berlios.de/にtarボールが用意されている。FC5の場合はFedora Extrasにパッケージが用意されているため、yumコマンドでインストール可能だ。

# yum install bcm43xx-fwcutter

 bcm43xx-fwcutterをインストールしたら、-lオプションを付けてbcm43xx-fwcutterコマンドを実行する。これにより、サポートされているドライバの一覧が表示される。

# bcm43xx-fwcutter -l
bcm43xx-fwcutter version 004

Extracting firmware is possible from these binary driver files:

<filename>     <version>             <802.11><MD5 checksum>

AppleAirPort2  3.30.15.p3 (3.1.1b2)   a/b/g  a8275cc50107a13b5
be15d067b2245a0
AppleAirPort2  3.30.15.p3 (3.1.2b3)   a/b/g  55134c1298abaa85f
190331f016d4d36
(省略)

 また、/usr/share/doc/bcm43xx-fwcutter-004/READMEには、ドライバのバージョンとダウンロード可能なURLが記述されている。GNOME端末の場合、URLを右クリックして[リンクを開く]を選択することでそのファイルをダウンロードできるので便利だ。

 ドライバをダウンロードしたら展開する。筆者がダウンロードしたファイル(Windowsの自己展開ファイル)は、lhaで展開できた。FC5の場合、lhaはFedora Extrasからダウンロードできる。

$ lha x wdrv_660.exe
$ cd bcm/wdrv_660/cbg54/mdriver
$ ls -l bcmwl5.sys
-rw-rw-r-- 1 nori nori 338176 6月 7 2004 mdriver/bcmwl5.sys

 ドライバを展開したら、rootでログインしてファームウェアの切り出しを行う。が、その前に、-iオプションで内容を確認する。

$ su
パスワード(P):
# bcm43xx-fwcutter -i bcmwl5.sys
bcm43xx-fwcutter can cut the firmware out of bcmwl5.sys

  filename :  bcmwl5.sys
  version  :  3.60.7.5
  MD5      :  d2ae116c741c215ef3ef68603db9917f

 切り出しは、以下のコマンドで行う。/lib/firmwareは切り出したファームウェアを保存するディレクトリで、bcmwl5.sysがWindows用のドライバだ。

# bcm43xx-fwcutter -w /lib/firmware/ bcmwl5.sys
bcm43xx-fwcutter can cut the firmware out of bcmwl5.sys

  filename :  bcmwl5.sys
  version  :  3.60.7.5
  MD5      :  d2ae116c741c215ef3ef68603db9917f

extracting bcm43xx_microcode2.fw ...
extracting bcm43xx_microcode4.fw ...
extracting bcm43xx_microcode5.fw ...
(省略)

 ファームウェアを切り出したら、念のため/lib/firmwareディレクトリを確認する。

# ls /lib/firmware/
bcm43xx_initval01.fw  bcm43xx_initval06.fw  bcm43xx_microcode2.fw
bcm43xx_initval02.fw  bcm43xx_initval07.fw  bcm43xx_microcode4.fw
bcm43xx_initval03.fw  bcm43xx_initval08.fw  bcm43xx_microcode5.fw
bcm43xx_initval04.fw  bcm43xx_initval09.fw  bcm43xx_pcm4.fw
bcm43xx_initval05.fw  bcm43xx_initval10.fw  bcm43xx_pcm5.fw

 以上で準備は完了だ。システムを再起動したら、[ネットワーク設定](system-configt-network)でデバイスを登録する。

Linux Tips Index



 Linux Squareフォーラム Linux Tipsカテゴリ別インデックス
インストール/RPM ブート/ブートローダ
ファイル操作 環境設定
ユーザー管理 コンソール/ターミナル
X Window System セキュリティ
トラブルシューティング 他OS関係
ネットワーク ハードウェア
Webサーバ Samba
GNOME KDE
OpenOffice.org エミュレータ
ソフトウェア そのほか/FAQ
全Tips公開順インデックス Linux Tips月間ランキング
Linux Squareフォーラム全記事インデックス

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します


Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Linux & OSS 記事ランキング

本日 月間