Known problems with the 3.1.7 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 only works for 2.1.90-2.1.124, or 2.1.132 and later kernels. In 2.2.* and 2.3.*, it still seems to be broken for some device types, due to instabilities in the kernel aic7xxx code. Prognosis: If you have a problem with an older kernel, try upgrading 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. 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 has a bug that interferes 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, has a PCMCIA compatibility problem in 2.2.* that was fixed in 2.2.9. The effect is that interrupts are ignored, unless the card happens to be configured for irq 9..12. Either upgrade to a 2.2.9 or later kernel, or if you have an appropriate interrupt availale, add to /etc/pcmcia/config.opts: module "aha152x_cs" opts "irq_list=9,10,11,12" o The kernel IDE driver has 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: we're working on a better way of interfacing the parport_cs driver with the kernel parallel port code, for a future kernel release. 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. 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.