On 5 October 2011 02:15, Clemens Buchacher <drizzd@xxxxxx> wrote: >> Would you mind also printing the contents of AR_IER there? I wonder if >> AR_IER is incorrectly being enabled. > > Not much more helpful, I'm afraid: > > AR_IMR: 0x00000000, AR_ISR: 0x00000000, AR_IER: 0x00000000 > AR_INTR_SYNC_CAUSE: 0x00000000, AR_INTR_ASYNC_CAUSE: 0x00000000 > (repeated 109 times) > > It seems that at this point the device is in a bad state. Well, the question now is whether the device itself is actually firing off interrupts. >From what you've shown there, the device _isn't_ firing off interrupts the normal way. So I wonder if it's the card or whether it's something else (eg the PCI bus glue.) Here, you could try inserting this in the SC_OP_INVALID bit, right after you do some logging. I'm still assuming your AR9285 is somehow firing off interrupts. At this point however I'm all just guessing here. It'd be nice to know whether the device is _really_ sending interrupts or not. /* Mark _all_ async interrupts as serviced */ REG_WRITE(ah, AR_INTR_ASYNC_CAUSE, 0xffffffff); REG_READ(ah, AR_INTR_ASYNC_CAUSE); /* Disable sync interrupt sources */ REG_WRITE(ah, AR_INTR_SYNC_ENABLE, 0); /* Mark _all_ sync interrupts as serviced */ REG_WRITE(ah, AR_INTR_SYNC_CAUSE, 0xffffffff); REG_READ(ah, AR_INTR_SYNC_CAUSE); /* Do a reset of the AHB and host interface */ REG_WRITE(ah, AR_RC, AR_RC_AHB | AR_RC_HOSTIF); DELAY(100); REG_WRITE(ah, AR_RC, 0); -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html