mirror of https://gitee.com/openkylin/linux.git
iwlwifi: mvm: BT Coex - disable RRC by default
Enable this feature only if the firmware advertises support for it. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
This commit is contained in:
parent
0ec850dc19
commit
70e90992e7
|
@ -290,6 +290,7 @@ enum iwl_ucode_tlv_api {
|
||||||
* @IWL_UCODE_TLV_CAPA_HOTSPOT_SUPPORT: supports Hot Spot Command
|
* @IWL_UCODE_TLV_CAPA_HOTSPOT_SUPPORT: supports Hot Spot Command
|
||||||
* @IWL_UCODE_TLV_CAPA_RADIO_BEACON_STATS: support radio and beacon statistics
|
* @IWL_UCODE_TLV_CAPA_RADIO_BEACON_STATS: support radio and beacon statistics
|
||||||
* @IWL_UCODE_TLV_CAPA_BT_COEX_PLCR: enabled BT Coex packet level co-running
|
* @IWL_UCODE_TLV_CAPA_BT_COEX_PLCR: enabled BT Coex packet level co-running
|
||||||
|
* @IWL_UCODE_TLV_CAPA_BT_COEX_RRC: supports BT Coex RRC
|
||||||
*/
|
*/
|
||||||
enum iwl_ucode_tlv_capa {
|
enum iwl_ucode_tlv_capa {
|
||||||
IWL_UCODE_TLV_CAPA_D0I3_SUPPORT = BIT(0),
|
IWL_UCODE_TLV_CAPA_D0I3_SUPPORT = BIT(0),
|
||||||
|
@ -306,6 +307,7 @@ enum iwl_ucode_tlv_capa {
|
||||||
IWL_UCODE_TLV_CAPA_HOTSPOT_SUPPORT = BIT(18),
|
IWL_UCODE_TLV_CAPA_HOTSPOT_SUPPORT = BIT(18),
|
||||||
IWL_UCODE_TLV_CAPA_RADIO_BEACON_STATS = BIT(22),
|
IWL_UCODE_TLV_CAPA_RADIO_BEACON_STATS = BIT(22),
|
||||||
IWL_UCODE_TLV_CAPA_BT_COEX_PLCR = BIT(28),
|
IWL_UCODE_TLV_CAPA_BT_COEX_PLCR = BIT(28),
|
||||||
|
IWL_UCODE_TLV_CAPA_BT_COEX_RRC = BIT(30),
|
||||||
};
|
};
|
||||||
|
|
||||||
/* The default calibrate table size if not specified by firmware file */
|
/* The default calibrate table size if not specified by firmware file */
|
||||||
|
|
|
@ -633,7 +633,7 @@ int iwl_send_bt_init_conf_old(struct iwl_mvm *mvm)
|
||||||
if (IWL_MVM_BT_COEX_TTC)
|
if (IWL_MVM_BT_COEX_TTC)
|
||||||
bt_cmd->flags |= cpu_to_le32(BT_COEX_TTC);
|
bt_cmd->flags |= cpu_to_le32(BT_COEX_TTC);
|
||||||
|
|
||||||
if (IWL_MVM_BT_COEX_RRC)
|
if (iwl_mvm_bt_is_rrc_supported(mvm))
|
||||||
bt_cmd->flags |= cpu_to_le32(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)
|
||||||
|
|
|
@ -948,6 +948,12 @@ static inline bool iwl_mvm_bt_is_plcr_supported(struct iwl_mvm *mvm)
|
||||||
IWL_MVM_BT_COEX_CORUNNING;
|
IWL_MVM_BT_COEX_CORUNNING;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline bool iwl_mvm_bt_is_rrc_supported(struct iwl_mvm *mvm)
|
||||||
|
{
|
||||||
|
return (mvm->fw->ucode_capa.capa[0] & IWL_UCODE_TLV_CAPA_BT_COEX_RRC) &&
|
||||||
|
IWL_MVM_BT_COEX_RRC;
|
||||||
|
}
|
||||||
|
|
||||||
extern const u8 iwl_mvm_ac_to_tx_fifo[];
|
extern const u8 iwl_mvm_ac_to_tx_fifo[];
|
||||||
|
|
||||||
struct iwl_rate_info {
|
struct iwl_rate_info {
|
||||||
|
|
Loading…
Reference in New Issue