Merge branch 'linux_next' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab...
[pandora-kernel.git] / drivers / net / wireless / ath / regd_common.h
1 /*
2  * Copyright (c) 2008-2009 Atheros Communications Inc.
3  *
4  * Permission to use, copy, modify, and/or distribute this software for any
5  * purpose with or without fee is hereby granted, provided that the above
6  * copyright notice and this permission notice appear in all copies.
7  *
8  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15  */
16
17 #ifndef REGD_COMMON_H
18 #define REGD_COMMON_H
19
20 enum EnumRd {
21         NO_ENUMRD = 0x00,
22         NULL1_WORLD = 0x03,
23         NULL1_ETSIB = 0x07,
24         NULL1_ETSIC = 0x08,
25         FCC1_FCCA = 0x10,
26         FCC1_WORLD = 0x11,
27         FCC4_FCCA = 0x12,
28         FCC5_FCCA = 0x13,
29         FCC6_FCCA = 0x14,
30
31         FCC2_FCCA = 0x20,
32         FCC2_WORLD = 0x21,
33         FCC2_ETSIC = 0x22,
34         FCC6_WORLD = 0x23,
35         FRANCE_RES = 0x31,
36         FCC3_FCCA = 0x3A,
37         FCC3_WORLD = 0x3B,
38
39         ETSI1_WORLD = 0x37,
40         ETSI3_ETSIA = 0x32,
41         ETSI2_WORLD = 0x35,
42         ETSI3_WORLD = 0x36,
43         ETSI4_WORLD = 0x30,
44         ETSI4_ETSIC = 0x38,
45         ETSI5_WORLD = 0x39,
46         ETSI6_WORLD = 0x34,
47         ETSI_RESERVED = 0x33,
48
49         MKK1_MKKA = 0x40,
50         MKK1_MKKB = 0x41,
51         APL4_WORLD = 0x42,
52         MKK2_MKKA = 0x43,
53         APL_RESERVED = 0x44,
54         APL2_WORLD = 0x45,
55         APL2_APLC = 0x46,
56         APL3_WORLD = 0x47,
57         MKK1_FCCA = 0x48,
58         APL2_APLD = 0x49,
59         MKK1_MKKA1 = 0x4A,
60         MKK1_MKKA2 = 0x4B,
61         MKK1_MKKC = 0x4C,
62
63         APL3_FCCA = 0x50,
64         APL1_WORLD = 0x52,
65         APL1_FCCA = 0x53,
66         APL1_APLA = 0x54,
67         APL1_ETSIC = 0x55,
68         APL2_ETSIC = 0x56,
69         APL5_WORLD = 0x58,
70         APL6_WORLD = 0x5B,
71         APL7_FCCA = 0x5C,
72         APL8_WORLD = 0x5D,
73         APL9_WORLD = 0x5E,
74
75         WOR0_WORLD = 0x60,
76         WOR1_WORLD = 0x61,
77         WOR2_WORLD = 0x62,
78         WOR3_WORLD = 0x63,
79         WOR4_WORLD = 0x64,
80         WOR5_ETSIC = 0x65,
81
82         WOR01_WORLD = 0x66,
83         WOR02_WORLD = 0x67,
84         EU1_WORLD = 0x68,
85
86         WOR9_WORLD = 0x69,
87         WORA_WORLD = 0x6A,
88         WORB_WORLD = 0x6B,
89         WORC_WORLD = 0x6C,
90
91         MKK3_MKKB = 0x80,
92         MKK3_MKKA2 = 0x81,
93         MKK3_MKKC = 0x82,
94
95         MKK4_MKKB = 0x83,
96         MKK4_MKKA2 = 0x84,
97         MKK4_MKKC = 0x85,
98
99         MKK5_MKKB = 0x86,
100         MKK5_MKKA2 = 0x87,
101         MKK5_MKKC = 0x88,
102
103         MKK6_MKKB = 0x89,
104         MKK6_MKKA2 = 0x8A,
105         MKK6_MKKC = 0x8B,
106
107         MKK7_MKKB = 0x8C,
108         MKK7_MKKA2 = 0x8D,
109         MKK7_MKKC = 0x8E,
110
111         MKK8_MKKB = 0x8F,
112         MKK8_MKKA2 = 0x90,
113         MKK8_MKKC = 0x91,
114
115         MKK14_MKKA1 = 0x92,
116         MKK15_MKKA1 = 0x93,
117
118         MKK10_FCCA = 0xD0,
119         MKK10_MKKA1 = 0xD1,
120         MKK10_MKKC = 0xD2,
121         MKK10_MKKA2 = 0xD3,
122
123         MKK11_MKKA = 0xD4,
124         MKK11_FCCA = 0xD5,
125         MKK11_MKKA1 = 0xD6,
126         MKK11_MKKC = 0xD7,
127         MKK11_MKKA2 = 0xD8,
128
129         MKK12_MKKA = 0xD9,
130         MKK12_FCCA = 0xDA,
131         MKK12_MKKA1 = 0xDB,
132         MKK12_MKKC = 0xDC,
133         MKK12_MKKA2 = 0xDD,
134
135         MKK13_MKKB = 0xDE,
136
137         MKK3_MKKA = 0xF0,
138         MKK3_MKKA1 = 0xF1,
139         MKK3_FCCA = 0xF2,
140         MKK4_MKKA = 0xF3,
141         MKK4_MKKA1 = 0xF4,
142         MKK4_FCCA = 0xF5,
143         MKK9_MKKA = 0xF6,
144         MKK10_MKKA = 0xF7,
145         MKK6_MKKA1 = 0xF8,
146         MKK6_FCCA = 0xF9,
147         MKK7_MKKA1 = 0xFA,
148         MKK7_FCCA = 0xFB,
149         MKK9_FCCA = 0xFC,
150         MKK9_MKKA1 = 0xFD,
151         MKK9_MKKC = 0xFE,
152         MKK9_MKKA2 = 0xFF,
153
154         WORLD = 0x0199,
155         DEBUG_REG_DMN = 0x01ff,
156 };
157
158 /* Regpair to CTL band mapping */
159 static struct reg_dmn_pair_mapping regDomainPairs[] = {
160         /* regpair, 5 GHz CTL, 2 GHz CTL */
161         {NO_ENUMRD, DEBUG_REG_DMN, DEBUG_REG_DMN},
162         {NULL1_WORLD, NO_CTL, CTL_ETSI},
163         {NULL1_ETSIB, NO_CTL, CTL_ETSI},
164         {NULL1_ETSIC, NO_CTL, CTL_ETSI},
165
166         {FCC2_FCCA, CTL_FCC, CTL_FCC},
167         {FCC2_WORLD, CTL_FCC, CTL_ETSI},
168         {FCC2_ETSIC, CTL_FCC, CTL_ETSI},
169         {FCC3_FCCA, CTL_FCC, CTL_FCC},
170         {FCC3_WORLD, CTL_FCC, CTL_ETSI},
171         {FCC4_FCCA, CTL_FCC, CTL_FCC},
172         {FCC5_FCCA, CTL_FCC, CTL_FCC},
173         {FCC6_FCCA, CTL_FCC, CTL_FCC},
174         {FCC6_WORLD, CTL_FCC, CTL_ETSI},
175
176         {ETSI1_WORLD, CTL_ETSI, CTL_ETSI},
177         {ETSI2_WORLD, CTL_ETSI, CTL_ETSI},
178         {ETSI3_WORLD, CTL_ETSI, CTL_ETSI},
179         {ETSI4_WORLD, CTL_ETSI, CTL_ETSI},
180         {ETSI5_WORLD, CTL_ETSI, CTL_ETSI},
181         {ETSI6_WORLD, CTL_ETSI, CTL_ETSI},
182
183         /* XXX: For ETSI3_ETSIA, Was NO_CTL meant for the 2 GHz band ? */
184         {ETSI3_ETSIA, CTL_ETSI, CTL_ETSI},
185         {FRANCE_RES, CTL_ETSI, CTL_ETSI},
186
187         {FCC1_WORLD, CTL_FCC, CTL_ETSI},
188         {FCC1_FCCA, CTL_FCC, CTL_FCC},
189         {APL1_WORLD, CTL_FCC, CTL_ETSI},
190         {APL2_WORLD, CTL_FCC, CTL_ETSI},
191         {APL3_WORLD, CTL_FCC, CTL_ETSI},
192         {APL4_WORLD, CTL_FCC, CTL_ETSI},
193         {APL5_WORLD, CTL_FCC, CTL_ETSI},
194         {APL6_WORLD, CTL_ETSI, CTL_ETSI},
195         {APL8_WORLD, CTL_ETSI, CTL_ETSI},
196         {APL9_WORLD, CTL_ETSI, CTL_ETSI},
197
198         {APL3_FCCA, CTL_FCC, CTL_FCC},
199         {APL7_FCCA, CTL_FCC, CTL_FCC},
200         {APL1_ETSIC, CTL_FCC, CTL_ETSI},
201         {APL2_ETSIC, CTL_FCC, CTL_ETSI},
202         {APL2_APLD, CTL_FCC, NO_CTL},
203
204         {MKK1_MKKA, CTL_MKK, CTL_MKK},
205         {MKK1_MKKB, CTL_MKK, CTL_MKK},
206         {MKK1_FCCA, CTL_MKK, CTL_FCC},
207         {MKK1_MKKA1, CTL_MKK, CTL_MKK},
208         {MKK1_MKKA2, CTL_MKK, CTL_MKK},
209         {MKK1_MKKC, CTL_MKK, CTL_MKK},
210
211         {MKK2_MKKA, CTL_MKK, CTL_MKK},
212         {MKK3_MKKA, CTL_MKK, CTL_MKK},
213         {MKK3_MKKB, CTL_MKK, CTL_MKK},
214         {MKK3_MKKA1, CTL_MKK, CTL_MKK},
215         {MKK3_MKKA2, CTL_MKK, CTL_MKK},
216         {MKK3_MKKC, CTL_MKK, CTL_MKK},
217         {MKK3_FCCA, CTL_MKK, CTL_FCC},
218
219         {MKK4_MKKA, CTL_MKK, CTL_MKK},
220         {MKK4_MKKB, CTL_MKK, CTL_MKK},
221         {MKK4_MKKA1, CTL_MKK, CTL_MKK},
222         {MKK4_MKKA2, CTL_MKK, CTL_MKK},
223         {MKK4_MKKC, CTL_MKK, CTL_MKK},
224         {MKK4_FCCA, CTL_MKK, CTL_FCC},
225
226         {MKK5_MKKB, CTL_MKK, CTL_MKK},
227         {MKK5_MKKA2, CTL_MKK, CTL_MKK},
228         {MKK5_MKKC, CTL_MKK, CTL_MKK},
229
230         {MKK6_MKKB, CTL_MKK, CTL_MKK},
231         {MKK6_MKKA1, CTL_MKK, CTL_MKK},
232         {MKK6_MKKA2, CTL_MKK, CTL_MKK},
233         {MKK6_MKKC, CTL_MKK, CTL_MKK},
234         {MKK6_FCCA, CTL_MKK, CTL_FCC},
235
236         {MKK7_MKKB, CTL_MKK, CTL_MKK},
237         {MKK7_MKKA1, CTL_MKK, CTL_MKK},
238         {MKK7_MKKA2, CTL_MKK, CTL_MKK},
239         {MKK7_MKKC, CTL_MKK, CTL_MKK},
240         {MKK7_FCCA, CTL_MKK, CTL_FCC},
241
242         {MKK8_MKKB, CTL_MKK, CTL_MKK},
243         {MKK8_MKKA2, CTL_MKK, CTL_MKK},
244         {MKK8_MKKC, CTL_MKK, CTL_MKK},
245
246         {MKK9_MKKA, CTL_MKK, CTL_MKK},
247         {MKK9_FCCA, CTL_MKK, CTL_FCC},
248         {MKK9_MKKA1, CTL_MKK, CTL_MKK},
249         {MKK9_MKKA2, CTL_MKK, CTL_MKK},
250         {MKK9_MKKC, CTL_MKK, CTL_MKK},
251
252         {MKK10_MKKA, CTL_MKK, CTL_MKK},
253         {MKK10_FCCA, CTL_MKK, CTL_FCC},
254         {MKK10_MKKA1, CTL_MKK, CTL_MKK},
255         {MKK10_MKKA2, CTL_MKK, CTL_MKK},
256         {MKK10_MKKC, CTL_MKK, CTL_MKK},
257
258         {MKK11_MKKA, CTL_MKK, CTL_MKK},
259         {MKK11_FCCA, CTL_MKK, CTL_FCC},
260         {MKK11_MKKA1, CTL_MKK, CTL_MKK},
261         {MKK11_MKKA2, CTL_MKK, CTL_MKK},
262         {MKK11_MKKC, CTL_MKK, CTL_MKK},
263
264         {MKK12_MKKA, CTL_MKK, CTL_MKK},
265         {MKK12_FCCA, CTL_MKK, CTL_FCC},
266         {MKK12_MKKA1, CTL_MKK, CTL_MKK},
267         {MKK12_MKKA2, CTL_MKK, CTL_MKK},
268         {MKK12_MKKC, CTL_MKK, CTL_MKK},
269
270         {MKK13_MKKB, CTL_MKK, CTL_MKK},
271         {MKK14_MKKA1, CTL_MKK, CTL_MKK},
272         {MKK15_MKKA1, CTL_MKK, CTL_MKK},
273
274         {WOR0_WORLD, NO_CTL, NO_CTL},
275         {WOR1_WORLD, NO_CTL, NO_CTL},
276         {WOR2_WORLD, NO_CTL, NO_CTL},
277         {WOR3_WORLD, NO_CTL, NO_CTL},
278         {WOR4_WORLD, NO_CTL, NO_CTL},
279         {WOR5_ETSIC, NO_CTL, NO_CTL},
280         {WOR01_WORLD, NO_CTL, NO_CTL},
281         {WOR02_WORLD, NO_CTL, NO_CTL},
282         {EU1_WORLD, NO_CTL, NO_CTL},
283         {WOR9_WORLD, NO_CTL, NO_CTL},
284         {WORA_WORLD, NO_CTL, NO_CTL},
285         {WORB_WORLD, NO_CTL, NO_CTL},
286         {WORC_WORLD, NO_CTL, NO_CTL},
287 };
288
289 static struct country_code_to_enum_rd allCountries[] = {
290         {CTRY_DEBUG, NO_ENUMRD, "DB"},
291         {CTRY_DEFAULT, FCC1_FCCA, "CO"},
292         {CTRY_ALBANIA, NULL1_WORLD, "AL"},
293         {CTRY_ALGERIA, NULL1_WORLD, "DZ"},
294         {CTRY_ARGENTINA, FCC3_WORLD, "AR"},
295         {CTRY_ARMENIA, ETSI4_WORLD, "AM"},
296         {CTRY_ARUBA, ETSI1_WORLD, "AW"},
297         {CTRY_AUSTRALIA, FCC2_WORLD, "AU"},
298         {CTRY_AUSTRALIA2, FCC6_WORLD, "AU"},
299         {CTRY_AUSTRIA, ETSI1_WORLD, "AT"},
300         {CTRY_AZERBAIJAN, ETSI4_WORLD, "AZ"},
301         {CTRY_BAHRAIN, APL6_WORLD, "BH"},
302         {CTRY_BANGLADESH, NULL1_WORLD, "BD"},
303         {CTRY_BARBADOS, FCC2_WORLD, "BB"},
304         {CTRY_BELARUS, ETSI1_WORLD, "BY"},
305         {CTRY_BELGIUM, ETSI1_WORLD, "BE"},
306         {CTRY_BELGIUM2, ETSI4_WORLD, "BL"},
307         {CTRY_BELIZE, APL1_ETSIC, "BZ"},
308         {CTRY_BOLIVIA, APL1_ETSIC, "BO"},
309         {CTRY_BOSNIA_HERZ, ETSI1_WORLD, "BA"},
310         {CTRY_BRAZIL, FCC3_WORLD, "BR"},
311         {CTRY_BRUNEI_DARUSSALAM, APL1_WORLD, "BN"},
312         {CTRY_BULGARIA, ETSI6_WORLD, "BG"},
313         {CTRY_CAMBODIA, ETSI1_WORLD, "KH"},
314         {CTRY_CANADA, FCC3_FCCA, "CA"},
315         {CTRY_CANADA2, FCC6_FCCA, "CA"},
316         {CTRY_CHILE, APL6_WORLD, "CL"},
317         {CTRY_CHINA, APL1_WORLD, "CN"},
318         {CTRY_COLOMBIA, FCC1_FCCA, "CO"},
319         {CTRY_COSTA_RICA, FCC1_WORLD, "CR"},
320         {CTRY_CROATIA, ETSI1_WORLD, "HR"},
321         {CTRY_CYPRUS, ETSI1_WORLD, "CY"},
322         {CTRY_CZECH, ETSI3_WORLD, "CZ"},
323         {CTRY_DENMARK, ETSI1_WORLD, "DK"},
324         {CTRY_DOMINICAN_REPUBLIC, FCC1_FCCA, "DO"},
325         {CTRY_ECUADOR, FCC1_WORLD, "EC"},
326         {CTRY_EGYPT, ETSI3_WORLD, "EG"},
327         {CTRY_EL_SALVADOR, FCC1_WORLD, "SV"},
328         {CTRY_ESTONIA, ETSI1_WORLD, "EE"},
329         {CTRY_FINLAND, ETSI1_WORLD, "FI"},
330         {CTRY_FRANCE, ETSI1_WORLD, "FR"},
331         {CTRY_GEORGIA, ETSI4_WORLD, "GE"},
332         {CTRY_GERMANY, ETSI1_WORLD, "DE"},
333         {CTRY_GREECE, ETSI1_WORLD, "GR"},
334         {CTRY_GREENLAND, ETSI1_WORLD, "GL"},
335         {CTRY_GRENADA, FCC3_FCCA, "GD"},
336         {CTRY_GUAM, FCC1_FCCA, "GU"},
337         {CTRY_GUATEMALA, FCC1_FCCA, "GT"},
338         {CTRY_HAITI, ETSI1_WORLD, "HT"},
339         {CTRY_HONDURAS, NULL1_WORLD, "HN"},
340         {CTRY_HONG_KONG, FCC3_WORLD, "HK"},
341         {CTRY_HUNGARY, ETSI1_WORLD, "HU"},
342         {CTRY_ICELAND, ETSI1_WORLD, "IS"},
343         {CTRY_INDIA, APL6_WORLD, "IN"},
344         {CTRY_INDONESIA, NULL1_WORLD, "ID"},
345         {CTRY_IRAN, APL1_WORLD, "IR"},
346         {CTRY_IRELAND, ETSI1_WORLD, "IE"},
347         {CTRY_ISRAEL, NULL1_WORLD, "IL"},
348         {CTRY_ITALY, ETSI1_WORLD, "IT"},
349         {CTRY_JAMAICA, FCC3_WORLD, "JM"},
350
351         {CTRY_JAPAN, MKK1_MKKA, "JP"},
352         {CTRY_JAPAN1, MKK1_MKKB, "JP"},
353         {CTRY_JAPAN2, MKK1_FCCA, "JP"},
354         {CTRY_JAPAN3, MKK2_MKKA, "JP"},
355         {CTRY_JAPAN4, MKK1_MKKA1, "JP"},
356         {CTRY_JAPAN5, MKK1_MKKA2, "JP"},
357         {CTRY_JAPAN6, MKK1_MKKC, "JP"},
358         {CTRY_JAPAN7, MKK3_MKKB, "JP"},
359         {CTRY_JAPAN8, MKK3_MKKA2, "JP"},
360         {CTRY_JAPAN9, MKK3_MKKC, "JP"},
361         {CTRY_JAPAN10, MKK4_MKKB, "JP"},
362         {CTRY_JAPAN11, MKK4_MKKA2, "JP"},
363         {CTRY_JAPAN12, MKK4_MKKC, "JP"},
364         {CTRY_JAPAN13, MKK5_MKKB, "JP"},
365         {CTRY_JAPAN14, MKK5_MKKA2, "JP"},
366         {CTRY_JAPAN15, MKK5_MKKC, "JP"},
367         {CTRY_JAPAN16, MKK6_MKKB, "JP"},
368         {CTRY_JAPAN17, MKK6_MKKA2, "JP"},
369         {CTRY_JAPAN18, MKK6_MKKC, "JP"},
370         {CTRY_JAPAN19, MKK7_MKKB, "JP"},
371         {CTRY_JAPAN20, MKK7_MKKA2, "JP"},
372         {CTRY_JAPAN21, MKK7_MKKC, "JP"},
373         {CTRY_JAPAN22, MKK8_MKKB, "JP"},
374         {CTRY_JAPAN23, MKK8_MKKA2, "JP"},
375         {CTRY_JAPAN24, MKK8_MKKC, "JP"},
376         {CTRY_JAPAN25, MKK3_MKKA, "JP"},
377         {CTRY_JAPAN26, MKK3_MKKA1, "JP"},
378         {CTRY_JAPAN27, MKK3_FCCA, "JP"},
379         {CTRY_JAPAN28, MKK4_MKKA1, "JP"},
380         {CTRY_JAPAN29, MKK4_FCCA, "JP"},
381         {CTRY_JAPAN30, MKK6_MKKA1, "JP"},
382         {CTRY_JAPAN31, MKK6_FCCA, "JP"},
383         {CTRY_JAPAN32, MKK7_MKKA1, "JP"},
384         {CTRY_JAPAN33, MKK7_FCCA, "JP"},
385         {CTRY_JAPAN34, MKK9_MKKA, "JP"},
386         {CTRY_JAPAN35, MKK10_MKKA, "JP"},
387         {CTRY_JAPAN36, MKK4_MKKA, "JP"},
388         {CTRY_JAPAN37, MKK9_FCCA, "JP"},
389         {CTRY_JAPAN38, MKK9_MKKA1, "JP"},
390         {CTRY_JAPAN39, MKK9_MKKC, "JP"},
391         {CTRY_JAPAN40, MKK9_MKKA2, "JP"},
392         {CTRY_JAPAN41, MKK10_FCCA, "JP"},
393         {CTRY_JAPAN42, MKK10_MKKA1, "JP"},
394         {CTRY_JAPAN43, MKK10_MKKC, "JP"},
395         {CTRY_JAPAN44, MKK10_MKKA2, "JP"},
396         {CTRY_JAPAN45, MKK11_MKKA, "JP"},
397         {CTRY_JAPAN46, MKK11_FCCA, "JP"},
398         {CTRY_JAPAN47, MKK11_MKKA1, "JP"},
399         {CTRY_JAPAN48, MKK11_MKKC, "JP"},
400         {CTRY_JAPAN49, MKK11_MKKA2, "JP"},
401         {CTRY_JAPAN50, MKK12_MKKA, "JP"},
402         {CTRY_JAPAN51, MKK12_FCCA, "JP"},
403         {CTRY_JAPAN52, MKK12_MKKA1, "JP"},
404         {CTRY_JAPAN53, MKK12_MKKC, "JP"},
405         {CTRY_JAPAN54, MKK12_MKKA2, "JP"},
406         {CTRY_JAPAN57, MKK13_MKKB, "JP"},
407         {CTRY_JAPAN58, MKK14_MKKA1, "JP"},
408         {CTRY_JAPAN59, MKK15_MKKA1, "JP"},
409
410         {CTRY_JORDAN, ETSI2_WORLD, "JO"},
411         {CTRY_KAZAKHSTAN, NULL1_WORLD, "KZ"},
412         {CTRY_KOREA_NORTH, APL9_WORLD, "KP"},
413         {CTRY_KOREA_ROC, APL9_WORLD, "KR"},
414         {CTRY_KOREA_ROC2, APL2_WORLD, "K2"},
415         {CTRY_KOREA_ROC3, APL9_WORLD, "K3"},
416         {CTRY_KUWAIT, ETSI3_WORLD, "KW"},
417         {CTRY_LATVIA, ETSI1_WORLD, "LV"},
418         {CTRY_LEBANON, NULL1_WORLD, "LB"},
419         {CTRY_LIECHTENSTEIN, ETSI1_WORLD, "LI"},
420         {CTRY_LITHUANIA, ETSI1_WORLD, "LT"},
421         {CTRY_LUXEMBOURG, ETSI1_WORLD, "LU"},
422         {CTRY_MACAU, FCC2_WORLD, "MO"},
423         {CTRY_MACEDONIA, NULL1_WORLD, "MK"},
424         {CTRY_MALAYSIA, APL8_WORLD, "MY"},
425         {CTRY_MALTA, ETSI1_WORLD, "MT"},
426         {CTRY_MEXICO, FCC1_FCCA, "MX"},
427         {CTRY_MONACO, ETSI4_WORLD, "MC"},
428         {CTRY_MOROCCO, APL4_WORLD, "MA"},
429         {CTRY_NEPAL, APL1_WORLD, "NP"},
430         {CTRY_NETHERLANDS, ETSI1_WORLD, "NL"},
431         {CTRY_NETHERLANDS_ANTILLES, ETSI1_WORLD, "AN"},
432         {CTRY_NEW_ZEALAND, FCC2_ETSIC, "NZ"},
433         {CTRY_NORWAY, ETSI1_WORLD, "NO"},
434         {CTRY_OMAN, FCC3_WORLD, "OM"},
435         {CTRY_PAKISTAN, NULL1_WORLD, "PK"},
436         {CTRY_PANAMA, FCC1_FCCA, "PA"},
437         {CTRY_PAPUA_NEW_GUINEA, FCC1_WORLD, "PG"},
438         {CTRY_PERU, APL1_WORLD, "PE"},
439         {CTRY_PHILIPPINES, APL1_WORLD, "PH"},
440         {CTRY_POLAND, ETSI1_WORLD, "PL"},
441         {CTRY_PORTUGAL, ETSI1_WORLD, "PT"},
442         {CTRY_PUERTO_RICO, FCC1_FCCA, "PR"},
443         {CTRY_QATAR, APL1_WORLD, "QA"},
444         {CTRY_ROMANIA, NULL1_WORLD, "RO"},
445         {CTRY_RUSSIA, NULL1_WORLD, "RU"},
446         {CTRY_SAUDI_ARABIA, NULL1_WORLD, "SA"},
447         {CTRY_SERBIA_MONTENEGRO, ETSI1_WORLD, "CS"},
448         {CTRY_SINGAPORE, APL6_WORLD, "SG"},
449         {CTRY_SLOVAKIA, ETSI1_WORLD, "SK"},
450         {CTRY_SLOVENIA, ETSI1_WORLD, "SI"},
451         {CTRY_SOUTH_AFRICA, FCC3_WORLD, "ZA"},
452         {CTRY_SPAIN, ETSI1_WORLD, "ES"},
453         {CTRY_SRI_LANKA, FCC3_WORLD, "LK"},
454         {CTRY_SWEDEN, ETSI1_WORLD, "SE"},
455         {CTRY_SWITZERLAND, ETSI1_WORLD, "CH"},
456         {CTRY_SYRIA, NULL1_WORLD, "SY"},
457         {CTRY_TAIWAN, APL3_FCCA, "TW"},
458         {CTRY_THAILAND, FCC3_WORLD, "TH"},
459         {CTRY_TRINIDAD_Y_TOBAGO, FCC3_WORLD, "TT"},
460         {CTRY_TUNISIA, ETSI3_WORLD, "TN"},
461         {CTRY_TURKEY, ETSI3_WORLD, "TR"},
462         {CTRY_UKRAINE, NULL1_WORLD, "UA"},
463         {CTRY_UAE, NULL1_WORLD, "AE"},
464         {CTRY_UNITED_KINGDOM, ETSI1_WORLD, "GB"},
465         {CTRY_UNITED_STATES, FCC3_FCCA, "US"},
466         /* This "PS" is for US public safety actually... to support this we
467          * would need to assign new special alpha2 to CRDA db as with the world
468          * regdomain and use another alpha2 */
469         {CTRY_UNITED_STATES_FCC49, FCC4_FCCA, "PS"},
470         {CTRY_URUGUAY, FCC3_WORLD, "UY"},
471         {CTRY_UZBEKISTAN, FCC3_FCCA, "UZ"},
472         {CTRY_VENEZUELA, APL2_ETSIC, "VE"},
473         {CTRY_VIET_NAM, NULL1_WORLD, "VN"},
474         {CTRY_YEMEN, NULL1_WORLD, "YE"},
475         {CTRY_ZIMBABWE, NULL1_WORLD, "ZW"},
476 };
477
478 #endif