| .. | .. |
|---|
| 203 | 203 | void ath_restart_work(struct ath_softc *sc) |
|---|
| 204 | 204 | { |
|---|
| 205 | 205 | ieee80211_queue_delayed_work(sc->hw, &sc->hw_check_work, |
|---|
| 206 | | - ATH_HW_CHECK_POLL_INT); |
|---|
| 206 | + msecs_to_jiffies(ATH_HW_CHECK_POLL_INT)); |
|---|
| 207 | 207 | |
|---|
| 208 | 208 | if (AR_SREV_9340(sc->sc_ah) || AR_SREV_9330(sc->sc_ah)) |
|---|
| 209 | 209 | ieee80211_queue_delayed_work(sc->hw, &sc->hw_pll_work, |
|---|
| .. | .. |
|---|
| 850 | 850 | static bool ath9k_txq_has_key(struct ath_softc *sc, u32 keyix) |
|---|
| 851 | 851 | { |
|---|
| 852 | 852 | struct ath_hw *ah = sc->sc_ah; |
|---|
| 853 | | - int i; |
|---|
| 853 | + int i, j; |
|---|
| 854 | 854 | struct ath_txq *txq; |
|---|
| 855 | 855 | bool key_in_use = false; |
|---|
| 856 | 856 | |
|---|
| .. | .. |
|---|
| 868 | 868 | if (sc->sc_ah->caps.hw_caps & ATH9K_HW_CAP_EDMA) { |
|---|
| 869 | 869 | int idx = txq->txq_tailidx; |
|---|
| 870 | 870 | |
|---|
| 871 | | - while (!key_in_use && |
|---|
| 872 | | - !list_empty(&txq->txq_fifo[idx])) { |
|---|
| 871 | + for (j = 0; !key_in_use && |
|---|
| 872 | + !list_empty(&txq->txq_fifo[idx]) && |
|---|
| 873 | + j < ATH_TXFIFO_DEPTH; j++) { |
|---|
| 873 | 874 | key_in_use = ath9k_txq_list_has_key( |
|---|
| 874 | 875 | &txq->txq_fifo[idx], keyix); |
|---|
| 875 | 876 | INCR(idx, ATH_TXFIFO_DEPTH); |
|---|
| .. | .. |
|---|
| 2243 | 2244 | } |
|---|
| 2244 | 2245 | |
|---|
| 2245 | 2246 | ieee80211_queue_delayed_work(hw, &sc->hw_check_work, |
|---|
| 2246 | | - ATH_HW_CHECK_POLL_INT); |
|---|
| 2247 | + msecs_to_jiffies(ATH_HW_CHECK_POLL_INT)); |
|---|
| 2247 | 2248 | } |
|---|
| 2248 | 2249 | |
|---|
| 2249 | 2250 | static bool ath9k_tx_frames_pending(struct ieee80211_hw *hw) |
|---|