ath9k: Fix MCI cleanup
authorMohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>
Fri, 6 Jul 2012 14:39:16 +0000 (20:09 +0530)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 9 Jul 2012 20:36:37 +0000 (16:36 -0400)
We are doing MCI cleanup eventhough BTCOEX is not enabled
via module parameter. This means we do ath_mci_cleanup
though we skipped calling ath_mci_setup. Yet it does not
causes any issues now  as we free the DMA buffer allocated
only when it is allocated during ath_mci_setup.

Reviewed-by: Bala Shanmugam <bkamatch@qca.qualcomm.com>
Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/ath9k/gpio.c

index f23af023f3c633317cae124156549d7674aa9ea8..c9ac7df9b8812ed6e3390096308fe914bf189246 100644 (file)
@@ -403,11 +403,13 @@ void ath9k_stop_btcoex(struct ath_softc *sc)
 
 void ath9k_deinit_btcoex(struct ath_softc *sc)
 {
+       struct ath_hw *ah = sc->sc_ah;
+
         if ((sc->btcoex.no_stomp_timer) &&
            ath9k_hw_get_btcoex_scheme(sc->sc_ah) == ATH_BTCOEX_CFG_3WIRE)
                ath_gen_timer_free(sc->sc_ah, sc->btcoex.no_stomp_timer);
 
-       if (AR_SREV_9462(sc->sc_ah))
+       if (ath9k_hw_mci_is_enabled(ah))
                ath_mci_cleanup(sc);
 }