Re: b44: regression in 2.6.22 (resend)

Jeff Garzik
2007-05-29T22:39:50Z

Gary Zambrano wrote:
> The b44 interrupt status reg returns a value of 0 if no interrupts are
> pending. The b44 uses a mask to determine which bits (events) can
> generate device interrupts on the system. If the masked interrupt status
> register bits are not asserted, then the b44 will return to the system
> with handled = 0.
> So, I think the way the b44 interrupt code is written should be ok and
> not a bug.

This is normal.

We check for 0xffffffff because that is often how a fault is indicated,
when the memory location is read during or immediately after hotplug (or
if the PCI bus is truly faulty). So for most hardware, you see

tmp = read(irq status)
if (!tmp)
return irq-none /* no irq events raised */
if (tmp == 0xffffffff)
return irq-none /* hot unplug or h/w fault */

and the method that determines no interrupt handling is needed.

Regards,

Jeff