ret = BT_COEX_TX_DIS_LUT;
 
+       if (mvm->cfg->bt_shared_single_ant) {
+               rcu_read_unlock();
+               return ret;
+       }
+
        phy_ctx_id = *((u16 *)chanctx_conf->drv_priv);
 
        if (mvm->last_bt_ci_cmd.primary_ch_phy_id == phy_ctx_id)
                return;
        }
 
+       data->num_bss_ifaces++;
+
        /* we are now a STA / P2P Client, and take associated ones only */
        if (!vif->bss_conf.assoc)
                return;
        iwl_mvm_update_smps(mvm, vif, IWL_MVM_SMPS_REQ_BT_COEX, smps_mode);
 
        /* don't reduce the Tx power if in loose scheme */
-       if (iwl_get_coex_type(mvm, vif) == BT_COEX_LOOSE_LUT)
+       if (iwl_get_coex_type(mvm, vif) == BT_COEX_LOOSE_LUT ||
+           mvm->cfg->bt_shared_single_ant) {
+               data->reduced_tx_power = false;
                return;
-
-       data->num_bss_ifaces++;
+       }
 
        /* reduced Txpower only if BT is on, so ...*/
        if (le32_to_cpu(data->notif->bt_activity_grading) == BT_OFF) {
         * Check if rssi is good enough for reduced Tx power, but not in loose
         * scheme.
         */
-       if (rssi_event == RSSI_EVENT_LOW ||
+       if (rssi_event == RSSI_EVENT_LOW || mvm->cfg->bt_shared_single_ant ||
            iwl_get_coex_type(mvm, vif) == BT_COEX_LOOSE_LUT)
                ret = iwl_mvm_bt_coex_reduced_txp(mvm, mvmvif->ap_sta_id,
                                                  false);