return;
        }
 
-       if (AR_SREV_9462(ah)) {
-               btcoex_hw->scheme = ATH_BTCOEX_CFG_MCI;
-       } else if (AR_SREV_9300_20_OR_LATER(ah)) {
+       if (AR_SREV_9300_20_OR_LATER(ah)) {
                btcoex_hw->scheme = ATH_BTCOEX_CFG_3WIRE;
                btcoex_hw->btactive_gpio = ATH_BTACTIVE_GPIO_9300;
                btcoex_hw->wlanactive_gpio = ATH_WLANACTIVE_GPIO_9300;
                ath9k_hw_btcoex_enable_2wire(ah);
                break;
        case ATH_BTCOEX_CFG_3WIRE:
+               if (AR_SREV_9462(ah)) {
+                       ath9k_hw_btcoex_enable_mci(ah);
+                       return;
+               }
                ath9k_hw_btcoex_enable_3wire(ah);
                break;
-       case ATH_BTCOEX_CFG_MCI:
-               ath9k_hw_btcoex_enable_mci(ah);
-               return;
        }
 
        REG_RMW(ah, AR_GPIO_PDPU,
        int i;
 
        btcoex_hw->enabled = false;
-       if (btcoex_hw->scheme == ATH_BTCOEX_CFG_MCI) {
+       if (AR_SREV_9462(ah)) {
                ath9k_hw_btcoex_bt_stomp(ah, ATH_BTCOEX_STOMP_NONE);
                for (i = 0; i < AR9300_NUM_BT_WEIGHTS; i++)
                        REG_WRITE(ah, AR_MCI_COEX_WL_WEIGHTS(i),
                                  btcoex_hw->wlan_weight[i]);
+               return;
        }
        ath9k_hw_set_gpio(ah, btcoex_hw->wlanactive_gpio, 0);
 
 
                ath9k_hw_btcoex_disable(ah);
                if (ath9k_hw_get_btcoex_scheme(ah) == ATH_BTCOEX_CFG_3WIRE)
                        ath9k_btcoex_timer_pause(sc);
-               if (ath9k_hw_get_btcoex_scheme(ah) == ATH_BTCOEX_CFG_MCI)
+               if (AR_SREV_9462(ah))
                        ath_mci_flush_profile(&sc->btcoex.mci);
        }
 }
            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 (ath9k_hw_get_btcoex_scheme(sc->sc_ah) == ATH_BTCOEX_CFG_MCI)
+       if (AR_SREV_9462(sc->sc_ah))
                ath_mci_cleanup(sc);
 }
 
                txq = sc->tx.txq_map[WME_AC_BE];
                ath9k_hw_init_btcoex_hw(sc->sc_ah, txq->axq_qnum);
                sc->btcoex.bt_stomp_type = ATH_BTCOEX_STOMP_LOW;
-               break;
-       case ATH_BTCOEX_CFG_MCI:
-               sc->btcoex.bt_stomp_type = ATH_BTCOEX_STOMP_LOW;
-               sc->btcoex.duty_cycle = ATH_BTCOEX_DEF_DUTY_CYCLE;
-               INIT_LIST_HEAD(&sc->btcoex.mci.info);
+               if (AR_SREV_9462(ah)) {
+                       sc->btcoex.duty_cycle = ATH_BTCOEX_DEF_DUTY_CYCLE;
+                       INIT_LIST_HEAD(&sc->btcoex.mci.info);
 
-               r = ath_mci_setup(sc);
-               if (r)
-                       return r;
+                       r = ath_mci_setup(sc);
+                       if (r)
+                               return r;
 
-               ath9k_hw_btcoex_init_mci(ah);
+                       ath9k_hw_btcoex_init_mci(ah);
+               }
 
                break;
        default: