31 lines
1009 B
Diff
31 lines
1009 B
Diff
--- a/drivers/net/wireless/ath/ath9k/ar9003_mac.c
|
|
+++ b/drivers/net/wireless/ath/ath9k/ar9003_mac.c
|
|
@@ -241,21 +241,19 @@ static bool ar9003_hw_get_isr(struct ath
|
|
|
|
*masked = isr & ATH9K_INT_COMMON;
|
|
|
|
- if (ah->config.rx_intr_mitigation)
|
|
+ if (ah->config.rx_intr_mitigation) {
|
|
if (isr & (AR_ISR_RXMINTR | AR_ISR_RXINTM))
|
|
*masked |= ATH9K_INT_RXLP;
|
|
-
|
|
- if (ah->config.tx_intr_mitigation)
|
|
- if (isr & (AR_ISR_TXMINTR | AR_ISR_TXINTM))
|
|
- *masked |= ATH9K_INT_TX;
|
|
-
|
|
- if (isr & (AR_ISR_LP_RXOK | AR_ISR_RXERR))
|
|
+ } else if (isr & (AR_ISR_LP_RXOK | AR_ISR_RXERR))
|
|
*masked |= ATH9K_INT_RXLP;
|
|
|
|
if (isr & AR_ISR_HP_RXOK)
|
|
*masked |= ATH9K_INT_RXHP;
|
|
|
|
- if (isr & (AR_ISR_TXOK | AR_ISR_TXERR | AR_ISR_TXEOL)) {
|
|
+ if (ah->config.tx_intr_mitigation) {
|
|
+ if (isr & (AR_ISR_TXMINTR | AR_ISR_TXINTM))
|
|
+ *masked |= ATH9K_INT_TX;
|
|
+ } else if (isr & (AR_ISR_TXOK | AR_ISR_TXERR | AR_ISR_TXEOL)) {
|
|
*masked |= ATH9K_INT_TX;
|
|
|
|
if (!(pCap->hw_caps & ATH9K_HW_CAP_RAC_SUPPORTED)) {
|