ISAPNP using an invalid IRQ, 2.4.0-test7

From: M.H.VanLeeuwen (vanl@megsinet.net)
Date: Tue Aug 29 2000 - 00:31:20 EST


With default BIOS settings, IRQ 5 is unavailable for ISA yet
it is being assigned by the ne.c driver and NFS root system
doesn't finish booting.

Is this a driver problem or a ISAPNP problem?

I changed drivers/pnp/isapnp.c to switch IRQ 5 & 9 to temporarily
work around this problem, is there a better solution?
Maybe, mask out the interrupts that aren't provided by the BIOS when
reading this table?

static int isapnp_valid_irq(struct isapnp_cfgtmp *cfg, int idx)
{
        /* IRQ priority: this table is good for i386 */
        static unsigned short xtab[16] = {
- 5, 10, 11, 12, 9, 14, 15, 7, 3, 4, 13, 0, 1, 6, 8, 2
+ 9, 10, 11, 12, 5, 14, 15, 7, 3, 4, 13, 0, 1, 6, 8, 2
        };

Here is a diff -u of dmesg's with and without "Assign IRQ for VGA" set
in the BIOS. Don't know if it will be useful.

System is an ABIT BP6 dual 466's w/QQ bios, ~OC.

Martin

--- dmesg.vgairq Mon Aug 28 23:32:50 2000
+++ dmesg.novgairq Sat Aug 26 22:27:31 2000
@@ -42,6 +42,7 @@
 Int: type 0, pol 0, trig 0, bus 2, IRQ 00, APIC ID 2, APIC INT 02
 Int: type 0, pol 0, trig 0, bus 2, IRQ 03, APIC ID 2, APIC INT 03
 Int: type 0, pol 0, trig 0, bus 2, IRQ 04, APIC ID 2, APIC INT 04
+Int: type 0, pol 0, trig 0, bus 2, IRQ 05, APIC ID 2, APIC INT 05
 Int: type 0, pol 0, trig 0, bus 2, IRQ 06, APIC ID 2, APIC INT 06
 Int: type 0, pol 0, trig 0, bus 2, IRQ 07, APIC ID 2, APIC INT 07
 Int: type 0, pol 1, trig 1, bus 2, IRQ 08, APIC ID 2, APIC INT 08
@@ -53,7 +54,6 @@
 Int: type 0, pol 3, trig 3, bus 0, IRQ 1f, APIC ID 2, APIC INT 13
 Int: type 0, pol 3, trig 3, bus 0, IRQ 4c, APIC ID 2, APIC INT 12
 Int: type 0, pol 3, trig 3, bus 0, IRQ 4d, APIC ID 2, APIC INT 12
-Int: type 0, pol 3, trig 3, bus 1, IRQ 00, APIC ID 2, APIC INT 10
 Int: type 2, pol 0, trig 0, bus 2, IRQ 00, APIC ID 2, APIC INT 17
 Lint: type 3, pol 0, trig 0, bus 0, IRQ 00, APIC ID ff, APIC LINT 00
 Lint: type 1, pol 0, trig 0, bus 0, IRQ 00, APIC ID ff, APIC LINT 01
@@ -126,7 +126,7 @@
 ...changing IO-APIC physical APIC ID to 2 ... ok.
 Synchronizing Arb IDs.
 init IO_APIC IRQs
- IO-APIC (apicid-pin) 2-0, 2-5, 2-10, 2-11, 2-17, 2-20, 2-21, 2-22, 2-23 not connected.
+ IO-APIC (apicid-pin) 2-0, 2-10, 2-11, 2-16, 2-17, 2-20, 2-21, 2-22, 2-23 not connected.
 ..TIMER: vector=49 pin1=2 pin2=0
 activating NMI Watchdog ... done.
 number of MP IRQ sources: 18.
@@ -148,18 +148,18 @@
  02 003 03 0 0 0 0 0 1 1 31
  03 003 03 0 0 0 0 0 1 1 41
  04 003 03 0 0 0 0 0 1 1 49
- 05 000 00 1 0 0 0 0 0 0 00
- 06 003 03 0 0 0 0 0 1 1 51
- 07 003 03 0 0 0 0 0 1 1 59
- 08 003 03 0 0 0 0 0 1 1 61
- 09 003 03 0 0 0 0 0 1 1 69
+ 05 003 03 0 0 0 0 0 1 1 51
+ 06 003 03 0 0 0 0 0 1 1 59
+ 07 003 03 0 0 0 0 0 1 1 61
+ 08 003 03 0 0 0 0 0 1 1 69
+ 09 003 03 0 0 0 0 0 1 1 71
  0a 000 00 1 0 0 0 0 0 0 00
  0b 000 00 1 0 0 0 0 0 0 00
- 0c 003 03 0 0 0 0 0 1 1 71
+ 0c 003 03 0 0 0 0 0 1 1 79
  0d 000 00 1 0 0 0 0 0 0 00
- 0e 003 03 0 0 0 0 0 1 1 79
- 0f 003 03 0 0 0 0 0 1 1 81
- 10 003 03 1 1 0 1 0 1 1 89
+ 0e 003 03 0 0 0 0 0 1 1 81
+ 0f 003 03 0 0 0 0 0 1 1 89
+ 10 000 00 1 0 0 0 0 0 0 00
  11 000 00 1 0 0 0 0 0 0 00
  12 003 03 1 1 0 1 0 1 1 91
  13 003 03 1 1 0 1 0 1 1 99
@@ -172,6 +172,7 @@
 IRQ1 -> 1
 IRQ3 -> 3
 IRQ4 -> 4
+IRQ5 -> 5
 IRQ6 -> 6
 IRQ7 -> 7
 IRQ8 -> 8
@@ -180,7 +181,6 @@
 IRQ13 -> 13
 IRQ14 -> 14
 IRQ15 -> 15
-IRQ16 -> 16
 IRQ18 -> 18
 IRQ19 -> 19
 .................................... done.
@@ -202,7 +202,6 @@
 PCI->APIC IRQ transform: (B0,I7,P3) -> 19
 PCI->APIC IRQ transform: (B0,I19,P0) -> 18
 PCI->APIC IRQ transform: (B0,I19,P1) -> 18
-PCI->APIC IRQ transform: (B1,I0,P0) -> 16
 Limiting direct PCI/PCI transfers.
 isapnp: Scanning for Pnp cards...
 isapnp: Card 'SMC EZ Card (1660)'
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Aug 31 2000 - 21:00:23 EST