Re: 2.6.20 "IRQ handler type mismatch for IRQ 4"

From: Alan
Date: Mon Feb 12 2007 - 08:05:14 EST


> [ 23.783913] Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ
> sharing enabled
> [ 23.787063] pnp: Device 00:0c activated.
> [ 23.787420] 00:0c: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A

So the PnP layers put a device on IRQ 4, which is sensible

> [ 37.516000] eth1: orinoco_cs at 0.0, irq 4, io 0x0100-0x013f

The PCMCIA layer then ignores this and takes IRQ 4 simply because
although PnP has used it the IRQ isnt currently live

> [ 53.580000] IRQ handler type mismatch for IRQ 4
> [ 53.580000] current handler: pcmcia0.0

The serial IRQ setup fails

> [ 53.580000] [<c0141a25>] setup_irq+0x135/0x1e0
> [ 53.580000] [<c0230930>] serial8250_interrupt+0x0/0xf0
> [ 53.580000] [<c0141b73>] request_irq+0xa3/0xc0
> [ 53.580000] [<c023086e>] serial8250_startup+0x47e/0x4b0
> [ 53.580000] [<c022bf58>] uart_startup+0x48/0x160
> [ 53.580000] [<c022cb9f>] uart_open+0xbf/0x460

This is all scary and generally not needed spew but handy for debug.

Looks like a PCMCIA layer bug. It should be respecting IRQ assignment
(not just allocation) by other resource configuration layers.

Alan
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/