[BUG] Ricoh Cardbus -> Can't get interrupts
torvalds at osdl.org
Mon Nov 24 19:25:01 GMT 2003
On Mon, 24 Nov 2003, Jean Tourrilhes wrote:
> Don't waste too much time on that, it might be hopeless. I
> personally don't believe that the kernel code will ever get it right,
> so I'm really looking at adding some override for this specific
The kernel is actually very good at getting the PCI irq's right - if it
doesn't, _no_ PCI card will function right. This is definitely not a
"Cardbus is special" issue - the irq routing tables are used for every
single thing out there.
And in fact your tables seem to have the thing:
> Device 00:13.0 (slot 4): CardBus bridge
> INTA: link 0x61, irq mask 0x5af8 [3,4,5,6,7,9,11,12,14]
> INTB: link 0x62, irq mask 0x5af8 [3,4,5,6,7,9,11,12,14]
> INTC: link 0x63, irq mask 0x5af8 [3,4,5,6,7,9,11,12,14]
> INTD: link 0x60, irq mask 0x5af8 [3,4,5,6,7,9,11,12,14]
Can you enable DEBUG in "arch/i386/pci/pci.h"?
AHH.. I think I know what's up. Your PIRQ table is fine, but your MP table
probably doesn't translate the legacy IRQ into the APIC one.
You may be able to boot a UP kernel properly, but I'm sure that the MP
thing is solvable too. Send the whole dmesg out, with DEBUG enabled both
in pci.h and in "include/asm-i386/apic.h".
More information about the linux-pcmcia