Commit ea5cca78 authored by Johannes Berg's avatar Johannes Berg

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@changeidSigned-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent f7e3ab5c
...@@ -152,6 +152,16 @@ struct ieee80211_regdomain *iwl_mvm_get_regdomain(struct wiphy *wiphy, ...@@ -152,6 +152,16 @@ struct ieee80211_regdomain *iwl_mvm_get_regdomain(struct wiphy *wiphy,
mvm->lar_regdom_set = true; mvm->lar_regdom_set = true;
mvm->mcc_src = src_id; 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)); iwl_mei_set_country_code(__le16_to_cpu(resp->mcc));
out: out:
......
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