Re: Linux 2.6.17: IRQ handler mismatch in serial code?

Adam Belay
2006-06-20T00:44:32Z

On Mon, Jun 19, 2006 at 08:44:07PM +0100, Russell King wrote:
> On Mon, Jun 19, 2006 at 08:40:24PM +0100, Chris Rankin wrote:
> > --- Russell King <rmk+lkml@arm.linux.org.uk> wrote:
> > > This seems to be an invalid situation - you appear to have an _ISA_
> > > NE2000 card using IRQ3, trying to share the same interrupt as a
> > > serial port.
> > >
> > > ISA interrupts aren't sharable without additional hardware support
> > > or specific software support in the Linux kernel interrupt
> > > architecture.
> >
> > Hmm, I see what you mean. Except that I thought that I'd manually disabled the motherboard's
> > serial device on IRQ 3, via the BIOS:
> >
> > Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing enabled
> > serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
> > pnp: Device 00:07 activated.
> > 00:07: ttyS2 at I/O 0x3e8 (irq = 4) is a 16550A
> > pnp: Device 00:08 activated.
> > 00:08: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A
> >
> > Does Linux reenable all motherboard devices, regardless?
>
> Question for Adam Belay.

Yes, if a driver is available for the device, it will enable it regardless of
the initial state. Most manual BIOS configuration options don't actually
disable the device in the commonly understood sense. Rather, they tell the
BIOS not to waste any time configuring the device, as the operating system
is fully capable of doing so. On operating systems that aren't PnP capable
these options might have a greater effect.

Thanks,
Adam