Johannes Berg wrote:
> 
> The mechanism depends on the card revision, but according to
> drivers/net/wireless/b43legacy/dma.c it's always via the dma/pio
> mechanism for legacy cards:
> 
>         if (dev->dev->id.revision < 5) {
>                 ring = b43legacy_setup_dmaring(dev, 3, 0, type);
>                 if (!ring)
>                         goto err_destroy_rx0;
>                 dma->rx_ring3 = ring;
>         }

In the V3 specs, I found

"Transmit Status

When this interrupt is set, the retrieve the TransmitStatus. Note that 
on cores with revision < 5, the last DMA controller or PIO queue can 
also also get the DMA recieve done interrupt, which also triggers the 
TransmitStatus retrieval process. The driver should be prepared to 
deal with both interrupts at any time, on any revision. In AP mode, 
this interrupt also initiates the sending of powersave responses."

The implication is that the interrupt will only be generated if we use 
the last (i.e. #5) DMA controller. As we are only using #3, no 
interrupts and handle_irq_status() is dead code.

Larry
_______________________________________________
Bcm43xx-dev mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev

Reply via email to