summaryrefslogtreecommitdiffstats
path: root/sys/i386/pci
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2004-04-16 18:54:05 +0000
committerjhb <jhb@FreeBSD.org>2004-04-16 18:54:05 +0000
commit1499f7edc5e949e8ab6aa24488640bb13929e7d2 (patch)
treebc759e7c363526f099911cdf7fdbab270f29eec8 /sys/i386/pci
parentda1055b4cfd3cf914cf3162631c1f2028a541d0b (diff)
downloadFreeBSD-src-1499f7edc5e949e8ab6aa24488640bb13929e7d2.zip
FreeBSD-src-1499f7edc5e949e8ab6aa24488640bb13929e7d2.tar.gz
Don't call the BIOS to route a link that has already been routed by the
BIOS during POST as it apparently makes some machines unhappy. Tested by: mux
Diffstat (limited to 'sys/i386/pci')
-rw-r--r--sys/i386/pci/pci_pir.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/i386/pci/pci_pir.c b/sys/i386/pci/pci_pir.c
index ea924a8..f1f80cd 100644
--- a/sys/i386/pci/pci_pir.c
+++ b/sys/i386/pci/pci_pir.c
@@ -315,9 +315,10 @@ pci_pir_initial_irqs(struct PIR_entry *entry, struct PIR_intpin *intpin,
if (irq == PCI_INVALID_IRQ)
return;
if (pci_pir_valid_irq(pci_link, irq)) {
- if (pci_link->pl_irq == PCI_INVALID_IRQ)
+ if (pci_link->pl_irq == PCI_INVALID_IRQ) {
pci_link->pl_irq = irq;
- else if (pci_link->pl_irq != irq)
+ pci_link->pl_routed = 1;
+ } else if (pci_link->pl_irq != irq)
printf(
"$PIR: BIOS IRQ %d for %d.%d.INT%c does not match link %#x irq %d\n",
irq, entry->pe_bus, entry->pe_device, pin + 'A',
OpenPOWER on IntegriCloud