aboutsummaryrefslogtreecommitdiffstats
path: root/net/wireless
diff options
context:
space:
mode:
authorJohn W. Linville <linville@tuxdriver.com>2013-11-04 14:51:28 -0500
committerJohn W. Linville <linville@tuxdriver.com>2013-11-04 14:51:28 -0500
commit87bc0728d462ae37841a550542829aa65a97e7c2 (patch)
tree266afb90f501b814c0a79f10a7afd86a6a33d631 /net/wireless
parentf421436a591d34fa5279b54a96ac07d70250cc8d (diff)
parent01925efdf7e03b4b803b5c9f985163d687f7f017 (diff)
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem
Conflicts: drivers/net/wireless/brcm80211/brcmfmac/sdio_host.h
Diffstat (limited to 'net/wireless')
-rw-r--r--net/wireless/reg.c27
1 files changed, 17 insertions, 10 deletions
diff --git a/net/wireless/reg.c b/net/wireless/reg.c
index d62cb1e91475..a0ec143ba3dc 100644
--- a/net/wireless/reg.c
+++ b/net/wireless/reg.c
@@ -768,23 +768,25 @@ const struct ieee80211_reg_rule *freq_reg_info(struct wiphy *wiphy,
768} 768}
769EXPORT_SYMBOL(freq_reg_info); 769EXPORT_SYMBOL(freq_reg_info);
770 770
771#ifdef CONFIG_CFG80211_REG_DEBUG 771const char *reg_initiator_name(enum nl80211_reg_initiator initiator)
772static const char *reg_initiator_name(enum nl80211_reg_initiator initiator)
773{ 772{
774 switch (initiator) { 773 switch (initiator) {
775 case NL80211_REGDOM_SET_BY_CORE: 774 case NL80211_REGDOM_SET_BY_CORE:
776 return "Set by core"; 775 return "core";
777 case NL80211_REGDOM_SET_BY_USER: 776 case NL80211_REGDOM_SET_BY_USER:
778 return "Set by user"; 777 return "user";
779 case NL80211_REGDOM_SET_BY_DRIVER: 778 case NL80211_REGDOM_SET_BY_DRIVER:
780 return "Set by driver"; 779 return "driver";
781 case NL80211_REGDOM_SET_BY_COUNTRY_IE: 780 case NL80211_REGDOM_SET_BY_COUNTRY_IE:
782 return "Set by country IE"; 781 return "country IE";
783 default: 782 default:
784 WARN_ON(1); 783 WARN_ON(1);
785 return "Set by bug"; 784 return "bug";
786 } 785 }
787} 786}
787EXPORT_SYMBOL(reg_initiator_name);
788
789#ifdef CONFIG_CFG80211_REG_DEBUG
788 790
789static void chan_reg_rule_print_dbg(struct ieee80211_channel *chan, 791static void chan_reg_rule_print_dbg(struct ieee80211_channel *chan,
790 const struct ieee80211_reg_rule *reg_rule) 792 const struct ieee80211_reg_rule *reg_rule)
@@ -979,14 +981,17 @@ static bool ignore_reg_update(struct wiphy *wiphy,
979 struct regulatory_request *lr = get_last_request(); 981 struct regulatory_request *lr = get_last_request();
980 982
981 if (!lr) { 983 if (!lr) {
982 REG_DBG_PRINT("Ignoring regulatory request %s since last_request is not set\n", 984 REG_DBG_PRINT("Ignoring regulatory request set by %s "
985 "since last_request is not set\n",
983 reg_initiator_name(initiator)); 986 reg_initiator_name(initiator));
984 return true; 987 return true;
985 } 988 }
986 989
987 if (initiator == NL80211_REGDOM_SET_BY_CORE && 990 if (initiator == NL80211_REGDOM_SET_BY_CORE &&
988 wiphy->flags & WIPHY_FLAG_CUSTOM_REGULATORY) { 991 wiphy->flags & WIPHY_FLAG_CUSTOM_REGULATORY) {
989 REG_DBG_PRINT("Ignoring regulatory request %s since the driver uses its own custom regulatory domain\n", 992 REG_DBG_PRINT("Ignoring regulatory request set by %s "
993 "since the driver uses its own custom "
994 "regulatory domain\n",
990 reg_initiator_name(initiator)); 995 reg_initiator_name(initiator));
991 return true; 996 return true;
992 } 997 }
@@ -998,7 +1003,9 @@ static bool ignore_reg_update(struct wiphy *wiphy,
998 if (wiphy->flags & WIPHY_FLAG_STRICT_REGULATORY && !wiphy->regd && 1003 if (wiphy->flags & WIPHY_FLAG_STRICT_REGULATORY && !wiphy->regd &&
999 initiator != NL80211_REGDOM_SET_BY_COUNTRY_IE && 1004 initiator != NL80211_REGDOM_SET_BY_COUNTRY_IE &&
1000 !is_world_regdom(lr->alpha2)) { 1005 !is_world_regdom(lr->alpha2)) {
1001 REG_DBG_PRINT("Ignoring regulatory request %s since the driver requires its own regulatory domain to be set first\n", 1006 REG_DBG_PRINT("Ignoring regulatory request set by %s "
1007 "since the driver requires its own regulatory "
1008 "domain to be set first\n",
1002 reg_initiator_name(initiator)); 1009 reg_initiator_name(initiator));
1003 return true; 1010 return true;
1004 } 1011 }