pnp code and irq 2 broken

Doug Rabson dfr at nlsystems.com
Thu Aug 28 09:02:29 PDT 2003


On Thu, 2003-08-28 at 13:26, Doug Rabson wrote:
> On Wed, 2003-08-27 at 06:45, John Hay wrote:
> > Hi,
> > 
> > Somewhere along the line the code in FreeBSD that maps irq 2 to irq 9 has
> > gone away and a panic was added if one tries to use irq 2. This is all
> > well and fine, except that the pnp code was not notified of this. :-) So
> > if you have a pnp device that have irq 2 in its mask and FreeBSD then
> > decides that irq 2 is a good irq to use for this device, you have an
> > instant panic.
> > 
> > I have worked around it with this crude patch below. Crude because:
> > 1) I don't know if it should be an i386 only fix, and
> > 2) I used 0x04 directly, maybe IRQ_SLAVE from i386/isa/icu.h or
> > some other define should be used?
> > 
> > Any comments from anyone?
> 
> I think that the way this used to work was that irq 2 was never included
> in the irq resource map. The allocation code would never choose a
> configuration which used irq 2 because it should never be possible to
> allocate that resource.

The code in nexus which creates the resource map for irqs was changed in
version 1.29 to not exclude irq 2. The cvs comment claims that the AT
PIC driver will claim irq 2 for the non-apic case which would take it
away from any possible pnp allocator. Presumably, this is the part which
is now broken.




More information about the freebsd-arch mailing list