for some reason i didn't understand cy_probe() was called
while probe_ready and intr_base_addr both were zero, leading
to a kernel oops.
Linux-2.1.46, Dual-Processor Tyan Tomcat III. I first noticed the
problem around 2.1.27 or .29, didn't see it with 2.0.x.
With this little patch it works again.
Cyclom driver 1.36.4.33 1997/06/27 19:00:00
built Jul 17 1997 21:57:06
Cyclom-Y/ISA #1: 0xc00d0000-0xc00d1fff, IRQ5, 8 channels starting from port 0.
Regards, Uwe
--
--- linux-2.1.46/drivers/char/cyclades.c Thu Jul 17 07:47:14 1997
+++ linux/drivers/char/cyclades.c Sun Jul 20 19:19:20 1997
@@ -1065,9 +1067,16 @@
int index = 0; /* probing interrupts is only for ISA */
if (!probe_ready) {
- *(intr_base_addr + (Cy_ClrIntr<<index)) = 0;
+ if (intr_base_addr)
+ *(intr_base_addr + (Cy_ClrIntr<<index)) = 0;
return;
}
cy_irq_triggered = irq;
cy_triggered |= 1 << irq;