summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormsmith <msmith@FreeBSD.org>2000-06-23 07:38:24 +0000
committermsmith <msmith@FreeBSD.org>2000-06-23 07:38:24 +0000
commit1cf6096a90a606b63f1970a074924bc58d2083b2 (patch)
tree487e3956cab4ea2ab1ab8168aea8df7b60b349fc
parent1038126f14008d7ab5d678e738d9a8784eb48d17 (diff)
downloadFreeBSD-src-1cf6096a90a606b63f1970a074924bc58d2083b2.zip
FreeBSD-src-1cf6096a90a606b63f1970a074924bc58d2083b2.tar.gz
Stop trying to do anything funny with the interrupt resource range. The
AT PIC will consume IRQ 2 correctly in the !APIC_IO case.
-rw-r--r--sys/amd64/amd64/legacy.c17
-rw-r--r--sys/amd64/amd64/nexus.c17
-rw-r--r--sys/i386/i386/legacy.c17
-rw-r--r--sys/i386/i386/nexus.c17
4 files changed, 16 insertions, 52 deletions
diff --git a/sys/amd64/amd64/legacy.c b/sys/amd64/amd64/legacy.c
index c1b7ea3..5334d21 100644
--- a/sys/amd64/amd64/legacy.c
+++ b/sys/amd64/amd64/legacy.c
@@ -134,31 +134,22 @@ nexus_probe(device_t dev)
* multi-ISA-bus systems. PCI interrupts are routed to the ISA
* component, so in a way, PCI can be a partial child of an ISA bus(!).
* APIC interrupts are global though.
- * In the non-APIC case, disallow the use of IRQ 2.
+ *
+ * XXX We depend on the AT PIC driver correctly claiming IRQ 2
+ * to prevent its reuse elsewhere in the !APIC_IO case.
*/
irq_rman.rm_start = 0;
irq_rman.rm_type = RMAN_ARRAY;
irq_rman.rm_descr = "Interrupt request lines";
#ifdef APIC_IO
irq_rman.rm_end = APIC_INTMAPSIZE - 1;
- if (rman_init(&irq_rman)
- || rman_manage_region(&irq_rman,
- irq_rman.rm_start, irq_rman.rm_end))
- panic("nexus_probe irq_rman");
#else
irq_rman.rm_end = 15;
-#ifdef PC98
+#endif
if (rman_init(&irq_rman)
|| rman_manage_region(&irq_rman,
irq_rman.rm_start, irq_rman.rm_end))
panic("nexus_probe irq_rman");
-#else
- if (rman_init(&irq_rman)
- || rman_manage_region(&irq_rman, irq_rman.rm_start, 1)
- || rman_manage_region(&irq_rman, 3, irq_rman.rm_end))
- panic("nexus_probe irq_rman");
-#endif /* PC98 */
-#endif
/*
* ISA DMA on PCI systems is implemented in the ISA part of each
diff --git a/sys/amd64/amd64/nexus.c b/sys/amd64/amd64/nexus.c
index c1b7ea3..5334d21 100644
--- a/sys/amd64/amd64/nexus.c
+++ b/sys/amd64/amd64/nexus.c
@@ -134,31 +134,22 @@ nexus_probe(device_t dev)
* multi-ISA-bus systems. PCI interrupts are routed to the ISA
* component, so in a way, PCI can be a partial child of an ISA bus(!).
* APIC interrupts are global though.
- * In the non-APIC case, disallow the use of IRQ 2.
+ *
+ * XXX We depend on the AT PIC driver correctly claiming IRQ 2
+ * to prevent its reuse elsewhere in the !APIC_IO case.
*/
irq_rman.rm_start = 0;
irq_rman.rm_type = RMAN_ARRAY;
irq_rman.rm_descr = "Interrupt request lines";
#ifdef APIC_IO
irq_rman.rm_end = APIC_INTMAPSIZE - 1;
- if (rman_init(&irq_rman)
- || rman_manage_region(&irq_rman,
- irq_rman.rm_start, irq_rman.rm_end))
- panic("nexus_probe irq_rman");
#else
irq_rman.rm_end = 15;
-#ifdef PC98
+#endif
if (rman_init(&irq_rman)
|| rman_manage_region(&irq_rman,
irq_rman.rm_start, irq_rman.rm_end))
panic("nexus_probe irq_rman");
-#else
- if (rman_init(&irq_rman)
- || rman_manage_region(&irq_rman, irq_rman.rm_start, 1)
- || rman_manage_region(&irq_rman, 3, irq_rman.rm_end))
- panic("nexus_probe irq_rman");
-#endif /* PC98 */
-#endif
/*
* ISA DMA on PCI systems is implemented in the ISA part of each
diff --git a/sys/i386/i386/legacy.c b/sys/i386/i386/legacy.c
index c1b7ea3..5334d21 100644
--- a/sys/i386/i386/legacy.c
+++ b/sys/i386/i386/legacy.c
@@ -134,31 +134,22 @@ nexus_probe(device_t dev)
* multi-ISA-bus systems. PCI interrupts are routed to the ISA
* component, so in a way, PCI can be a partial child of an ISA bus(!).
* APIC interrupts are global though.
- * In the non-APIC case, disallow the use of IRQ 2.
+ *
+ * XXX We depend on the AT PIC driver correctly claiming IRQ 2
+ * to prevent its reuse elsewhere in the !APIC_IO case.
*/
irq_rman.rm_start = 0;
irq_rman.rm_type = RMAN_ARRAY;
irq_rman.rm_descr = "Interrupt request lines";
#ifdef APIC_IO
irq_rman.rm_end = APIC_INTMAPSIZE - 1;
- if (rman_init(&irq_rman)
- || rman_manage_region(&irq_rman,
- irq_rman.rm_start, irq_rman.rm_end))
- panic("nexus_probe irq_rman");
#else
irq_rman.rm_end = 15;
-#ifdef PC98
+#endif
if (rman_init(&irq_rman)
|| rman_manage_region(&irq_rman,
irq_rman.rm_start, irq_rman.rm_end))
panic("nexus_probe irq_rman");
-#else
- if (rman_init(&irq_rman)
- || rman_manage_region(&irq_rman, irq_rman.rm_start, 1)
- || rman_manage_region(&irq_rman, 3, irq_rman.rm_end))
- panic("nexus_probe irq_rman");
-#endif /* PC98 */
-#endif
/*
* ISA DMA on PCI systems is implemented in the ISA part of each
diff --git a/sys/i386/i386/nexus.c b/sys/i386/i386/nexus.c
index c1b7ea3..5334d21 100644
--- a/sys/i386/i386/nexus.c
+++ b/sys/i386/i386/nexus.c
@@ -134,31 +134,22 @@ nexus_probe(device_t dev)
* multi-ISA-bus systems. PCI interrupts are routed to the ISA
* component, so in a way, PCI can be a partial child of an ISA bus(!).
* APIC interrupts are global though.
- * In the non-APIC case, disallow the use of IRQ 2.
+ *
+ * XXX We depend on the AT PIC driver correctly claiming IRQ 2
+ * to prevent its reuse elsewhere in the !APIC_IO case.
*/
irq_rman.rm_start = 0;
irq_rman.rm_type = RMAN_ARRAY;
irq_rman.rm_descr = "Interrupt request lines";
#ifdef APIC_IO
irq_rman.rm_end = APIC_INTMAPSIZE - 1;
- if (rman_init(&irq_rman)
- || rman_manage_region(&irq_rman,
- irq_rman.rm_start, irq_rman.rm_end))
- panic("nexus_probe irq_rman");
#else
irq_rman.rm_end = 15;
-#ifdef PC98
+#endif
if (rman_init(&irq_rman)
|| rman_manage_region(&irq_rman,
irq_rman.rm_start, irq_rman.rm_end))
panic("nexus_probe irq_rman");
-#else
- if (rman_init(&irq_rman)
- || rman_manage_region(&irq_rman, irq_rman.rm_start, 1)
- || rman_manage_region(&irq_rman, 3, irq_rman.rm_end))
- panic("nexus_probe irq_rman");
-#endif /* PC98 */
-#endif
/*
* ISA DMA on PCI systems is implemented in the ISA part of each
OpenPOWER on IntegriCloud