IBM EtherJet CardBus Adapter

This is an addendum to my ThinkPad 390E page. It adds some details on getting the pcmcia network card that comes in the Wake Forest model to work.

  1. Get the current pcmcia-cs source package from sourceforge and unpack it (I recommend version 3.1.22 or higher -- the relevant driver has been improved recently).
  2. Configure, compile and install the pcmcia-cs package. At the configure stage, be sure to say "yes" to cardbus support.
  3. Add an entry in /etc/pcmcia/config for your card. I have the following
    card "10/100 EtherJet CardBus"
      manfid 0x00a4, 0x0113
      bind "tulip_cb"
    

Now you should be able to start the card services and get online with the CardBus Adapter. The above holds good with 2.2.N linux kernels.

Tip: If you find that after starting card services the EtherJet card is not receiving any network packets, try putting it into "promiscuous" mode with the command

/sbin/ifconfig eth0 promisc
Once it's up and running, you maybe able to turn this off:
/sbin/ifconfig eth0 -promisc

Update for Linux 2.4 kernels

Getting the EtherJet card to work with 2.4 series kernels was a bit fiddly.

I configured support for pcmcia thus in my kernel build:

# PCMCIA/CardBus support
CONFIG_PCMCIA=y
# PCMCIA SCSI adapter support
# CONFIG_SCSI_PCMCIA is not set
# PCMCIA network device support
CONFIG_NET_PCMCIA=y
CONFIG_PCMCIA_3C589=m
# CONFIG_PCMCIA_3C574 is not set
# CONFIG_PCMCIA_FMVJ18X is not set
CONFIG_PCMCIA_PCNET=m
# CONFIG_PCMCIA_NMCLAN is not set
# CONFIG_PCMCIA_SMC91C92 is not set
# CONFIG_PCMCIA_XIRC2PS is not set
# CONFIG_PCMCIA_IBMTR is not set
CONFIG_PCMCIA_XIRTULIP=m
# CONFIG_NET_PCMCIA_RADIO is not set
CONFIG_PCMCIA_SERIAL=y
# PCMCIA character device support
CONFIG_PCMCIA_SERIAL_CS=m
CONFIG_PCMCIA_SERIAL_CB=m
To go with the 2.4 kernel, I downloaded the pcmcia card services package, 3.1.24. The code offered in this package overlaps with that offered in the 2.4 kernel tree in a potentially confusing way. Anyway, I did make config in the pcmcia package directory and built cardmgr and friends in the usual way.

This leaves the question of which kernel module to load for the EtherJet card. In the kernel build I made tulip.o and xircom_tulip_cb.o. But I couldn't get either of these to do anything with the EtherJet card. From past experience, the tulip_cb.o from the pcmcia package had done the job, but currently that module is not built by default when you do make all in the pcmcia package tree, if kernel support for pcmcia is detected (CONFIG_PCMCIA=y).

My fix was to make and install tulip_cb.o manually. In the pcmcia-3.1.24 dir I did:

cd clients
make tulip_cb.o
install tulip_cb.o /lib/modules/2.4.1/pcmcia


Allin Cottrell (cottrell@ricardo.ecn.wfu.edu) February 1, 2001