1 /*
2 * Copyright (c) 2017-2021 The Linux Foundation. All rights reserved.
3 * Copyright (c) 2021-2023 Qualcomm Innovation Center, Inc. All rights reserved.
4 *
5 *
6 * Permission to use, copy, modify, and/or distribute this software for
7 * any purpose with or without fee is hereby granted, provided that the
8 * above copyright notice and this permission notice appear in all
9 * copies.
10 *
11 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
12 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
13 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
14 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
15 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
16 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
17 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
18 * PERFORMANCE OF THIS SOFTWARE.
19 */
20
21 /**
22 * DOC: reg_db.c
23 * This file implements QCA regulatory database.
24 * Current implementation conforms to database version 42.
25 */
26
27 #include <qdf_types.h>
28 #include <qdf_trace.h>
29 #include <wlan_cmn.h>
30 #include <reg_services_public_struct.h>
31 #include "reg_db.h"
32
33 #ifndef CONFIG_REG_CLIENT
34 const struct country_code_to_reg_domain g_all_countries[] = {
35 CE(AFGHANISTAN, ETSI1_WORLD, 0, AF, 40, 160, 0, 0),
36 CE(ALAND_ISLANDS, ETSI13_WORLD, ETSI1_6G_02, AX, 40, 160, 320, 0),
37 CE(ALBANIA, ETSI1_WORLD, 0, AL, 40, 160, 0, 0),
38 CE(ALGERIA, APL13_WORLD, 0, DZ, 40, 160, 0, 0),
39 CE(AMERICAN_SAMOA, FCC3_FCCA, FCC1_6G_01, AS, 40, 160, 320, 0),
40 CE(ANDORRA, ETSI1_WORLD, ETSI1_6G_02, AD, 40, 160, 320, 0),
41 CE(ANGUILLA, ETSI1_WORLD, 0, AI, 40, 160, 0, 0),
42 CE(ANTIGUA_AND_BARBUDA, FCC17_WORLD, FCC1_6G_01, AG, 40, 160, 320, 0),
43 CE(ARGENTINA, APL16_ETSIC, 0, AR, 40, 160, 0, 0),
44 CE(ARMENIA, APL4_WORLD, 0, AM, 40, 160, 0, 0),
45 CE(ARUBA, ETSI1_WORLD, FCC1_6G_01, AW, 40, 160, 320, 0),
46 CE(AUSTRALIA, APL25_ETSIC, ETSI2_6G_0C, AU, 40, 160, 320, 0),
47 CE(AUSTRIA, ETSI1_WORLD, 0, AT, 40, 160, 0, 0),
48 CE(AZERBAIJAN, ETSI8_WORLD, 0, AZ, 40, 160, 0, 0),
49 CE(BAHAMAS, FCC17_WORLD, FCC1_6G_01, BS, 40, 160, 320, 0),
50 CE(BAHRAIN, APL15_WORLD, 0, BH, 40, 160, 0, 0),
51 CE(BANGLADESH, APL1_WORLD, 0, BD, 40, 160, 0, 0),
52 CE(BARBADOS, FCC2_WORLD, 0, BB, 40, 160, 0, 0),
53 CE(BELARUS, ETSI1_WORLD, 0, BY, 40, 160, 0, 0),
54 CE(BELGIUM, ETSI1_WORLD, ETSI1_6G_02, BE, 40, 160, 320, 0),
55 CE(BELIZE, ETSI8_WORLD, 0, BZ, 40, 160, 0, 0),
56 CE(BERMUDA, FCC17_FCCA, 0, BM, 40, 160, 0, 0),
57 CE(BHUTAN, ETSI1_WORLD, 0, BT, 40, 160, 0, 0),
58 CE(BOLIVIA, FCC17_WORLD, 0, BO, 40, 160, 0, 0),
59 CE(BOSNIA_HERZ, ETSI1_WORLD, 0, BA, 40, 160, 0, 0),
60 CE(BOTSWANA, ETSI20_WORLD, 0, BW, 40, 160, 0, 0),
61 CE(BRAZIL, FCC18_ETSIC, FCC1_6G_07, BR, 40, 160, 320, 0),
62 CE(BRUNEI_DARUSSALAM, FCC17_WORLD, 0, BN, 40, 160, 0, 0),
63 CE(BULGARIA, ETSI1_WORLD, ETSI1_6G_02, BG, 40, 160, 320, 0),
64 CE(BURKINA_FASO, FCC17_WORLD, 0, BF, 40, 160, 0, 0),
65 CE(BURUNDI, ETSI20_WORLD, 0, BI, 40, 160, 0, 0),
66 CE(CAMBODIA, ETSI1_WORLD, 0, KH, 40, 160, 0, 0),
67 CE(CAMEROON, ETSI1_WORLD, 0, CM, 40, 160, 0, 0),
68 CE(CANADA, FCC6_FCCA, FCC1_6G_05, CA, 40, 160, 320, 0),
69 CE(CAYMAN_ISLANDS, FCC17_WORLD, FCC1_6G_01, KY, 40, 160, 320, 0),
70 CE(CENTRAL_AFRICA_REPUBLIC, FCC17_WORLD, 0, CF, 40, 40, 0, 0),
71 CE(CHAD, ETSI1_WORLD, 0, TD, 40, 160, 0, 0),
72 CE(CHILE, FCC20_FCCA, APL7_6G_13, CL, 40, 160, 320, 0),
73 CE(CHINA, APL14_CHNA, 0, CN, 40, 160, 0, 0),
74 CE(CHRISTMAS_ISLAND, APL25_ETSIC, ETSI2_6G_0C, CX, 40, 320, 0, 0),
75 CE(COLOMBIA, FCC17_FCCA, 0, CO, 40, 160, 0, 0),
76 CE(CONGO, ETSI12_WORLD, 0, CG, 40, 160, 0, 0),
77 CE(CONGO_DEMOCRATIC_REPUBLIC, ETSI20_WORLD, 0, CD, 40, 160, 0, 0),
78 CE(COOK_ISLANDS, APL26_ETSIC, ETSI2_6G_0E, CK, 40, 160, 320, 0),
79 CE(COSTA_RICA, FCC17_WORLD, APL4_6G_11, CR, 40, 160, 320, 0),
80 CE(COTE_DIVOIRE, FCC17_WORLD, 0, CI, 40, 160, 0, 0),
81 CE(CROATIA, ETSI1_WORLD, 0, HR, 40, 160, 0, 0),
82 CE(CURACAO, APL10_WORLD, ETSI1_6G_02, CW, 40, 160, 320, 0),
83 CE(CYPRUS, ETSI1_WORLD, ETSI1_6G_02, CY, 40, 160, 320, 0),
84 CE(CZECH, ETSI1_WORLD, ETSI1_6G_02, CZ, 40, 160, 320, 0),
85 CE(DENMARK, ETSI1_WORLD, ETSI1_6G_02, DK, 40, 160, 320, 0),
86 CE(DOMINICA, FCC1_FCCA, 0, DM, 40, 160, 0, 0),
87 CE(DOMINICAN_REPUBLIC, FCC17_FCCA, FCC1_6G_14, DO, 40, 160, 320, 0),
88 CE(ECUADOR, FCC17_FCCA, 0, EC, 40, 160, 0, 0),
89 CE(EGYPT, ETSI3_WORLD, 0, EG, 40, 160, 0, 0),
90 CE(EL_SALVADOR, FCC17_WORLD, FCC1_6G_01, SV, 40, 160, 320, 0),
91 CE(ESTONIA, ETSI1_WORLD, ETSI1_6G_02, EE, 40, 160, 320, 0),
92 CE(ETHIOPIA, ETSI1_WORLD, 0, ET, 40, 160, 0, 0),
93 CE(FALKLAND_ISLANDS, ETSI1_WORLD, ETSI2_6G_03, FK, 40, 160, 320, 0),
94 CE(FAROE_ISLANDS, ETSI1_WORLD, ETSI1_6G_02, FO, 40, 160, 320, 0),
95 CE(FIJI, APL1_WORLD, ETSI2_6G_0C, FJ, 40, 160, 320, 0),
96 CE(FINLAND, ETSI1_WORLD, ETSI1_6G_02, FI, 40, 160, 320, 0),
97 CE(FRANCE, ETSI1_WORLD, ETSI1_6G_02, FR, 40, 160, 320, 0),
98 CE(FRENCH_GUIANA, ETSI1_WORLD, ETSI1_6G_02, GF, 40, 160, 320, 0),
99 CE(FRENCH_POLYNESIA, ETSI1_WORLD, ETSI1_6G_02, PF, 40, 160, 320, 0),
100 CE(FRENCH_SOUTHERN_TERRITORIES, ETSI1_WORLD, ETSI1_6G_02, TF, 40, 160,
101 320, 0),
102 CE(GABON, ETSI3_WORLD, 0, GA, 40, 160, 0, 0),
103 CE(GEORGIA, ETSI1_WORLD, ETSI1_6G_02, GE, 40, 160, 320, 0),
104 CE(GERMANY, ETSI1_WORLD, ETSI1_6G_02, DE, 40, 160, 320, 0),
105 CE(GHANA, FCC17_WORLD, 0, GH, 40, 160, 0, 0),
106 CE(GIBRALTAR, ETSI1_WORLD, ETSI2_6G_03, GI, 40, 160, 320, 0),
107 CE(GREECE, ETSI1_WORLD, ETSI1_6G_02, GR, 40, 160, 320, 0),
108 CE(GREENLAND, ETSI1_WORLD, 0, GL, 40, 160, 0, 0),
109 CE(GRENADA, FCC17_FCCA, FCC1_6G_01, GD, 40, 160, 320, 0),
110 CE(GUADELOUPE, ETSI1_WORLD, ETSI1_6G_02, GP, 40, 160, 320, 0),
111 CE(GUAM, FCC3_FCCA, FCC1_6G_01, GU, 40, 160, 320, 0),
112 CE(GUATEMALA, APL29_ETSIC, APL2_6G_06, GT, 40, 160, 320, 0),
113 CE(GUERNSEY, ETSI1_WORLD, ETSI2_6G_03, GG, 40, 160, 320, 0),
114 CE(GUYANA, APL1_ETSIC, 0, GY, 40, 160, 0, 0),
115 CE(HAITI, FCC17_FCCA, 0, HT, 40, 160, 0, 0),
116 CE(HEARD_ISLAND_AND_MCDONALD_ISLANDS, APL25_ETSIC, ETSI2_6G_0C, HM, 40,
117 160, 320, 0),
118 CE(HOLY_SEE, ETSI1_WORLD, ETSI1_6G_02, VA, 40, 160, 320, 0),
119 CE(HONDURAS, FCC17_WORLD, FCC1_6G_07, HN, 40, 160, 320, 0),
120 CE(HONG_KONG, APL20_WORLD, ETSI2_6G_03, HK, 40, 160, 320, 0),
121 CE(HUNGARY, ETSI1_WORLD, ETSI1_6G_02, HU, 40, 160, 320, 0),
122 CE(ICELAND, ETSI1_WORLD, ETSI1_6G_02, IS, 40, 160, 320, 0),
123 CE(INDIA, APL19_ETSIC, 0, IN, 40, 160, 0, 0),
124 CE(INDONESIA, APL2_ETSID, 0, ID, 40, 80, 0, 0),
125 CE(IRAQ, ETSI1_WORLD, 0, IQ, 40, 160, 0, 0),
126 CE(IRELAND, ETSI1_WORLD, ETSI1_6G_02, IE, 40, 160, 320, 0),
127 CE(ISLE_OF_MAN, ETSI1_WORLD, ETSI2_6G_03, IM, 40, 160, 320, 0),
128 CE(ISRAEL, ETSI17_WORLD, ETSI1_6G_0D, IL, 40, 160, 320, 0),
129 CE(ITALY, ETSI1_WORLD, ETSI1_6G_02, IT, 40, 160, 320, 0),
130 CE(JAMAICA, FCC13_WORLD, FCC1_6G_01, JM, 40, 160, 320, 0),
131 CE(JAPAN, MKK17_MKKC, MKK1_6G_0B, JP, 40, 160, 320, 0),
132 CE(JAPAN15, MKK17_MKKC, 0, JP, 40, 160, 0, 0),
133 CE(JERSEY, ETSI1_WORLD, ETSI2_6G_03, JE, 40, 160, 320, 0),
134 CE(JORDAN, APL4_WORLD, ETSI1_6G_02, JO, 40, 160, 320, 0),
135 CE(KAZAKHSTAN, MKK5_MKKC, 0, KZ, 40, 160, 0, 0),
136 CE(KENYA, ETSI20_WORLD, ETSI1_6G_02, KE, 40, 160, 320, 0),
137 CE(KOREA_ROC, APL9_KRRA, APL1_6G_04, KR, 40, 160, 160, 0),
138 CE(KUWAIT, ETSI1_WORLD, ETSI1_6G_0D, KW, 40, 160, 320, 0),
139 CE(LAO_PEOPLES_DEMOCRATIC_REPUBLIC, ETSI20_WORLD, FCC1_6G_05, LA, 40,
140 160, 320, 0),
141 CE(LATVIA, ETSI1_WORLD, ETSI1_6G_02, LV, 40, 160, 320, 0),
142 CE(LEBANON, FCC17_WORLD, 0, LB, 40, 160, 0, 0),
143 CE(LESOTHO, ETSI1_WORLD, 0, LS, 40, 160, 0, 0),
144 CE(LIBYA, ETSI12_WORLD, 0, LY, 40, 160, 0, 0),
145 CE(LIECHTENSTEIN, ETSI1_WORLD, ETSI1_6G_02, LI, 40, 160, 320, 0),
146 CE(LITHUANIA, ETSI1_WORLD, ETSI1_6G_02, LT, 40, 160, 320, 0),
147 CE(LUXEMBOURG, ETSI1_WORLD, ETSI1_6G_02, LU, 40, 160, 320, 0),
148 CE(MACAU, FCC17_WORLD, 0, MO, 40, 160, 0, 0),
149 CE(MACEDONIA, ETSI1_WORLD, 0, MK, 40, 160, 0, 0),
150 CE(MALAWI, ETSI1_WORLD, 0, MW, 40, 160, 0, 0),
151 CE(MALAYSIA, FCC11_WORLD, ETSI1_6G_02, MY, 40, 160, 320, 0),
152 CE(MALDIVES, APL6_WORLD, 0, MV, 40, 160, 0, 0),
153 CE(MALTA, ETSI1_WORLD, ETSI1_6G_02, MT, 40, 160, 320, 0),
154 CE(MARSHALL_ISLANDS, FCC17_FCCA, 0, MH, 40, 160, 0, 0),
155 CE(MARTINIQUE, ETSI1_WORLD, ETSI1_6G_02, MQ, 40, 160, 320, 0),
156 CE(MAURITANIA, ETSI1_WORLD, 0, MR, 40, 160, 0, 0),
157 CE(MAURITIUS, ETSI1_WORLD, ETSI1_6G_02, MU, 40, 160, 320, 0),
158 CE(MAYOTTE, ETSI1_WORLD, ETSI1_6G_02, YT, 40, 160, 320, 0),
159 CE(MEXICO, APL16_ETSIC, 0, MX, 40, 160, 0, 0),
160 CE(MICRONESIA, FCC17_FCCA, 0, FM, 40, 160, 0, 0),
161 CE(MOLDOVA, ETSI1_WORLD, 0, MD, 40, 160, 0, 0),
162 CE(MONACO, ETSI1_WORLD, 0, MC, 40, 160, 0, 0),
163 CE(MONGOLIA, FCC17_WORLD, ETSI1_6G_02, MN, 40, 160, 320, 0),
164 CE(MONTENEGRO, ETSI1_WORLD, 0, ME, 40, 160, 0, 0),
165 CE(MONTSERRAT, ETSI1_WORLD, ETSI2_6G_03, MS, 40, 160, 320, 0),
166 CE(MOROCCO, ETSI3_WORLD, ETSI1_6G_02, MA, 40, 160, 320, 0),
167 CE(MYANMAR, APL1_WORLD, 0, MM, 40, 160, 0, 0),
168 CE(NAMIBIA, APL20_WORLD, 0, NA, 40, 160, 0, 0),
169 CE(NEPAL, APL23_WORLD, 0, NP, 40, 160, 0, 0),
170 CE(NETHERLANDS, ETSI1_WORLD, ETSI1_6G_02, NL, 40, 160, 320, 0),
171 CE(NETHERLANDS_ANTILLES, ETSI1_WORLD, ETSI1_6G_02, AN, 40, 160, 320, 0),
172 CE(NEW_CALEDONIA, ETSI1_WORLD, ETSI1_6G_02, NC, 40, 160, 320, 0),
173 CE(NEW_ZEALAND, APL26_ETSIC, ETSI2_6G_0E, NZ, 40, 160, 320, 0),
174 CE(NICARAGUA, APL27_FCCA, 0, NI, 40, 160, 0, 0),
175 CE(NIGERIA, APL6_WORLD, 0, NG, 40, 160, 0, 0),
176 CE(NIUE, APL26_ETSIC, ETSI2_6G_0E, NU, 40, 160, 320, 0),
177 CE(NORFOLK_ISLAND, APL25_ETSIC, ETSI2_6G_0C, NF, 40, 160, 320, 0),
178 CE(NORTHERN_MARIANA_ISLANDS, FCC3_FCCA, FCC1_6G_01, MP, 40, 160, 320,
179 0),
180 CE(NORWAY, ETSI1_WORLD, ETSI1_6G_02, NO, 40, 160, 320, 0),
181 CE(OMAN, ETSI1_WORLD, 0, OM, 40, 160, 0, 0),
182 CE(PAKISTAN, APL28_ETSIC, 0, PK, 40, 160, 0, 0),
183 CE(PALAU, FCC17_FCCA, 0, PW, 40, 160, 0, 0),
184 CE(PANAMA, FCC14_FCCB, 0, PA, 40, 160, 0, 0),
185 CE(PAPUA_NEW_GUINEA, FCC17_WORLD, 0, PG, 40, 160, 0, 0),
186 CE(PARAGUAY, FCC17_WORLD, 0, PY, 40, 160, 0, 0),
187 CE(PERU, FCC17_WORLD, FCC1_6G_05, PE, 40, 160, 320, 0),
188 CE(PHILIPPINES, ETSI9_WORLD, 0, PH, 40, 160, 0, 0),
189 CE(POLAND, ETSI1_WORLD, ETSI1_6G_02, PL, 40, 160, 320, 0),
190 CE(PORTUGAL, ETSI1_WORLD, ETSI1_6G_02, PT, 40, 160, 320, 0),
191 CE(PUERTO_RICO, FCC3_FCCA, FCC1_6G_01, PR, 40, 160, 320, 0),
192 CE(QATAR, ETSI14_WORLD, ETSI1_6G_02, QA, 40, 160, 320, 0),
193 CE(REUNION, ETSI1_WORLD, ETSI1_6G_02, RE, 40, 160, 320, 0),
194 CE(ROMANIA, ETSI1_WORLD, 0, RO, 40, 160, 0, 0),
195 CE(RUSSIA, ETSI8_WORLD, 0, RU, 40, 160, 0, 0),
196 CE(RWANDA, ETSI20_WORLD, 0, RW, 40, 160, 0, 0),
197 CE(SAINT_BARTHELEMY, ETSI1_WORLD, 0, BL, 40, 160, 0, 0),
198 CE(SAINT_HELENA_ASCENSION_AND_TRISTAN_DA_CUNHA, ETSI1_WORLD,
199 ETSI2_6G_03, SH, 40, 160, 320, 0),
200 CE(SAINT_KITTS_AND_NEVIS, APL10_WORLD, 0, KN, 40, 160, 0, 0),
201 CE(SAINT_LUCIA, APL10_WORLD, 0, LC, 40, 160, 0, 0),
202 CE(SAINT_MARTIN, ETSI1_WORLD, 0, MF, 40, 160, 0, 0),
203 CE(SAINT_PIERRE_AND_MIQUELON, ETSI1_WORLD, ETSI1_6G_02, PM, 40, 160,
204 320, 0),
205 CE(SAINT_VINCENT_AND_THE_GRENADIENS, ETSI1_WORLD, 0, VC,
206 40, 160, 0, 0),
207 CE(SAMOA, ETSI1_WORLD, 0, WS, 40, 40, 0, 0),
208 CE(SAN_MARINO, ETSI1_WORLD, ETSI1_6G_02, SM, 40, 160, 320, 0),
209 CE(SAO_TOME_AND_PRINCIPE, FCC17_WORLD, 0, ST, 40, 160, 0, 0),
210 CE(SAUDI_ARABIA, ETSI20_WORLD, APL6_6G_0A, SA, 40, 160, 320, 0),
211 CE(SENEGAL, ETSI1_WORLD, 0, SN, 40, 160, 0, 0),
212 CE(SERBIA, ETSI1_WORLD, 0, RS, 40, 160, 0, 0),
213 CE(SINGAPORE, APL20_WORLD, 0, SG, 40, 160, 0, 0),
214 CE(SINT_MAARTEN, ETSI1_WORLD, ETSI1_6G_02, SX, 40, 160, 320, 0),
215 CE(SLOVAKIA, ETSI1_WORLD, ETSI1_6G_02, SK, 40, 160, 320, 0),
216 CE(SLOVENIA, ETSI1_WORLD, ETSI1_6G_02, SI, 40, 160, 320, 0),
217 CE(SOUTH_AFRICA, ETSI20_WORLD, 0, ZA, 40, 160, 0, 0),
218 CE(SPAIN, ETSI1_WORLD, ETSI1_6G_02, ES, 40, 160, 320, 0),
219 CE(SRI_LANKA, ETSI15_ETSIC, ETSI1_6G_02, LK, 40, 160, 320, 0),
220 CE(SURINAME, ETSI1_WORLD, 0, SR, 40, 160, 0, 0),
221 CE(SVALBARD_AND_JAN_MAYEN, ETSI1_WORLD, ETSI1_6G_02, SJ, 40, 160, 320,
222 0),
223 CE(SWEDEN, ETSI1_WORLD, ETSI1_6G_02, SE, 40, 160, 320, 0),
224 CE(SWITZERLAND, ETSI1_WORLD, ETSI1_6G_02, CH, 40, 160, 320, 0),
225 CE(TAIWAN, FCC17_FCCA, 0, TW, 40, 160, 0, 0),
226 CE(TANZANIA, ETSI15_WORLD, 0, TZ, 40, 160, 0, 0),
227 CE(THAILAND, APL20_WORLD, 0, TH, 40, 160, 0, 0),
228 CE(TOGO, ETSI1_WORLD, 0, TG, 40, 40, 0, 0),
229 CE(TRINIDAD_Y_TOBAGO, FCC17_WORLD, 0, TT, 40, 160, 0, 0),
230 CE(TUNISIA, ETSI3_WORLD, 0, TN, 40, 160, 0, 0),
231 CE(TURKEY, ETSI1_WORLD, ETSI1_6G_02, TR, 40, 160, 320, 0),
232 CE(TURKS_AND_CAICOS, FCC17_WORLD, 0, TC, 40, 160, 0, 0),
233 CE(UGANDA, FCC17_WORLD, 0, UG, 40, 160, 0, 0),
234 CE(UKRAINE, ETSI9_WORLD, 0, UA, 40, 160, 0, 0),
235 CE(UAE, ETSI20_WORLD, APL3_6G_08, AE, 40, 160, 320, 0),
236 CE(UNITED_KINGDOM, ETSI1_WORLD, ETSI2_6G_03, GB, 40, 160, 320, 0),
237 CE(UNITED_STATES, FCC8_FCCA, FCC1_6G_01, US, 40, 160, 320, 0),
238 CE(UNITED_STATES_MINOR_OUTLYING_ISLANDS, FCC8_FCCA, FCC1_6G_01, UM, 40,
239 160, 320, 0),
240 CE(URUGUAY, FCC2_WORLD, 0, UY, 40, 160, 0, 0),
241 CE(UZBEKISTAN, ETSI3_WORLD, 0, UZ, 40, 160, 0, 0),
242 CE(VANUATU, FCC17_WORLD, 0, VU, 40, 160, 0, 0),
243 CE(VENEZUELA, FCC2_ETSIC, FCC1_6G_01, VE, 40, 160, 320, 0),
244 CE(VIET_NAM, ETSI15_WORLD, 0, VN, 40, 160, 0, 0),
245 CE(VIRGIN_ISLANDS, FCC3_FCCA, FCC1_6G_01, VI, 40, 160, 320, 0),
246 CE(VIRGIN_ISLANDS_BRITISH, ETSI1_WORLD, ETSI2_6G_03, VG, 40, 160, 320,
247 0),
248 CE(WALLIS_AND_FUTUNA, ETSI1_WORLD, 0, WF, 40, 160, 0, 0),
249 CE(YEMEN, ETSI1_WORLD, 0, YE, 40, 160, 0, 0),
250 CE(ZAMBIA, ETSI20_WORLD, 0, ZM, 40, 160, 0, 0),
251 CE(ZIMBABWE, ETSI1_WORLD, 0, ZW, 40, 160, 0, 0),
252 };
253 #else
254 #ifdef WLAN_FEATURE_DSRC
255 const struct country_code_to_reg_domain g_all_countries[] = {
256 CE(AFGHANISTAN, ETSI1_WORLD, 0, AF, 40, 160, 0, 0),
257 CE(ALAND_ISLANDS, FCC17_WORLD, ETSI1_6G_02, AX, 40, 160, 320, 0),
258 CE(ALBANIA, ETSI20_WORLD, 0, AL, 40, 160, 0, 0),
259 CE(ALGERIA, APL13_WORLD, 0, DZ, 40, 160, 0, 0),
260 CE(AMERICAN_SAMOA, FCC3_FCCA, FCC1_6G_01, AS, 40, 160, 320, 0),
261 CE(ANDORRA, ETSI1_WORLD, ETSI1_6G_02, AD, 40, 160, 320, 0),
262 CE(ANGUILLA, ETSI1_WORLD, 0, AI, 40, 160, 0, 0),
263 CE(ANTIGUA_AND_BARBUDA, ETSI10_WORLD, FCC1_6G_01, AG, 40, 160, 320, 0),
264 CE(ARGENTINA, APL17_ETSIC, 0, AR, 40, 160, 0, 0),
265 CE(ARMENIA, APL4_WORLD, 0, AM, 40, 160, 0, 0),
266 CE(ARUBA, ETSI1_WORLD, FCC1_6G_01, AW, 40, 160, 320, 0),
267 CE(AUSTRALIA, APL25_ETSIC, ETSI2_6G_0C, AU, 40, 160, 320, 0),
268 CE(AUSTRIA, ETSI10_WORLD, 0, AT, 40, 160, 0, 0),
269 CE(AZERBAIJAN, ETSI8_WORLD, 0, AZ, 40, 160, 0, 0),
270 CE(BAHAMAS, FCC17_WORLD, FCC1_6G_01, BS, 40, 160, 320, 0),
271 CE(BAHRAIN, APL15_WORLD, 0, BH, 40, 160, 0, 0),
272 CE(BANGLADESH, APL1_WORLD, 0, BD, 40, 160, 0, 0),
273 CE(BARBADOS, FCC2_WORLD, 0, BB, 40, 160, 0, 0),
274 CE(BELARUS, ETSI1_WORLD, 0, BY, 40, 160, 0, 0),
275 CE(BELGIUM, ETSI10_WORLD, ETSI1_6G_02, BE, 40, 160, 320, 0),
276 CE(BELIZE, ETSI8_WORLD, 0, BZ, 40, 160, 0, 0),
277 CE(BERMUDA, FCC17_FCCA, 0, BM, 40, 160, 0, 0),
278 CE(BHUTAN, ETSI1_WORLD, 0, BT, 40, 160, 0, 0),
279 CE(BOLIVIA, FCC17_WORLD, 0, BO, 40, 160, 0, 0),
280 CE(BOSNIA_HERZ, ETSI20_WORLD, 0, BA, 40, 160, 0, 0),
281 CE(BOTSWANA, ETSI20_WORLD, 0, BW, 40, 160, 0, 0),
282 CE(BRAZIL, FCC18_ETSIC, FCC1_6G_07, BR, 40, 160, 320, 0),
283 CE(BRUNEI_DARUSSALAM, FCC17_WORLD, 0, BN, 40, 160, 0, 0),
284 CE(BULGARIA, ETSI10_WORLD, ETSI1_6G_02, BG, 40, 160, 320, 0),
285 CE(BURKINA_FASO, FCC17_WORLD, 0, BF, 40, 160, 0, 0),
286 CE(BURUNDI, ETSI20_WORLD, 0, BI, 40, 160, 0, 0),
287 CE(CAMBODIA, ETSI1_WORLD, 0, KH, 40, 160, 0, 0),
288 CE(CAMEROON, ETSI1_WORLD, 0, CM, 40, 160, 0, 0),
289 CE(CANADA, FCC3_FCCA, FCC1_6G_05, CA, 40, 160, 320, 0),
290 CE(CAYMAN_ISLANDS, FCC17_WORLD, FCC1_6G_01, KY, 40, 160, 320, 0),
291 CE(CENTRAL_AFRICA_REPUBLIC, FCC17_WORLD, 0, CF, 40, 40, 0, 0),
292 CE(CHAD, ETSI1_WORLD, 0, TD, 40, 160, 0, 0),
293 CE(CHILE, FCC20_FCCA, APL7_6G_13, CL, 40, 160, 320, 0),
294 CE(CHINA, APL14_CHNA, 0, CN, 40, 160, 0, 0),
295 CE(CHRISTMAS_ISLAND, APL25_ETSIC, ETSI2_6G_0C, CX, 40, 160, 320, 0),
296 CE(COLOMBIA, FCC17_WORLD, 0, CO, 40, 160, 0, 0),
297 CE(CONGO, ETSI12_WORLD, 0, CG, 40, 160, 0, 0),
298 CE(CONGO_DEMOCRATIC_REPUBLIC, ETSI20_WORLD, 0, CD, 40, 160, 0, 0),
299 CE(COOK_ISLANDS, APL26_ETSIC, ETSI2_6G_0E, CK, 40, 160, 320, 0),
300 CE(COSTA_RICA, FCC17_WORLD, APL4_6G_11, CR, 40, 160, 320, 0),
301 CE(COTE_DIVOIRE, FCC17_WORLD, 0, CI, 40, 160, 0, 0),
302 CE(CROATIA, ETSI10_WORLD, 0, HR, 40, 160, 0, 0),
303 CE(CURACAO, APL10_WORLD, ETSI1_6G_02, CW, 40, 160, 320, 0),
304 CE(CYPRUS, ETSI10_WORLD, ETSI1_6G_02, CY, 40, 160, 320, 0),
305 CE(CZECH, ETSI10_WORLD, ETSI1_6G_02, CZ, 40, 160, 320, 0),
306 CE(DENMARK, ETSI10_WORLD, ETSI1_6G_02, DK, 40, 160, 320, 0),
307 CE(DOMINICA, FCC2_FCCA, 0, DM, 40, 160, 0, 0),
308 CE(DOMINICAN_REPUBLIC, FCC17_FCCA, FCC1_6G_14, DO, 40, 160, 320, 0),
309 CE(ECUADOR, FCC17_FCCA, 0, EC, 40, 160, 0, 0),
310 CE(EGYPT, ETSI3_WORLD, 0, EG, 40, 160, 0, 0),
311 CE(EL_SALVADOR, FCC17_WORLD, FCC1_6G_01, SV, 40, 160, 320, 0),
312 CE(ESTONIA, ETSI10_WORLD, ETSI1_6G_02, EE, 40, 160, 320, 0),
313 CE(ETHIOPIA, ETSI1_WORLD, 0, ET, 40, 160, 0, 0),
314 CE(FALKLAND_ISLANDS, ETSI10_WORLD, ETSI2_6G_03, FK, 40, 160, 320, 0),
315 CE(FAROE_ISLANDS, ETSI10_WORLD, ETSI1_6G_02, FO, 40, 160, 320, 0),
316 CE(FIJI, APL1_WORLD, ETSI2_6G_0C, FJ, 40, 160, 320, 0),
317 CE(FINLAND, ETSI10_WORLD, ETSI1_6G_02, FI, 40, 160, 320, 0),
318 CE(FRANCE, ETSI10_WORLD, ETSI1_6G_02, FR, 40, 160, 320, 0),
319 CE(FRENCH_GUIANA, ETSI10_WORLD, ETSI1_6G_02, GF, 40, 160, 320, 0),
320 CE(FRENCH_POLYNESIA, ETSI10_WORLD, ETSI1_6G_02, PF, 40, 160, 320, 0),
321 CE(FRENCH_SOUTHERN_TERRITORIES, ETSI10_WORLD, ETSI1_6G_02, TF, 40, 160,
322 320, 0),
323 CE(GABON, ETSI3_WORLD, 0, GA, 40, 160, 0, 0),
324 CE(GEORGIA, ETSI1_WORLD, ETSI1_6G_02, GE, 40, 160, 320, 0),
325 CE(GERMANY, ETSI10_WORLD, ETSI1_6G_02, DE, 40, 160, 320, 0),
326 CE(GHANA, FCC17_WORLD, 0, GH, 40, 160, 0, 0),
327 CE(GIBRALTAR, ETSI10_WORLD, ETSI2_6G_03, GI, 40, 160, 320, 0),
328 CE(GREECE, ETSI10_WORLD, ETSI1_6G_02, GR, 40, 160, 320, 0),
329 CE(GREENLAND, ETSI10_WORLD, 0, GL, 40, 160, 0, 0),
330 CE(GRENADA, FCC17_FCCA, FCC1_6G_01, GD, 40, 160, 320, 0),
331 CE(GUADELOUPE, ETSI1_WORLD, ETSI1_6G_02, GP, 40, 160, 320, 0),
332 CE(GUAM, FCC10_FCCA, FCC1_6G_01, GU, 40, 160, 320, 0),
333 CE(GUATEMALA, APL29_ETSIC, APL2_6G_06, GT, 40, 160, 320, 0),
334 CE(GUERNSEY, ETSI10_WORLD, ETSI2_6G_03, GG, 40, 160, 320, 0),
335 CE(GUYANA, APL1_ETSIC, 0, GY, 40, 160, 0, 0),
336 CE(HAITI, FCC17_FCCA, 0, HT, 40, 160, 0, 0),
337 CE(HEARD_ISLAND_AND_MCDONALD_ISLANDS, APL25_ETSIC, ETSI2_6G_0C, HM, 40,
338 160, 320, 0),
339 CE(HOLY_SEE, ETSI10_WORLD, ETSI1_6G_02, VA, 40, 160, 320, 0),
340 CE(HONDURAS, FCC13_WORLD, FCC1_6G_07, HN, 40, 160, 320, 0),
341 CE(HONG_KONG, APL20_WORLD, ETSI2_6G_03, HK, 40, 160, 320, 0),
342 CE(HUNGARY, ETSI10_WORLD, ETSI1_6G_02, HU, 40, 160, 320, 0),
343 CE(ICELAND, ETSI10_WORLD, ETSI1_6G_02, IS, 40, 160, 320, 0),
344 CE(INDIA, APL15_WORLD, 0, IN, 40, 160, 0, 0),
345 CE(INDONESIA, APL2_ETSID, 0, ID, 40, 80, 0, 0),
346 CE(IRAQ, ETSI1_WORLD, 0, IQ, 40, 160, 0, 0),
347 CE(IRELAND, ETSI10_WORLD, ETSI1_6G_02, IE, 40, 160, 320, 0),
348 CE(ISLE_OF_MAN, ETSI10_WORLD, ETSI2_6G_03, IM, 40, 160, 320, 0),
349 CE(ISRAEL, ETSI3_WORLD, ETSI1_6G_0D, IL, 40, 160, 320, 0),
350 CE(ITALY, ETSI10_WORLD, ETSI1_6G_02, IT, 40, 160, 320, 0),
351 CE(JAMAICA, FCC13_WORLD, FCC1_6G_01, JM, 40, 160, 320, 0),
352 CE(JAPAN, MKK17_MKKC, MKK1_6G_0B, JP, 40, 160, 320, 0),
353 CE(JAPAN15, MKK5_MKKC, 0, JP, 40, 160, 0, 0),
354 CE(XA, MKK5_MKKA, 0, XA, 40, 160, 0, 0),
355 CE(JERSEY, ETSI10_WORLD, ETSI2_6G_03, JE, 40, 160, 320, 0),
356 CE(JORDAN, APL4_WORLD, ETSI1_6G_02, JO, 40, 160, 320, 0),
357 CE(KAZAKHSTAN, MKK5_MKKC, 0, KZ, 40, 160, 0, 0),
358 CE(KENYA, ETSI20_WORLD, ETSI1_6G_02, KE, 40, 160, 320, 0),
359 CE(KOREA_ROC, APL9_KRRA, APL1_6G_04, KR, 40, 160, 160, 0),
360 CE(KUWAIT, ETSI13_WORLD, ETSI1_6G_0D, KW, 40, 160, 320, 0),
361 CE(LAO_PEOPLES_DEMOCRATIC_REPUBLIC, ETSI20_WORLD, FCC1_6G_05, LA, 40,
362 160, 320, 0),
363 CE(LATVIA, ETSI10_WORLD, ETSI1_6G_02, LV, 40, 160, 320, 0),
364 CE(LEBANON, FCC17_WORLD, 0, LB, 40, 160, 0, 0),
365 CE(LESOTHO, ETSI1_WORLD, 0, LS, 40, 160, 0, 0),
366 CE(LIBYA, ETSI12_WORLD, 0, LY, 40, 160, 0, 0),
367 CE(LIECHTENSTEIN, ETSI10_WORLD, ETSI1_6G_02, LI, 40, 160, 320, 0),
368 CE(LITHUANIA, ETSI10_WORLD, ETSI1_6G_02, LT, 40, 160, 320, 0),
369 CE(LUXEMBOURG, ETSI10_WORLD, ETSI1_6G_02, LU, 40, 160, 320, 0),
370 CE(MACAU, FCC17_WORLD, 0, MO, 40, 160, 0, 0),
371 CE(MACEDONIA, ETSI20_WORLD, 0, MK, 40, 160, 0, 0),
372 CE(MALAWI, ETSI1_WORLD, 0, MW, 40, 160, 0, 0),
373 CE(MALAYSIA, FCC11_WORLD, ETSI1_6G_02, MY, 40, 160, 320, 0),
374 CE(MALDIVES, APL6_WORLD, 0, MV, 40, 160, 0, 0),
375 CE(MALTA, ETSI10_WORLD, ETSI1_6G_02, MT, 40, 160, 320, 0),
376 CE(MARSHALL_ISLANDS, FCC17_FCCA, 0, MH, 40, 160, 0, 0),
377 CE(MARTINIQUE, ETSI10_WORLD, ETSI1_6G_02, MQ, 40, 160, 320, 0),
378 CE(MAURITANIA, ETSI1_WORLD, 0, MR, 40, 160, 0, 0),
379 CE(MAURITIUS, ETSI20_WORLD, ETSI1_6G_02, MU, 40, 160, 320, 0),
380 CE(MAYOTTE, ETSI1_WORLD, ETSI1_6G_02, YT, 40, 160, 320, 0),
381 CE(MEXICO, APL16_ETSIC, 0, MX, 40, 160, 0, 0),
382 CE(MICRONESIA, FCC17_FCCA, 0, FM, 40, 160, 0, 0),
383 CE(MOLDOVA, ETSI20_WORLD, 0, MD, 40, 160, 0, 0),
384 CE(MONACO, ETSI10_WORLD, 0, MC, 40, 160, 0, 0),
385 CE(MONGOLIA, FCC17_WORLD, ETSI1_6G_02, MN, 40, 160, 320, 0),
386 CE(MONTENEGRO, ETSI10_WORLD, 0, ME, 40, 160, 0, 0),
387 CE(MONTSERRAT, ETSI10_WORLD, ETSI2_6G_03, MS, 40, 160, 320, 0),
388 CE(MOROCCO, ETSI3_WORLD, ETSI1_6G_02, MA, 40, 160, 320, 0),
389 CE(MYANMAR, APL1_WORLD, 0, MM, 40, 160, 0, 0),
390 CE(NAMIBIA, APL20_WORLD, 0, NA, 40, 160, 0, 0),
391 CE(NEPAL, APL23_WORLD, 0, NP, 40, 160, 0, 0),
392 CE(NETHERLANDS, ETSI10_WORLD, ETSI1_6G_02, NL, 40, 160, 320, 0),
393 CE(NETHERLANDS_ANTILLES, ETSI10_WORLD, ETSI1_6G_02, AN, 40, 160, 320,
394 0),
395 CE(NEW_CALEDONIA, ETSI10_WORLD, ETSI1_6G_02, NC, 40, 160, 320, 0),
396 CE(NEW_ZEALAND, APL26_ETSIC, ETSI2_6G_0E, NZ, 40, 160, 320, 0),
397 CE(NICARAGUA, APL27_FCCA, 0, NI, 40, 160, 0, 0),
398 CE(NIGERIA, APL6_WORLD, 0, NG, 40, 160, 0, 0),
399 CE(NIUE, ETSI10_WORLD, ETSI2_6G_0E, NU, 40, 160, 320, 0),
400 CE(NORFOLK_ISLAND, APL25_ETSIC, ETSI2_6G_0C, NF, 40, 160, 320, 0),
401 CE(NORTHERN_MARIANA_ISLANDS, FCC10_FCCA, FCC1_6G_01, MP, 40, 160, 320,
402 0),
403 CE(NORWAY, ETSI10_WORLD, ETSI1_6G_02, NO, 40, 160, 320, 0),
404 CE(OMAN, ETSI1_WORLD, 0, OM, 40, 160, 0, 0),
405 CE(PAKISTAN, APL28_ETSIC, 0, PK, 40, 160, 0, 0),
406 CE(PALAU, FCC17_FCCA, 0, PW, 40, 160, 0, 0),
407 CE(PANAMA, FCC14_FCCB, 0, PA, 40, 160, 0, 0),
408 CE(PAPUA_NEW_GUINEA, FCC17_WORLD, 0, PG, 40, 160, 0, 0),
409 CE(PARAGUAY, FCC17_WORLD, 0, PY, 40, 160, 0, 0),
410 CE(PERU, FCC17_WORLD, FCC1_6G_05, PE, 40, 160, 320, 0),
411 CE(PHILIPPINES, ETSI9_WORLD, 0, PH, 40, 160, 0, 0),
412 CE(POLAND, ETSI10_WORLD, ETSI1_6G_02, PL, 40, 160, 320, 0),
413 CE(PORTUGAL, ETSI10_WORLD, ETSI1_6G_02, PT, 40, 160, 320, 0),
414 CE(PUERTO_RICO, FCC10_FCCA, FCC1_6G_01, PR, 40, 160, 320, 0),
415 CE(QATAR, ETSI14_WORLD, ETSI1_6G_02, QA, 40, 160, 320, 0),
416 CE(REUNION, ETSI1_WORLD, ETSI1_6G_02, RE, 40, 160, 320, 0),
417 CE(ROMANIA, ETSI10_WORLD, 0, RO, 40, 160, 0, 0),
418 CE(RUSSIA, ETSI8_WORLD, 0, RU, 40, 160, 0, 0),
419 CE(RWANDA, ETSI20_WORLD, 0, RW, 40, 160, 0, 0),
420 CE(SAINT_BARTHELEMY, ETSI1_WORLD, 0, BL, 40, 160, 0, 0),
421 CE(SAINT_HELENA_ASCENSION_AND_TRISTAN_DA_CUNHA, ETSI10_WORLD,
422 ETSI2_6G_03, SH, 40, 160, 320, 0),
423 CE(SAINT_KITTS_AND_NEVIS, APL10_WORLD, 0, KN, 40, 160, 0, 0),
424 CE(SAINT_LUCIA, APL10_WORLD, 0, LC, 40, 160, 0, 0),
425 CE(SAINT_MARTIN, ETSI1_WORLD, 0, MF, 40, 160, 0, 0),
426 CE(SAINT_PIERRE_AND_MIQUELON, ETSI13_WORLD, ETSI1_6G_02, PM, 40, 160,
427 320, 0),
428 CE(SAINT_VINCENT_AND_THE_GRENADIENS, ETSI13_WORLD, 0, VC,
429 40, 160, 0, 0),
430 CE(SAMOA, ETSI1_WORLD, 0, WS, 40, 40, 0, 0),
431 CE(SAN_MARINO, ETSI1_WORLD, ETSI1_6G_02, SM, 40, 160, 320, 0),
432 CE(SAO_TOME_AND_PRINCIPE, FCC17_WORLD, 0, ST, 40, 160, 0, 0),
433 CE(SAUDI_ARABIA, ETSI20_WORLD, APL6_6G_0A, SA, 40, 160, 320, 0),
434 CE(SENEGAL, ETSI1_WORLD, 0, SN, 40, 160, 0, 0),
435 CE(SERBIA, ETSI20_WORLD, 0, RS, 40, 160, 0, 0),
436 CE(SINGAPORE, APL20_WORLD, 0, SG, 40, 160, 0, 0),
437 CE(SINT_MAARTEN, ETSI10_WORLD, ETSI1_6G_02, SX, 40, 160, 320, 0),
438 CE(SLOVAKIA, ETSI10_WORLD, ETSI1_6G_02, SK, 40, 160, 320, 0),
439 CE(SLOVENIA, ETSI10_WORLD, ETSI1_6G_02, SI, 40, 160, 320, 0),
440 CE(SOUTH_AFRICA, ETSI20_WORLD, 0, ZA, 40, 160, 0, 0),
441 CE(SPAIN, ETSI10_WORLD, ETSI1_6G_02, ES, 40, 160, 320, 0),
442 CE(SRI_LANKA, FCC17_ETSIC, ETSI1_6G_02, LK, 40, 160, 320, 0),
443 CE(SURINAME, ETSI1_WORLD, 0, SR, 40, 160, 0, 0),
444 CE(SVALBARD_AND_JAN_MAYEN, ETSI13_WORLD, ETSI1_6G_02, SJ, 40, 160, 320,
445 0),
446 CE(SWEDEN, ETSI10_WORLD, ETSI1_6G_02, SE, 40, 160, 320, 0),
447 CE(SWITZERLAND, ETSI10_WORLD, ETSI1_6G_02, CH, 40, 160, 320, 0),
448 CE(TAIWAN, FCC17_FCCA, 0, TW, 40, 160, 0, 0),
449 CE(TANZANIA, APL1_WORLD, 0, TZ, 40, 160, 0, 0),
450 CE(THAILAND, APL20_WORLD, 0, TH, 40, 160, 0, 0),
451 CE(TOGO, ETSI1_WORLD, 0, TG, 40, 40, 0, 0),
452 CE(TRINIDAD_Y_TOBAGO, FCC17_WORLD, 0, TT, 40, 160, 0, 0),
453 CE(TUNISIA, ETSI3_WORLD, 0, TN, 40, 160, 0, 0),
454 CE(TURKEY, ETSI20_WORLD, ETSI1_6G_02, TR, 40, 160, 320, 0),
455 CE(TURKS_AND_CAICOS, FCC17_WORLD, 0, TC, 40, 160, 0, 0),
456 CE(UGANDA, FCC17_WORLD, 0, UG, 40, 160, 0, 0),
457 CE(UKRAINE, ETSI9_WORLD, 0, UA, 40, 160, 0, 0),
458 CE(UAE, ETSI20_WORLD, APL3_6G_08, AE, 40, 160, 320, 0),
459 CE(UNITED_KINGDOM, ETSI10_WORLD, ETSI2_6G_03, GB, 40, 160, 320, 0),
460 CE(UNITED_STATES, FCC8_FCCA, FCC1_6G_01, US, 40, 160, 320, 0),
461 CE(UNITED_STATES_MINOR_OUTLYING_ISLANDS, FCC10_FCCA, FCC1_6G_01, UM,
462 40, 160, 320, 0),
463 CE(URUGUAY, FCC2_WORLD, 0, UY, 40, 160, 0, 0),
464 CE(UZBEKISTAN, ETSI3_WORLD, 0, UZ, 40, 160, 0, 0),
465 CE(VANUATU, FCC17_WORLD, 0, VU, 40, 160, 0, 0),
466 CE(VENEZUELA, FCC2_ETSIC, FCC1_6G_01, VE, 40, 160, 320, 0),
467 CE(VIET_NAM, ETSI15_WORLD, 0, VN, 40, 160, 0, 0),
468 CE(VIRGIN_ISLANDS, FCC10_FCCA, FCC1_6G_01, VI, 40, 160, 320, 0),
469 CE(VIRGIN_ISLANDS_BRITISH, ETSI10_WORLD, ETSI2_6G_03, VG, 40, 160, 320,
470 0),
471 CE(WALLIS_AND_FUTUNA, ETSI1_WORLD, 0, WF, 40, 160, 0, 0),
472 CE(YEMEN, ETSI1_WORLD, 0, YE, 40, 160, 0, 0),
473 CE(ZAMBIA, ETSI20_WORLD, 0, ZM, 40, 160, 0, 0),
474 CE(ZIMBABWE, ETSI1_WORLD, 0, ZW, 40, 160, 0, 0),
475 };
476 #elif defined(WLAN_REG_AUTO)
477 const struct country_code_to_reg_domain g_all_countries[] = {
478 CE(AFGHANISTAN, ETSI1_WORLD, 0, AF, 40, 160, 0, 0),
479 CE(ALAND_ISLANDS, ETSI21_WORLD, ETSI1_6G_02, AX, 40, 160, 320, 0),
480 CE(ALBANIA, ETSI20_WORLD, 0, AL, 40, 160, 0, 0),
481 CE(ALGERIA, APL13_WORLD, 0, DZ, 40, 160, 0, 0),
482 CE(AMERICAN_SAMOA, FCC3_FCCA, FCC1_6G_01, AS, 40, 160, 320, 0),
483 CE(ANDORRA, ETSI21_WORLD, ETSI1_6G_02, AD, 40, 160, 320, 0),
484 CE(ANGUILLA, ETSI1_WORLD, 0, AI, 40, 160, 0, 0),
485 CE(ANTIGUA_AND_BARBUDA, FCC17_WORLD, FCC1_6G_01, AG, 40, 160, 320, 0),
486 CE(ARGENTINA, APL17_ETSIC, 0, AR, 40, 160, 0, 0),
487 CE(ARMENIA, APL4_WORLD, 0, AM, 40, 160, 0, 0),
488 CE(ARUBA, ETSI1_WORLD, FCC1_6G_01, AW, 40, 160, 320, 0),
489 CE(AUSTRALIA, APL25_ETSIC, ETSI2_6G_0C, AU, 40, 160, 320, 0),
490 CE(AUSTRIA, ETSI21_WORLD, 0, AT, 40, 160, 0, 0),
491 CE(AZERBAIJAN, ETSI8_WORLD, 0, AZ, 40, 160, 0, 0),
492 CE(BAHAMAS, FCC17_WORLD, FCC1_6G_01, BS, 40, 160, 320, 0),
493 CE(BAHRAIN, APL15_WORLD, 0, BH, 40, 160, 0, 0),
494 CE(BANGLADESH, APL1_WORLD, 0, BD, 40, 160, 0, 0),
495 CE(BARBADOS, FCC2_WORLD, 0, BB, 40, 160, 0, 0),
496 CE(BELARUS, ETSI1_WORLD, 0, BY, 40, 160, 0, 0),
497 CE(BELGIUM, ETSI21_WORLD, ETSI1_6G_02, BE, 40, 160, 320, 0),
498 CE(BELIZE, ETSI8_WORLD, 0, BZ, 40, 160, 0, 0),
499 CE(BERMUDA, FCC17_FCCA, 0, BM, 40, 160, 0, 0),
500 CE(BHUTAN, ETSI1_WORLD, 0, BT, 40, 160, 0, 0),
501 CE(BOLIVIA, FCC17_WORLD, 0, BO, 40, 160, 0, 0),
502 CE(BOSNIA_HERZ, ETSI20_WORLD, 0, BA, 40, 160, 0, 0),
503 CE(BOTSWANA, ETSI20_WORLD, 0, BW, 40, 160, 0, 0),
504 CE(BRAZIL, FCC21_ETSIC, FCC1_6G_07, BR, 40, 160, 320, 0),
505 CE(BRUNEI_DARUSSALAM, FCC17_WORLD, 0, BN, 40, 160, 0, 0),
506 CE(BULGARIA, ETSI21_WORLD, ETSI1_6G_02, BG, 40, 160, 320, 0),
507 CE(BURKINA_FASO, FCC17_WORLD, 0, BF, 40, 160, 0, 0),
508 CE(BURUNDI, ETSI20_WORLD, 0, BI, 40, 160, 0, 0),
509 CE(CAMBODIA, ETSI1_WORLD, 0, KH, 40, 160, 0, 0),
510 CE(CAMEROON, ETSI1_WORLD, 0, CM, 40, 160, 0, 0),
511 CE(CANADA, FCC6_FCCA, FCC1_6G_05, CA, 40, 160, 320, 0),
512 CE(CAYMAN_ISLANDS, FCC17_WORLD, FCC1_6G_01, KY, 40, 160, 320, 0),
513 CE(CENTRAL_AFRICA_REPUBLIC, FCC17_WORLD, 0, CF, 40, 40, 0, 0),
514 CE(CHAD, ETSI1_WORLD, 0, TD, 40, 160, 0, 0),
515 CE(CHILE, FCC20_FCCA, APL7_6G_13, CL, 40, 160, 320, 0),
516 CE(CHINA, APL14_CHNA, 0, CN, 40, 160, 0, 0),
517 CE(CHRISTMAS_ISLAND, APL25_ETSIC, ETSI2_6G_0C, CX, 40, 160, 320, 0),
518 CE(COLOMBIA, FCC17_FCCA, 0, CO, 40, 160, 0, 0),
519 CE(CONGO, ETSI12_WORLD, 0, CG, 40, 160, 0, 0),
520 CE(CONGO_DEMOCRATIC_REPUBLIC, ETSI20_WORLD, 0, CD, 40, 160, 0, 0),
521 CE(COOK_ISLANDS, APL26_ETSIC, ETSI2_6G_0E, CK, 40, 160, 320, 0),
522 CE(COSTA_RICA, FCC17_WORLD, APL4_6G_11, CR, 40, 160, 320, 0),
523 CE(COTE_DIVOIRE, FCC17_WORLD, 0, CI, 40, 160, 0, 0),
524 CE(CROATIA, ETSI21_WORLD, 0, HR, 40, 160, 0, 0),
525 CE(CURACAO, APL10_WORLD, ETSI1_6G_02, CW, 40, 160, 320, 0),
526 CE(CYPRUS, ETSI21_WORLD, ETSI1_6G_02, CY, 40, 160, 320, 0),
527 CE(CZECH, ETSI21_WORLD, ETSI1_6G_02, CZ, 40, 160, 320, 0),
528 CE(DENMARK, ETSI21_WORLD, ETSI1_6G_02, DK, 40, 160, 320, 0),
529 CE(DOMINICA, FCC2_FCCA, 0, DM, 40, 160, 0, 0),
530 CE(DOMINICAN_REPUBLIC, FCC17_FCCA, FCC1_6G_14, DO, 40, 160, 320, 0),
531 CE(ECUADOR, FCC17_FCCA, 0, EC, 40, 160, 0, 0),
532 CE(EGYPT, ETSI3_WORLD, 0, EG, 40, 160, 0, 0),
533 CE(EL_SALVADOR, FCC17_WORLD, FCC1_6G_01, SV, 40, 160, 320, 0),
534 CE(ESTONIA, ETSI21_WORLD, ETSI1_6G_02, EE, 40, 160, 320, 0),
535 CE(ETHIOPIA, ETSI1_WORLD, 0, ET, 40, 160, 0, 0),
536 CE(FALKLAND_ISLANDS, ETSI21_WORLD, ETSI2_6G_03, FK, 40, 160, 320, 0),
537 CE(FAROE_ISLANDS, ETSI21_WORLD, ETSI1_6G_02, FO, 40, 160, 320, 0),
538 CE(FIJI, APL1_WORLD, ETSI2_6G_0C, FJ, 40, 160, 320, 0),
539 CE(FINLAND, ETSI21_WORLD, ETSI1_6G_02, FI, 40, 160, 320, 0),
540 CE(FRANCE, ETSI21_WORLD, ETSI1_6G_02, FR, 40, 160, 320, 0),
541 CE(FRENCH_GUIANA, ETSI21_WORLD, ETSI1_6G_02, GF, 40, 160, 320, 0),
542 CE(FRENCH_POLYNESIA, ETSI21_WORLD, ETSI1_6G_02, PF, 40, 160, 320, 0),
543 CE(FRENCH_SOUTHERN_TERRITORIES, ETSI21_WORLD, ETSI1_6G_02, TF, 40, 160,
544 320, 0),
545 CE(GABON, ETSI3_WORLD, 0, GA, 40, 160, 0, 0),
546 CE(GEORGIA, ETSI1_WORLD, ETSI1_6G_02, GE, 40, 160, 320, 0),
547 CE(GERMANY, ETSI21_WORLD, ETSI1_6G_02, DE, 40, 160, 320, 0),
548 CE(GHANA, FCC17_WORLD, 0, GH, 40, 160, 0, 0),
549 CE(GIBRALTAR, ETSI1_WORLD, ETSI2_6G_03, GI, 40, 160, 320, 0),
550 CE(GREECE, ETSI21_WORLD, ETSI1_6G_02, GR, 40, 160, 320, 0),
551 CE(GREENLAND, ETSI1_WORLD, 0, GL, 40, 160, 0, 0),
552 CE(GRENADA, FCC17_FCCA, FCC1_6G_01, GD, 40, 160, 320, 0),
553 CE(GUADELOUPE, ETSI1_WORLD, ETSI1_6G_02, GP, 40, 160, 320, 0),
554 CE(GUAM, FCC3_FCCA, FCC1_6G_01, GU, 40, 160, 320, 0),
555 CE(GUATEMALA, APL29_ETSIC, APL2_6G_06, GT, 40, 160, 320, 0),
556 CE(GUERNSEY, ETSI21_WORLD, ETSI2_6G_03, GG, 40, 160, 320, 0),
557 CE(GUYANA, APL1_ETSIC, 0, GY, 40, 160, 0, 0),
558 CE(HAITI, FCC17_FCCA, 0, HT, 40, 160, 0, 0),
559 CE(HEARD_ISLAND_AND_MCDONALD_ISLANDS, APL25_ETSIC, ETSI2_6G_0C, HM, 40,
560 160, 320, 0),
561 CE(HOLY_SEE, ETSI21_WORLD, ETSI1_6G_02, VA, 40, 160, 320, 0),
562 CE(HONDURAS, FCC13_WORLD, FCC1_6G_07, HN, 40, 160, 320, 0),
563 CE(HONG_KONG, APL20_WORLD, ETSI2_6G_03, HK, 40, 160, 320, 0),
564 CE(HUNGARY, ETSI21_WORLD, ETSI1_6G_02, HU, 40, 160, 320, 0),
565 CE(ICELAND, ETSI21_WORLD, ETSI1_6G_02, IS, 40, 160, 320, 0),
566 CE(INDIA, APL19_ETSIC, 0, IN, 40, 160, 0, 0),
567 CE(INDONESIA, APL2_ETSID, 0, ID, 40, 80, 0, 0),
568 CE(IRAQ, ETSI1_WORLD, 0, IQ, 40, 160, 0, 0),
569 CE(IRELAND, ETSI21_WORLD, ETSI1_6G_02, IE, 40, 160, 320, 0),
570 CE(ISLE_OF_MAN, ETSI21_WORLD, ETSI2_6G_03, IM, 40, 160, 320, 0),
571 CE(ISRAEL, ETSI19_WORLD, ETSI1_6G_0D, IL, 40, 160, 320, 0),
572 CE(ITALY, ETSI21_WORLD, ETSI1_6G_02, IT, 40, 160, 320, 0),
573 CE(JAMAICA, FCC13_WORLD, FCC1_6G_01, JM, 40, 160, 320, 0),
574 CE(JAPAN, MKK18_MKKC, MKK1_6G_0B, JP, 40, 160, 320, 0),
575 CE(JAPAN15, MKK5_MKKC, 0, JP, 40, 160, 0, 0),
576 CE(XA, MKK5_MKKA, 0, XA, 40, 160, 0, 0),
577 CE(JERSEY, ETSI21_WORLD, ETSI2_6G_03, JE, 40, 160, 320, 0),
578 CE(JORDAN, APL4_WORLD, ETSI1_6G_02, JO, 40, 160, 320, 0),
579 CE(KAZAKHSTAN, MKK5_MKKC, 0, KZ, 40, 160, 0, 0),
580 CE(KENYA, ETSI20_WORLD, ETSI1_6G_02, KE, 40, 160, 320, 0),
581 CE(KOREA_ROC, APL9_KRRA, APL1_6G_04, KR, 40, 160, 160, 0),
582 CE(KUWAIT, ETSI13_WORLD, ETSI1_6G_0D, KW, 40, 160, 320, 0),
583 CE(LAO_PEOPLES_DEMOCRATIC_REPUBLIC, ETSI20_WORLD, FCC1_6G_05, LA, 40,
584 160, 320, 0),
585 CE(LATVIA, ETSI21_WORLD, ETSI1_6G_02, LV, 40, 160, 320, 0),
586 CE(LEBANON, FCC17_WORLD, 0, LB, 40, 160, 0, 0),
587 CE(LESOTHO, ETSI1_WORLD, 0, LS, 40, 160, 0, 0),
588 CE(LIBYA, ETSI12_WORLD, 0, LY, 40, 160, 0, 0),
589 CE(LIECHTENSTEIN, ETSI21_WORLD, ETSI1_6G_02, LI, 40, 160, 320, 0),
590 CE(LITHUANIA, ETSI21_WORLD, ETSI1_6G_02, LT, 40, 160, 320, 0),
591 CE(LUXEMBOURG, ETSI21_WORLD, ETSI1_6G_02, LU, 40, 160, 320, 0),
592 CE(MACAU, FCC17_WORLD, 0, MO, 40, 160, 0, 0),
593 CE(MACEDONIA, ETSI20_WORLD, 0, MK, 40, 160, 0, 0),
594 CE(MALAWI, ETSI1_WORLD, 0, MW, 40, 160, 0, 0),
595 CE(MALAYSIA, FCC11_WORLD, ETSI1_6G_02, MY, 40, 160, 320, 0),
596 CE(MALDIVES, APL6_WORLD, 0, MV, 40, 160, 0, 0),
597 CE(MALTA, ETSI21_WORLD, ETSI1_6G_02, MT, 40, 160, 320, 0),
598 CE(MARSHALL_ISLANDS, FCC17_FCCA, 0, MH, 40, 160, 0, 0),
599 CE(MARTINIQUE, ETSI21_WORLD, ETSI1_6G_02, MQ, 40, 160, 320, 0),
600 CE(MAURITANIA, ETSI1_WORLD, 0, MR, 40, 160, 0, 0),
601 CE(MAURITIUS, ETSI20_WORLD, ETSI1_6G_02, MU, 40, 160, 320, 0),
602 CE(MAYOTTE, ETSI21_WORLD, ETSI1_6G_02, YT, 40, 160, 320, 0),
603 CE(MEXICO, APL16_ETSIC, 0, MX, 40, 160, 0, 0),
604 CE(MICRONESIA, FCC17_FCCA, 0, FM, 40, 160, 0, 0),
605 CE(MOLDOVA, ETSI20_WORLD, 0, MD, 40, 160, 0, 0),
606 CE(MONACO, ETSI20_WORLD, 0, MC, 40, 160, 0, 0),
607 CE(MONGOLIA, FCC17_WORLD, ETSI1_6G_02, MN, 40, 160, 320, 0),
608 CE(MONTENEGRO, ETSI20_WORLD, 0, ME, 40, 160, 0, 0),
609 CE(MONTSERRAT, ETSI21_WORLD, ETSI2_6G_03, MS, 40, 160, 320, 0),
610 CE(MOROCCO, ETSI3_WORLD, ETSI1_6G_02, MA, 40, 160, 320, 0),
611 CE(MYANMAR, APL1_WORLD, 0, MM, 40, 160, 0, 0),
612 CE(NAMIBIA, APL20_WORLD, 0, NA, 40, 160, 0, 0),
613 CE(NEPAL, APL23_WORLD, 0, NP, 40, 160, 0, 0),
614 CE(NETHERLANDS, ETSI21_WORLD, ETSI1_6G_02, NL, 40, 160, 320, 0),
615 CE(NETHERLANDS_ANTILLES, ETSI21_WORLD, ETSI1_6G_02, AN, 40, 160, 320,
616 0),
617 CE(NEW_CALEDONIA, ETSI21_WORLD, ETSI1_6G_02, NC, 40, 160, 320, 0),
618 CE(NEW_ZEALAND, APL26_ETSIC, ETSI2_6G_0E, NZ, 40, 160, 320, 0),
619 CE(NICARAGUA, APL27_FCCA, 0, NI, 40, 160, 0, 0),
620 CE(NIGERIA, APL6_WORLD, 0, NG, 40, 160, 0, 0),
621 CE(NIUE, APL26_ETSIC, ETSI2_6G_0E, NU, 40, 160, 320, 0),
622 CE(NORFOLK_ISLAND, APL25_ETSIC, ETSI2_6G_0C, NF, 40, 160, 320, 0),
623 CE(NORTHERN_MARIANA_ISLANDS, FCC3_FCCA, FCC1_6G_01, MP, 40, 160, 320,
624 0),
625 CE(NORWAY, ETSI21_WORLD, ETSI1_6G_02, NO, 40, 160, 320, 0),
626 CE(OMAN, ETSI1_WORLD, 0, OM, 40, 160, 0, 0),
627 CE(PAKISTAN, APL28_ETSIC, 0, PK, 40, 160, 0, 0),
628 CE(PALAU, FCC17_FCCA, 0, PW, 40, 160, 0, 0),
629 CE(PANAMA, FCC14_FCCB, 0, PA, 40, 160, 0, 0),
630 CE(PAPUA_NEW_GUINEA, FCC17_WORLD, 0, PG, 40, 160, 0, 0),
631 CE(PARAGUAY, FCC17_WORLD, 0, PY, 40, 160, 0, 0),
632 CE(PERU, FCC17_WORLD, FCC1_6G_05, PE, 40, 160, 320, 0),
633 CE(PHILIPPINES, ETSI9_WORLD, 0, PH, 40, 160, 0, 0),
634 CE(POLAND, ETSI21_WORLD, ETSI1_6G_02, PL, 40, 160, 320, 0),
635 CE(PORTUGAL, ETSI21_WORLD, ETSI1_6G_02, PT, 40, 160, 320, 0),
636 CE(PUERTO_RICO, FCC3_FCCA, FCC1_6G_01, PR, 40, 160, 320, 0),
637 CE(QATAR, ETSI14_WORLD, ETSI1_6G_02, QA, 40, 160, 320, 0),
638 CE(REUNION, ETSI21_WORLD, ETSI1_6G_02, RE, 40, 160, 320, 0),
639 CE(ROMANIA, ETSI21_WORLD, 0, RO, 40, 160, 0, 0),
640 CE(RUSSIA, ETSI8_WORLD, 0, RU, 40, 160, 0, 0),
641 CE(RWANDA, ETSI20_WORLD, 0, RW, 40, 160, 0, 0),
642 CE(SAINT_BARTHELEMY, ETSI1_WORLD, ETSI1_6G_02, BL, 40, 160, 0, 0),
643 CE(SAINT_HELENA_ASCENSION_AND_TRISTAN_DA_CUNHA, ETSI21_WORLD,
644 ETSI2_6G_03, SH, 40, 160, 320, 0),
645 CE(SAINT_KITTS_AND_NEVIS, APL10_WORLD, 0, KN, 40, 160, 0, 0),
646 CE(SAINT_LUCIA, APL10_WORLD, 0, LC, 40, 160, 0, 0),
647 CE(SAINT_MARTIN, ETSI1_WORLD, 0, MF, 40, 160, 0, 0),
648 CE(SAINT_PIERRE_AND_MIQUELON, ETSI21_WORLD, ETSI1_6G_02, PM, 40, 160,
649 320, 0),
650 CE(SAINT_VINCENT_AND_THE_GRENADIENS, ETSI13_WORLD, 0, VC,
651 40, 160, 0, 0),
652 CE(SAMOA, ETSI1_WORLD, 0, WS, 40, 40, 0, 0),
653 CE(SAN_MARINO, ETSI21_WORLD, ETSI1_6G_02, SM, 40, 160, 320, 0),
654 CE(SAO_TOME_AND_PRINCIPE, FCC17_WORLD, 0, ST, 40, 160, 0, 0),
655 CE(SAUDI_ARABIA, ETSI20_WORLD, APL6_6G_0A, SA, 40, 160, 320, 0),
656 CE(SENEGAL, ETSI1_WORLD, 0, SN, 40, 160, 0, 0),
657 CE(SERBIA, ETSI20_WORLD, 0, RS, 40, 160, 0, 0),
658 CE(SINGAPORE, APL20_WORLD, 0, SG, 40, 160, 0, 0),
659 CE(SINT_MAARTEN, ETSI21_WORLD, ETSI1_6G_02, SX, 40, 160, 320, 0),
660 CE(SLOVAKIA, ETSI21_WORLD, ETSI1_6G_02, SK, 40, 160, 320, 0),
661 CE(SLOVENIA, ETSI21_WORLD, ETSI1_6G_02, SI, 40, 160, 320, 0),
662 CE(SOUTH_AFRICA, ETSI20_WORLD, 0, ZA, 40, 160, 0, 0),
663 CE(SPAIN, ETSI21_WORLD, ETSI1_6G_02, ES, 40, 160, 320, 0),
664 CE(SRI_LANKA, ETSI15_ETSIC, ETSI1_6G_02, LK, 40, 160, 320, 0),
665 CE(SURINAME, ETSI1_WORLD, 0, SR, 40, 160, 0, 0),
666 CE(SVALBARD_AND_JAN_MAYEN, ETSI21_WORLD, ETSI1_6G_02, SJ, 40, 160, 320,
667 0),
668 CE(SWEDEN, ETSI21_WORLD, ETSI1_6G_02, SE, 40, 160, 320, 0),
669 CE(SWITZERLAND, ETSI21_WORLD, ETSI1_6G_02, CH, 40, 160, 320, 0),
670 CE(TAIWAN, FCC17_FCCA, 0, TW, 40, 160, 0, 0),
671 CE(TANZANIA, ETSI15_WORLD, 0, TZ, 40, 160, 0, 0),
672 CE(THAILAND, APL20_WORLD, 0, TH, 40, 160, 0, 0),
673 CE(TOGO, ETSI1_WORLD, 0, TG, 40, 40, 0, 0),
674 CE(TRINIDAD_Y_TOBAGO, FCC17_WORLD, 0, TT, 40, 160, 0, 0),
675 CE(TUNISIA, ETSI3_WORLD, 0, TN, 40, 160, 0, 0),
676 CE(TURKEY, ETSI20_WORLD, ETSI1_6G_02, TR, 40, 160, 320, 0),
677 CE(TURKS_AND_CAICOS, FCC17_WORLD, 0, TC, 40, 160, 0, 0),
678 CE(UGANDA, FCC17_WORLD, 0, UG, 40, 160, 0, 0),
679 CE(UKRAINE, ETSI9_WORLD, 0, UA, 40, 160, 0, 0),
680 CE(UAE, ETSI20_WORLD, APL3_6G_08, AE, 40, 160, 320, 0),
681 CE(UNITED_KINGDOM, ETSI21_WORLD, ETSI2_6G_03, GB, 40, 160, 320, 0),
682 CE(UNITED_STATES, FCC3_FCCA, FCC1_6G_01, US, 40, 160, 320, 0),
683 CE(UNITED_STATES_MINOR_OUTLYING_ISLANDS, FCC3_FCCA, FCC1_6G_01, UM, 40,
684 160, 320, 0),
685 CE(URUGUAY, FCC2_WORLD, 0, UY, 40, 160, 0, 0),
686 CE(UZBEKISTAN, ETSI3_WORLD, 0, UZ, 40, 160, 0, 0),
687 CE(VANUATU, FCC17_WORLD, 0, VU, 40, 160, 0, 0),
688 CE(VENEZUELA, FCC2_ETSIC, FCC1_6G_01, VE, 40, 160, 320, 0),
689 CE(VIET_NAM, ETSI15_WORLD, 0, VN, 40, 160, 0, 0),
690 CE(VIRGIN_ISLANDS, FCC3_FCCA, FCC1_6G_01, VI, 40, 160, 320, 0),
691 CE(VIRGIN_ISLANDS_BRITISH, ETSI21_WORLD, ETSI2_6G_03, VG, 40, 160, 320,
692 0),
693 CE(WALLIS_AND_FUTUNA, ETSI1_WORLD, 0, WF, 40, 160, 0, 0),
694 CE(YEMEN, ETSI1_WORLD, 0, YE, 40, 160, 0, 0),
695 CE(ZAMBIA, ETSI20_WORLD, 0, ZM, 40, 160, 0, 0),
696 CE(ZIMBABWE, ETSI1_WORLD, 0, ZW, 40, 160, 0, 0),
697 };
698 #else
699 const struct country_code_to_reg_domain g_all_countries[] = {
700 CE(AFGHANISTAN, ETSI1_WORLD, 0, AF, 40, 160, 0, 0),
701 CE(ALAND_ISLANDS, ETSI13_WORLD, ETSI1_6G_02, AX, 40, 160, 320, 0),
702 CE(ALBANIA, ETSI20_WORLD, 0, AL, 40, 160, 0, 0),
703 CE(ALGERIA, APL13_WORLD, 0, DZ, 40, 160, 0, 0),
704 CE(AMERICAN_SAMOA, FCC3_FCCA, FCC1_6G_01, AS, 40, 160, 320, 0),
705 CE(ANDORRA, ETSI13_WORLD, ETSI1_6G_02, AD, 40, 160, 320, 0),
706 CE(ANGUILLA, ETSI1_WORLD, 0, AI, 40, 160, 0, 0),
707 CE(ANTIGUA_AND_BARBUDA, FCC17_WORLD, FCC1_6G_01, AG, 40, 160, 320, 0),
708 CE(ARGENTINA, APL17_ETSIC, 0, AR, 40, 160, 0, 0),
709 CE(ARMENIA, APL4_WORLD, 0, AM, 40, 160, 0, 0),
710 CE(ARUBA, ETSI1_WORLD, FCC1_6G_01, AW, 40, 160, 320, 0),
711 CE(AUSTRALIA, APL25_ETSIC, ETSI2_6G_0C, AU, 40, 160, 320, 0),
712 CE(AUSTRIA, ETSI13_WORLD, 0, AT, 40, 160, 0, 0),
713 CE(AZERBAIJAN, ETSI8_WORLD, 0, AZ, 40, 160, 0, 0),
714 CE(BAHAMAS, FCC17_WORLD, FCC1_6G_01, BS, 40, 160, 320, 0),
715 CE(BAHRAIN, APL15_WORLD, 0, BH, 40, 160, 0, 0),
716 CE(BANGLADESH, APL1_WORLD, 0, BD, 40, 160, 0, 0),
717 CE(BARBADOS, FCC2_WORLD, 0, BB, 40, 160, 0, 0),
718 CE(BELARUS, ETSI1_WORLD, 0, BY, 40, 160, 0, 0),
719 CE(BELGIUM, ETSI13_WORLD, ETSI1_6G_02, BE, 40, 160, 320, 0),
720 CE(BELIZE, ETSI8_WORLD, 0, BZ, 40, 160, 0, 0),
721 CE(BERMUDA, FCC17_FCCA, 0, BM, 40, 160, 0, 0),
722 CE(BHUTAN, ETSI1_WORLD, 0, BT, 40, 160, 0, 0),
723 CE(BOLIVIA, FCC17_WORLD, 0, BO, 40, 160, 0, 0),
724 CE(BOSNIA_HERZ, ETSI20_WORLD, 0, BA, 40, 160, 0, 0),
725 CE(BOTSWANA, ETSI20_WORLD, 0, BW, 40, 160, 0, 0),
726 CE(BRAZIL, FCC18_ETSIC, FCC1_6G_07, BR, 40, 160, 320, 0),
727 CE(BRUNEI_DARUSSALAM, FCC17_WORLD, 0, BN, 40, 160, 0, 0),
728 CE(BULGARIA, ETSI13_WORLD, ETSI1_6G_02, BG, 40, 160, 320, 0),
729 CE(BURKINA_FASO, FCC17_WORLD, 0, BF, 40, 160, 0, 0),
730 CE(BURUNDI, ETSI20_WORLD, 0, BI, 40, 160, 0, 0),
731 CE(CAMBODIA, ETSI1_WORLD, 0, KH, 40, 160, 0, 0),
732 CE(CAMEROON, ETSI1_WORLD, 0, CM, 40, 160, 0, 0),
733 CE(CANADA, FCC6_FCCA, FCC1_6G_05, CA, 40, 160, 320, 0),
734 CE(CAYMAN_ISLANDS, FCC17_WORLD, FCC1_6G_01, KY, 40, 160, 320, 0),
735 CE(CENTRAL_AFRICA_REPUBLIC, FCC17_WORLD, 0, CF, 40, 40, 0, 0),
736 CE(CHAD, ETSI1_WORLD, 0, TD, 40, 160, 0, 0),
737 CE(CHILE, FCC20_FCCA, APL7_6G_13, CL, 40, 160, 320, 0),
738 CE(CHINA, APL14_CHNA, 0, CN, 40, 160, 0, 0),
739 CE(CHRISTMAS_ISLAND, APL25_ETSIC, ETSI2_6G_0C, CX, 40, 160, 320, 0),
740 CE(COLOMBIA, FCC17_FCCA, 0, CO, 40, 160, 0, 0),
741 CE(CONGO, ETSI12_WORLD, 0, CG, 40, 160, 0, 0),
742 CE(CONGO_DEMOCRATIC_REPUBLIC, ETSI20_WORLD, 0, CD, 40, 160, 0, 0),
743 CE(COOK_ISLANDS, APL26_ETSIC, ETSI2_6G_0E, CK, 40, 160, 320, 0),
744 CE(COSTA_RICA, FCC17_WORLD, APL4_6G_11, CR, 40, 160, 320, 0),
745 CE(COTE_DIVOIRE, FCC17_WORLD, 0, CI, 40, 160, 0, 0),
746 CE(CROATIA, ETSI13_WORLD, 0, HR, 40, 160, 0, 0),
747 CE(CURACAO, APL10_WORLD, ETSI1_6G_02, CW, 40, 160, 320, 0),
748 CE(CYPRUS, ETSI13_WORLD, ETSI1_6G_02, CY, 40, 160, 320, 0),
749 CE(CZECH, ETSI13_WORLD, ETSI1_6G_02, CZ, 40, 160, 320, 0),
750 CE(DENMARK, ETSI13_WORLD, ETSI1_6G_02, DK, 40, 160, 320, 0),
751 CE(DOMINICA, FCC2_FCCA, 0, DM, 40, 160, 0, 0),
752 CE(DOMINICAN_REPUBLIC, FCC17_FCCA, FCC1_6G_14, DO, 40, 160, 320, 0),
753 CE(ECUADOR, FCC17_FCCA, 0, EC, 40, 160, 0, 0),
754 CE(EGYPT, ETSI3_WORLD, 0, EG, 40, 160, 0, 0),
755 CE(EL_SALVADOR, FCC17_WORLD, FCC1_6G_01, SV, 40, 160, 320, 0),
756 CE(ESTONIA, ETSI13_WORLD, ETSI1_6G_02, EE, 40, 160, 320, 0),
757 CE(ETHIOPIA, ETSI1_WORLD, 0, ET, 40, 160, 0, 0),
758 CE(FALKLAND_ISLANDS, ETSI18_WORLD, ETSI2_6G_03, FK, 40, 160, 320, 0),
759 CE(FAROE_ISLANDS, ETSI13_WORLD, ETSI1_6G_02, FO, 40, 160, 320, 0),
760 CE(FIJI, APL1_WORLD, ETSI2_6G_0C, FJ, 40, 160, 320, 0),
761 CE(FINLAND, ETSI13_WORLD, ETSI1_6G_02, FI, 40, 160, 320, 0),
762 CE(FRANCE, ETSI13_WORLD, ETSI1_6G_02, FR, 40, 160, 320, 0),
763 CE(FRENCH_GUIANA, ETSI13_WORLD, ETSI1_6G_02, GF, 40, 160, 320, 0),
764 CE(FRENCH_POLYNESIA, ETSI13_WORLD, ETSI1_6G_02, PF, 40, 160, 320, 0),
765 CE(FRENCH_SOUTHERN_TERRITORIES, ETSI13_WORLD, ETSI1_6G_02, TF, 40, 160,
766 320, 0),
767 CE(GABON, ETSI3_WORLD, 0, GA, 40, 160, 0, 0),
768 CE(GEORGIA, ETSI1_WORLD, ETSI1_6G_02, GE, 40, 160, 320, 0),
769 CE(GERMANY, ETSI13_WORLD, ETSI1_6G_02, DE, 40, 160, 320, 0),
770 CE(GHANA, FCC17_WORLD, 0, GH, 40, 160, 0, 0),
771 CE(GIBRALTAR, ETSI18_WORLD, ETSI2_6G_03, GI, 40, 160, 320, 0),
772 CE(GREECE, ETSI13_WORLD, ETSI1_6G_02, GR, 40, 160, 320, 0),
773 CE(GREENLAND, ETSI1_WORLD, 0, GL, 40, 160, 0, 0),
774 CE(GRENADA, FCC17_FCCA, FCC1_6G_01, GD, 40, 160, 320, 0),
775 CE(GUADELOUPE, ETSI1_WORLD, ETSI1_6G_02, GP, 40, 160, 320, 0),
776 CE(GUAM, FCC3_FCCA, FCC1_6G_01, GU, 40, 160, 320, 0),
777 CE(GUATEMALA, APL29_ETSIC, APL2_6G_06, GT, 40, 160, 320, 0),
778 CE(GUERNSEY, ETSI18_WORLD, ETSI2_6G_03, GG, 40, 160, 320, 0),
779 CE(GUYANA, APL1_ETSIC, 0, GY, 40, 160, 0, 0),
780 CE(HAITI, FCC17_FCCA, 0, HT, 40, 160, 0, 0),
781 CE(HEARD_ISLAND_AND_MCDONALD_ISLANDS, APL25_ETSIC, ETSI2_6G_0C, HM, 40,
782 160, 320, 0),
783 CE(HOLY_SEE, ETSI13_WORLD, ETSI1_6G_02, VA, 40, 160, 320, 0),
784 CE(HONDURAS, FCC13_WORLD, FCC1_6G_07, HN, 40, 160, 320, 0),
785 CE(HONG_KONG, APL20_WORLD, ETSI2_6G_03, HK, 40, 160, 320, 0),
786 CE(HUNGARY, ETSI13_WORLD, ETSI1_6G_02, HU, 40, 160, 320, 0),
787 CE(ICELAND, ETSI13_WORLD, ETSI1_6G_02, IS, 40, 160, 320, 0),
788 CE(INDIA, APL19_ETSIC, 0, IN, 40, 160, 0, 0),
789 CE(INDONESIA, APL2_ETSID, 0, ID, 40, 80, 0, 0),
790 CE(IRAQ, ETSI1_WORLD, 0, IQ, 40, 160, 0, 0),
791 CE(IRELAND, ETSI13_WORLD, ETSI1_6G_02, IE, 40, 160, 320, 0),
792 CE(ISLE_OF_MAN, ETSI18_WORLD, ETSI2_6G_03, IM, 40, 160, 320, 0),
793 CE(ISRAEL, ETSI17_WORLD, ETSI1_6G_0D, IL, 40, 160, 320, 0),
794 CE(ITALY, ETSI13_WORLD, ETSI1_6G_02, IT, 40, 160, 320, 0),
795 CE(JAMAICA, FCC13_WORLD, FCC1_6G_01, JM, 40, 160, 320, 0),
796 CE(JAPAN, MKK17_MKKC, MKK1_6G_0B, JP, 40, 160, 320, 0),
797 CE(JAPAN15, MKK5_MKKC, 0, JP, 40, 160, 0, 0),
798 CE(XA, MKK5_MKKA, 0, XA, 40, 160, 0, 0),
799 CE(JERSEY, ETSI18_WORLD, ETSI2_6G_03, JE, 40, 160, 320, 0),
800 CE(JORDAN, APL4_WORLD, ETSI1_6G_02, JO, 40, 160, 320, 0),
801 CE(KAZAKHSTAN, MKK5_MKKC, 0, KZ, 40, 160, 0, 0),
802 CE(KENYA, ETSI20_WORLD, ETSI1_6G_02, KE, 40, 160, 320, 0),
803 CE(KOREA_ROC, APL9_KRRA, APL1_6G_04, KR, 40, 160, 160, 0),
804 CE(KUWAIT, ETSI13_WORLD, ETSI1_6G_0D, KW, 40, 160, 320, 0),
805 CE(LAO_PEOPLES_DEMOCRATIC_REPUBLIC, ETSI20_WORLD, FCC1_6G_05, LA, 40,
806 160, 320, 0),
807 CE(LATVIA, ETSI13_WORLD, ETSI1_6G_02, LV, 40, 160, 320, 0),
808 CE(LEBANON, FCC17_WORLD, 0, LB, 40, 160, 0, 0),
809 CE(LESOTHO, ETSI1_WORLD, 0, LS, 40, 160, 0, 0),
810 CE(LIBYA, ETSI12_WORLD, 0, LY, 40, 160, 0, 0),
811 CE(LIECHTENSTEIN, ETSI13_WORLD, ETSI1_6G_02, LI, 40, 160, 320, 0),
812 CE(LITHUANIA, ETSI13_WORLD, ETSI1_6G_02, LT, 40, 160, 320, 0),
813 CE(LUXEMBOURG, ETSI13_WORLD, ETSI1_6G_02, LU, 40, 160, 320, 0),
814 CE(MACAU, FCC17_WORLD, 0, MO, 40, 160, 0, 0),
815 CE(MACEDONIA, ETSI20_WORLD, 0, MK, 40, 160, 0, 0),
816 CE(MALAWI, ETSI1_WORLD, 0, MW, 40, 160, 0, 0),
817 CE(MALAYSIA, FCC11_WORLD, ETSI1_6G_02, MY, 40, 160, 320, 0),
818 CE(MALDIVES, APL6_WORLD, 0, MV, 40, 160, 0, 0),
819 CE(MALTA, ETSI13_WORLD, ETSI1_6G_02, MT, 40, 160, 320, 0),
820 CE(MARSHALL_ISLANDS, FCC17_FCCA, 0, MH, 40, 160, 0, 0),
821 CE(MARTINIQUE, ETSI13_WORLD, ETSI1_6G_02, MQ, 40, 160, 320, 0),
822 CE(MAURITANIA, ETSI1_WORLD, 0, MR, 40, 160, 0, 0),
823 CE(MAURITIUS, ETSI20_WORLD, ETSI1_6G_02, MU, 40, 160, 320, 0),
824 CE(MAYOTTE, ETSI1_WORLD, ETSI1_6G_02, YT, 40, 160, 320, 0),
825 CE(MEXICO, APL16_ETSIC, 0, MX, 40, 160, 0, 0),
826 CE(MICRONESIA, FCC17_FCCA, 0, FM, 40, 160, 0, 0),
827 CE(MOLDOVA, ETSI20_WORLD, 0, MD, 40, 160, 0, 0),
828 CE(MONACO, ETSI20_WORLD, 0, MC, 40, 160, 0, 0),
829 CE(MONGOLIA, FCC17_WORLD, ETSI1_6G_02, MN, 40, 160, 320, 0),
830 CE(MONTENEGRO, ETSI20_WORLD, 0, ME, 40, 160, 0, 0),
831 CE(MONTSERRAT, ETSI18_WORLD, ETSI2_6G_03, MS, 40, 160, 320, 0),
832 CE(MOROCCO, ETSI3_WORLD, ETSI1_6G_02, MA, 40, 160, 320, 0),
833 CE(MYANMAR, APL1_WORLD, 0, MM, 40, 160, 0, 0),
834 CE(NAMIBIA, APL20_WORLD, 0, NA, 40, 160, 0, 0),
835 CE(NEPAL, APL23_WORLD, 0, NP, 40, 160, 0, 0),
836 CE(NETHERLANDS, ETSI13_WORLD, ETSI1_6G_02, NL, 40, 160, 320, 0),
837 CE(NETHERLANDS_ANTILLES, ETSI13_WORLD, ETSI1_6G_02, AN, 40, 160, 320,
838 0),
839 CE(NEW_CALEDONIA, ETSI13_WORLD, ETSI1_6G_02, NC, 40, 160, 320, 0),
840 CE(NEW_ZEALAND, APL26_ETSIC, ETSI2_6G_0E, NZ, 40, 160, 320, 0),
841 CE(NICARAGUA, APL27_FCCA, 0, NI, 40, 160, 0, 0),
842 CE(NIGERIA, APL6_WORLD, 0, NG, 40, 160, 0, 0),
843 CE(NIUE, APL26_ETSIC, ETSI2_6G_0E, NU, 40, 160, 320, 0),
844 CE(NORFOLK_ISLAND, APL25_ETSIC, ETSI2_6G_0C, NF, 40, 160, 320, 0),
845 CE(NORTHERN_MARIANA_ISLANDS, FCC3_FCCA, FCC1_6G_01, MP, 40, 160, 320,
846 0),
847 CE(NORWAY, ETSI13_WORLD, ETSI1_6G_02, NO, 40, 160, 320, 0),
848 CE(OMAN, ETSI1_WORLD, 0, OM, 40, 160, 0, 0),
849 CE(PAKISTAN, APL28_ETSIC, 0, PK, 40, 160, 0, 0),
850 CE(PALAU, FCC17_FCCA, 0, PW, 40, 160, 0, 0),
851 CE(PANAMA, FCC14_FCCB, 0, PA, 40, 160, 0, 0),
852 CE(PAPUA_NEW_GUINEA, FCC17_WORLD, 0, PG, 40, 160, 0, 0),
853 CE(PARAGUAY, FCC17_WORLD, 0, PY, 40, 160, 0, 0),
854 CE(PERU, FCC17_WORLD, FCC1_6G_05, PE, 40, 160, 320, 0),
855 CE(PHILIPPINES, ETSI9_WORLD, 0, PH, 40, 160, 0, 0),
856 CE(POLAND, ETSI13_WORLD, ETSI1_6G_02, PL, 40, 160, 320, 0),
857 CE(PORTUGAL, ETSI13_WORLD, ETSI1_6G_02, PT, 40, 160, 320, 0),
858 CE(PUERTO_RICO, FCC3_FCCA, FCC1_6G_01, PR, 40, 160, 320, 0),
859 CE(QATAR, ETSI14_WORLD, ETSI1_6G_02, QA, 40, 160, 320, 0),
860 CE(REUNION, ETSI13_WORLD, ETSI1_6G_02, RE, 40, 160, 320, 0),
861 CE(ROMANIA, ETSI13_WORLD, 0, RO, 40, 160, 0, 0),
862 CE(RUSSIA, ETSI8_WORLD, 0, RU, 40, 160, 0, 0),
863 CE(RWANDA, ETSI20_WORLD, 0, RW, 40, 160, 0, 0),
864 CE(SAINT_BARTHELEMY, ETSI1_WORLD, ETSI1_6G_02, BL, 40, 160, 0, 0),
865 CE(SAINT_HELENA_ASCENSION_AND_TRISTAN_DA_CUNHA, ETSI18_WORLD,
866 ETSI2_6G_03, SH, 40, 160, 320, 0),
867 CE(SAINT_KITTS_AND_NEVIS, APL10_WORLD, 0, KN, 40, 160, 0, 0),
868 CE(SAINT_LUCIA, APL10_WORLD, 0, LC, 40, 160, 0, 0),
869 CE(SAINT_MARTIN, ETSI1_WORLD, 0, MF, 40, 160, 0, 0),
870 CE(SAINT_PIERRE_AND_MIQUELON, ETSI13_WORLD, ETSI1_6G_02, PM, 40, 160,
871 320, 0),
872 CE(SAINT_VINCENT_AND_THE_GRENADIENS, ETSI13_WORLD, 0, VC,
873 40, 160, 0, 0),
874 CE(SAMOA, ETSI1_WORLD, 0, WS, 40, 40, 0, 0),
875 CE(SAN_MARINO, ETSI13_WORLD, ETSI1_6G_02, SM, 40, 160, 320, 0),
876 CE(SAO_TOME_AND_PRINCIPE, FCC17_WORLD, 0, ST, 40, 160, 0, 0),
877 CE(SAUDI_ARABIA, ETSI20_WORLD, APL6_6G_0A, SA, 40, 160, 320, 0),
878 CE(SENEGAL, ETSI1_WORLD, 0, SN, 40, 160, 0, 0),
879 CE(SERBIA, ETSI20_WORLD, 0, RS, 40, 160, 0, 0),
880 CE(SINGAPORE, APL20_WORLD, 0, SG, 40, 160, 0, 0),
881 CE(SINT_MAARTEN, ETSI13_WORLD, ETSI1_6G_02, SX, 40, 160, 320, 0),
882 CE(SLOVAKIA, ETSI13_WORLD, ETSI1_6G_02, SK, 40, 160, 320, 0),
883 CE(SLOVENIA, ETSI13_WORLD, ETSI1_6G_02, SI, 40, 160, 320, 0),
884 CE(SOUTH_AFRICA, ETSI20_WORLD, 0, ZA, 40, 160, 0, 0),
885 CE(SPAIN, ETSI13_WORLD, ETSI1_6G_02, ES, 40, 160, 320, 0),
886 CE(SRI_LANKA, ETSI15_ETSIC, ETSI1_6G_02, LK, 40, 160, 320, 0),
887 CE(SURINAME, ETSI1_WORLD, 0, SR, 40, 160, 0, 0),
888 CE(SVALBARD_AND_JAN_MAYEN, ETSI13_WORLD, ETSI1_6G_02, SJ, 40, 160, 320,
889 0),
890 CE(SWEDEN, ETSI13_WORLD, ETSI1_6G_02, SE, 40, 160, 320, 0),
891 CE(SWITZERLAND, ETSI13_WORLD, ETSI1_6G_02, CH, 40, 160, 320, 0),
892 CE(TAIWAN, FCC17_FCCA, 0, TW, 40, 160, 0, 0),
893 CE(TANZANIA, ETSI15_WORLD, 0, TZ, 40, 160, 0, 0),
894 CE(THAILAND, APL20_WORLD, 0, TH, 40, 160, 0, 0),
895 CE(TOGO, ETSI1_WORLD, 0, TG, 40, 40, 0, 0),
896 CE(TRINIDAD_Y_TOBAGO, FCC17_WORLD, 0, TT, 40, 160, 0, 0),
897 CE(TUNISIA, ETSI3_WORLD, 0, TN, 40, 160, 0, 0),
898 CE(TURKEY, ETSI20_WORLD, ETSI1_6G_02, TR, 40, 160, 320, 0),
899 CE(TURKS_AND_CAICOS, FCC17_WORLD, 0, TC, 40, 160, 0, 0),
900 CE(UGANDA, FCC17_WORLD, 0, UG, 40, 160, 0, 0),
901 CE(UKRAINE, ETSI9_WORLD, 0, UA, 40, 160, 0, 0),
902 CE(UAE, ETSI20_WORLD, APL3_6G_08, AE, 40, 160, 320, 0),
903 CE(UNITED_KINGDOM, ETSI18_WORLD, ETSI2_6G_03, GB, 40, 160, 320, 0),
904 CE(UNITED_STATES, FCC8_FCCA, FCC1_6G_01, US, 40, 160, 320, 0),
905 CE(UNITED_STATES_MINOR_OUTLYING_ISLANDS, FCC3_FCCA, FCC1_6G_01, UM, 40,
906 160, 320, 0),
907 CE(URUGUAY, FCC2_WORLD, 0, UY, 40, 160, 0, 0),
908 CE(UZBEKISTAN, ETSI3_WORLD, 0, UZ, 40, 160, 0, 0),
909 CE(VANUATU, FCC17_WORLD, 0, VU, 40, 160, 0, 0),
910 CE(VENEZUELA, FCC2_ETSIC, FCC1_6G_01, VE, 40, 160, 320, 0),
911 CE(VIET_NAM, ETSI15_WORLD, 0, VN, 40, 160, 0, 0),
912 CE(VIRGIN_ISLANDS, FCC3_FCCA, FCC1_6G_01, VI, 40, 160, 320, 0),
913 CE(VIRGIN_ISLANDS_BRITISH, ETSI18_WORLD, ETSI2_6G_03, VG, 40, 160, 320,
914 0),
915 CE(WALLIS_AND_FUTUNA, ETSI1_WORLD, 0, WF, 40, 160, 0, 0),
916 CE(YEMEN, ETSI1_WORLD, 0, YE, 40, 160, 0, 0),
917 CE(ZAMBIA, ETSI20_WORLD, 0, ZM, 40, 160, 0, 0),
918 CE(ZIMBABWE, ETSI1_WORLD, 0, ZW, 40, 160, 0, 0),
919 };
920 #endif
921 #endif
922 const struct reg_domain_pair g_reg_dmn_pairs[] = {
923 {NULL1_WORLD, NULL1, WORLD},
924
925 {FCC1_FCCA, FCC1, FCCA},
926 {FCC1_WORLD, FCC1, WORLD},
927 {FCC2_FCCA, FCC2, FCCA},
928 {FCC2_WORLD, FCC2, WORLD},
929 {FCC2_ETSIC, FCC2, ETSIC},
930 {FCC3_FCCA, FCC3, FCCA},
931 {FCC3_WORLD, FCC3, WORLD},
932 {FCC3_ETSIC, FCC3, ETSIC},
933 {FCC4_FCCA, FCC4, FCCA},
934 {FCC5_FCCA, FCC5, FCCA},
935 {FCC6_WORLD, FCC6, WORLD},
936 {FCC6_FCCA, FCC6, FCCA},
937 {FCC8_FCCA, FCC8, FCCA},
938 {FCC8_WORLD, FCC8, WORLD},
939 {FCC10_FCCA, FCC10, FCCA},
940 {FCC11_WORLD, FCC11, WORLD},
941 {FCC13_WORLD, FCC13, WORLD},
942 {FCC14_FCCB, FCC14, FCCB},
943 {FCC14_WORLD, FCC14, WORLD},
944 {FCC15_FCCA, FCC15, FCCA},
945 {FCC16_FCCA, FCC16, FCCA},
946 {FCC17_FCCA, FCC17, FCCA},
947 {FCC17_WORLD, FCC17, WORLD},
948 {FCC17_ETSIC, FCC17, ETSIC},
949 {FCC18_ETSIC, FCC18, ETSIC},
950 {FCC20_FCCA, FCC20, FCCA},
951 {FCC21_ETSIC, FCC21, ETSIC},
952
953 {ETSI1_WORLD, ETSI1, WORLD},
954 {ETSI3_WORLD, ETSI3, WORLD},
955 {ETSI4_WORLD, ETSI4, WORLD},
956 {ETSI8_WORLD, ETSI8, WORLD},
957 {ETSI9_WORLD, ETSI9, WORLD},
958 {ETSI10_WORLD, ETSI10, WORLD},
959 {ETSI10_FCCA, ETSI10, FCCA},
960 {ETSI11_WORLD, ETSI11, WORLD},
961 {ETSI12_WORLD, ETSI12, WORLD},
962 {ETSI13_WORLD, ETSI13, WORLD},
963 {ETSI14_WORLD, ETSI14, WORLD},
964 {ETSI15_WORLD, ETSI15, WORLD},
965 {ETSI15_ETSIC, ETSI15, ETSIC},
966 {ETSI16_WORLD, ETSI16, WORLD},
967 {ETSI17_WORLD, ETSI17, WORLD},
968 {ETSI18_WORLD, ETSI18, WORLD},
969 {ETSI19_WORLD, ETSI19, WORLD},
970 {ETSI20_WORLD, ETSI20, WORLD},
971 {ETSI21_WORLD, ETSI21, WORLD},
972
973 {APL1_WORLD, APL1, WORLD},
974 {APL1_ETSIC, APL1, ETSIC},
975 {APL2_WORLD, APL2, WORLD},
976 {APL2_ETSIC, APL2, ETSIC},
977 {APL2_ETSID, APL2, ETSID},
978 {APL4_WORLD, APL4, WORLD},
979 {APL6_WORLD, APL6, WORLD},
980 {APL8_WORLD, APL8, WORLD},
981 {APL9_WORLD, APL9, WORLD},
982 {APL9_MKKC, APL9, MKKC},
983 {APL9_KRRA, APL9, KRRA},
984 {APL10_WORLD, APL10, WORLD},
985 {APL11_FCCA, APL11, FCCA},
986 {APL12_WORLD, APL12, WORLD},
987 {APL13_WORLD, APL13, WORLD},
988 {APL14_WORLD, APL14, WORLD},
989 {APL14_CHNA, APL14, CHNA},
990 {APL15_WORLD, APL15, WORLD},
991 {APL16_WORLD, APL16, WORLD},
992 {APL16_ETSIC, APL16, ETSIC},
993 {APL17_ETSIC, APL17, ETSIC},
994 {APL17_ETSID, APL17, ETSID},
995 {APL19_ETSIC, APL19, ETSIC},
996 {APL20_WORLD, APL20, WORLD},
997 {APL23_WORLD, APL23, WORLD},
998 {APL24_ETSIC, APL24, ETSIC},
999 {APL25_ETSIC, APL25, ETSIC},
1000 {APL26_ETSIC, APL26, ETSIC},
1001 {APL27_FCCA, APL27, FCCA},
1002 {APL28_ETSIC, APL28, ETSIC},
1003 {APL29_ETSIC, APL29, ETSIC},
1004
1005 {MKK3_MKKC, MKK3, MKKC},
1006 {MKK5_MKKA, MKK5, MKKA},
1007 {MKK5_MKKC, MKK5, MKKC},
1008 {MKK11_MKKC, MKK11, MKKC},
1009 {MKK16_MKKC, MKK16, MKKC},
1010 {MKK17_MKKC, MKK17, MKKC},
1011 {MKK18_MKKC, MKK18, MKKC},
1012
1013 {WORLD_60, WORLD_5G_2, WORLD_2G_3},
1014 {WORLD_61, WORLD_5G_2, WORLD_2G_3},
1015 {WORLD_62, WORLD_5G_2, WORLD_2G_3},
1016 {WORLD_63, WORLD_5G_1, WORLD_2G_2},
1017 {WORLD_65, WORLD_5G_1, WORLD_2G_2},
1018 {WORLD_64, WORLD_5G_1, WORLD_2G_1},
1019 {WORLD_66, WORLD_5G_2, WORLD_2G_1},
1020 {WORLD_69, WORLD_5G_2, WORLD_2G_1},
1021 {WORLD_67, WORLD_5G_2, WORLD_2G_2},
1022 {WORLD_68, WORLD_5G_2, WORLD_2G_2},
1023 {WORLD_6A, WORLD_5G_2, WORLD_2G_2},
1024 {WORLD_6C, WORLD_5G_2, WORLD_2G_2},
1025 };
1026
1027 enum reg_rules_2g {
1028
1029 CHAN_1_11_1,
1030 CHAN_1_11_2,
1031 CHAN_1_11_3,
1032 CHAN_1_13_1,
1033 CHAN_1_13_2,
1034 CHAN_1_13_3,
1035 CHAN_1_13_4,
1036 CHAN_1_13_5,
1037 CHAN_12_12_1,
1038 CHAN_12_13_1,
1039 CHAN_14_1,
1040 CHAN_14_2,
1041 };
1042
1043 const struct regulatory_rule reg_rules_2g[] = {
1044
1045 [CHAN_1_11_1] = {2402, 2472, 40, 30, 0},
1046 [CHAN_1_11_2] = {2402, 2472, 40, 20, 0},
1047 [CHAN_1_11_3] = {2402, 2472, 40, 36, 0},
1048 [CHAN_1_13_1] = {2402, 2482, 40, 20, 0},
1049 [CHAN_1_13_2] = {2402, 2482, 40, 30, 0},
1050 [CHAN_1_13_3] = {2402, 2482, 40, 36, 0},
1051 [CHAN_1_13_4] = {2402, 2482, 40, 23, 0},
1052 [CHAN_1_13_5] = {2402, 2482, 20, 20, 0},
1053 [CHAN_12_12_1] = {2457, 2477, 20, 20, REGULATORY_CHAN_NO_IR},
1054 [CHAN_12_13_1] = {2457, 2482, 20, 20, REGULATORY_CHAN_NO_IR},
1055 [CHAN_14_1] = {2474, 2494, 20, 23, REGULATORY_CHAN_NO_OFDM},
1056 [CHAN_14_2] = {2474, 2494, 20, 20,
1057 REGULATORY_CHAN_NO_OFDM | REGULATORY_CHAN_NO_IR},
1058 };
1059
1060 const struct regdomain regdomains_2g[] = {
1061
1062 [FCCA] = {CTL_FCC, DFS_UNINIT_REGION, 0, 40, 6, 1, {CHAN_1_11_1} },
1063 [FCCB] = {CTL_FCC, DFS_UNINIT_REGION, 0, 40, 6, 1, {CHAN_1_11_3} },
1064 [WORLD] = {CTL_ETSI, DFS_UNINIT_REGION, 0, 40, 0, 1, {CHAN_1_13_1} },
1065 [MKKA] = {CTL_MKK, DFS_UNINIT_REGION, 0, 40, 0, 2, {CHAN_1_13_4,
1066 CHAN_14_1} },
1067 [MKKC] = {CTL_MKK, DFS_UNINIT_REGION, 0, 40, 0, 1, {CHAN_1_13_4} },
1068 [ETSIC] = {CTL_ETSI, DFS_UNINIT_REGION, 0, 40, 0, 1, {CHAN_1_13_2} },
1069 [ETSID] = {CTL_ETSI, DFS_UNINIT_REGION, 0, 20, 0, 1, {CHAN_1_13_5} },
1070 [KRRA] = {CTL_KOR, DFS_UNINIT_REGION, 0, 40, 0, 1, {CHAN_1_13_4} },
1071 [CHNA] = {CTL_CHN, DFS_UNINIT_REGION, 0, 40, 0, 1, {CHAN_1_13_1} },
1072 [WORLD_2G_1] = {CTL_NONE, DFS_UNINIT_REGION, 0, 40, 0, 1, {CHAN_1_11_2}
1073 },
1074 [WORLD_2G_2] = {CTL_NONE, DFS_UNINIT_REGION, 0, 40, 0, 2, {CHAN_1_11_2,
1075 CHAN_12_13_1}
1076 },
1077 [WORLD_2G_3] = {CTL_NONE, DFS_UNINIT_REGION, 0, 40, 0, 2, {CHAN_1_11_2,
1078 CHAN_12_12_1}
1079 },
1080 };
1081
1082
1083 enum reg_rules_5g {
1084
1085 CHAN_4910_4990_1,
1086 CHAN_4940_4990_1,
1087 CHAN_5030_5090_1,
1088 CHAN_5170_5250_1,
1089 CHAN_5170_5250_2,
1090 CHAN_5170_5250_3,
1091 CHAN_5170_5250_4,
1092 CHAN_5170_5250_5,
1093 CHAN_5170_5250_6,
1094 CHAN_5170_5250_7,
1095 CHAN_5170_5250_8,
1096 CHAN_5170_5250_9,
1097 CHAN_5170_5250_10,
1098 CHAN_5170_5250_11,
1099 CHAN_5170_5250_12,
1100 CHAN_5170_5250_13,
1101 CHAN_5170_5250_14,
1102 CHAN_5170_5330_1,
1103 CHAN_5170_5330_2,
1104 CHAN_5170_5330_3,
1105 CHAN_5250_5330_1,
1106 CHAN_5250_5330_2,
1107 CHAN_5250_5330_3,
1108 CHAN_5250_5330_4,
1109 CHAN_5250_5330_5,
1110 CHAN_5250_5330_6,
1111 CHAN_5250_5330_7,
1112 CHAN_5250_5330_8,
1113 CHAN_5250_5330_9,
1114 CHAN_5250_5330_10,
1115 CHAN_5250_5330_11,
1116 CHAN_5250_5330_12,
1117 CHAN_5250_5330_13,
1118 CHAN_5250_5330_14,
1119 CHAN_5250_5330_15,
1120 CHAN_5250_5330_16,
1121 CHAN_5250_5330_17,
1122 CHAN_5250_5330_18,
1123 CHAN_5490_5730_1,
1124 CHAN_5490_5730_2,
1125 CHAN_5490_5730_3,
1126 CHAN_5490_5730_4,
1127 CHAN_5490_5730_5,
1128 CHAN_5490_5730_6,
1129 CHAN_5490_5730_7,
1130 CHAN_5490_5730_8,
1131 CHAN_5490_5730_9,
1132 CHAN_5490_5710_1,
1133 CHAN_5490_5710_2,
1134 CHAN_5490_5710_3,
1135 CHAN_5490_5710_4,
1136 CHAN_5490_5710_5,
1137 CHAN_5490_5710_6,
1138 CHAN_5490_5710_7,
1139 CHAN_5490_5710_8,
1140 CHAN_5490_5710_9,
1141 CHAN_5490_5590_1,
1142 CHAN_5490_5590_2,
1143 CHAN_5490_5590_3,
1144 CHAN_5490_5590_4,
1145 CHAN_5490_5650_2,
1146 CHAN_5490_5670_1,
1147 CHAN_5490_5670_2,
1148 CHAN_5490_5630_1,
1149 CHAN_5650_5730_1,
1150 CHAN_5650_5730_2,
1151 CHAN_5650_5730_3,
1152 CHAN_5650_5730_4,
1153 CHAN_5735_5835_1,
1154 CHAN_5735_5835_2,
1155 CHAN_5735_5835_3,
1156 CHAN_5735_5835_4,
1157 CHAN_5735_5835_5,
1158 CHAN_5735_5835_6,
1159 CHAN_5735_5835_7,
1160 CHAN_5735_5835_9,
1161 CHAN_5735_5835_10,
1162 CHAN_5735_5835_11,
1163 CHAN_5735_5875_1,
1164 CHAN_5735_5875_2,
1165 CHAN_5735_5875_3,
1166 CHAN_5735_5875_4,
1167 CHAN_5735_5875_5,
1168 CHAN_5735_5875_6,
1169 CHAN_5735_5875_7,
1170 CHAN_5735_5875_8,
1171 CHAN_5735_5815_1,
1172 CHAN_5735_5815_2,
1173 CHAN_5735_5815_3,
1174 CHAN_5735_5815_4,
1175 CHAN_5735_5775_1,
1176 CHAN_5735_5895_1,
1177 CHAN_5735_5895_2,
1178 CHAN_5835_5855_1,
1179 CHAN_5835_5855_2,
1180 CHAN_5835_5895_1,
1181 CHAN_5850_5925_1,
1182 CHAN_5850_5925_2,
1183 #if defined(CONFIG_BAND_6GHZ) && defined(COMPILE_REGDB_6G)
1184 CHAN_5945_7125_1,
1185 CHAN_5945_7125_2,
1186 CHAN_5945_7125_3,
1187 #endif
1188 };
1189
1190 const struct regulatory_rule reg_rules_5g[] = {
1191
1192 [CHAN_4910_4990_1] = {4910, 4990, 20, 20, 0},
1193 [CHAN_4940_4990_1] = {4940, 4990, 20, 33, 0},
1194 [CHAN_5030_5090_1] = {5030, 5090, 20, 20, 0},
1195 [CHAN_5170_5250_1] = {5170, 5250, 80, 17, 0},
1196 [CHAN_5170_5250_2] = {5170, 5250, 80, 23, 0},
1197 [CHAN_5170_5250_3] = {5170, 5250, 80, 20, 0},
1198 [CHAN_5170_5250_4] = {5170, 5250, 80, 30, 0},
1199 [CHAN_5170_5250_5] = {5170, 5250, 80, 24, 0},
1200 [CHAN_5170_5250_6] = {5170, 5250, 80, 18, 0},
1201 [CHAN_5170_5250_7] = {5170, 5250, 80, 20, REGULATORY_CHAN_INDOOR_ONLY},
1202 [CHAN_5170_5250_8] = {5170, 5250, 80, 23, REGULATORY_CHAN_INDOOR_ONLY},
1203 [CHAN_5170_5250_9] = {5170, 5250, 40, 30, 0},
1204 [CHAN_5170_5250_10] = {5170, 5250, 20, 20, REGULATORY_CHAN_INDOOR_ONLY},
1205 [CHAN_5170_5250_11] = {5170, 5250, 80, 16, 0},
1206 [CHAN_5170_5250_12] = {5170, 5250, 80, 24, REGULATORY_CHAN_INDOOR_ONLY},
1207 [CHAN_5170_5250_13] = {5170, 5250, 80, 17, REGULATORY_CHAN_INDOOR_ONLY},
1208 [CHAN_5170_5250_14] = {5170, 5250, 80, 36, REGULATORY_CHAN_INDOOR_ONLY},
1209 [CHAN_5170_5330_1] = {5170, 5330, 160, 20, REGULATORY_CHAN_NO_IR},
1210 [CHAN_5170_5330_2] = {5170, 5330, 160, 24, 0},
1211 [CHAN_5170_5330_3] = {5170, 5330, 160, 23, REGULATORY_CHAN_INDOOR_ONLY},
1212 [CHAN_5250_5330_1] = {5250, 5330, 80, 23, REGULATORY_CHAN_RADAR},
1213 [CHAN_5250_5330_2] = {5250, 5330, 80, 20, REGULATORY_CHAN_RADAR},
1214 [CHAN_5250_5330_3] = {5250, 5330, 80, 18, REGULATORY_CHAN_RADAR},
1215 [CHAN_5250_5330_4] = {5250, 5330, 80, 30, REGULATORY_CHAN_RADAR},
1216 [CHAN_5250_5330_5] = {5250, 5330, 80, 23, 0},
1217 [CHAN_5250_5330_6] = {5250, 5330, 80, 30, 0},
1218 [CHAN_5250_5330_7] = {5250, 5330, 80, 24, REGULATORY_CHAN_RADAR},
1219 [CHAN_5250_5330_8] = {5250, 5330, 80, 36, 0},
1220 [CHAN_5250_5330_9] = {5250, 5330, 80, 20, 0},
1221 [CHAN_5250_5330_10] = {5250, 5330, 80, 24, 0},
1222 [CHAN_5250_5330_11] = {5250, 5330, 80, 20, REGULATORY_CHAN_INDOOR_ONLY},
1223 [CHAN_5250_5330_12] = {5250, 5330, 80, 23, REGULATORY_CHAN_RADAR |
1224 REGULATORY_CHAN_INDOOR_ONLY},
1225 [CHAN_5250_5330_13] = {5250, 5330, 40, 30, REGULATORY_CHAN_RADAR},
1226 [CHAN_5250_5330_14] = {5250, 5330, 80, 20, REGULATORY_CHAN_RADAR |
1227 REGULATORY_CHAN_INDOOR_ONLY},
1228 [CHAN_5250_5330_15] = {5250, 5330, 20, 20, REGULATORY_CHAN_RADAR |
1229 REGULATORY_CHAN_INDOOR_ONLY},
1230 [CHAN_5250_5330_16] = {5250, 5330, 80, 23, REGULATORY_CHAN_INDOOR_ONLY},
1231 [CHAN_5250_5330_17] = {5250, 5330, 80, 30, REGULATORY_CHAN_RADAR |
1232 REGULATORY_CHAN_INDOOR_ONLY},
1233 [CHAN_5250_5330_18] = {5250, 5330, 80, 16, REGULATORY_CHAN_RADAR},
1234 [CHAN_5490_5730_1] = {5490, 5730, 160, 24, REGULATORY_CHAN_RADAR},
1235 [CHAN_5490_5730_2] = {5490, 5730, 160, 20, REGULATORY_CHAN_NO_IR},
1236 [CHAN_5490_5730_3] = {5490, 5730, 160, 30, 0},
1237 [CHAN_5490_5730_4] = {5490, 5730, 160, 24, 0},
1238 [CHAN_5490_5730_5] = {5490, 5730, 160, 30, REGULATORY_CHAN_RADAR},
1239 [CHAN_5490_5730_6] = {5490, 5730, 160, 23, REGULATORY_CHAN_RADAR},
1240 [CHAN_5490_5730_7] = {5490, 5730, 160, 20, REGULATORY_CHAN_RADAR},
1241 [CHAN_5490_5730_8] = {5490, 5730, 160, 30, REGULATORY_CHAN_RADAR |
1242 REGULATORY_CHAN_INDOOR_ONLY},
1243 [CHAN_5490_5730_9] = {5490, 5730, 80, 30, 0},
1244 [CHAN_5490_5710_1] = {5490, 5710, 160, 30, REGULATORY_CHAN_RADAR},
1245 [CHAN_5490_5710_2] = {5490, 5710, 160, 20, REGULATORY_CHAN_RADAR},
1246 [CHAN_5490_5710_3] = {5490, 5710, 160, 27, REGULATORY_CHAN_RADAR},
1247 [CHAN_5490_5710_4] = {5490, 5710, 40, 30, REGULATORY_CHAN_RADAR},
1248 [CHAN_5490_5710_5] = {5490, 5710, 160, 24, REGULATORY_CHAN_RADAR},
1249 [CHAN_5490_5710_6] = {5490, 5710, 160, 26, REGULATORY_CHAN_RADAR},
1250 [CHAN_5490_5710_7] = {5490, 5710, 160, 23, REGULATORY_CHAN_RADAR},
1251 [CHAN_5490_5710_8] = {5490, 5710, 20, 27, REGULATORY_CHAN_RADAR},
1252 [CHAN_5490_5710_9] = {5490, 5710, 160, 30, REGULATORY_CHAN_RADAR |
1253 REGULATORY_CHAN_INDOOR_ONLY},
1254 [CHAN_5490_5590_1] = {5490, 5590, 80, 24, REGULATORY_CHAN_RADAR},
1255 [CHAN_5490_5590_2] = {5490, 5590, 80, 24, 0},
1256 [CHAN_5490_5590_3] = {5490, 5590, 80, 36, 0},
1257 [CHAN_5490_5590_4] = {5490, 5590, 80, 30, REGULATORY_CHAN_RADAR},
1258 [CHAN_5490_5650_2] = {5490, 5650, 160, 24, REGULATORY_CHAN_RADAR},
1259 [CHAN_5490_5670_1] = {5490, 5670, 160, 20, REGULATORY_CHAN_RADAR},
1260 [CHAN_5490_5670_2] = {5490, 5670, 160, 23, REGULATORY_CHAN_RADAR},
1261 [CHAN_5490_5630_1] = {5490, 5630, 80, 30, REGULATORY_CHAN_RADAR},
1262 [CHAN_5650_5730_1] = {5650, 5730, 80, 24, REGULATORY_CHAN_RADAR},
1263 [CHAN_5650_5730_2] = {5650, 5730, 80, 24, 0},
1264 [CHAN_5650_5730_3] = {5650, 5730, 80, 36, 0},
1265 [CHAN_5650_5730_4] = {5650, 5730, 80, 30, REGULATORY_CHAN_RADAR},
1266 [CHAN_5735_5835_1] = {5735, 5835, 80, 23, 0},
1267 [CHAN_5735_5835_2] = {5735, 5835, 80, 30, 0},
1268 [CHAN_5735_5835_3] = {5735, 5835, 80, 20, 0},
1269 [CHAN_5735_5835_4] = {5735, 5835, 80, 33, 0},
1270 [CHAN_5735_5835_5] = {5735, 5835, 80, 20, REGULATORY_CHAN_NO_IR},
1271 [CHAN_5735_5835_6] = {5735, 5835, 80, 24, 0},
1272 [CHAN_5735_5835_7] = {5735, 5835, 80, 36, 0},
1273 [CHAN_5735_5835_9] = {5735, 5835, 80, 30, REGULATORY_CHAN_RADAR},
1274 [CHAN_5735_5835_10] = {5735, 5835, 80, 14, REGULATORY_CHAN_INDOOR_ONLY},
1275 [CHAN_5735_5835_11] = {5735, 5835, 80, 27, 0},
1276 [CHAN_5735_5875_1] = {5735, 5875, 20, 27, REGULATORY_CHAN_RADAR},
1277 [CHAN_5735_5875_2] = {5735, 5875, 20, 30, 0},
1278 [CHAN_5735_5875_3] = {5735, 5875, 80, 30, 0},
1279 [CHAN_5735_5875_4] = {5735, 5875, 80, 14, 0},
1280 [CHAN_5735_5875_5] = {5735, 5875, 80, 20, REGULATORY_CHAN_RADAR},
1281 [CHAN_5735_5875_6] = {5735, 5875, 80, 23, REGULATORY_CHAN_INDOOR_ONLY},
1282 [CHAN_5735_5875_7] = {5735, 5875, 80, 14, REGULATORY_CHAN_RADAR},
1283 [CHAN_5735_5875_8] = {5735, 5875, 80, 30, REGULATORY_CHAN_RADAR},
1284 [CHAN_5735_5815_1] = {5735, 5815, 80, 30, 0},
1285 [CHAN_5735_5815_2] = {5735, 5815, 80, 30, REGULATORY_CHAN_RADAR},
1286 [CHAN_5735_5815_3] = {5735, 5815, 80, 23, REGULATORY_CHAN_INDOOR_ONLY},
1287 [CHAN_5735_5815_4] = {5735, 5815, 20, 20, 0},
1288 [CHAN_5735_5775_1] = {5735, 5775, 40, 23, 0},
1289 [CHAN_5735_5895_1] = {5735, 5895, 160, 30, 0},
1290 [CHAN_5735_5895_2] = {5735, 5895, 160, 20, REGULATORY_CHAN_NO_IR},
1291 [CHAN_5835_5855_1] = {5835, 5855, 20, 30, 0},
1292 [CHAN_5835_5855_2] = {5835, 5855, 20, 14, REGULATORY_CHAN_INDOOR_ONLY},
1293 [CHAN_5835_5895_1] = {5835, 5895, 40, 30, REGULATORY_CHAN_INDOOR_ONLY},
1294 [CHAN_5850_5925_1] = {5850, 5925, 20, 24, 0},
1295 [CHAN_5850_5925_2] = {5850, 5925, 20, 30, 0},
1296 #if defined(CONFIG_BAND_6GHZ) && defined(COMPILE_REGDB_6G)
1297 [CHAN_5945_7125_1] = {5945, 7125, 160, 21, REGULATORY_CHAN_INDOOR_ONLY},
1298 [CHAN_5945_7125_2] = {5945, 7125, 160, 27, REGULATORY_CHAN_INDOOR_ONLY},
1299 [CHAN_5945_7125_3] = {5945, 7125, 160, 20, REGULATORY_CHAN_NO_IR},
1300 #endif
1301 };
1302
1303 const struct regdomain regdomains_5g[] = {
1304
1305 [FCC1] = {CTL_FCC, DFS_FCC_REGION, 2, 160, 6, 3, {CHAN_5170_5250_1,
1306 CHAN_5250_5330_1,
1307 CHAN_5735_5835_2} },
1308
1309 [FCC2] = {CTL_FCC, DFS_FCC_REGION, 2, 160, 6, 3, {CHAN_5170_5250_2,
1310 CHAN_5250_5330_1,
1311 CHAN_5735_5835_2} },
1312
1313 [FCC3] = {CTL_FCC, DFS_FCC_REGION, 2, 320, 6, 5, {CHAN_5170_5250_5,
1314 CHAN_5250_5330_7,
1315 CHAN_5490_5730_1,
1316 CHAN_5735_5835_2,
1317 CHAN_5835_5895_1} },
1318
1319 [FCC4] = {CTL_FCC, DFS_FCC_REGION, 2, 160, 6, 4, {CHAN_4940_4990_1,
1320 CHAN_5170_5250_1,
1321 CHAN_5250_5330_7,
1322 CHAN_5735_5835_2} },
1323
1324 [FCC5] = {CTL_FCC, DFS_UNINIT_REGION, 2, 80, 6, 2, {CHAN_5170_5250_4,
1325 CHAN_5735_5835_2} },
1326
1327 [FCC6] = {CTL_FCC, DFS_FCC_REGION, 2, 160, 6, 5, {CHAN_5170_5250_12,
1328 CHAN_5250_5330_7,
1329 CHAN_5490_5590_1,
1330 CHAN_5650_5730_1,
1331 CHAN_5735_5835_2} },
1332
1333 [FCC8] = {CTL_FCC, DFS_FCC_REGION, 2, 320, 6, 5, {CHAN_5170_5250_4,
1334 CHAN_5250_5330_7,
1335 CHAN_5490_5730_1,
1336 CHAN_5735_5835_2,
1337 CHAN_5835_5895_1} },
1338
1339 [FCC10] = {CTL_FCC, DFS_FCC_REGION, 2, 160, 0, 5, {CHAN_5170_5250_4,
1340 CHAN_5250_5330_7,
1341 CHAN_5490_5730_1,
1342 CHAN_5735_5835_2,
1343 CHAN_5850_5925_1} },
1344
1345 [FCC11] = {CTL_FCC, DFS_FCC_REGION, 2, 160, 6, 4, {CHAN_5170_5250_5,
1346 CHAN_5250_5330_7,
1347 CHAN_5490_5650_2,
1348 CHAN_5735_5835_6} },
1349
1350 [FCC13] = {CTL_FCC, DFS_UNINIT_REGION, 2, 320, 0, 3, {CHAN_5170_5330_2,
1351 CHAN_5490_5730_4,
1352 CHAN_5735_5835_2}
1353 },
1354
1355 [FCC14] = {CTL_FCC, DFS_UNINIT_REGION, 2, 320, 0, 4, {CHAN_5170_5250_4,
1356 CHAN_5250_5330_10,
1357 CHAN_5490_5730_4,
1358 CHAN_5735_5835_2}
1359 },
1360
1361 #if defined(CONFIG_BAND_6GHZ) && defined(COMPILE_REGDB_6G)
1362 [FCC15] = {CTL_FCC, DFS_FCC_REGION, 2, 160, 0, 6, {CHAN_5170_5250_5,
1363 CHAN_5250_5330_7,
1364 CHAN_5490_5730_1,
1365 CHAN_5735_5835_2,
1366 CHAN_5835_5895_1,
1367 CHAN_5945_7125_1} },
1368
1369 [FCC16] = {CTL_FCC, DFS_FCC_REGION, 2, 160, 0, 6, {CHAN_5170_5250_4,
1370 CHAN_5250_5330_7,
1371 CHAN_5490_5730_1,
1372 CHAN_5735_5835_2,
1373 CHAN_5835_5895_1,
1374 CHAN_5945_7125_2} },
1375 #endif
1376 [FCC17] = {CTL_FCC, DFS_FCC_REGION, 2, 320, 6, 4, {CHAN_5170_5250_5,
1377 CHAN_5250_5330_7,
1378 CHAN_5490_5730_1,
1379 CHAN_5735_5835_2} },
1380
1381 [FCC18] = {CTL_FCC, DFS_FCC_REGION, 2, 320, 6, 4, {CHAN_5170_5250_14,
1382 CHAN_5250_5330_17,
1383 CHAN_5490_5730_1,
1384 CHAN_5735_5835_2} },
1385
1386 [FCC20] = {CTL_FCC, DFS_FCC_REGION, 2, 320, 6, 4, {CHAN_5170_5250_4,
1387 CHAN_5250_5330_4,
1388 CHAN_5490_5730_5,
1389 CHAN_5735_5835_2} },
1390
1391 [FCC21] = {CTL_FCC, DFS_FCC_REGION, 2, 160, 6, 2, {CHAN_5170_5250_11,
1392 CHAN_5250_5330_18} },
1393
1394 [ETSI1] = {CTL_ETSI, DFS_ETSI_REGION, 2, 160, 0, 3, {CHAN_5170_5250_8,
1395 CHAN_5250_5330_12,
1396 CHAN_5490_5710_1}
1397 },
1398
1399 [ETSI3] = {CTL_ETSI, DFS_ETSI_REGION, 5, 160, 0, 2, {CHAN_5170_5250_2,
1400 CHAN_5250_5330_1}
1401 },
1402
1403 [ETSI4] = {CTL_ETSI, DFS_ETSI_REGION, 2, 160, 0, 2, {CHAN_5170_5250_6,
1404 CHAN_5250_5330_3}
1405 },
1406
1407 [ETSI8] = {CTL_ETSI, DFS_UNINIT_REGION, 20, 160, 0, 4,
1408 {CHAN_5170_5250_2,
1409 CHAN_5250_5330_5,
1410 CHAN_5490_5730_3,
1411 CHAN_5735_5835_2} },
1412
1413 [ETSI9] = {CTL_ETSI, DFS_ETSI_REGION, 20, 160, 0, 4, {CHAN_5170_5250_2,
1414 CHAN_5250_5330_1,
1415 CHAN_5490_5710_5,
1416 CHAN_5735_5835_6}
1417 },
1418
1419 [ETSI10] = {CTL_ETSI, DFS_ETSI_REGION, 5, 160, 0, 4,
1420 {CHAN_5170_5250_7,
1421 CHAN_5250_5330_14,
1422 CHAN_5490_5710_3,
1423 CHAN_5850_5925_2} },
1424
1425 [ETSI11] = {CTL_ETSI, DFS_ETSI_REGION, 10, 20, 0, 4, {CHAN_5170_5250_7,
1426 CHAN_5250_5330_14,
1427 CHAN_5490_5710_3,
1428 CHAN_5735_5875_1}
1429 },
1430
1431 [ETSI12] = {CTL_ETSI, DFS_ETSI_REGION, 2, 320, 0, 4, {CHAN_5170_5250_8,
1432 CHAN_5250_5330_12,
1433 CHAN_5490_5730_5,
1434 CHAN_5735_5835_1}
1435 },
1436
1437 [ETSI13] = {CTL_ETSI, DFS_ETSI_REGION, 2, 160, 0, 4, {CHAN_5170_5250_2,
1438 CHAN_5250_5330_12,
1439 CHAN_5490_5710_1,
1440 CHAN_5735_5875_4}
1441 },
1442
1443 [ETSI14] = {CTL_ETSI, DFS_ETSI_REGION, 2, 320, 0, 4, {CHAN_5170_5250_2,
1444 CHAN_5250_5330_1,
1445 CHAN_5490_5730_7,
1446 CHAN_5735_5875_5}
1447 },
1448
1449 [ETSI15] = {CTL_ETSI, DFS_ETSI_REGION, 2, 320, 0, 4, {CHAN_5170_5250_2,
1450 CHAN_5250_5330_1,
1451 CHAN_5490_5730_5,
1452 CHAN_5735_5815_2}
1453 },
1454
1455 [ETSI16] = {CTL_ETSI, DFS_UNINIT_REGION, 2, 80, 0, 2, {CHAN_5170_5250_11,
1456 CHAN_5735_5875_4}
1457 },
1458
1459 [ETSI17] = {CTL_ETSI, DFS_ETSI_REGION, 2, 160, 0, 5, {CHAN_5170_5250_8,
1460 CHAN_5250_5330_12,
1461 CHAN_5490_5710_9,
1462 CHAN_5735_5835_10,
1463 CHAN_5835_5855_2}
1464 },
1465
1466 [ETSI18] = {CTL_ETSI, DFS_ETSI_REGION, 2, 320, 0, 4, {CHAN_5170_5250_2,
1467 CHAN_5250_5330_12,
1468 CHAN_5490_5730_5,
1469 CHAN_5735_5875_4}
1470 },
1471
1472 [ETSI19] = {CTL_ETSI, DFS_ETSI_REGION, 2, 160, 0, 5, {CHAN_5170_5250_11,
1473 CHAN_5250_5330_12,
1474 CHAN_5490_5710_9,
1475 CHAN_5735_5835_10,
1476 CHAN_5835_5855_2}
1477 },
1478
1479 [ETSI20] = {CTL_ETSI, DFS_ETSI_REGION, 2, 160, 0, 4, {CHAN_5170_5250_8,
1480 CHAN_5250_5330_12,
1481 CHAN_5490_5710_1,
1482 CHAN_5735_5875_4}
1483 },
1484
1485 [ETSI21] = {CTL_ETSI, DFS_ETSI_REGION, 2, 80, 0, 1, {CHAN_5170_5250_11}
1486 },
1487
1488 [APL1] = {CTL_ETSI, DFS_UNINIT_REGION, 2, 80, 0, 1, {CHAN_5735_5835_2}
1489 },
1490
1491 [APL2] = {CTL_ETSI, DFS_UNINIT_REGION, 2, 20, 0, 1, {CHAN_5735_5815_4}
1492 },
1493
1494 [APL4] = {CTL_ETSI, DFS_UNINIT_REGION, 2, 80, 0, 2, {CHAN_5170_5250_2,
1495 CHAN_5735_5875_6}
1496 },
1497
1498 [APL6] = {CTL_ETSI, DFS_ETSI_REGION, 2, 160, 0, 3, {CHAN_5170_5250_3,
1499 CHAN_5250_5330_2,
1500 CHAN_5735_5835_3} },
1501
1502 [APL8] = {CTL_FCC, DFS_ETSI_REGION, 2, 80, 0, 2, {CHAN_5250_5330_4,
1503 CHAN_5735_5835_2} },
1504
1505 [APL9] = {CTL_KOR, DFS_KR_REGION, 2, 160, 6, 4, {CHAN_5170_5250_2,
1506 CHAN_5250_5330_1,
1507 CHAN_5490_5730_6,
1508 CHAN_5735_5835_1} },
1509
1510 [APL10] = {CTL_ETSI, DFS_FCC_REGION, 2, 160, 6, 4, {CHAN_5170_5250_2,
1511 CHAN_5250_5330_4,
1512 CHAN_5490_5710_1,
1513 CHAN_5735_5815_1} },
1514
1515 [APL11] = { CTL_ETSI, DFS_FCC_REGION, 2, 40, 0, 4, {CHAN_5170_5250_9,
1516 CHAN_5250_5330_13,
1517 CHAN_5490_5710_4,
1518 CHAN_5735_5875_2} },
1519
1520 [APL12] = {CTL_ETSI, DFS_ETSI_REGION, 2, 320, 0, 4, {CHAN_5170_5250_2,
1521 CHAN_5250_5330_16,
1522 CHAN_5490_5730_8,
1523 CHAN_5735_5875_6} },
1524
1525 [APL13] = {CTL_ETSI, DFS_ETSI_REGION, 2, 160, 0, 3, {CHAN_5170_5250_2,
1526 CHAN_5250_5330_1,
1527 CHAN_5490_5670_2}
1528 },
1529
1530 [APL14] = {CTL_CHN, DFS_CN_REGION, 2, 160, 0, 3, {CHAN_5170_5250_8,
1531 CHAN_5250_5330_12,
1532 CHAN_5735_5835_4} },
1533
1534 [APL15] = {CTL_FCC, DFS_UNINIT_REGION, 2, 160, 0, 3, {CHAN_5170_5250_2,
1535 CHAN_5250_5330_5,
1536 CHAN_5735_5835_4}
1537 },
1538
1539 [APL16] = {CTL_FCC, DFS_UNINIT_REGION, 2, 160, 0, 5, {CHAN_5170_5250_1,
1540 CHAN_5250_5330_10,
1541 CHAN_5490_5590_2,
1542 CHAN_5650_5730_2,
1543 CHAN_5735_5835_2}
1544 },
1545
1546 [APL17] = {CTL_FCC, DFS_UNINIT_REGION, 2, 160, 0, 5, {CHAN_5170_5250_2,
1547 CHAN_5250_5330_8,
1548 CHAN_5490_5590_3,
1549 CHAN_5650_5730_3,
1550 CHAN_5735_5835_7}
1551 },
1552
1553 [APL19] = {CTL_FCC, DFS_FCC_REGION, 2, 320, 0, 4, {CHAN_5170_5250_4,
1554 CHAN_5250_5330_7,
1555 CHAN_5490_5730_1,
1556 CHAN_5735_5875_3} },
1557
1558 [APL20] = {CTL_ETSI, DFS_ETSI_REGION, 2, 320, 0, 4, {CHAN_5170_5250_8,
1559 CHAN_5250_5330_12,
1560 CHAN_5490_5730_5,
1561 CHAN_5735_5835_4}
1562 },
1563
1564 [APL23] = {CTL_ETSI, DFS_UNINIT_REGION, 2, 160, 0, 3,
1565 {CHAN_5170_5250_7,
1566 CHAN_5250_5330_11,
1567 CHAN_5735_5835_3} },
1568
1569 [APL24] = {CTL_ETSI, DFS_ETSI_REGION, 2, 80, 0, 3, {CHAN_5170_5250_8,
1570 CHAN_5250_5330_12,
1571 CHAN_5735_5815_3} },
1572
1573 [APL25] = {CTL_ETSI, DFS_ETSI_REGION, 2, 160, 0, 5, {CHAN_5170_5250_8,
1574 CHAN_5250_5330_12,
1575 CHAN_5490_5590_4,
1576 CHAN_5650_5730_4,
1577 CHAN_5735_5835_7}
1578 },
1579
1580 [APL26] = {CTL_ETSI, DFS_ETSI_REGION, 2, 320, 0, 4, {CHAN_5170_5250_8,
1581 CHAN_5250_5330_12,
1582 CHAN_5490_5730_5,
1583 CHAN_5735_5835_7} },
1584
1585 [APL27] = {CTL_FCC, DFS_ETSI_REGION, 2, 320, 0, 4, {CHAN_5170_5250_13,
1586 CHAN_5250_5330_7,
1587 CHAN_5490_5730_1,
1588 CHAN_5735_5835_2} },
1589
1590 [APL28] = {CTL_ETSI, DFS_ETSI_REGION, 2, 320, 0, 4, {CHAN_5170_5250_8,
1591 CHAN_5250_5330_12,
1592 CHAN_5490_5730_6,
1593 CHAN_5735_5875_3}
1594 },
1595
1596 [APL29] = {CTL_FCC, DFS_FCC_REGION, 2, 320, 0, 4, {CHAN_5170_5250_2,
1597 CHAN_5250_5330_1,
1598 CHAN_5490_5730_1,
1599 CHAN_5735_5835_11}
1600 },
1601
1602 [MKK3] = {CTL_MKK, DFS_UNINIT_REGION, 2, 80, 0, 1, {CHAN_5170_5250_3} },
1603
1604 [MKK5] = {CTL_MKK, DFS_MKK_REGION, 2, 160, 0, 3, {CHAN_5170_5250_8,
1605 CHAN_5250_5330_12,
1606 CHAN_5490_5710_7} },
1607
1608 [MKK11] = {CTL_MKK, DFS_MKK_REGION, 2, 160, 0, 5, {CHAN_4910_4990_1,
1609 CHAN_5170_5250_2,
1610 CHAN_5030_5090_1,
1611 CHAN_5250_5330_1,
1612 CHAN_5490_5710_7} },
1613
1614 [MKK16] = {CTL_MKK, DFS_MKK_REGION, 2, 160, 0, 1, {CHAN_5490_5710_6} },
1615
1616 [MKK17] = {CTL_MKK, DFS_MKKN_REGION, 2, 160, 0, 3, {CHAN_5170_5250_8,
1617 CHAN_5250_5330_12,
1618 CHAN_5490_5730_6} },
1619
1620 [MKK18] = {CTL_MKK, DFS_MKKN_REGION, 2, 80, 0, 1, {CHAN_5170_5250_11} },
1621
1622 #if defined(CONFIG_BAND_6GHZ) && defined(COMPILE_REGDB_6G)
1623 [WORLD_5G_1] = {CTL_NONE, DFS_UNINIT_REGION, 2, 160, 0, 3, {CHAN_5170_5330_1,
1624 CHAN_5735_5835_5,
1625 CHAN_5945_7125_3}
1626 },
1627
1628 [WORLD_5G_2] = {CTL_NONE, DFS_UNINIT_REGION, 2, 160, 0, 4,
1629 {CHAN_5170_5330_1,
1630 CHAN_5490_5730_2,
1631 CHAN_5735_5895_2,
1632 CHAN_5945_7125_3}
1633 },
1634 #else
1635 [WORLD_5G_1] = {CTL_NONE, DFS_UNINIT_REGION, 2, 160, 0, 2, {CHAN_5170_5330_1,
1636 CHAN_5735_5835_5}
1637 },
1638
1639 [WORLD_5G_2] = {CTL_NONE, DFS_UNINIT_REGION, 2, 160, 0, 3,
1640 {CHAN_5170_5330_1,
1641 CHAN_5490_5730_2,
1642 CHAN_5735_5895_2} },
1643 #endif
1644
1645 };
1646
1647 #if defined(CONFIG_BAND_6GHZ) && defined(COMPILE_REGDB_6G)
1648 /*
1649 * List of 6G Sub Domains.
1650 *
1651 * Note - If not specified in the naming, then above 6G subdomains are for
1652 * both AP and STA (eg ETSI1_VLP_6G).
1653 */
1654 enum reg_subdomains_6g {
1655 FCC1_CLI_LPI_DEFAULT_6G = 0x01,
1656 FCC1_CLI_SP_6G = 0x02,
1657 FCC1_AP_LPI_6G = 0x03,
1658 FCC1_CLI_LPI_SUBORDINATE = FCC1_AP_LPI_6G,
1659 FCC1_AP_SP_6G = 0x04,
1660 ETSI1_AP_LPI_6G = 0x10,
1661 ETSI1_CLI_LPI_6G = ETSI1_AP_LPI_6G,
1662 FCC2_AP_SP_6G = 0x05,
1663 FCC2_CLI_SP_6G = 0x07,
1664 FCC3_AP_VLP_6G = 0x06,
1665 FCC3_CLI_VLP_6G = FCC3_AP_VLP_6G,
1666 ETSI1_AP_VLP_6G = 0x11,
1667 ETSI1_CLI_VLP_6G = ETSI1_AP_VLP_6G,
1668 ETSI2_AP_LPI_6G = 0x12,
1669 ETSI2_CLI_LPI_6G = ETSI2_AP_LPI_6G,
1670 ETSI2_AP_VLP_6G = 0x13,
1671 ETSI2_CLI_VLP_6G = ETSI2_AP_VLP_6G,
1672 APL1_AP_LPI_6G = 0x20,
1673 APL1_CLI_LPI_6G = APL1_AP_LPI_6G,
1674 APL1_AP_VLP_6G = 0x21,
1675 APL1_CLI_VLP_6G = APL1_AP_VLP_6G,
1676 APL2_AP_LPI_6G = 0x22,
1677 APL2_CLI_LPI_6G = APL2_AP_LPI_6G,
1678 APL2_AP_VLP_6G = 0x23,
1679 APL2_CLI_VLP_6G = APL2_AP_VLP_6G,
1680 APL3_AP_VLP_6G = 0x24,
1681 APL3_CLI_VLP_6G = APL3_AP_VLP_6G,
1682 APL3_AP_LPI_6G = 0x25,
1683 APL3_CLI_LPI_6G = APL3_AP_LPI_6G,
1684 APL4_AP_LPI_6G = 0x26,
1685 APL4_CLI_LPI_6G = APL4_AP_LPI_6G,
1686 APL4_AP_VLP_6G = 0x27,
1687 APL4_CLI_VLP_6G = APL4_AP_VLP_6G,
1688 APL5_AP_LPI_6G = 0x32,
1689 APL5_AP_VLP_6G = 0x28,
1690 APL5_CLI_VLP_6G = APL5_AP_VLP_6G,
1691 APL5_CLI_LPI_DEFAULT_6G = 0x31,
1692 APL6_CLI_LPI_6G = 0x29,
1693 APL6_AP_LPI_6G = 0x30,
1694 MKK1_AP_LPI_6G = 0x60,
1695 MKK1_CLI_LPI_6G = MKK1_AP_LPI_6G,
1696 MKK1_AP_VLP_6G = 0x61,
1697 MKK1_CLI_VLP_6G = MKK1_AP_VLP_6G,
1698 };
1699
1700 /*
1701 * Table of 6G super domain to sub domain.
1702 */
1703 static const struct sixghz_super_to_subdomains g_6g_reg_dmn_9_tuples[] = {
1704 {FCC1_6G_01, FCC1_AP_LPI_6G, 0, 0,
1705 {FCC1_CLI_LPI_DEFAULT_6G, FCC1_CLI_LPI_SUBORDINATE},
1706 {FCC1_CLI_SP_6G, FCC1_CLI_SP_6G},
1707 {0, 0} },
1708 {ETSI1_6G_02, ETSI1_AP_LPI_6G, 0, ETSI1_AP_VLP_6G,
1709 {ETSI1_CLI_LPI_6G, ETSI1_CLI_LPI_6G},
1710 {0, 0},
1711 {ETSI1_CLI_VLP_6G, ETSI1_CLI_VLP_6G} },
1712 {ETSI2_6G_03, ETSI2_AP_LPI_6G, 0, ETSI2_AP_VLP_6G,
1713 {ETSI2_CLI_LPI_6G, ETSI2_CLI_LPI_6G},
1714 {0, 0},
1715 {ETSI2_CLI_VLP_6G, ETSI2_CLI_VLP_6G} },
1716 {APL1_6G_04, APL1_AP_LPI_6G, 0, APL1_AP_VLP_6G,
1717 {APL1_CLI_LPI_6G, APL1_CLI_LPI_6G},
1718 {0, 0},
1719 {APL1_CLI_VLP_6G, APL1_CLI_VLP_6G} },
1720 {FCC1_6G_05, FCC1_AP_LPI_6G, 0, 0,
1721 {FCC1_CLI_LPI_DEFAULT_6G, FCC1_CLI_LPI_SUBORDINATE},
1722 {0, 0},
1723 {0, 0} },
1724 {APL2_6G_06, APL2_AP_LPI_6G, 0, APL2_AP_VLP_6G,
1725 {APL2_CLI_LPI_6G, APL2_CLI_LPI_6G},
1726 {0, 0},
1727 {APL2_CLI_VLP_6G, APL2_CLI_VLP_6G} },
1728 {FCC1_6G_07, FCC1_AP_LPI_6G, 0, APL3_AP_VLP_6G,
1729 {FCC1_CLI_LPI_DEFAULT_6G, 0},
1730 {0, 0},
1731 {APL3_CLI_VLP_6G, APL3_CLI_VLP_6G} },
1732 {APL3_6G_08, APL3_AP_LPI_6G, 0, 0,
1733 {APL3_CLI_LPI_6G, APL3_CLI_LPI_6G},
1734 {0, 0},
1735 {0, 0} },
1736 {FCC1_6G_09, FCC1_AP_LPI_6G, FCC1_AP_SP_6G, 0,
1737 {FCC1_CLI_LPI_DEFAULT_6G, 0},
1738 {FCC1_CLI_SP_6G, FCC1_CLI_SP_6G},
1739 {0, 0} },
1740 {APL6_6G_0A, APL6_AP_LPI_6G, 0, 0,
1741 {APL6_CLI_LPI_6G, APL6_CLI_LPI_6G},
1742 {0, 0},
1743 {0, 0} },
1744 {MKK1_6G_0B, MKK1_AP_LPI_6G, 0, MKK1_AP_VLP_6G,
1745 {MKK1_CLI_LPI_6G, MKK1_CLI_LPI_6G},
1746 {0, 0},
1747 {MKK1_CLI_VLP_6G, MKK1_CLI_VLP_6G} },
1748 {ETSI2_6G_0C, ETSI2_AP_LPI_6G, 0, ETSI1_AP_VLP_6G,
1749 {ETSI2_CLI_LPI_6G, ETSI2_CLI_LPI_6G},
1750 {0, 0},
1751 {ETSI1_CLI_VLP_6G, ETSI1_CLI_VLP_6G} },
1752 {ETSI1_6G_0D, ETSI1_AP_LPI_6G, 0, 0,
1753 {ETSI1_CLI_LPI_6G, ETSI1_CLI_LPI_6G},
1754 {0, 0},
1755 {0, 0} },
1756 {ETSI2_6G_0E, ETSI2_AP_LPI_6G, 0, ETSI1_AP_VLP_6G,
1757 {ETSI2_CLI_LPI_6G, ETSI2_CLI_LPI_6G},
1758 {0, 0},
1759 {ETSI1_CLI_VLP_6G, ETSI1_CLI_VLP_6G} },
1760 {FCC2_6G_10, FCC1_AP_LPI_6G, FCC2_AP_SP_6G, 0,
1761 {FCC1_CLI_LPI_DEFAULT_6G, 0},
1762 {FCC2_CLI_SP_6G, FCC2_CLI_SP_6G},
1763 {0, 0} },
1764 {APL4_6G_11, APL4_AP_LPI_6G, 0, APL4_AP_VLP_6G,
1765 {APL4_CLI_LPI_6G, APL4_CLI_LPI_6G},
1766 {0, 0},
1767 {APL4_CLI_VLP_6G, APL4_CLI_VLP_6G} },
1768 {APL5_6G_12, FCC1_AP_LPI_6G, 0, APL5_AP_VLP_6G,
1769 {FCC1_CLI_LPI_DEFAULT_6G, 0},
1770 {0, 0},
1771 {APL5_CLI_VLP_6G, APL5_CLI_VLP_6G} },
1772 {APL7_6G_13, APL5_AP_LPI_6G, 0, APL5_AP_VLP_6G,
1773 {APL5_CLI_LPI_DEFAULT_6G, 0},
1774 {0, 0},
1775 {APL5_CLI_VLP_6G, APL5_CLI_VLP_6G} },
1776 {FCC1_6G_14, FCC1_AP_LPI_6G, 0, FCC3_AP_VLP_6G,
1777 {FCC1_CLI_LPI_DEFAULT_6G, FCC1_CLI_LPI_SUBORDINATE},
1778 {FCC1_CLI_SP_6G, FCC1_CLI_SP_6G},
1779 {FCC3_CLI_VLP_6G, FCC3_CLI_VLP_6G} },
1780 };
1781
1782 /*
1783 * List of 6G reg rules.
1784 */
1785 enum reg_rules_6g {
1786 CHAN_5925_6425_1,
1787 CHAN_5925_6425_2,
1788 CHAN_5925_6425_3,
1789 CHAN_5925_6425_4,
1790 CHAN_5925_6425_5,
1791 CHAN_5925_6425_6,
1792 CHAN_5925_6425_7,
1793 CHAN_5925_6425_8,
1794 CHAN_5925_6425_9,
1795 CHAN_5925_6425_10,
1796 CHAN_5925_6425_11,
1797 CHAN_5925_6425_12,
1798 CHAN_5925_6425_13,
1799 CHAN_5925_6425_14,
1800 CHAN_5925_6425_15,
1801 CHAN_5945_6425_1,
1802 CHAN_5945_6425_2,
1803 CHAN_5945_6425_3,
1804 CHAN_5945_6425_4,
1805 CHAN_5945_6425_5,
1806 CHAN_5945_6425_6,
1807 CHAN_5945_6425_7,
1808 CHAN_5945_6425_8,
1809 CHAN_5945_6425_9,
1810 CHAN_5945_6425_10,
1811 CHAN_5945_6425_11,
1812 CHAN_6425_6525_1,
1813 CHAN_6425_6525_2,
1814 CHAN_6425_6525_3,
1815 CHAN_6425_6525_4,
1816 CHAN_6425_6525_5,
1817 CHAN_6425_6525_6,
1818 CHAN_6425_6525_7,
1819 CHAN_6425_6525_8,
1820 CHAN_6425_6525_9,
1821 CHAN_6425_6525_10,
1822 CHAN_6425_6525_11,
1823 CHAN_6425_6525_12,
1824 CHAN_6425_6525_13,
1825 CHAN_6525_6875_1,
1826 CHAN_6525_6875_2,
1827 CHAN_6525_6875_3,
1828 CHAN_6525_6875_4,
1829 CHAN_6525_6875_5,
1830 CHAN_6525_6875_6,
1831 CHAN_6525_6875_7,
1832 CHAN_6525_6875_8,
1833 CHAN_6525_6875_9,
1834 CHAN_6525_6875_10,
1835 CHAN_6525_6875_11,
1836 CHAN_6525_6875_12,
1837 CHAN_6525_6875_13,
1838 CHAN_6525_6875_14,
1839 CHAN_6525_6875_15,
1840 CHAN_6875_7125_1,
1841 CHAN_6875_7125_2,
1842 CHAN_6875_7125_3,
1843 CHAN_6875_7125_4,
1844 CHAN_6875_7125_5,
1845 CHAN_6875_7125_6,
1846 CHAN_6875_7125_7,
1847 CHAN_6875_7125_8,
1848 CHAN_6875_7125_9,
1849 CHAN_6875_7125_10,
1850 CHAN_6875_7125_11,
1851 };
1852
1853 /*
1854 * Mapping of 6G reg rules present in the 6G sub domain.
1855 */
1856 static const struct regulatory_rule_ext reg_rules_6g[] = {
1857 [CHAN_5925_6425_1] = {5925, 6425, 320, 23, REG_MAX_PSD,
1858 REGULATORY_CHAN_INDOOR_ONLY},
1859 [CHAN_5925_6425_2] = {5925, 6425, 320, 17, -5, 0},
1860 [CHAN_5925_6425_3] = {5925, 6425, 320, 24, REG_MAX_PSD,
1861 REGULATORY_CHAN_INDOOR_ONLY},
1862 [CHAN_5925_6425_4] = {5925, 6425, 320, 30, 17, 0},
1863 [CHAN_5925_6425_5] = {5925, 6425, 320, 30, 5,
1864 REGULATORY_CHAN_INDOOR_ONLY},
1865 [CHAN_5925_6425_6] = {5925, 6425, 320, 24, -1,
1866 REGULATORY_CHAN_INDOOR_ONLY},
1867 [CHAN_5925_6425_7] = {5925, 6425, 320, 36, 23, 0},
1868 [CHAN_5925_6425_8] = {5925, 6425, 320, 30, REG_MAX_PSD,
1869 REGULATORY_CHAN_INDOOR_ONLY},
1870 [CHAN_5925_6425_9] = {5925, 6425, 320, 14, REG_MAX_PSD, 0},
1871 [CHAN_5925_6425_10] = {5925, 6425, 320, 17, -1, 0},
1872 [CHAN_5925_6425_11] = {5925, 6425, 320, 24, 10,
1873 REGULATORY_CHAN_INDOOR_ONLY},
1874 [CHAN_5925_6425_12] = {5925, 6425, 320, 30, 10,
1875 REGULATORY_CHAN_INDOOR_ONLY},
1876 [CHAN_5925_6425_13] = {5925, 6425, 160, 23, 10,
1877 REGULATORY_CHAN_INDOOR_ONLY},
1878 [CHAN_5925_6425_14] = {5925, 6425, 160, 23, 10, 0},
1879 [CHAN_5925_6425_15] = {5925, 6425, 320, 14, -8, 0},
1880 [CHAN_5945_6425_1] = {5945, 6425, 320, 30, 5,
1881 REGULATORY_CHAN_INDOOR_ONLY},
1882 [CHAN_5945_6425_2] = {5945, 6425, 320, 36, 23, 0},
1883 [CHAN_5945_6425_3] = {5945, 6425, 320, 30, 17, 0},
1884 [CHAN_5945_6425_4] = {5945, 6425, 320, 23, 10,
1885 REGULATORY_CHAN_INDOOR_ONLY},
1886 [CHAN_5945_6425_5] = {5945, 6425, 320, 24, -1,
1887 REGULATORY_CHAN_INDOOR_ONLY},
1888 [CHAN_5945_6425_6] = {5945, 6425, 320, 14, 1, 0},
1889 [CHAN_5945_6425_7] = {5945, 6425, 320, 24, 11,
1890 REGULATORY_CHAN_INDOOR_ONLY},
1891 [CHAN_5945_6425_8] = {5945, 6425, 320, 14, 11, 0},
1892 [CHAN_5945_6425_9] = {5945, 6425, 160, 63, 2,
1893 REGULATORY_CHAN_INDOOR_ONLY},
1894 [CHAN_5945_6425_10] = {5945, 6425, 160, 14, 1, 0},
1895 [CHAN_6425_6525_1] = {6425, 6525, 320, 30, 5,
1896 REGULATORY_CHAN_INDOOR_ONLY},
1897 [CHAN_6425_6525_2] = {6425, 6525, 320, 24, -1,
1898 REGULATORY_CHAN_INDOOR_ONLY},
1899 [CHAN_6425_6525_3] = {6425, 6525, 100, 63, 2,
1900 REGULATORY_CHAN_INDOOR_ONLY},
1901 [CHAN_6425_6525_4] = {6425, 6525, 320, 23, REG_MAX_PSD,
1902 REGULATORY_CHAN_INDOOR_ONLY},
1903 [CHAN_6425_6525_5] = {6425, 6525, 320, 17, -5, 0},
1904 [CHAN_6425_6525_6] = {6425, 6525, 320, 36, 23, 0},
1905 [CHAN_6425_6525_7] = {6425, 6525, 320, 30, REG_MAX_PSD,
1906 REGULATORY_CHAN_INDOOR_ONLY},
1907 [CHAN_6425_6525_8] = {6425, 6525, 320, 14, REG_MAX_PSD, 0},
1908 [CHAN_6425_6525_9] = {6425, 6525, 320, 17, -1, 0},
1909 [CHAN_6425_6525_10] = {6425, 6525, 320, 24, 10,
1910 REGULATORY_CHAN_INDOOR_ONLY},
1911 [CHAN_6425_6525_11] = {6425, 6525, 320, 30, 10,
1912 REGULATORY_CHAN_INDOOR_ONLY},
1913 [CHAN_6425_6525_12] = {6425, 6525, 320, 14, -8, 0},
1914 [CHAN_6425_6525_13] = {6425, 6525, 320, 30, 17, 0},
1915 [CHAN_6525_6875_1] = {6525, 6875, 320, 30, 5,
1916 REGULATORY_CHAN_INDOOR_ONLY},
1917 [CHAN_6525_6875_2] = {6525, 6865, 160, 36, 23, 0},
1918 [CHAN_6525_6875_3] = {6525, 6865, 160, 30, 17, 0},
1919 [CHAN_6525_6875_4] = {6525, 6875, 320, 24, -1,
1920 REGULATORY_CHAN_INDOOR_ONLY},
1921 [CHAN_6525_6875_5] = {6525, 6875, 160, 63, 2,
1922 REGULATORY_CHAN_INDOOR_ONLY},
1923 [CHAN_6525_6875_6] = {6525, 6875, 320, 22, REG_MAX_PSD,
1924 REGULATORY_CHAN_INDOOR_ONLY},
1925 [CHAN_6525_6875_7] = {6525, 6875, 160, 17, -5, 0},
1926 [CHAN_6525_6875_8] = {6525, 6875, 320, 36, 23, 0},
1927 [CHAN_6525_6875_9] = {6525, 6875, 320, 30, REG_MAX_PSD,
1928 REGULATORY_CHAN_INDOOR_ONLY},
1929 [CHAN_6525_6875_10] = {6525, 6875, 320, 14, REG_MAX_PSD, 0},
1930 [CHAN_6525_6875_11] = {6525, 6875, 320, 17, -1, 0},
1931 [CHAN_6525_6875_12] = {6525, 6875, 320, 24, 10,
1932 REGULATORY_CHAN_INDOOR_ONLY},
1933 [CHAN_6525_6875_13] = {6525, 6875, 320, 30, 10,
1934 REGULATORY_CHAN_INDOOR_ONLY},
1935 [CHAN_6525_6875_14] = {6525, 6875, 320, 14, -8, 0},
1936 [CHAN_6525_6875_15] = {6525, 6765, 320, 30, 17, 0},
1937 [CHAN_6875_7125_1] = {6875, 7125, 160, 30, 5,
1938 REGULATORY_CHAN_INDOOR_ONLY},
1939 [CHAN_6875_7125_2] = {6875, 7125, 160, 24, -1,
1940 REGULATORY_CHAN_INDOOR_ONLY},
1941 [CHAN_6875_7125_3] = {6875, 7125, 160, 63, 2,
1942 REGULATORY_CHAN_INDOOR_ONLY},
1943 [CHAN_6875_7125_4] = {6875, 7125, 160, 22, REG_MAX_PSD,
1944 REGULATORY_CHAN_INDOOR_ONLY},
1945 [CHAN_6875_7125_5] = {6875, 7125, 320, 17, -5, 0},
1946 [CHAN_6875_7125_6] = {6875, 7125, 320, 30, REG_MAX_PSD,
1947 REGULATORY_CHAN_INDOOR_ONLY},
1948 [CHAN_6875_7125_7] = {6875, 7125, 320, 14, REG_MAX_PSD, 0},
1949 [CHAN_6875_7125_8] = {6875, 7125, 320, 17, -1, 0},
1950 [CHAN_6875_7125_9] = {6875, 7125, 160, 24, 10,
1951 REGULATORY_CHAN_INDOOR_ONLY},
1952 [CHAN_6875_7125_10] = {6875, 7125, 160, 30, 10,
1953 REGULATORY_CHAN_INDOOR_ONLY},
1954 [CHAN_6875_7125_11] = {6875, 7125, 320, 14, -8, 0},
1955 };
1956
1957 /*
1958 * Mapping of 6G sub domain and 6G reg rules.
1959 */
1960 static const struct sub_6g_regdomain sub_regdomains_6g[] = {
1961 [FCC1_AP_LPI_6G] = {2, 320, 4, {CHAN_5925_6425_5,
1962 CHAN_6425_6525_1,
1963 CHAN_6525_6875_1,
1964 CHAN_6875_7125_1} },
1965 [FCC1_AP_SP_6G] = {2, 320, 2, {CHAN_5925_6425_7,
1966 CHAN_6525_6875_2} },
1967 [FCC1_CLI_SP_6G] = {2, 320, 2, {CHAN_5925_6425_4,
1968 CHAN_6525_6875_3} },
1969 [FCC1_CLI_LPI_DEFAULT_6G] = {2, 320, 4, {CHAN_5925_6425_6,
1970 CHAN_6425_6525_2,
1971 CHAN_6525_6875_4,
1972 CHAN_6875_7125_2} },
1973 [FCC2_AP_SP_6G] = {2, 320, 3, {CHAN_5925_6425_7,
1974 CHAN_6425_6525_6,
1975 CHAN_6525_6875_8} },
1976 [FCC2_CLI_SP_6G] = {2, 320, 3, {CHAN_5925_6425_4,
1977 CHAN_6425_6525_13,
1978 CHAN_6525_6875_15} },
1979 [FCC3_AP_VLP_6G] = {2, 320, 4, {CHAN_5925_6425_15,
1980 CHAN_6425_6525_12,
1981 CHAN_6525_6875_14,
1982 CHAN_6875_7125_11} },
1983
1984 [ETSI1_AP_LPI_6G] = {2, 320, 1, {CHAN_5945_6425_5} },
1985 [ETSI1_AP_VLP_6G] = {2, 320, 1, {CHAN_5945_6425_6} },
1986 [ETSI2_AP_LPI_6G] = {2, 320, 1, {CHAN_5945_6425_7} },
1987 [ETSI2_AP_VLP_6G] = {2, 320, 1, {CHAN_5945_6425_8} },
1988 [APL1_AP_LPI_6G] = {2, 160, 4, {CHAN_5945_6425_9,
1989 CHAN_6425_6525_3,
1990 CHAN_6525_6875_5,
1991 CHAN_6875_7125_3} },
1992 [APL1_AP_VLP_6G] = {2, 160, 1, {CHAN_5945_6425_10} },
1993 [APL2_AP_LPI_6G] = {2, 320, 4, {CHAN_5925_6425_1,
1994 CHAN_6425_6525_4,
1995 CHAN_6525_6875_6,
1996 CHAN_6875_7125_4} },
1997 [APL2_AP_VLP_6G] = {2, 320, 4, {CHAN_5925_6425_1,
1998 CHAN_6425_6525_4,
1999 CHAN_6525_6875_6,
2000 CHAN_6875_7125_4} },
2001 [APL3_AP_VLP_6G] = {2, 320, 4, {CHAN_5925_6425_2,
2002 CHAN_6425_6525_5,
2003 CHAN_6525_6875_7,
2004 CHAN_6875_7125_5} },
2005 [APL3_AP_LPI_6G] = {2, 320, 1, {CHAN_5925_6425_3} },
2006 [APL4_AP_LPI_6G] = {2, 320, 4, {CHAN_5925_6425_8,
2007 CHAN_6425_6525_7,
2008 CHAN_6525_6875_9,
2009 CHAN_6875_7125_6} },
2010 [APL4_AP_VLP_6G] = {2, 320, 4, {CHAN_5925_6425_9,
2011 CHAN_6425_6525_8,
2012 CHAN_6525_6875_10,
2013 CHAN_6875_7125_7} },
2014 [APL5_AP_LPI_6G] = {2, 320, 1, {CHAN_5925_6425_5} },
2015 [APL5_AP_VLP_6G] = {2, 320, 1, {CHAN_5925_6425_10} },
2016 [APL5_CLI_LPI_DEFAULT_6G] = {2, 320, 1, {CHAN_5925_6425_6} },
2017 [APL6_CLI_LPI_6G] = {2, 320, 4, {CHAN_5925_6425_11,
2018 CHAN_6425_6525_10,
2019 CHAN_6525_6875_12,
2020 CHAN_6875_7125_9} },
2021 [APL6_AP_LPI_6G] = {2, 320, 4, {CHAN_5925_6425_12,
2022 CHAN_6425_6525_11,
2023 CHAN_6525_6875_13,
2024 CHAN_6875_7125_10} },
2025 [MKK1_AP_LPI_6G] = {2, 160, 1, {CHAN_5925_6425_13} },
2026 [MKK1_AP_VLP_6G] = {2, 160, 1, {CHAN_5945_6425_10} },
2027 };
2028 #endif
2029 #ifdef CONFIG_REG_CLIENT
2030 const uint32_t reg_2g_sub_dmn_code[REG_DOMAINS_2G_MAX] = {
2031 [FCCA] = 0x0A10,
2032 [FCCB] = 0x0B90,
2033 [WORLD] = 0x0199,
2034 [MKKA] = 0x0A40,
2035 [MKKC] = 0x0A50,
2036 [ETSIC] = 0x0C30,
2037 [ETSID] = 0x0F30,
2038 [KRRA] = 0x0A60,
2039 [CHNA] = 0x0A80,
2040 };
2041
2042 const uint32_t reg_5g_sub_dmn_code[REG_DOMAINS_5G_MAX] = {
2043 [NULL1] = 0x0198,
2044 [FCC1] = 0x0110,
2045 [FCC2] = 0x0120,
2046 [FCC3] = 0x0160,
2047 [FCC4] = 0x0165,
2048 [FCC5] = 0x0510,
2049 [FCC6] = 0x0610,
2050 [FCC8] = 0x0810,
2051 [FCC10] = 0x0B10,
2052 [FCC11] = 0x0B20,
2053 [FCC13] = 0x0B60,
2054 [FCC14] = 0x0B70,
2055 [FCC17] = 0x0B73,
2056 [FCC18] = 0x0B74,
2057 [FCC20] = 0x0B75,
2058 [FCC21] = 0x0B76,
2059 [ETSI1] = 0x0130,
2060 [ETSI3] = 0x0330,
2061 [ETSI4] = 0x0430,
2062 [ETSI8] = 0x0830,
2063 [ETSI9] = 0x0930,
2064 [ETSI10] = 0x0D30,
2065 [ETSI11] = 0x0E30,
2066 [ETSI12] = 0x0E38,
2067 [ETSI13] = 0x0E39,
2068 [ETSI14] = 0x0E40,
2069 [ETSI15] = 0x0E41,
2070 [ETSI18] = 0x0E44,
2071 [ETSI19] = 0x0E45,
2072 [ETSI20] = 0x0E46,
2073 [ETSI21] = 0x0E47,
2074 [APL1] = 0x0150,
2075 [APL2] = 0x0250,
2076 [APL4] = 0x0450,
2077 [APL6] = 0x0650,
2078 [APL8] = 0x0850,
2079 [APL9] = 0x0950,
2080 [APL10] = 0x1050,
2081 [APL11] = 0x1150,
2082 [APL12] = 0x1160,
2083 [APL13] = 0x1170,
2084 [APL14] = 0x1180,
2085 [APL15] = 0x1190,
2086 [APL16] = 0x1200,
2087 [APL17] = 0x1210,
2088 [APL19] = 0x1240,
2089 [APL20] = 0x1250,
2090 [APL23] = 0x1280,
2091 [APL28] = 0x1233,
2092 [APL29] = 0x1234,
2093 [MKK3] = 0x0340,
2094 [MKK5] = 0x0540,
2095 [MKK11] = 0x1140,
2096 [MKK16] = 0x1640,
2097 [MKK17] = 0x1650,
2098 [MKK18] = 0x1660,
2099 };
2100 #endif
2101
reg_get_num_countries(int * num_countries)2102 QDF_STATUS reg_get_num_countries(int *num_countries)
2103 {
2104 *num_countries = QDF_ARRAY_SIZE(g_all_countries);
2105
2106 return QDF_STATUS_SUCCESS;
2107 }
2108
reg_get_num_reg_dmn_pairs(int * num_reg_dmn)2109 QDF_STATUS reg_get_num_reg_dmn_pairs(int *num_reg_dmn)
2110 {
2111 *num_reg_dmn = QDF_ARRAY_SIZE(g_reg_dmn_pairs);
2112
2113 return QDF_STATUS_SUCCESS;
2114 }
2115
reg_etsi_regdmn(uint8_t reg_dmn)2116 bool reg_etsi_regdmn(uint8_t reg_dmn)
2117 {
2118 return ((reg_dmn == ETSI13) ||
2119 (reg_dmn == ETSI18) ||
2120 (reg_dmn == ETSI20));
2121 }
2122
reg_fcc_regdmn(uint8_t reg_dmn)2123 bool reg_fcc_regdmn(uint8_t reg_dmn)
2124 {
2125 return ((reg_dmn == FCC3) ||
2126 (reg_dmn == FCC8) ||
2127 (reg_dmn == FCC15) ||
2128 (reg_dmn == FCC16));
2129 }
2130
2131 #ifdef WLAN_REG_PARTIAL_OFFLOAD
reg_get_default_country(uint16_t * default_country)2132 QDF_STATUS reg_get_default_country(uint16_t *default_country)
2133 {
2134 *default_country = CTRY_UNITED_STATES;
2135
2136 return QDF_STATUS_SUCCESS;
2137 }
2138
reg_en302_502_regdmn(uint16_t regdmn)2139 bool reg_en302_502_regdmn(uint16_t regdmn)
2140 {
2141 return ((regdmn == ETSI11_WORLD) ||
2142 (regdmn == ETSI12_WORLD) ||
2143 (regdmn == ETSI14_WORLD) ||
2144 (regdmn == ETSI15_WORLD));
2145 }
2146 #endif
2147