|
@@ -612,7 +612,9 @@ int iwl_send_bt_init_conf_old(struct iwl_mvm *mvm)
|
|
BT_VALID_ANT_ISOLATION_THRS |
|
|
BT_VALID_ANT_ISOLATION_THRS |
|
|
BT_VALID_TXTX_DELTA_FREQ_THRS |
|
|
BT_VALID_TXTX_DELTA_FREQ_THRS |
|
|
BT_VALID_TXRX_MAX_FREQ_0 |
|
|
BT_VALID_TXRX_MAX_FREQ_0 |
|
|
- BT_VALID_SYNC_TO_SCO);
|
|
|
|
|
|
+ BT_VALID_SYNC_TO_SCO |
|
|
|
|
+ BT_VALID_TTC |
|
|
|
|
+ BT_VALID_RRC);
|
|
|
|
|
|
if (IWL_MVM_BT_COEX_SYNC2SCO)
|
|
if (IWL_MVM_BT_COEX_SYNC2SCO)
|
|
bt_cmd->flags |= cpu_to_le32(BT_COEX_SYNC2SCO);
|
|
bt_cmd->flags |= cpu_to_le32(BT_COEX_SYNC2SCO);
|
|
@@ -628,6 +630,12 @@ int iwl_send_bt_init_conf_old(struct iwl_mvm *mvm)
|
|
bt_cmd->valid_bit_msk |= cpu_to_le32(BT_VALID_MULTI_PRIO_LUT);
|
|
bt_cmd->valid_bit_msk |= cpu_to_le32(BT_VALID_MULTI_PRIO_LUT);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ if (IWL_MVM_BT_COEX_TTC)
|
|
|
|
+ bt_cmd->flags |= cpu_to_le32(BT_COEX_TTC);
|
|
|
|
+
|
|
|
|
+ if (IWL_MVM_BT_COEX_RRC)
|
|
|
|
+ bt_cmd->flags |= cpu_to_le32(BT_COEX_RRC);
|
|
|
|
+
|
|
if (mvm->cfg->bt_shared_single_ant)
|
|
if (mvm->cfg->bt_shared_single_ant)
|
|
memcpy(&bt_cmd->decision_lut, iwl_single_shared_ant,
|
|
memcpy(&bt_cmd->decision_lut, iwl_single_shared_ant,
|
|
sizeof(iwl_single_shared_ant));
|
|
sizeof(iwl_single_shared_ant));
|
|
@@ -824,6 +832,9 @@ static void iwl_mvm_bt_notif_iterator(void *_data, u8 *mac,
|
|
if (!vif->bss_conf.assoc)
|
|
if (!vif->bss_conf.assoc)
|
|
smps_mode = IEEE80211_SMPS_AUTOMATIC;
|
|
smps_mode = IEEE80211_SMPS_AUTOMATIC;
|
|
|
|
|
|
|
|
+ if (data->notif->rrc_enabled & BIT(mvmvif->phy_ctxt->id))
|
|
|
|
+ smps_mode = IEEE80211_SMPS_AUTOMATIC;
|
|
|
|
+
|
|
IWL_DEBUG_COEX(data->mvm,
|
|
IWL_DEBUG_COEX(data->mvm,
|
|
"mac %d: bt_status %d bt_activity_grading %d smps_req %d\n",
|
|
"mac %d: bt_status %d bt_activity_grading %d smps_req %d\n",
|
|
mvmvif->id, data->notif->bt_status, bt_activity_grading,
|
|
mvmvif->id, data->notif->bt_status, bt_activity_grading,
|