Linux wireless drivers development
 help / color / mirror / Atom feed
* question about ath9k/hw.c,mac.c
@ 2010-03-10 12:36 Julia Lawall
  2010-03-11  7:16 ` Pavel Roskin
  0 siblings, 1 reply; 2+ messages in thread
From: Julia Lawall @ 2010-03-10 12:36 UTC (permalink / raw)
  To: Luis R. Rodriguez, Jouni Malinen, Sujith Manoharan,
	Vasanthakumar Thiagarajan, Senthil Balasubramanian, ath9k-devel,
	linux-wireless

hw.c contains the following code:

static void ath9k_hw_init_interrupt_masks(struct ath_hw *ah,
                                          enum nl80211_iftype opmode)
{
        ah->mask_reg = AR_IMR_TXERR |
                AR_IMR_TXURN |
                AR_IMR_RXERR |
                AR_IMR_RXORN |
                AR_IMR_BCNMISC;

        if (ah->intr_mitigation)
                ah->mask_reg |= AR_IMR_RXINTM | AR_IMR_RXMINTR;
        else
                ah->mask_reg |= AR_IMR_RXOK;
...
}

mac.c contains the following code:

omask = ath9k_hw_set_interrupts(ah, ah->mask_reg & ~ATH9K_INT_GLOBAL);

ATH9K_INT_GLOBAL is 0x80000000 (hw.h)

reg.h contains the following definitions:

#define AR_IMR_TXMINTR       0x00080000
#define AR_IMR_RXMINTR       0x01000000
#define AR_IMR_TXINTM        0x40000000
#define AR_IMR_RXINTM        0x80000000

Is it correct that the call to ath9k_hw_set_interrupts is masking out what 
appears to be the flag AR_IMR_RXINTM?  I don't know enough about the code 
to know what it all means, but at least in the definition of the mask_reg 
field in hw.c, AR_IMR_RXINTM seems to be used in a manner that is quite 
parallel to AR_IMR_RXMINTR, and AR_IMR_RXINTM seems to be conceptually 
similar to AR_IMR_TXINTM, but neither of them is masked out.

thanks,
julia


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2010-03-11  7:16 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-03-10 12:36 question about ath9k/hw.c,mac.c Julia Lawall
2010-03-11  7:16 ` Pavel Roskin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox