If the southbridge init code assigns irqs to nonexistent devices.
1) Is this slow? 2) Does it matter if it assigns an irq to a nonexistent device?
static void pci_routing_fixup(struct device *dev) { printk_info("%s: dev is %p\n", __FUNCTION__, dev);
/* set up PCI IRQ routing */ pci_write_config8(dev, 0x55, pciIrqs[0] << 4); pci_write_config8(dev, 0x56, pciIrqs[1] | (pciIrqs[2] << 4) ); pci_write_config8(dev, 0x57, pciIrqs[3] << 4);
// firewire built into southbridge printk_info("setting firewire\n"); pci_assign_irqs(0, 0x0d, pin_to_irq(firewirePins));
[... usb, sound, ethernet, vga, pci slots ...]
// Cardbus slot printk_info("setting cardbus slot\n"); pci_assign_irqs(0, 0x0a, pin_to_irq(cbPins));
printk_spew("%s: DONE\n", __FUNCTION__); }