[PATCH] Fix weird PCI bus numbers with pci_linkX
John Baldwin
jhb at freebsd.org
Tue Nov 22 12:43:49 PST 2005
On Tuesday 22 November 2005 03:03 pm, Mathieu Prevot wrote:
> Weird addresses disappeared. But I don't why I have invalid IRQ ...
>
> ...
> ACPI APIC Table: <VIAK8 AWRDACPI>
> ioapic0 <Version 0.3> irqs 0-23 on motherboard
> ...
> pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
> pci_link9: BIOS IRQ 11 for 0.16.INTA is invalid
> pci_link9: BIOS IRQ 5 for 0.16.INTB is invalid
> pci_link9: BIOS IRQ 10 for 0.16.INTC is invalid
> pci_link10: BIOS IRQ 10 for 0.17.INTC is invalid
> pci_link11: BIOS IRQ 11 for 0.18.INTA is invalid
> ...
> uhci0: <VIA 83C572 USB controller> port 0xd400-0xd41f irq 21 at
> device 16.0 on pci0
You are using an I/O APIC. In your ASL, your pci link resources get different
IRQs when using APIC than when not using APIC. The BIOS never uses APIC
mode, so it programs IRQs for each PCI device according to the non-APIC (aka
PIC) mode. The messages above mean that we found out during the boot that
the interrupt for 0.16.INTA (PCI bus 0, device (slot) 16, pin A#) is routed
via the pci_link9 device, and that the BIOS had set the IRQ for that device
to 11. However, when we switch over to APIC mode, then the list of valid
IRQs for that link device are something like 20, 21, 22, and 23. The IRQ the
BIOS used (11) isn't in that list, so we ignore it and pick an IRQ out of the
list (21 in this case). You don't need to worry about these messages. I'll
see if I can't shut them up in this case (BIOS uses an ISA IRQ but this link
device only has non-ISA IRQs).
In fact, I've just whipped up a patch to shut these warnings up. It's
attached.
--
John Baldwin <jhb at FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve" = http://www.FreeBSD.org
More information about the freebsd-acpi
mailing list