Re: Puzzeling 2.1 boot messages

Etienne Lorrain (lorrain@fb.sony.de)
Thu, 19 Mar 1998 12:04:31 +0001


--Message-Boundary-28604
Content-type: text/plain; charset=US-ASCII
Content-transfer-encoding: 7BIT
Content-description: Mail message body

> From: Marcus Berglund <mabs@diesel.net.au>
> These are from 2.1.89 (& 90-pre[123])
>
> And the kernel won't auto-detect my NE2000 (clone) while
> it is set for irq 3, but auto-detects while on irq 12, there
> is no serial port on irq 3.
>
IRQ autodetection is (a little bit) broken since quite a long
time in 2.1.xx . Try this simple patch (sent to Linus yesterday) .

Etienne.
----------- etienne.lorrain@ibm.net
-- hdc: irq timeout: status=0xd0 { Busy }
-- ide1: reset: success
----------> I like Linux !

--Message-Boundary-28604
Content-type: text/plain; charset=US-ASCII
Content-transfer-encoding: 7BIT
Content-description: Text from file 'simple_patch'

diff -u --recursive --new-file linux-2.1.89-3/arch/i386/kernel/irq.c linux/arch/i386/kernel/irq.c
--- linux-2.1.89-3/arch/i386/kernel/irq.c Tue Mar 17 19:54:48 1998
+++ linux/arch/i386/kernel/irq.c Tue Mar 17 20:01:59 1998
@@ -205,7 +205,7 @@
#ifdef __SMP__

/*
- * The IO-APIC (persent only in SMP boards) has 8 more hardware
+ * The IO-APIC (present only in SMP boards) has 8 more hardware
* interrupt pins, for all of them we define an IRQ vector:
*
* raw PCI interrupts 0-3, basically these are the ones used
@@ -1003,7 +1003,7 @@
for (i=0; i<NR_IRQS; i++)
for (j=0; j<NR_CPUS; j++)
if (kstat.irqs[j][i] != probe_irqs[j][i])
- irqs &= ~(i<<1);
+ irqs &= ~(1<<i);

return irqs;
}
@@ -1018,7 +1018,7 @@
sum += kstat.irqs[j][i];
sum -= probe_irqs[j][i];
}
- if (sum && (irqs & (i<<1))) {
+ if (sum && (irqs & (1<<i))) {
if (irq_found != -1) {
irq_found = -irq_found;
goto out;

--Message-Boundary-28604--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu