pcmcia-cs: tulip_cb driver

警告:横線より下の情報は古くなっています。 2.4系の最近のカーネルでは、tulip_cbでCB-TXDが使用できます(2.4.20で確認)。 カーネルに組込むか、モジュールにする場合にはmurasakiなどと併用してください。

2003/05/17 修正

pcmcia-cs に含まれる tulip_cb を ADMtekAN985 を 使っている Corega の CardBus 10/100BASE-T Ethernet Card CB-TXL に対応させるための情報です。

なお、同じ Corega の CardBus 10/100BASE-T Ethernet Card CB-TXD は RTL-8139 を使っているため、このページの内容は適用できません。

2001/09/11 レイアウトを修正。前振りの追加以外に内容的な変更はありません。

リンク


pcmcia-cs 3.1.25

pcmcia-cs 3.1.25 の tulip_cb.c には、 下記のコード(pcmcia-cs 3.1.23 へのパッチ)が含まれるようになりました。 一切の変更なしで CB-TXL を認識、動作します。


tulip.c 0.92p

tulip.c:v0.92p 11/28/2000 というバージョンには、 下記のパッチと同等のコード(Accton EN1217/EN2242 のエントリ)が入っていますが、 こちらは未テストです。


tulip.c 0.92m

[debian-users:26320] で流した情報ですが、 http://www.scyld.com/network/tulip.html にある、 tulip.c:v0.92m 9/22/2000 というバージョンでは、 以下のパッチをあててビルドした tulip_cb.o で CB-TXL を正常に認識します。

--- tulip.c.orig        Sat Sep 23 12:46:55 2000
+++ tulip.c     Sun Jan  7 18:04:56 2001
@@ -370,6 +370,8 @@
          TULIP_IOTYPE, TULIP_SIZE1, COMET },
        { "ADMtek Centaur-C", { 0x19851317, 0xffffffff },
          TULIP_IOTYPE, TULIP_SIZE1, COMET },
+       { "ADMtek Centaur-C (Corega CB-TXL)", { 0x12161113, 0xffffffff },
+         TULIP_IOTYPE, TULIP_SIZE1, COMET },
        { "ADMtek Centaur-C (Linksys v2)", { 0xab0213d1, 0xffffffff },
          TULIP_IOTYPE, TULIP_SIZE1, COMET },
        { "ADMtek Centaur-C (Linksys)", { 0xab0313d1, 0xffffffff },

ビルドするときには、上記のページからたどれるところにある netdrivers.tgz を適当なディレクトリに展開し、上のパッチを当てた後で、以下のように make します。

$ make PCMCIA=/usr/src/modules/pcmcia-cs/include tulip_cb.o
あとは、
# install -o root -g root -m 755 -p tulip_cb.c /lib/modules/`uname -r`/pcmcia/
# depmod
して、カードを挿せば認識するはずです。


pcmcia-cs 3.1.23

pcmcia-cs 3.1.23 に含まれる tulip_cb.c は、バージョン番号が v0.91g-ppc のままですが、ADMTek AN985 (Centaur-C) に対応するコードが取り込まれています。 また、/etc/pcmcia/config に Corega CB-TXL のエントリも追加されていますが、 そのままでは CB-TXL を使うことはできません。

この件について、debian-users@jp にて、さとうふみやす氏に情報をいただきました。[debian-users:26227]

以下のパッチで正常に認識するようになります。

--- clients/tulip_cb.c.dist     Sat Dec 16 07:00:15 2000
+++ clients/tulip_cb.c  Fri Dec 29 02:17:39 2000
@@ -3297,6 +3297,7 @@
        case 0x19851317:
        case 0xab0213d1:
        case 0xab0313d1:
+       case 0x12161113:        /* Corega CB-TXL */
                chip_idx = CENTAUR;
                break;
        default:

なお、100BASE のスイッチの環境では、以下のパッチもあてておくと、 わずかながら速度が向上します。

--- clients/tulip_cb.c.dist     Sat Dec 16 07:00:15 2000
+++ clients/tulip_cb.c  Sun Jan  7 20:16:52 2001
@@ -1533,7 +1533,7 @@
                tp->csr6  = 0x32400000;
        } else if (tp->chip_id == COMET || tp->chip_id == CENTAUR) {
                dev->if_port = 0;
-               tp->csr6 = 0x00040000;
+               tp->csr6 = 0x00240000;
        } else if (tp->chip_id == AX88140) {
                tp->csr6 = tp->mii_cnt ? 0x00040100 : 0x00000100;
        } else


tulip_cb.c patch for corega CB-TXL[patch: 6018 byte]

Corega の CardBus 10/100BASE-T Ethernet Card CB-TXL を pcmcia-cs で使えるようにするパッチです。 pcmcia-cs 3.1.16 から 3.1.20 までに含まれる tulip_cb.c 0.91g-ppc に対するものです。

pcmcia-cs 3.1.21,3.1.22 の tulip_cb.c に対しても特に問題なく適用できることを確認しています。


Copyright (C) 2000-2001 WATANABE Katsuyuki