mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-26 06:20:54 +07:00
Revert "cfg80211: Use 5MHz bandwidth by default when checking usable channels"
This reverts commit 8eca1fb692
.
Felix notes that this broke regulatory, leaving channel 12 open for AP
operation in the US regulatory domain where it isn't permitted.
Link: http://mid.gmane.org/53A6C0FF.9090104@openwrt.org
Reported-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
744462a91e
commit
e33e2241e2
@ -935,7 +935,7 @@ freq_reg_info_regd(struct wiphy *wiphy, u32 center_freq,
|
|||||||
if (!band_rule_found)
|
if (!band_rule_found)
|
||||||
band_rule_found = freq_in_rule_band(fr, center_freq);
|
band_rule_found = freq_in_rule_band(fr, center_freq);
|
||||||
|
|
||||||
bw_fits = reg_does_bw_fit(fr, center_freq, MHZ_TO_KHZ(5));
|
bw_fits = reg_does_bw_fit(fr, center_freq, MHZ_TO_KHZ(20));
|
||||||
|
|
||||||
if (band_rule_found && bw_fits)
|
if (band_rule_found && bw_fits)
|
||||||
return rr;
|
return rr;
|
||||||
@ -1019,10 +1019,10 @@ static void chan_reg_rule_print_dbg(const struct ieee80211_regdomain *regd,
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Find an ieee80211_reg_rule such that a 5MHz channel with frequency
|
/*
|
||||||
* chan->center_freq fits there.
|
* Note that right now we assume the desired channel bandwidth
|
||||||
* If there is no such reg_rule, disable the channel, otherwise set the
|
* is always 20 MHz for each individual channel (HT40 uses 20 MHz
|
||||||
* flags corresponding to the bandwidths allowed in the particular reg_rule
|
* per channel, the primary and the extension channel).
|
||||||
*/
|
*/
|
||||||
static void handle_channel(struct wiphy *wiphy,
|
static void handle_channel(struct wiphy *wiphy,
|
||||||
enum nl80211_reg_initiator initiator,
|
enum nl80211_reg_initiator initiator,
|
||||||
@ -1083,12 +1083,8 @@ static void handle_channel(struct wiphy *wiphy,
|
|||||||
if (reg_rule->flags & NL80211_RRF_AUTO_BW)
|
if (reg_rule->flags & NL80211_RRF_AUTO_BW)
|
||||||
max_bandwidth_khz = reg_get_max_bandwidth(regd, reg_rule);
|
max_bandwidth_khz = reg_get_max_bandwidth(regd, reg_rule);
|
||||||
|
|
||||||
if (max_bandwidth_khz < MHZ_TO_KHZ(10))
|
|
||||||
bw_flags = IEEE80211_CHAN_NO_10MHZ;
|
|
||||||
if (max_bandwidth_khz < MHZ_TO_KHZ(20))
|
|
||||||
bw_flags |= IEEE80211_CHAN_NO_20MHZ;
|
|
||||||
if (max_bandwidth_khz < MHZ_TO_KHZ(40))
|
if (max_bandwidth_khz < MHZ_TO_KHZ(40))
|
||||||
bw_flags |= IEEE80211_CHAN_NO_HT40;
|
bw_flags = IEEE80211_CHAN_NO_HT40;
|
||||||
if (max_bandwidth_khz < MHZ_TO_KHZ(80))
|
if (max_bandwidth_khz < MHZ_TO_KHZ(80))
|
||||||
bw_flags |= IEEE80211_CHAN_NO_80MHZ;
|
bw_flags |= IEEE80211_CHAN_NO_80MHZ;
|
||||||
if (max_bandwidth_khz < MHZ_TO_KHZ(160))
|
if (max_bandwidth_khz < MHZ_TO_KHZ(160))
|
||||||
@ -1522,12 +1518,8 @@ static void handle_channel_custom(struct wiphy *wiphy,
|
|||||||
if (reg_rule->flags & NL80211_RRF_AUTO_BW)
|
if (reg_rule->flags & NL80211_RRF_AUTO_BW)
|
||||||
max_bandwidth_khz = reg_get_max_bandwidth(regd, reg_rule);
|
max_bandwidth_khz = reg_get_max_bandwidth(regd, reg_rule);
|
||||||
|
|
||||||
if (max_bandwidth_khz < MHZ_TO_KHZ(10))
|
|
||||||
bw_flags = IEEE80211_CHAN_NO_10MHZ;
|
|
||||||
if (max_bandwidth_khz < MHZ_TO_KHZ(20))
|
|
||||||
bw_flags |= IEEE80211_CHAN_NO_20MHZ;
|
|
||||||
if (max_bandwidth_khz < MHZ_TO_KHZ(40))
|
if (max_bandwidth_khz < MHZ_TO_KHZ(40))
|
||||||
bw_flags |= IEEE80211_CHAN_NO_HT40;
|
bw_flags = IEEE80211_CHAN_NO_HT40;
|
||||||
if (max_bandwidth_khz < MHZ_TO_KHZ(80))
|
if (max_bandwidth_khz < MHZ_TO_KHZ(80))
|
||||||
bw_flags |= IEEE80211_CHAN_NO_80MHZ;
|
bw_flags |= IEEE80211_CHAN_NO_80MHZ;
|
||||||
if (max_bandwidth_khz < MHZ_TO_KHZ(160))
|
if (max_bandwidth_khz < MHZ_TO_KHZ(160))
|
||||||
|
Loading…
Reference in New Issue
Block a user