ath: merge regulatory fixup from r25418
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Tue, 8 Feb 2011 12:39:35 +0000 (12:39 +0000)
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Tue, 8 Feb 2011 12:39:35 +0000 (12:39 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/branches/backfire@25419 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/mac80211/patches/405-world_regd_fixup.patch

index df47225cff22898a87994402d935ff6588420b4d..48ca03f35a71c24ff998dd424cfd506f1f71ccbe 100644 (file)
                                NL80211_RRF_PASSIVE_SCAN | NL80211_RRF_NO_IBSS)
  #define ATH9K_5GHZ_5470_5850  REG_RULE(5470-10, 5850+10, 40, 0, 30,\
                                NL80211_RRF_PASSIVE_SCAN | NL80211_RRF_NO_IBSS)
+@@ -55,57 +56,56 @@
+ #define ATH9K_5GHZ_NO_MIDBAND ATH9K_5GHZ_5150_5350, \
+                               ATH9K_5GHZ_5725_5850
++#define REGD_RULES(...) \
++      .reg_rules = { __VA_ARGS__ }, \
++      .n_reg_rules = ARRAY_SIZE(((struct ieee80211_reg_rule[]) { __VA_ARGS__ }))
++
+ /* Can be used for:
+  * 0x60, 0x61, 0x62 */
+ static const struct ieee80211_regdomain ath_world_regdom_60_61_62 = {
+-      .n_reg_rules = 5,
+       .alpha2 =  "99",
+-      .reg_rules = {
++      REGD_RULES(
+               ATH9K_2GHZ_ALL,
+               ATH9K_5GHZ_ALL,
+-      }
++      )
+ };
+ /* Can be used by 0x63 and 0x65 */
+ static const struct ieee80211_regdomain ath_world_regdom_63_65 = {
+-      .n_reg_rules = 4,
+       .alpha2 =  "99",
+-      .reg_rules = {
++      REGD_RULES(
+               ATH9K_2GHZ_CH01_11,
+               ATH9K_2GHZ_CH12_13,
+               ATH9K_5GHZ_NO_MIDBAND,
+-      }
++      )
+ };
+ /* Can be used by 0x64 only */
+ static const struct ieee80211_regdomain ath_world_regdom_64 = {
+-      .n_reg_rules = 3,
+       .alpha2 =  "99",
+-      .reg_rules = {
++      REGD_RULES(
+               ATH9K_2GHZ_CH01_11,
+               ATH9K_5GHZ_NO_MIDBAND,
+-      }
++      )
+ };
+ /* Can be used by 0x66 and 0x69 */
+ static const struct ieee80211_regdomain ath_world_regdom_66_69 = {
+-      .n_reg_rules = 3,
+       .alpha2 =  "99",
+-      .reg_rules = {
++      REGD_RULES(
+               ATH9K_2GHZ_CH01_11,
+               ATH9K_5GHZ_ALL,
+-      }
++      )
+ };
+ /* Can be used by 0x67, 0x6A and 0x68 */
+ static const struct ieee80211_regdomain ath_world_regdom_67_68_6A = {
+-      .n_reg_rules = 4,
+       .alpha2 =  "99",
+-      .reg_rules = {
++      REGD_RULES(
+               ATH9K_2GHZ_CH01_11,
+               ATH9K_2GHZ_CH12_13,
+               ATH9K_5GHZ_ALL,
+-      }
++      )
+ };
+ static inline bool is_wwr_sku(u16 regd)