Maya Erez <qca_merez@xxxxxxxxxxxxxxxx> writes: > On some platforms, the regulatory domain (country) is set > using mechanisms external to WIFI, such as cellular modem > and GPS. In these scenarios the regulatory hints that > are received over the air (in beacons and similar) can > conflict and even cause an incorrect country to be set. > Add an option to ignore the OTA regulatory hints to better > support such scenarios. > > Signed-off-by: Lior David <qca_liord@xxxxxxxxxxxxxxxx> > Signed-off-by: Maya Erez <qca_merez@xxxxxxxxxxxxxxxx> > --- > drivers/net/wireless/ath/wil6210/cfg80211.c | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/drivers/net/wireless/ath/wil6210/cfg80211.c b/drivers/net/wireless/ath/wil6210/cfg80211.c > index 567fe43..0f297c0 100644 > --- a/drivers/net/wireless/ath/wil6210/cfg80211.c > +++ b/drivers/net/wireless/ath/wil6210/cfg80211.c > @@ -26,6 +26,11 @@ > module_param(disable_ap_sme, bool, 0444); > MODULE_PARM_DESC(disable_ap_sme, " let user space handle AP mode SME"); > > +static bool ignore_reg_hints; > +module_param(ignore_reg_hints, bool, 0444); > +MODULE_PARM_DESC(ignore_reg_hints, > + " Ignore OTA regulatory hints (Default: false)"); > + > #define CHAN60G(_channel, _flags) { \ > .band = NL80211_BAND_60GHZ, \ > .center_freq = 56160 + (2160 * (_channel)), \ > @@ -1763,6 +1768,11 @@ static void wil_wiphy_init(struct wiphy *wiphy) > > wiphy->n_vendor_commands = ARRAY_SIZE(wil_nl80211_vendor_commands); > wiphy->vendor_commands = wil_nl80211_vendor_commands; > + > + if (ignore_reg_hints) { > + wiphy->regulatory_flags |= REGULATORY_DISABLE_BEACON_HINTS; > + wiphy->regulatory_flags |= REGULATORY_COUNTRY_IE_IGNORE; > + } I wonder should something like this be in cfg80211? Because I doubt wil6210 is the only driver having this problem. -- Kalle Valo