Known problems with the 3.1.9 PCMCIA release
=============================================

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 EM3288 cards drop interrupts if the modem and ethernet are
  used simultaneously.  No known fix.
  
  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 apa1480_cb driver is based on the kernel aic7xxx driver.  This
  has been under active development in 2.2.* and 2.3.* kernels, and
  I've received a number of hard-to-categorize reports of problems
  with particular hardware and kernel combinations.
  
  Prognosis: If you have a problem with an older kernel, try upgrading
  to a newer one before reporting a bug.

o Automatic determination of PCI interrupt routing for CardBus bridges
  is unreliable, so by default, we don't use PCI interrupts at all.
  
  Prognosis: this is a difficult issue due to the lack of proper plug
  and play support in the Linux kernel.  Without that, safe resource
  allocation for hot swappable devices will always be a problem.  The
  newer 2.3 kernels do a better job of PCI interrupt discovery.
  
o Interrupt routing on O2Micro CardBus bridges seems to have problems.
  Toshiba ToPIC97 bridges also seem to have problems, particularly
  with Cardbus cards.

  Prognosis: 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.

  In some O2Micro bridge configurations, it is necessary to set
  PCIC_OPTS to "pci_csc=1 pci_int=1" to enable use of PCI interrupts
  for card status changes and for CardBus cards.  I am not completely
  sure how to tell where this is required, and it causes new problems
  on some systems, so I have not made it the default.

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 Recent 2.3.* kernels may make mistakes when autoconfiguring CardBus
  bridges.  Specifically, the kernel may memory map bridges at invalid
  addresses.

  Prognosis: the PCI driver layer is taking on a job that it can't
  quite handle yet.  There is no trivial workaround, other than 
  reverting to a 2.2.* kernel.

o The current serial driver seems to have a bug that results in a bad
  interaction between Red Hat 6.1's "kudzu" hardware discovery tool,
  and subsequent configuration of PCMCIA serial devices.  The problem
  seems to only crop up with certain hardware combinations, so it has
  not yet been localized.

  Prognosis: I'll try to track down the bug; the workaround is to
  either disable kudzu, or adding a "-s" flag to its invocation in
  /etc/rc.d/init.d/kudzu.

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.
