aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/wireless/ath/regd.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/net/wireless/ath/regd.c b/drivers/net/wireless/ath/regd.c
index 9e154732afaa..56c3d05c6224 100644
--- a/drivers/net/wireless/ath/regd.c
+++ b/drivers/net/wireless/ath/regd.c
@@ -632,7 +632,8 @@ ath_regd_init_wiphy(struct ath_regulatory *reg,
632 const struct ieee80211_regdomain *regd; 632 const struct ieee80211_regdomain *regd;
633 633
634 wiphy->reg_notifier = reg_notifier; 634 wiphy->reg_notifier = reg_notifier;
635 wiphy->regulatory_flags |= REGULATORY_STRICT_REG; 635 wiphy->regulatory_flags |= REGULATORY_STRICT_REG |
636 REGULATORY_CUSTOM_REG;
636 637
637 if (ath_is_world_regd(reg)) { 638 if (ath_is_world_regd(reg)) {
638 /* 639 /*
@@ -640,8 +641,7 @@ ath_regd_init_wiphy(struct ath_regulatory *reg,
640 * saved on the wiphy orig_* parameters 641 * saved on the wiphy orig_* parameters
641 */ 642 */
642 regd = ath_world_regdomain(reg); 643 regd = ath_world_regdomain(reg);
643 wiphy->regulatory_flags |= REGULATORY_CUSTOM_REG | 644 wiphy->regulatory_flags |= REGULATORY_COUNTRY_IE_FOLLOW_POWER;
644 REGULATORY_COUNTRY_IE_FOLLOW_POWER;
645 } else { 645 } else {
646 /* 646 /*
647 * This gets applied in the case of the absence of CRDA, 647 * This gets applied in the case of the absence of CRDA,
@@ -650,7 +650,10 @@ ath_regd_init_wiphy(struct ath_regulatory *reg,
650 */ 650 */
651 regd = ath_default_world_regdomain(); 651 regd = ath_default_world_regdomain();
652 } 652 }
653
653 wiphy_apply_custom_regulatory(wiphy, regd); 654 wiphy_apply_custom_regulatory(wiphy, regd);
655 if (!ath_is_world_regd(reg))
656 wiphy->regulatory_flags &= ~REGULATORY_CUSTOM_REG;
654 ath_reg_apply_radar_flags(wiphy); 657 ath_reg_apply_radar_flags(wiphy);
655 ath_reg_apply_world_flags(wiphy, NL80211_REGDOM_SET_BY_DRIVER, reg); 658 ath_reg_apply_world_flags(wiphy, NL80211_REGDOM_SET_BY_DRIVER, reg);
656 return 0; 659 return 0;