| 1 | --- a/drivers/net/wireless/ath/ath9k/ar9003_mac.c |
| 2 | +++ b/drivers/net/wireless/ath/ath9k/ar9003_mac.c |
| 3 | @@ -241,21 +241,19 @@ static bool ar9003_hw_get_isr(struct ath |
| 4 | |
| 5 | *masked = isr & ATH9K_INT_COMMON; |
| 6 | |
| 7 | - if (ah->config.rx_intr_mitigation) |
| 8 | + if (ah->config.rx_intr_mitigation) { |
| 9 | if (isr & (AR_ISR_RXMINTR | AR_ISR_RXINTM)) |
| 10 | *masked |= ATH9K_INT_RXLP; |
| 11 | - |
| 12 | - if (ah->config.tx_intr_mitigation) |
| 13 | - if (isr & (AR_ISR_TXMINTR | AR_ISR_TXINTM)) |
| 14 | - *masked |= ATH9K_INT_TX; |
| 15 | - |
| 16 | - if (isr & (AR_ISR_LP_RXOK | AR_ISR_RXERR)) |
| 17 | + } else if (isr & (AR_ISR_LP_RXOK | AR_ISR_RXERR)) |
| 18 | *masked |= ATH9K_INT_RXLP; |
| 19 | |
| 20 | if (isr & AR_ISR_HP_RXOK) |
| 21 | *masked |= ATH9K_INT_RXHP; |
| 22 | |
| 23 | - if (isr & (AR_ISR_TXOK | AR_ISR_TXERR | AR_ISR_TXEOL)) { |
| 24 | + if (ah->config.tx_intr_mitigation) { |
| 25 | + if (isr & (AR_ISR_TXMINTR | AR_ISR_TXINTM)) |
| 26 | + *masked |= ATH9K_INT_TX; |
| 27 | + } else if (isr & (AR_ISR_TXOK | AR_ISR_TXERR | AR_ISR_TXEOL)) { |
| 28 | *masked |= ATH9K_INT_TX; |
| 29 | |
| 30 | if (!(pCap->hw_caps & ATH9K_HW_CAP_RAC_SUPPORTED)) { |
| 31 | |