Commit 20f8cb7d authored by Ayala Beker's avatar Ayala Beker Committed by Johannes Berg
Browse files

wifi: iwlwifi: mvm: scan legacy bands and UHB channels with same antenna



In case of UHB scan that follows a scan on legacy bands,
consider both scan commands as part of the same scan cycle,
and thus configure them to use the same antenna configuration.

Signed-off-by: default avatarAyala Beker <ayala.beker@intel.com>
Signed-off-by: default avatarGregory Greenman <gregory.greenman@intel.com>
Link: https://lore.kernel.org/r/20230413213309.fd582c423ad8.I35239f94cb3ee1642d16936199c336a07ec2df8f@changeid


Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent ba304151
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -709,10 +709,13 @@ enum iwl_umac_scan_general_flags_v2 {
 *     should be aware of a P2P GO operation on the 2GHz band.
 * @IWL_UMAC_SCAN_GEN_PARAMS_FLAGS2_RESPECT_P2P_GO_HB: scan event scheduling
 *     should be aware of a P2P GO operation on the 5GHz or 6GHz band.
 * @IWL_UMAC_SCAN_GEN_PARAMS_FLAGS2_DONT_TOGGLE_ANT: don't toggle between
 *     valid antennas, and use the same antenna as in previous scan
 */
enum iwl_umac_scan_general_params_flags2 {
	IWL_UMAC_SCAN_GEN_PARAMS_FLAGS2_RESPECT_P2P_GO_LB = BIT(0),
	IWL_UMAC_SCAN_GEN_PARAMS_FLAGS2_RESPECT_P2P_GO_HB = BIT(1),
	IWL_UMAC_SCAN_GEN_PARAMS_FLAGS2_DONT_TOGGLE_ANT   = BIT(2),
};

/**
+1 −0
Original line number Diff line number Diff line
@@ -459,6 +459,7 @@ enum iwl_ucode_tlv_capa {
	IWL_UCODE_TLV_CAPA_SYNCED_TIME			= (__force iwl_ucode_tlv_capa_t)106,
	IWL_UCODE_TLV_CAPA_TIME_SYNC_BOTH_FTM_TM        = (__force iwl_ucode_tlv_capa_t)108,
	IWL_UCODE_TLV_CAPA_BIGTK_TX_SUPPORT		= (__force iwl_ucode_tlv_capa_t)109,
	IWL_UCODE_TLV_CAPA_SCAN_DONT_TOGGLE_ANT         = (__force iwl_ucode_tlv_capa_t)111,

#ifdef __CHECKER__
	/* sparse says it cannot increment the previous enum member */
+5 −0
Original line number Diff line number Diff line
@@ -2081,6 +2081,11 @@ static u8 iwl_mvm_scan_umac_flags2(struct iwl_mvm *mvm,
				IWL_UMAC_SCAN_GEN_PARAMS_FLAGS2_RESPECT_P2P_GO_HB;
	}

	if (params->scan_6ghz &&
	    fw_has_capa(&mvm->fw->ucode_capa,
			IWL_UCODE_TLV_CAPA_SCAN_DONT_TOGGLE_ANT))
		flags |= IWL_UMAC_SCAN_GEN_PARAMS_FLAGS2_DONT_TOGGLE_ANT;

	return flags;
}