ath9k: Use ps wrappers for btcoex logic.
authorVivek Natarajan <vnatarajan@atheros.com>
Tue, 26 Apr 2011 05:09:55 +0000 (10:39 +0530)
committerJohn W. Linville <linville@tuxdriver.com>
Thu, 28 Apr 2011 18:50:02 +0000 (14:50 -0400)
Use ps wrappers before accessing hw registers in btcoex.

Signed-off-by: Vivek Natarajan <vnatarajan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/ath9k/gpio.c

index 3a4ddd19e60ef38792cb1328f0e023884344c580..0349b3a1cc58c8dcb29729f0237f9d4137e8de46 100644 (file)
@@ -179,6 +179,7 @@ static void ath_btcoex_period_timer(unsigned long data)
        u32 timer_period;
        bool is_btscan;
 
+       ath9k_ps_wakeup(sc);
        ath_detect_bt_priority(sc);
 
        is_btscan = sc->sc_flags & SC_OP_BT_SCAN;
@@ -201,6 +202,7 @@ static void ath_btcoex_period_timer(unsigned long data)
                btcoex->hw_timer_enabled = true;
        }
 
+       ath9k_ps_restore(sc);
        mod_timer(&btcoex->period_timer, jiffies +
                                  msecs_to_jiffies(ATH_BTCOEX_DEF_BT_PERIOD));
 }
@@ -220,6 +222,7 @@ static void ath_btcoex_no_stomp_timer(void *arg)
        ath_dbg(common, ATH_DBG_BTCOEX,
                "no stomp timer running\n");
 
+       ath9k_ps_wakeup(sc);
        spin_lock_bh(&btcoex->btcoex_lock);
 
        if (btcoex->bt_stomp_type == ATH_BTCOEX_STOMP_LOW || is_btscan)
@@ -228,6 +231,7 @@ static void ath_btcoex_no_stomp_timer(void *arg)
                ath9k_hw_btcoex_bt_stomp(ah, ATH_BTCOEX_STOMP_LOW);
 
        spin_unlock_bh(&btcoex->btcoex_lock);
+       ath9k_ps_restore(sc);
 }
 
 int ath_init_btcoex_timer(struct ath_softc *sc)