Known problems with the 3.1.13 PCMCIA release
=============================================

o There are reports that the tulip_cb module wedges when a Xircom
  CardBus card is shut down.  I don't have a suitable card to test,
  and can't reproduce the problem with other tulip-based cards.  I
  don't know of a workaround at this time.

o The airo_cs driver is broken for 2.3.48 and later kernels.  If you
  get stuck trying to build this, do:

    touch wireless/airo.o

  APM support is also broken for the newest 2.3.* kernels.  To build
  the standalone modules with these kernels, you'll need to disable
  APM support with "./Configure --noapm".

o Use of CardBus cards with 2.0.* kernels is discouraged.  It may work
  on some systems, but not on others, due to PCI BIOS limitations.
  Also, it is harder to diagnose problems, because /proc/bus/pccard is
  not available with these kernels.

o The token ring driver tweaks a problem in the memory management
  code.  To work around the problem, remove all high memory windows
  from /etc/pcmcia/config.opts.  The driver is also completely broken
  for late 2.1 and early 2.2 kernels.  A fix is in 2.2.7.

o Megahertz EM1144, EM3288, and EM3336 cards drop interrupts if the
  modem and ethernet are used simultaneously.
  
  Prognosis: Unlikely to be fixed, since these cards are old and we
  are unlikely to ever get more complete tech info.

o All of the SCSI drivers, and most of the CardBus drivers, do not
  implement suspend/resume handling.
  
  Prognosis: CardBus Network cards will probably be fixed eventually,
  but it has not been a high priority.  SCSI drivers are less likely
  to be fixed since we're more dependent on kernel code.

o The kernel aic7xxx driver, which is linked into the apa1480_cb
  driver, can generate spurious interrupts when a card is initialized,
  which can cause system lockups.

  Prognosis: I've sent a patch to the driver maintainer.  The problem
  can be mostly mitigated by disabling use of PCI interrupts for
  CardBus cards, by setting PCIC_OPTS="pci_int=0".  This setting does
  not work on some newer laptops; in those cases, you'll have to wait
  for a kernel update to fix the problem.

o Interrupt routing on O2Micro CardBus bridges seems to have problems.
  Toshiba ToPIC97 bridges also seem to have problems, particularly
  with Cardbus cards.

  Prognosis: I think the O2Micro problems should now be fixed.  For
  the ToPIC problem, Toshiba does not seem willing and/or able to
  provide adequate help, so I've mostly given up on it.  For both the
  O2Micro and ToPIC problems, fixes would require someone with device
  driver experience and the relevant hardware to work on it: data
  sheets are available, and I can make suggestions of things to try,
  but I can't debug the problems by email.

  With ToPIC chipsets, some systems seem to work better if the bridge
  mode is changed to either "PCIC" or "CardBus", rather than "Auto",
  in the BIOS setup menu.

o Newer Ositech Jack of Diamonds cards don't work for some people.

  Prognosis: I'm not sure what's going on here.  I have a newer JoD
  card now, and it works fine on my systems.

o The 2.2.*/2.3.* serial driver had a bug that interfered with
  interrupt sharing for multifunction cards.  The effect is that
  opening a serial port on a multifunction card fails, giving an IO
  error.  It was fixed in 2.2.11 and 2.3.9.

  The bug can be fixed by editing linux/drivers/char/serial.c and
  changing each use of IRQ_T(info) to IRQ_T(state).

o The kernel aha152x driver, used for Adaptec 16-bit SCSI adapters,
  had a PCMCIA compatibility problem in 2.2.* that was fixed in 2.2.9.
  The effect was that interrupts were ignored, unless the card
  happened to be configured for irq 9..12.

  Either upgrade to a 2.2.9 or later kernel, or if you have an
  appropriate interrupt available, add to /etc/pcmcia/config.opts:

    module "aha152x_cs" opts "irq_list=9,10,11,12"

o The kernel IDE driver had a bug that causes shutdown of some PCMCIA
  IDE cards to cause a kernel trap.  It was introduced in 2.2.9/2.3.1
  and fixed in 2.2.10/2.3.4.

o The 2.3.6 kernel update broke the PCMCIA parport_cs driver.

  Prognosis: it should be fixable in newer 2.3.* kernels, but I just
  have not gotten around to doing it.

o Some 2.3.* kernels may make mistakes when autoconfiguring CardBus
  bridges.  Specifically, the kernel may memory map bridges at invalid
  addresses.  The i82365 driver complains about a "Bad bridge mapping".

  Prognosis: either upgrade to a newer 2.3.* kernel if possible, or
  revert to a 2.2.* kernel.

o Xircom CBEM support in the tulip_cb driver seems to be extremely
  unreliable.  A wide range of symptoms are reported, ranging from no
  packet reception, to correct operation at certain speed/duplex
  combinations but not others, to frequent missed interrupts.

  Prognosis: there seem to be multiple revisions of the (apparently)
  not-quite-tulip-compatible chipset in the Xircom cards, and fixes
  that seem to help for some cards, break other cards.  Until someone
  can try to characterize what the revision differences might be, this
  is not going to get fixed.

  Setting the card to promiscuous mode ("ifconfig eth0 promisc") seems
  to help in some cases.

o With some PCI host bridges, the PCMCIA subsystem is not able to
  determine the PCI interrupt routing for CardBus bridges.  For some
  types of bridges, this means that we can't configure interrupts for
  CardBus cards at all.

  Prognosis: this should get fixed soon.  If your BIOS has an option
  for "PnP OS support", try changing that.
