PCI IRQ routing change broke PCMCIA/prism54 driver

Russell King rmk+pcmcia at arm.linux.org.uk
Fri Aug 13 19:39:06 EDT 2004

On Fri, Aug 13, 2004 at 05:09:28PM -0600, Bjorn Helgaas wrote:
> I recently changed the way PCI interrupt routing is done.  We used to
> go through all the ACPI _PRTs at boot-time, programming IOSAPICs and
> setting pci_dev->irq.  That all happened before any drivers got involved.

Note that you shouldn't set pci_dev->irq for any devices below the
cardbus bridge (since the cardbus code knows better than anyone else
which IRQ must be used.)

However, I don't see a problem in the dmesg you've supplied since the
right IRQ gets used anyway (IRQ10).

> One problem is that prism54 quit working.  As far as I can see,
> prism54 and yenta_socket are doing the right thing.  But there's
> a lot of interrupt magic in there that I don't understand at all.

Define "quit working" - how did it stop working?  Is it just that
prism54 receives no interrupts?  Do socket status change interrupts
still work?

Russell King
 Linux kernel    2.6 ARM Linux   - http://www.arm.linux.org.uk/
 maintainer of:  2.6 PCMCIA      - http://pcmcia.arm.linux.org.uk/
                 2.6 Serial core

More information about the linux-pcmcia mailing list