[LinuxBIOS] Q's regarding pci_routing_fixup() in src/southbridge/via/vt8235/vt8235_lpc.c
Eric Poulsen
eric at zyxod.com
Tue Apr 25 20:33:20 CEST 2006
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__);
}
More information about the coreboot
mailing list