Commit 35fbf5d0 authored by Emmanuel Grumbach's avatar Emmanuel Grumbach

iwlwifi: mvm: BT Coex - don't limit rate control if TTC is on

When the firmware enables TxTxCorunning, we can lift the
constaints on the rate control.
Signed-off-by: default avatarEmmanuel Grumbach <emmanuel.grumbach@intel.com>
parent 7fa4fa0c
...@@ -1212,6 +1212,9 @@ u16 iwl_mvm_coex_agg_time_limit(struct iwl_mvm *mvm, ...@@ -1212,6 +1212,9 @@ u16 iwl_mvm_coex_agg_time_limit(struct iwl_mvm *mvm,
BT_HIGH_TRAFFIC) BT_HIGH_TRAFFIC)
return LINK_QUAL_AGG_TIME_LIMIT_DEF; return LINK_QUAL_AGG_TIME_LIMIT_DEF;
if (mvm->last_bt_notif.ttc_enabled)
return LINK_QUAL_AGG_TIME_LIMIT_DEF;
lut_type = iwl_get_coex_type(mvm, mvmsta->vif); lut_type = iwl_get_coex_type(mvm, mvmsta->vif);
if (lut_type == BT_COEX_LOOSE_LUT || lut_type == BT_COEX_INVALID_LUT) if (lut_type == BT_COEX_LOOSE_LUT || lut_type == BT_COEX_INVALID_LUT)
...@@ -1227,6 +1230,9 @@ bool iwl_mvm_bt_coex_is_mimo_allowed(struct iwl_mvm *mvm, ...@@ -1227,6 +1230,9 @@ bool iwl_mvm_bt_coex_is_mimo_allowed(struct iwl_mvm *mvm,
struct iwl_mvm_sta *mvmsta = iwl_mvm_sta_from_mac80211(sta); struct iwl_mvm_sta *mvmsta = iwl_mvm_sta_from_mac80211(sta);
enum iwl_bt_coex_lut_type lut_type; enum iwl_bt_coex_lut_type lut_type;
if (mvm->last_bt_notif.ttc_enabled)
return true;
if (le32_to_cpu(mvm->last_bt_notif.bt_activity_grading) < if (le32_to_cpu(mvm->last_bt_notif.bt_activity_grading) <
BT_HIGH_TRAFFIC) BT_HIGH_TRAFFIC)
return true; return true;
......
...@@ -305,6 +305,7 @@ enum iwl_bt_activity_grading { ...@@ -305,6 +305,7 @@ enum iwl_bt_activity_grading {
* @bt_traffic_load: load of BT traffic * @bt_traffic_load: load of BT traffic
* @bt_agg_traffic_load: aggregated load of BT traffic * @bt_agg_traffic_load: aggregated load of BT traffic
* @bt_ci_compliance: 0 - no CI compliance, 1 - CI compliant * @bt_ci_compliance: 0 - no CI compliance, 1 - CI compliant
* @ttc_enabled: true if ttc has been enabled by the firmware
* @primary_ch_lut: LUT used for primary channel * @primary_ch_lut: LUT used for primary channel
* @secondary_ch_lut: LUT used for secondary channel * @secondary_ch_lut: LUT used for secondary channel
* @bt_activity_grading: the activity of BT enum %iwl_bt_activity_grading * @bt_activity_grading: the activity of BT enum %iwl_bt_activity_grading
...@@ -317,7 +318,8 @@ struct iwl_bt_coex_profile_notif { ...@@ -317,7 +318,8 @@ struct iwl_bt_coex_profile_notif {
u8 bt_traffic_load; u8 bt_traffic_load;
u8 bt_agg_traffic_load; u8 bt_agg_traffic_load;
u8 bt_ci_compliance; u8 bt_ci_compliance;
u8 reserved[3]; u8 ttc_enabled;
__le16 reserved;
__le32 primary_ch_lut; __le32 primary_ch_lut;
__le32 secondary_ch_lut; __le32 secondary_ch_lut;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment