summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/arch/i386/pci/pci_intr_fixup.c9
-rw-r--r--sys/arch/i386/pci/pcibiosvar.h3
2 files changed, 5 insertions, 7 deletions
diff --git a/sys/arch/i386/pci/pci_intr_fixup.c b/sys/arch/i386/pci/pci_intr_fixup.c
index da0e62df2f2..70cc134a7ff 100644
--- a/sys/arch/i386/pci/pci_intr_fixup.c
+++ b/sys/arch/i386/pci/pci_intr_fixup.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: pci_intr_fixup.c,v 1.35 2004/07/14 21:46:49 mickey Exp $ */
+/* $OpenBSD: pci_intr_fixup.c,v 1.36 2004/09/26 20:17:42 mickey Exp $ */
/* $NetBSD: pci_intr_fixup.c,v 1.10 2000/08/10 21:18:27 soda Exp $ */
/*
@@ -671,17 +671,14 @@ pci_intr_header_fixup(pc, tag, ihp)
p = " fixed up";
ihp->line = l->irq;
- } else {
+ } else if (pcibios_flags & PCIBIOS_FIXUP_FORCE) {
/* routed by BIOS, but inconsistent */
-#ifdef PCIBIOS_INTR_FIXUP_FORCE
/* believe PCI IRQ Routing table */
p = " WARNING: overriding";
ihp->line = l->irq;
-#else
+ } else
/* believe PCI Interrupt Configuration Register (default) */
p = " WARNING: preserving";
-#endif
- }
if (pcibios_flags & PCIBIOS_INTRDEBUG) {
register pcireg_t id = pci_conf_read(pc, tag, PCI_ID_REG);
diff --git a/sys/arch/i386/pci/pcibiosvar.h b/sys/arch/i386/pci/pcibiosvar.h
index f74255ca488..41ec746be6b 100644
--- a/sys/arch/i386/pci/pcibiosvar.h
+++ b/sys/arch/i386/pci/pcibiosvar.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: pcibiosvar.h,v 1.13 2004/06/22 09:47:01 mickey Exp $ */
+/* $OpenBSD: pcibiosvar.h,v 1.14 2004/09/26 20:17:42 mickey Exp $ */
/* $NetBSD: pcibios.h,v 1.2 2000/04/28 17:15:16 uch Exp $ */
/*
@@ -36,6 +36,7 @@
#define PCIBIOS_INTR_GUESS 0x008
#define PCIBIOS_VERBOSE 0x010
#define PCIBIOS_INTRDEBUG 0x020
+#define PCIBIOS_FIXUP_FORCE 0x040
/*
* PCI BIOS return codes.