コレガのPCMCIA LANカード(CG-LAPCCTXD)はVine Linux3.xでは使えたようですが、Vine Linux4.0/4.1/4.2では使えません。Vine Linux4.0/4.1/4.2で使うためにはドライバ(カーネルモジュール)の修正が必要なようです。
2.Linux最新カーネルをダウンロードし修正を確認する
私がダウンロードした時点では、最新カーネルのバージョンは2.6.20でした。カーネルソースツリーの
drivers/net/pcmcia/pcnet_cs.c
を確認すると、1620行あたりに
PCMCIA_DEVICE_PROD_ID12("corega K.K.", "(CG-LAPCCTXD)", 0x5261440f, 0x73ec0d88),
という部分があり、最新カーネルではCG-LAPCCTXDに対応している様子がうかがえます。一方、Vine Linux4.0/4.1がベースとしているカーネル2.6.16ではこのような部分はありません。
もう1つ、これはCG-LAPCCTXDをスロットに挿入すると気づきますが、カーネル2.6.16はCG-LAPCCTXDを無線LANカードとして 誤って認識するようです。このためかカーネル2.6.20では
drivers/net/wireless/hostap/hostap_cs.c
の836行目は
/* PCMCIA_DEVICE_MANF_CARD(0xc00f, 0x0000), conflict with pcnet_cs */
という修正が入っています。
3.Vine Linux4.0/4.1/4.2のカーネルをダウンロードしドライバ(モジュール)を再構築する
必要なことは、Vine Linux4.xのカーネルのダウンロードを行い
- drivers/net/pcmcia/pcnet_cs.c
- drivers/net/wireless/hostap/hostap_cs.c
- make modules
としておきます。あとはできあがった
- pcnet_cs.ko
- hostap_cs.ko
4./etc/pcmcia/configファイルにエントリを追加する
最後に/etc/pcmcia/configファイルにCG-LAPCCTXDのエントリを追加し、パソコンを再起動します。追加するエントリは以下のも のです。
card "corega CG-LAPCCTXD Ethernet"
version "corega K.K.", "(CG-LAPCCTXD)", "(HardwareFirmwareVer.)", "(nothing)"
manfid 0xc00f, 0x0000
bind "pcnet_cs"
cardの行にある"名前"についてはわかりやすいものを適当につけています。versionの行とmanfidの行にある内容については
# /sbin/pccardctl ident
で得られる内容を書いています。
以上で、私が実施した方法を書きましたが、設定や環境によってはこの方法で必ずしもうまくいくとは限りません。あくまで自己責任で行ってください。
1 件のコメント:
kernel 2.6.13あたりから、/etc/pcmcia/configは、使われなくなったので、このファイルを書き換える必要はありません。
コメントを投稿