add chaos_calmer branch
[15.05/openwrt.git] / package / kernel / mac80211 / patches / 406-ath_relax_default_regd.patch
1 --- a/drivers/net/wireless/ath/regd.c
2 +++ b/drivers/net/wireless/ath/regd.c
3 @@ -114,10 +114,22 @@ static const struct ieee80211_regdomain
4         )
5  };
6  
7 +static u16 ath_regd_get_eepromRD(struct ath_regulatory *reg)
8 +{
9 +       return reg->current_rd & ~WORLDWIDE_ROAMING_FLAG;
10 +}
11 +
12 +static bool is_default_regd(struct ath_regulatory *reg)
13 +{
14 +       return ath_regd_get_eepromRD(reg) == CTRY_DEFAULT;
15 +}
16 +
17  static bool dynamic_country_user_possible(struct ath_regulatory *reg)
18  {
19         if (config_enabled(CPTCFG_ATH_REG_DYNAMIC_USER_CERT_TESTING))
20                 return true;
21 +       if (is_default_regd(reg))
22 +               return true;
23  
24         switch (reg->country_code) {
25         case CTRY_UNITED_STATES:
26 @@ -202,11 +214,6 @@ static inline bool is_wwr_sku(u16 regd)
27                 (regd == WORLD));
28  }
29  
30 -static u16 ath_regd_get_eepromRD(struct ath_regulatory *reg)
31 -{
32 -       return reg->current_rd & ~WORLDWIDE_ROAMING_FLAG;
33 -}
34 -
35  bool ath_is_world_regd(struct ath_regulatory *reg)
36  {
37         return is_wwr_sku(ath_regd_get_eepromRD(reg));
38 @@ -650,6 +657,9 @@ ath_regd_init_wiphy(struct ath_regulator
39         return 0;
40  #endif
41  
42 +       if (is_default_regd(reg))
43 +               return 0;
44 +
45         wiphy->regulatory_flags |= REGULATORY_STRICT_REG |
46                                    REGULATORY_CUSTOM_REG;
47