Search Linux Wireless

Re: [PATCH v2 4/5] wil6210: add option to ignore OTA regulatory hints

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux