Commit ea5cca78 authored by Johannes Berg's avatar Johannes Berg
Browse files

wifi: iwlwifi: mvm: disallow puncturing in US/Canada



For now, this isn't allowed. The API to mac80211 isn't great
for this, but we need to change the API to move puncturing
into the chanctx/chandef, and will do it better then.

Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
Reviewed-by: default avatarGregory Greenman <gregory.greenman@intel.com>
Signed-off-by: default avatarMiri Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://msgid.link/20231219215605.38955b68b429.I0c4ae99179b271648a747a51eb04853504c7952c@changeid


Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent f7e3ab5c
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -152,6 +152,16 @@ struct ieee80211_regdomain *iwl_mvm_get_regdomain(struct wiphy *wiphy,
	mvm->lar_regdom_set = true;
	mvm->mcc_src = src_id;

	/* Some kind of regulatory mess means we need to currently disallow
	 * puncturing in the US and Canada. Do that here, at least until we
	 * figure out the new chanctx APIs for puncturing.
	 */
	if (resp->mcc == cpu_to_le16(IWL_MCC_US) ||
	    resp->mcc == cpu_to_le16(IWL_MCC_CANADA))
		ieee80211_hw_set(mvm->hw, DISALLOW_PUNCTURING);
	else
		__clear_bit(IEEE80211_HW_DISALLOW_PUNCTURING, mvm->hw->flags);

	iwl_mei_set_country_code(__le16_to_cpu(resp->mcc));

out: