diff options
author | Seth Forshee <seth.forshee@canonical.com> | 2012-06-16 07:47:52 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-06-20 15:14:33 -0400 |
commit | cf03c5dac83609f09d9f0e9fa3c09d86daed614d (patch) | |
tree | 4631f22a8bff4ad2efc20c2b448df7d65efccc72 /drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c | |
parent | 2810a619ca5716e315090119e5695e97814b1e60 (diff) | |
download | linux-cf03c5dac83609f09d9f0e9fa3c09d86daed614d.tar.gz linux-cf03c5dac83609f09d9f0e9fa3c09d86daed614d.tar.bz2 linux-cf03c5dac83609f09d9f0e9fa3c09d86daed614d.zip |
brcm80211: smac: inform mac80211 of the X2 regulatory domain
brcmsmac implements enforcement of regulatory constraints internally,
using a Broadcom-specific world roaming domain named X2. Besides being
duplication of functionality this can also conflict with mac80211's
regulatory implementation, as mac80211 is unaware of the X2 domain and
thus might apply a more restrictive domain.
This patch is the first step in making brcmsmac cooperate with
mac80211's regulatory support. X2 is registered as a custom domain with
mac80211, so that at least both implementations will be enforcing the
same set of constraints. The internal enforcement of rules is kept for
now; this will be converted over to relying on mac80211 regulatory
enforcement in later patches.
Reviewed-by: Arend Van Spriel <arend@broadcom.com>
Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c')
-rw-r--r-- | drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c b/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c index 341e06a0d6ec..2d5a40412690 100644 --- a/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c +++ b/drivers/net/wireless/brcm80211/brcmsmac/mac80211_if.c @@ -1050,6 +1050,8 @@ static struct brcms_info *brcms_attach(struct bcma_device *pdev) goto fail; } + brcms_c_regd_init(wl->wlc); + memcpy(perm, &wl->pub->cur_etheraddr, ETH_ALEN); if (WARN_ON(!is_valid_ether_addr(perm))) goto fail; |