cfg80211: pass DFS region to drivers through reg_notifier()
This grants drivers access to the DFS region that a regulatory domain belongs to. Signed-off-by: Luis R. Rodriguez <mcgrof@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
committed by
John W. Linville
parent
8b60b07805
commit
b68e6b3b33
@@ -48,6 +48,10 @@ enum environment_cap {
|
|||||||
* 99 - built by driver but a specific alpha2 cannot be determined
|
* 99 - built by driver but a specific alpha2 cannot be determined
|
||||||
* 98 - result of an intersection between two regulatory domains
|
* 98 - result of an intersection between two regulatory domains
|
||||||
* 97 - regulatory domain has not yet been configured
|
* 97 - regulatory domain has not yet been configured
|
||||||
|
* @dfs_region: If CRDA responded with a regulatory domain that requires
|
||||||
|
* DFS master operation on a known DFS region (NL80211_DFS_*),
|
||||||
|
* dfs_region represents that region. Drivers can use this and the
|
||||||
|
* @alpha2 to adjust their device's DFS parameters as required.
|
||||||
* @intersect: indicates whether the wireless core should intersect
|
* @intersect: indicates whether the wireless core should intersect
|
||||||
* the requested regulatory domain with the presently set regulatory
|
* the requested regulatory domain with the presently set regulatory
|
||||||
* domain.
|
* domain.
|
||||||
@@ -67,6 +71,7 @@ struct regulatory_request {
|
|||||||
int wiphy_idx;
|
int wiphy_idx;
|
||||||
enum nl80211_reg_initiator initiator;
|
enum nl80211_reg_initiator initiator;
|
||||||
char alpha2[2];
|
char alpha2[2];
|
||||||
|
u8 dfs_region;
|
||||||
bool intersect;
|
bool intersect;
|
||||||
bool processed;
|
bool processed;
|
||||||
enum environment_cap country_ie_env;
|
enum environment_cap country_ie_env;
|
||||||
|
@@ -1121,6 +1121,8 @@ static void wiphy_update_regulatory(struct wiphy *wiphy,
|
|||||||
if (ignore_reg_update(wiphy, initiator))
|
if (ignore_reg_update(wiphy, initiator))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
last_request->dfs_region = cfg80211_regdomain->dfs_region;
|
||||||
|
|
||||||
for (band = 0; band < IEEE80211_NUM_BANDS; band++) {
|
for (band = 0; band < IEEE80211_NUM_BANDS; band++) {
|
||||||
if (wiphy->bands[band])
|
if (wiphy->bands[band])
|
||||||
handle_band(wiphy, band, initiator);
|
handle_band(wiphy, band, initiator);
|
||||||
|
Reference in New Issue
Block a user