aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/mvm/coex.c
diff options
context:
space:
mode:
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>2014-03-16 15:55:43 -0400
committerEmmanuel Grumbach <emmanuel.grumbach@intel.com>2014-03-18 15:15:37 -0400
commitcdb00563fe2c25a782d2fc57ad1778280fbf9edb (patch)
tree01000b1e11b4771459e8875b61eb85c00112c3f5 /drivers/net/wireless/iwlwifi/mvm/coex.c
parent1bd3cbc1a0e9ed977a6bd470c5bc7bd36fd87e26 (diff)
iwlwifi: mvm: BT Coex - add debugfs hook to set BT Tx priority
In order to debug the firmware, we need to be able to set the BT priority of WiFi packets. This priority is set based on the type of the packet (control frames, EAPOL etc...). For debugging purposes, allow to override this priority by a debugfs controlled value. Enable this feature that needs this priority to be able to test it. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/mvm/coex.c')
-rw-r--r--drivers/net/wireless/iwlwifi/mvm/coex.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/net/wireless/iwlwifi/mvm/coex.c b/drivers/net/wireless/iwlwifi/mvm/coex.c
index 018d75c805ad..c9b320a06070 100644
--- a/drivers/net/wireless/iwlwifi/mvm/coex.c
+++ b/drivers/net/wireless/iwlwifi/mvm/coex.c
@@ -616,6 +616,11 @@ int iwl_send_bt_init_conf(struct iwl_mvm *mvm)
616 bt_cmd->flags |= cpu_to_le32(BT_COEX_CORUNNING); 616 bt_cmd->flags |= cpu_to_le32(BT_COEX_CORUNNING);
617 } 617 }
618 618
619 if (IWL_MVM_BT_COEX_MPLUT) {
620 bt_cmd->flags |= cpu_to_le32(BT_COEX_MPLUT);
621 bt_cmd->valid_bit_msk = cpu_to_le32(BT_VALID_MULTI_PRIO_LUT);
622 }
623
619 if (mvm->cfg->bt_shared_single_ant) 624 if (mvm->cfg->bt_shared_single_ant)
620 memcpy(&bt_cmd->decision_lut, iwl_single_shared_ant, 625 memcpy(&bt_cmd->decision_lut, iwl_single_shared_ant,
621 sizeof(iwl_single_shared_ant)); 626 sizeof(iwl_single_shared_ant));
@@ -1215,6 +1220,9 @@ u8 iwl_mvm_bt_coex_tx_prio(struct iwl_mvm *mvm, struct ieee80211_hdr *hdr,
1215 if (info->band != IEEE80211_BAND_2GHZ) 1220 if (info->band != IEEE80211_BAND_2GHZ)
1216 return 0; 1221 return 0;
1217 1222
1223 if (unlikely(mvm->bt_tx_prio))
1224 return mvm->bt_tx_prio - 1;
1225
1218 /* High prio packet (wrt. BT coex) if it is EAPOL, MCAST or MGMT */ 1226 /* High prio packet (wrt. BT coex) if it is EAPOL, MCAST or MGMT */
1219 if (info->control.flags & IEEE80211_TX_CTRL_PORT_CTRL_PROTO || 1227 if (info->control.flags & IEEE80211_TX_CTRL_PORT_CTRL_PROTO ||
1220 is_multicast_ether_addr(hdr->addr1) || 1228 is_multicast_ether_addr(hdr->addr1) ||