13a702e49SBob Copeland /* 23a702e49SBob Copeland * Copyright (c) 2008-2009 Atheros Communications Inc. 33a702e49SBob Copeland * 43a702e49SBob Copeland * Permission to use, copy, modify, and/or distribute this software for any 53a702e49SBob Copeland * purpose with or without fee is hereby granted, provided that the above 63a702e49SBob Copeland * copyright notice and this permission notice appear in all copies. 73a702e49SBob Copeland * 83a702e49SBob Copeland * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 93a702e49SBob Copeland * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 103a702e49SBob Copeland * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 113a702e49SBob Copeland * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 123a702e49SBob Copeland * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 133a702e49SBob Copeland * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 143a702e49SBob Copeland * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 153a702e49SBob Copeland */ 163a702e49SBob Copeland 173a702e49SBob Copeland #ifndef REGD_COMMON_H 183a702e49SBob Copeland #define REGD_COMMON_H 193a702e49SBob Copeland 203a702e49SBob Copeland enum EnumRd { 213a702e49SBob Copeland NO_ENUMRD = 0x00, 223a702e49SBob Copeland NULL1_WORLD = 0x03, 233a702e49SBob Copeland NULL1_ETSIB = 0x07, 243a702e49SBob Copeland NULL1_ETSIC = 0x08, 253a702e49SBob Copeland FCC1_FCCA = 0x10, 263a702e49SBob Copeland FCC1_WORLD = 0x11, 273a702e49SBob Copeland FCC4_FCCA = 0x12, 283a702e49SBob Copeland FCC5_FCCA = 0x13, 293a702e49SBob Copeland FCC6_FCCA = 0x14, 303a702e49SBob Copeland 313a702e49SBob Copeland FCC2_FCCA = 0x20, 323a702e49SBob Copeland FCC2_WORLD = 0x21, 333a702e49SBob Copeland FCC2_ETSIC = 0x22, 343a702e49SBob Copeland FCC6_WORLD = 0x23, 353a702e49SBob Copeland FRANCE_RES = 0x31, 363a702e49SBob Copeland FCC3_FCCA = 0x3A, 373a702e49SBob Copeland FCC3_WORLD = 0x3B, 3801fb2994SSven Eckelmann FCC3_ETSIC = 0x3F, 393a702e49SBob Copeland 403a702e49SBob Copeland ETSI1_WORLD = 0x37, 413a702e49SBob Copeland ETSI3_ETSIA = 0x32, 423a702e49SBob Copeland ETSI2_WORLD = 0x35, 433a702e49SBob Copeland ETSI3_WORLD = 0x36, 443a702e49SBob Copeland ETSI4_WORLD = 0x30, 453a702e49SBob Copeland ETSI4_ETSIC = 0x38, 463a702e49SBob Copeland ETSI5_WORLD = 0x39, 473a702e49SBob Copeland ETSI6_WORLD = 0x34, 4845faf6e0SSven Eckelmann ETSI8_WORLD = 0x3D, 49897fab6cSSven Eckelmann ETSI9_WORLD = 0x3E, 503a702e49SBob Copeland ETSI_RESERVED = 0x33, 513a702e49SBob Copeland 523a702e49SBob Copeland MKK1_MKKA = 0x40, 533a702e49SBob Copeland MKK1_MKKB = 0x41, 543a702e49SBob Copeland APL4_WORLD = 0x42, 553a702e49SBob Copeland MKK2_MKKA = 0x43, 563a702e49SBob Copeland APL_RESERVED = 0x44, 573a702e49SBob Copeland APL2_WORLD = 0x45, 583a702e49SBob Copeland APL2_APLC = 0x46, 593a702e49SBob Copeland APL3_WORLD = 0x47, 603a702e49SBob Copeland MKK1_FCCA = 0x48, 613a702e49SBob Copeland APL2_APLD = 0x49, 623a702e49SBob Copeland MKK1_MKKA1 = 0x4A, 633a702e49SBob Copeland MKK1_MKKA2 = 0x4B, 643a702e49SBob Copeland MKK1_MKKC = 0x4C, 654f183687SSven Eckelmann APL2_FCCA = 0x4D, 663a702e49SBob Copeland 673a702e49SBob Copeland APL3_FCCA = 0x50, 683a702e49SBob Copeland APL1_WORLD = 0x52, 693a702e49SBob Copeland APL1_FCCA = 0x53, 703a702e49SBob Copeland APL1_APLA = 0x54, 713a702e49SBob Copeland APL1_ETSIC = 0x55, 723a702e49SBob Copeland APL2_ETSIC = 0x56, 733a702e49SBob Copeland APL5_WORLD = 0x58, 749ba8df0cSSven Eckelmann APL13_WORLD = 0x5A, 753a702e49SBob Copeland APL6_WORLD = 0x5B, 763a702e49SBob Copeland APL7_FCCA = 0x5C, 773a702e49SBob Copeland APL8_WORLD = 0x5D, 783a702e49SBob Copeland APL9_WORLD = 0x5E, 793a702e49SBob Copeland 803a702e49SBob Copeland WOR0_WORLD = 0x60, 813a702e49SBob Copeland WOR1_WORLD = 0x61, 823a702e49SBob Copeland WOR2_WORLD = 0x62, 833a702e49SBob Copeland WOR3_WORLD = 0x63, 843a702e49SBob Copeland WOR4_WORLD = 0x64, 853a702e49SBob Copeland WOR5_ETSIC = 0x65, 863a702e49SBob Copeland 873a702e49SBob Copeland WOR01_WORLD = 0x66, 883a702e49SBob Copeland WOR02_WORLD = 0x67, 893a702e49SBob Copeland EU1_WORLD = 0x68, 903a702e49SBob Copeland 913a702e49SBob Copeland WOR9_WORLD = 0x69, 923a702e49SBob Copeland WORA_WORLD = 0x6A, 933a702e49SBob Copeland WORB_WORLD = 0x6B, 9434a0a202SSenthil Balasubramanian WORC_WORLD = 0x6C, 953a702e49SBob Copeland 963a702e49SBob Copeland MKK3_MKKB = 0x80, 973a702e49SBob Copeland MKK3_MKKA2 = 0x81, 983a702e49SBob Copeland MKK3_MKKC = 0x82, 993a702e49SBob Copeland 1003a702e49SBob Copeland MKK4_MKKB = 0x83, 1013a702e49SBob Copeland MKK4_MKKA2 = 0x84, 1023a702e49SBob Copeland MKK4_MKKC = 0x85, 1033a702e49SBob Copeland 1043a702e49SBob Copeland MKK5_MKKB = 0x86, 1053a702e49SBob Copeland MKK5_MKKA2 = 0x87, 1063a702e49SBob Copeland MKK5_MKKC = 0x88, 1073a702e49SBob Copeland 1083a702e49SBob Copeland MKK6_MKKB = 0x89, 1093a702e49SBob Copeland MKK6_MKKA2 = 0x8A, 1103a702e49SBob Copeland MKK6_MKKC = 0x8B, 1113a702e49SBob Copeland 1123a702e49SBob Copeland MKK7_MKKB = 0x8C, 1133a702e49SBob Copeland MKK7_MKKA2 = 0x8D, 1143a702e49SBob Copeland MKK7_MKKC = 0x8E, 1153a702e49SBob Copeland 1163a702e49SBob Copeland MKK8_MKKB = 0x8F, 1173a702e49SBob Copeland MKK8_MKKA2 = 0x90, 1183a702e49SBob Copeland MKK8_MKKC = 0x91, 1193a702e49SBob Copeland 1203a702e49SBob Copeland MKK14_MKKA1 = 0x92, 1213a702e49SBob Copeland MKK15_MKKA1 = 0x93, 1223a702e49SBob Copeland 1233a702e49SBob Copeland MKK10_FCCA = 0xD0, 1243a702e49SBob Copeland MKK10_MKKA1 = 0xD1, 1253a702e49SBob Copeland MKK10_MKKC = 0xD2, 1263a702e49SBob Copeland MKK10_MKKA2 = 0xD3, 1273a702e49SBob Copeland 1283a702e49SBob Copeland MKK11_MKKA = 0xD4, 1293a702e49SBob Copeland MKK11_FCCA = 0xD5, 1303a702e49SBob Copeland MKK11_MKKA1 = 0xD6, 1313a702e49SBob Copeland MKK11_MKKC = 0xD7, 1323a702e49SBob Copeland MKK11_MKKA2 = 0xD8, 1333a702e49SBob Copeland 1343a702e49SBob Copeland MKK12_MKKA = 0xD9, 1353a702e49SBob Copeland MKK12_FCCA = 0xDA, 1363a702e49SBob Copeland MKK12_MKKA1 = 0xDB, 1373a702e49SBob Copeland MKK12_MKKC = 0xDC, 1383a702e49SBob Copeland MKK12_MKKA2 = 0xDD, 1393a702e49SBob Copeland 1403a702e49SBob Copeland MKK13_MKKB = 0xDE, 1413a702e49SBob Copeland 1423a702e49SBob Copeland MKK3_MKKA = 0xF0, 1433a702e49SBob Copeland MKK3_MKKA1 = 0xF1, 1443a702e49SBob Copeland MKK3_FCCA = 0xF2, 1453a702e49SBob Copeland MKK4_MKKA = 0xF3, 1463a702e49SBob Copeland MKK4_MKKA1 = 0xF4, 1473a702e49SBob Copeland MKK4_FCCA = 0xF5, 1483a702e49SBob Copeland MKK9_MKKA = 0xF6, 1493a702e49SBob Copeland MKK10_MKKA = 0xF7, 1503a702e49SBob Copeland MKK6_MKKA1 = 0xF8, 1513a702e49SBob Copeland MKK6_FCCA = 0xF9, 1523a702e49SBob Copeland MKK7_MKKA1 = 0xFA, 1533a702e49SBob Copeland MKK7_FCCA = 0xFB, 1543a702e49SBob Copeland MKK9_FCCA = 0xFC, 1553a702e49SBob Copeland MKK9_MKKA1 = 0xFD, 1563a702e49SBob Copeland MKK9_MKKC = 0xFE, 1573a702e49SBob Copeland MKK9_MKKA2 = 0xFF, 1583a702e49SBob Copeland 1593a702e49SBob Copeland WORLD = 0x0199, 1603a702e49SBob Copeland DEBUG_REG_DMN = 0x01ff, 1613a702e49SBob Copeland }; 1623a702e49SBob Copeland 1633a702e49SBob Copeland /* Regpair to CTL band mapping */ 1643a702e49SBob Copeland static struct reg_dmn_pair_mapping regDomainPairs[] = { 1653a702e49SBob Copeland /* regpair, 5 GHz CTL, 2 GHz CTL */ 1663a702e49SBob Copeland {NO_ENUMRD, DEBUG_REG_DMN, DEBUG_REG_DMN}, 1673a702e49SBob Copeland {NULL1_WORLD, NO_CTL, CTL_ETSI}, 1683a702e49SBob Copeland {NULL1_ETSIB, NO_CTL, CTL_ETSI}, 1693a702e49SBob Copeland {NULL1_ETSIC, NO_CTL, CTL_ETSI}, 1703a702e49SBob Copeland 1713a702e49SBob Copeland {FCC2_FCCA, CTL_FCC, CTL_FCC}, 1723a702e49SBob Copeland {FCC2_WORLD, CTL_FCC, CTL_ETSI}, 1733a702e49SBob Copeland {FCC2_ETSIC, CTL_FCC, CTL_ETSI}, 1743a702e49SBob Copeland {FCC3_FCCA, CTL_FCC, CTL_FCC}, 1753a702e49SBob Copeland {FCC3_WORLD, CTL_FCC, CTL_ETSI}, 17601fb2994SSven Eckelmann {FCC3_ETSIC, CTL_FCC, CTL_ETSI}, 1773a702e49SBob Copeland {FCC4_FCCA, CTL_FCC, CTL_FCC}, 1783a702e49SBob Copeland {FCC5_FCCA, CTL_FCC, CTL_FCC}, 1793a702e49SBob Copeland {FCC6_FCCA, CTL_FCC, CTL_FCC}, 1803a702e49SBob Copeland {FCC6_WORLD, CTL_FCC, CTL_ETSI}, 1813a702e49SBob Copeland 1823a702e49SBob Copeland {ETSI1_WORLD, CTL_ETSI, CTL_ETSI}, 1833a702e49SBob Copeland {ETSI2_WORLD, CTL_ETSI, CTL_ETSI}, 1843a702e49SBob Copeland {ETSI3_WORLD, CTL_ETSI, CTL_ETSI}, 1853a702e49SBob Copeland {ETSI4_WORLD, CTL_ETSI, CTL_ETSI}, 1863a702e49SBob Copeland {ETSI5_WORLD, CTL_ETSI, CTL_ETSI}, 1873a702e49SBob Copeland {ETSI6_WORLD, CTL_ETSI, CTL_ETSI}, 18845faf6e0SSven Eckelmann {ETSI8_WORLD, CTL_ETSI, CTL_ETSI}, 189897fab6cSSven Eckelmann {ETSI9_WORLD, CTL_ETSI, CTL_ETSI}, 1903a702e49SBob Copeland 1913a702e49SBob Copeland /* XXX: For ETSI3_ETSIA, Was NO_CTL meant for the 2 GHz band ? */ 1923a702e49SBob Copeland {ETSI3_ETSIA, CTL_ETSI, CTL_ETSI}, 1933a702e49SBob Copeland {FRANCE_RES, CTL_ETSI, CTL_ETSI}, 1943a702e49SBob Copeland 1953a702e49SBob Copeland {FCC1_WORLD, CTL_FCC, CTL_ETSI}, 1963a702e49SBob Copeland {FCC1_FCCA, CTL_FCC, CTL_FCC}, 1973a702e49SBob Copeland {APL1_WORLD, CTL_FCC, CTL_ETSI}, 1983a702e49SBob Copeland {APL2_WORLD, CTL_FCC, CTL_ETSI}, 1994f183687SSven Eckelmann {APL2_FCCA, CTL_FCC, CTL_FCC}, 2003a702e49SBob Copeland {APL3_WORLD, CTL_FCC, CTL_ETSI}, 2013a702e49SBob Copeland {APL4_WORLD, CTL_FCC, CTL_ETSI}, 2023a702e49SBob Copeland {APL5_WORLD, CTL_FCC, CTL_ETSI}, 2039ba8df0cSSven Eckelmann {APL13_WORLD, CTL_ETSI, CTL_ETSI}, 2043a702e49SBob Copeland {APL6_WORLD, CTL_ETSI, CTL_ETSI}, 2053a702e49SBob Copeland {APL8_WORLD, CTL_ETSI, CTL_ETSI}, 2063a702e49SBob Copeland {APL9_WORLD, CTL_ETSI, CTL_ETSI}, 2073a702e49SBob Copeland 2083a702e49SBob Copeland {APL3_FCCA, CTL_FCC, CTL_FCC}, 209bd39a274SChristian Lamparter {APL7_FCCA, CTL_FCC, CTL_FCC}, 2103a702e49SBob Copeland {APL1_ETSIC, CTL_FCC, CTL_ETSI}, 2113a702e49SBob Copeland {APL2_ETSIC, CTL_FCC, CTL_ETSI}, 2123a702e49SBob Copeland {APL2_APLD, CTL_FCC, NO_CTL}, 2133a702e49SBob Copeland 2143a702e49SBob Copeland {MKK1_MKKA, CTL_MKK, CTL_MKK}, 2153a702e49SBob Copeland {MKK1_MKKB, CTL_MKK, CTL_MKK}, 2163a702e49SBob Copeland {MKK1_FCCA, CTL_MKK, CTL_FCC}, 2173a702e49SBob Copeland {MKK1_MKKA1, CTL_MKK, CTL_MKK}, 2183a702e49SBob Copeland {MKK1_MKKA2, CTL_MKK, CTL_MKK}, 2193a702e49SBob Copeland {MKK1_MKKC, CTL_MKK, CTL_MKK}, 2203a702e49SBob Copeland 2213a702e49SBob Copeland {MKK2_MKKA, CTL_MKK, CTL_MKK}, 2223a702e49SBob Copeland {MKK3_MKKA, CTL_MKK, CTL_MKK}, 2233a702e49SBob Copeland {MKK3_MKKB, CTL_MKK, CTL_MKK}, 2243a702e49SBob Copeland {MKK3_MKKA1, CTL_MKK, CTL_MKK}, 2253a702e49SBob Copeland {MKK3_MKKA2, CTL_MKK, CTL_MKK}, 2263a702e49SBob Copeland {MKK3_MKKC, CTL_MKK, CTL_MKK}, 2273a702e49SBob Copeland {MKK3_FCCA, CTL_MKK, CTL_FCC}, 2283a702e49SBob Copeland 2293a702e49SBob Copeland {MKK4_MKKA, CTL_MKK, CTL_MKK}, 2303a702e49SBob Copeland {MKK4_MKKB, CTL_MKK, CTL_MKK}, 2313a702e49SBob Copeland {MKK4_MKKA1, CTL_MKK, CTL_MKK}, 2323a702e49SBob Copeland {MKK4_MKKA2, CTL_MKK, CTL_MKK}, 2333a702e49SBob Copeland {MKK4_MKKC, CTL_MKK, CTL_MKK}, 2343a702e49SBob Copeland {MKK4_FCCA, CTL_MKK, CTL_FCC}, 2353a702e49SBob Copeland 2363a702e49SBob Copeland {MKK5_MKKB, CTL_MKK, CTL_MKK}, 2373a702e49SBob Copeland {MKK5_MKKA2, CTL_MKK, CTL_MKK}, 2383a702e49SBob Copeland {MKK5_MKKC, CTL_MKK, CTL_MKK}, 2393a702e49SBob Copeland 2403a702e49SBob Copeland {MKK6_MKKB, CTL_MKK, CTL_MKK}, 2413a702e49SBob Copeland {MKK6_MKKA1, CTL_MKK, CTL_MKK}, 2423a702e49SBob Copeland {MKK6_MKKA2, CTL_MKK, CTL_MKK}, 2433a702e49SBob Copeland {MKK6_MKKC, CTL_MKK, CTL_MKK}, 2443a702e49SBob Copeland {MKK6_FCCA, CTL_MKK, CTL_FCC}, 2453a702e49SBob Copeland 2463a702e49SBob Copeland {MKK7_MKKB, CTL_MKK, CTL_MKK}, 2473a702e49SBob Copeland {MKK7_MKKA1, CTL_MKK, CTL_MKK}, 2483a702e49SBob Copeland {MKK7_MKKA2, CTL_MKK, CTL_MKK}, 2493a702e49SBob Copeland {MKK7_MKKC, CTL_MKK, CTL_MKK}, 2503a702e49SBob Copeland {MKK7_FCCA, CTL_MKK, CTL_FCC}, 2513a702e49SBob Copeland 2523a702e49SBob Copeland {MKK8_MKKB, CTL_MKK, CTL_MKK}, 2533a702e49SBob Copeland {MKK8_MKKA2, CTL_MKK, CTL_MKK}, 2543a702e49SBob Copeland {MKK8_MKKC, CTL_MKK, CTL_MKK}, 2553a702e49SBob Copeland 2563a702e49SBob Copeland {MKK9_MKKA, CTL_MKK, CTL_MKK}, 2573a702e49SBob Copeland {MKK9_FCCA, CTL_MKK, CTL_FCC}, 2583a702e49SBob Copeland {MKK9_MKKA1, CTL_MKK, CTL_MKK}, 2593a702e49SBob Copeland {MKK9_MKKA2, CTL_MKK, CTL_MKK}, 2603a702e49SBob Copeland {MKK9_MKKC, CTL_MKK, CTL_MKK}, 2613a702e49SBob Copeland 2623a702e49SBob Copeland {MKK10_MKKA, CTL_MKK, CTL_MKK}, 2633a702e49SBob Copeland {MKK10_FCCA, CTL_MKK, CTL_FCC}, 2643a702e49SBob Copeland {MKK10_MKKA1, CTL_MKK, CTL_MKK}, 2653a702e49SBob Copeland {MKK10_MKKA2, CTL_MKK, CTL_MKK}, 2663a702e49SBob Copeland {MKK10_MKKC, CTL_MKK, CTL_MKK}, 2673a702e49SBob Copeland 2683a702e49SBob Copeland {MKK11_MKKA, CTL_MKK, CTL_MKK}, 2693a702e49SBob Copeland {MKK11_FCCA, CTL_MKK, CTL_FCC}, 2703a702e49SBob Copeland {MKK11_MKKA1, CTL_MKK, CTL_MKK}, 2713a702e49SBob Copeland {MKK11_MKKA2, CTL_MKK, CTL_MKK}, 2723a702e49SBob Copeland {MKK11_MKKC, CTL_MKK, CTL_MKK}, 2733a702e49SBob Copeland 2743a702e49SBob Copeland {MKK12_MKKA, CTL_MKK, CTL_MKK}, 2753a702e49SBob Copeland {MKK12_FCCA, CTL_MKK, CTL_FCC}, 2763a702e49SBob Copeland {MKK12_MKKA1, CTL_MKK, CTL_MKK}, 2773a702e49SBob Copeland {MKK12_MKKA2, CTL_MKK, CTL_MKK}, 2783a702e49SBob Copeland {MKK12_MKKC, CTL_MKK, CTL_MKK}, 2793a702e49SBob Copeland 2803a702e49SBob Copeland {MKK13_MKKB, CTL_MKK, CTL_MKK}, 2813a702e49SBob Copeland {MKK14_MKKA1, CTL_MKK, CTL_MKK}, 2823a702e49SBob Copeland {MKK15_MKKA1, CTL_MKK, CTL_MKK}, 2833a702e49SBob Copeland 2843a702e49SBob Copeland {WOR0_WORLD, NO_CTL, NO_CTL}, 2853a702e49SBob Copeland {WOR1_WORLD, NO_CTL, NO_CTL}, 2863a702e49SBob Copeland {WOR2_WORLD, NO_CTL, NO_CTL}, 2873a702e49SBob Copeland {WOR3_WORLD, NO_CTL, NO_CTL}, 2883a702e49SBob Copeland {WOR4_WORLD, NO_CTL, NO_CTL}, 2893a702e49SBob Copeland {WOR5_ETSIC, NO_CTL, NO_CTL}, 2903a702e49SBob Copeland {WOR01_WORLD, NO_CTL, NO_CTL}, 2913a702e49SBob Copeland {WOR02_WORLD, NO_CTL, NO_CTL}, 2923a702e49SBob Copeland {EU1_WORLD, NO_CTL, NO_CTL}, 2933a702e49SBob Copeland {WOR9_WORLD, NO_CTL, NO_CTL}, 2943a702e49SBob Copeland {WORA_WORLD, NO_CTL, NO_CTL}, 2953a702e49SBob Copeland {WORB_WORLD, NO_CTL, NO_CTL}, 29634a0a202SSenthil Balasubramanian {WORC_WORLD, NO_CTL, NO_CTL}, 2973a702e49SBob Copeland }; 2983a702e49SBob Copeland 2993a702e49SBob Copeland static struct country_code_to_enum_rd allCountries[] = { 3003a702e49SBob Copeland {CTRY_DEBUG, NO_ENUMRD, "DB"}, 3013a702e49SBob Copeland {CTRY_DEFAULT, FCC1_FCCA, "CO"}, 302fed8f5e8SSven Eckelmann {CTRY_ALBANIA, ETSI1_WORLD, "AL"}, 303485daee9SSven Eckelmann {CTRY_ALGERIA, APL13_WORLD, "DZ"}, 304bd6b4442SVivek Natarajan {CTRY_ARGENTINA, FCC3_WORLD, "AR"}, 3053a702e49SBob Copeland {CTRY_ARMENIA, ETSI4_WORLD, "AM"}, 306bd6b4442SVivek Natarajan {CTRY_ARUBA, ETSI1_WORLD, "AW"}, 3078120cc0bSSven Eckelmann {CTRY_AUSTRALIA, FCC3_WORLD, "AU"}, 3083a702e49SBob Copeland {CTRY_AUSTRALIA2, FCC6_WORLD, "AU"}, 3093a702e49SBob Copeland {CTRY_AUSTRIA, ETSI1_WORLD, "AT"}, 3103a702e49SBob Copeland {CTRY_AZERBAIJAN, ETSI4_WORLD, "AZ"}, 311699e2302SSven Eckelmann {CTRY_BAHAMAS, FCC3_WORLD, "BS"}, 3123a702e49SBob Copeland {CTRY_BAHRAIN, APL6_WORLD, "BH"}, 3131507b328SSven Eckelmann {CTRY_BANGLADESH, APL1_WORLD, "BD"}, 314bd6b4442SVivek Natarajan {CTRY_BARBADOS, FCC2_WORLD, "BB"}, 3153a702e49SBob Copeland {CTRY_BELARUS, ETSI1_WORLD, "BY"}, 3163a702e49SBob Copeland {CTRY_BELGIUM, ETSI1_WORLD, "BE"}, 3173a702e49SBob Copeland {CTRY_BELGIUM2, ETSI4_WORLD, "BL"}, 3183a702e49SBob Copeland {CTRY_BELIZE, APL1_ETSIC, "BZ"}, 3199c790f2dSSven Eckelmann {CTRY_BERMUDA, FCC3_FCCA, "BM"}, 3203a702e49SBob Copeland {CTRY_BOLIVIA, APL1_ETSIC, "BO"}, 3213a702e49SBob Copeland {CTRY_BOSNIA_HERZ, ETSI1_WORLD, "BA"}, 3223a702e49SBob Copeland {CTRY_BRAZIL, FCC3_WORLD, "BR"}, 32337090d94SSven Eckelmann {CTRY_BRUNEI_DARUSSALAM, APL6_WORLD, "BN"}, 324fed60f81SSven Eckelmann {CTRY_BULGARIA, ETSI1_WORLD, "BG"}, 325bd6b4442SVivek Natarajan {CTRY_CAMBODIA, ETSI1_WORLD, "KH"}, 326bd6b4442SVivek Natarajan {CTRY_CANADA, FCC3_FCCA, "CA"}, 3273a702e49SBob Copeland {CTRY_CANADA2, FCC6_FCCA, "CA"}, 3283a702e49SBob Copeland {CTRY_CHILE, APL6_WORLD, "CL"}, 3293a702e49SBob Copeland {CTRY_CHINA, APL1_WORLD, "CN"}, 330515e9686SSven Eckelmann {CTRY_COLOMBIA, FCC3_WORLD, "CO"}, 3313a702e49SBob Copeland {CTRY_COSTA_RICA, FCC1_WORLD, "CR"}, 332bd6b4442SVivek Natarajan {CTRY_CROATIA, ETSI1_WORLD, "HR"}, 3333a702e49SBob Copeland {CTRY_CYPRUS, ETSI1_WORLD, "CY"}, 3340fa31a86SSven Eckelmann {CTRY_CZECH, ETSI1_WORLD, "CZ"}, 3353a702e49SBob Copeland {CTRY_DENMARK, ETSI1_WORLD, "DK"}, 3363a702e49SBob Copeland {CTRY_DOMINICAN_REPUBLIC, FCC1_FCCA, "DO"}, 3373a702e49SBob Copeland {CTRY_ECUADOR, FCC1_WORLD, "EC"}, 3383a702e49SBob Copeland {CTRY_EGYPT, ETSI3_WORLD, "EG"}, 3393a702e49SBob Copeland {CTRY_EL_SALVADOR, FCC1_WORLD, "SV"}, 3403a702e49SBob Copeland {CTRY_ESTONIA, ETSI1_WORLD, "EE"}, 3413a702e49SBob Copeland {CTRY_FINLAND, ETSI1_WORLD, "FI"}, 3423a702e49SBob Copeland {CTRY_FRANCE, ETSI1_WORLD, "FR"}, 3433a702e49SBob Copeland {CTRY_GEORGIA, ETSI4_WORLD, "GE"}, 3443a702e49SBob Copeland {CTRY_GERMANY, ETSI1_WORLD, "DE"}, 3453a702e49SBob Copeland {CTRY_GREECE, ETSI1_WORLD, "GR"}, 346bd6b4442SVivek Natarajan {CTRY_GREENLAND, ETSI1_WORLD, "GL"}, 347d601d9caSPavel Roskin {CTRY_GRENADA, FCC3_FCCA, "GD"}, 348bd6b4442SVivek Natarajan {CTRY_GUAM, FCC1_FCCA, "GU"}, 3493a702e49SBob Copeland {CTRY_GUATEMALA, FCC1_FCCA, "GT"}, 350bd6b4442SVivek Natarajan {CTRY_HAITI, ETSI1_WORLD, "HT"}, 351143a9b9bSSven Eckelmann {CTRY_HONDURAS, FCC3_WORLD, "HN"}, 352bd6b4442SVivek Natarajan {CTRY_HONG_KONG, FCC3_WORLD, "HK"}, 3533a702e49SBob Copeland {CTRY_HUNGARY, ETSI1_WORLD, "HU"}, 3543a702e49SBob Copeland {CTRY_ICELAND, ETSI1_WORLD, "IS"}, 3553a702e49SBob Copeland {CTRY_INDIA, APL6_WORLD, "IN"}, 356bd6b4442SVivek Natarajan {CTRY_INDONESIA, NULL1_WORLD, "ID"}, 3573a702e49SBob Copeland {CTRY_IRAN, APL1_WORLD, "IR"}, 3583a702e49SBob Copeland {CTRY_IRELAND, ETSI1_WORLD, "IE"}, 35962ba2b22SSven Eckelmann {CTRY_ISRAEL, ETSI3_WORLD, "IL"}, 3603a702e49SBob Copeland {CTRY_ITALY, ETSI1_WORLD, "IT"}, 361bd6b4442SVivek Natarajan {CTRY_JAMAICA, FCC3_WORLD, "JM"}, 3623a702e49SBob Copeland 3633a702e49SBob Copeland {CTRY_JAPAN, MKK1_MKKA, "JP"}, 3643a702e49SBob Copeland {CTRY_JAPAN1, MKK1_MKKB, "JP"}, 3653a702e49SBob Copeland {CTRY_JAPAN2, MKK1_FCCA, "JP"}, 3663a702e49SBob Copeland {CTRY_JAPAN3, MKK2_MKKA, "JP"}, 3673a702e49SBob Copeland {CTRY_JAPAN4, MKK1_MKKA1, "JP"}, 3683a702e49SBob Copeland {CTRY_JAPAN5, MKK1_MKKA2, "JP"}, 3693a702e49SBob Copeland {CTRY_JAPAN6, MKK1_MKKC, "JP"}, 3703a702e49SBob Copeland {CTRY_JAPAN7, MKK3_MKKB, "JP"}, 3713a702e49SBob Copeland {CTRY_JAPAN8, MKK3_MKKA2, "JP"}, 3723a702e49SBob Copeland {CTRY_JAPAN9, MKK3_MKKC, "JP"}, 3733a702e49SBob Copeland {CTRY_JAPAN10, MKK4_MKKB, "JP"}, 3743a702e49SBob Copeland {CTRY_JAPAN11, MKK4_MKKA2, "JP"}, 3753a702e49SBob Copeland {CTRY_JAPAN12, MKK4_MKKC, "JP"}, 3763a702e49SBob Copeland {CTRY_JAPAN13, MKK5_MKKB, "JP"}, 3773a702e49SBob Copeland {CTRY_JAPAN14, MKK5_MKKA2, "JP"}, 3783a702e49SBob Copeland {CTRY_JAPAN15, MKK5_MKKC, "JP"}, 3793a702e49SBob Copeland {CTRY_JAPAN16, MKK6_MKKB, "JP"}, 3803a702e49SBob Copeland {CTRY_JAPAN17, MKK6_MKKA2, "JP"}, 3813a702e49SBob Copeland {CTRY_JAPAN18, MKK6_MKKC, "JP"}, 3823a702e49SBob Copeland {CTRY_JAPAN19, MKK7_MKKB, "JP"}, 3833a702e49SBob Copeland {CTRY_JAPAN20, MKK7_MKKA2, "JP"}, 3843a702e49SBob Copeland {CTRY_JAPAN21, MKK7_MKKC, "JP"}, 3853a702e49SBob Copeland {CTRY_JAPAN22, MKK8_MKKB, "JP"}, 3863a702e49SBob Copeland {CTRY_JAPAN23, MKK8_MKKA2, "JP"}, 3873a702e49SBob Copeland {CTRY_JAPAN24, MKK8_MKKC, "JP"}, 3883a702e49SBob Copeland {CTRY_JAPAN25, MKK3_MKKA, "JP"}, 3893a702e49SBob Copeland {CTRY_JAPAN26, MKK3_MKKA1, "JP"}, 3903a702e49SBob Copeland {CTRY_JAPAN27, MKK3_FCCA, "JP"}, 3913a702e49SBob Copeland {CTRY_JAPAN28, MKK4_MKKA1, "JP"}, 3923a702e49SBob Copeland {CTRY_JAPAN29, MKK4_FCCA, "JP"}, 3933a702e49SBob Copeland {CTRY_JAPAN30, MKK6_MKKA1, "JP"}, 3943a702e49SBob Copeland {CTRY_JAPAN31, MKK6_FCCA, "JP"}, 3953a702e49SBob Copeland {CTRY_JAPAN32, MKK7_MKKA1, "JP"}, 3963a702e49SBob Copeland {CTRY_JAPAN33, MKK7_FCCA, "JP"}, 3973a702e49SBob Copeland {CTRY_JAPAN34, MKK9_MKKA, "JP"}, 3983a702e49SBob Copeland {CTRY_JAPAN35, MKK10_MKKA, "JP"}, 3993a702e49SBob Copeland {CTRY_JAPAN36, MKK4_MKKA, "JP"}, 4003a702e49SBob Copeland {CTRY_JAPAN37, MKK9_FCCA, "JP"}, 4013a702e49SBob Copeland {CTRY_JAPAN38, MKK9_MKKA1, "JP"}, 4023a702e49SBob Copeland {CTRY_JAPAN39, MKK9_MKKC, "JP"}, 4033a702e49SBob Copeland {CTRY_JAPAN40, MKK9_MKKA2, "JP"}, 4043a702e49SBob Copeland {CTRY_JAPAN41, MKK10_FCCA, "JP"}, 4053a702e49SBob Copeland {CTRY_JAPAN42, MKK10_MKKA1, "JP"}, 4063a702e49SBob Copeland {CTRY_JAPAN43, MKK10_MKKC, "JP"}, 4073a702e49SBob Copeland {CTRY_JAPAN44, MKK10_MKKA2, "JP"}, 4083a702e49SBob Copeland {CTRY_JAPAN45, MKK11_MKKA, "JP"}, 4093a702e49SBob Copeland {CTRY_JAPAN46, MKK11_FCCA, "JP"}, 4103a702e49SBob Copeland {CTRY_JAPAN47, MKK11_MKKA1, "JP"}, 4113a702e49SBob Copeland {CTRY_JAPAN48, MKK11_MKKC, "JP"}, 4123a702e49SBob Copeland {CTRY_JAPAN49, MKK11_MKKA2, "JP"}, 4133a702e49SBob Copeland {CTRY_JAPAN50, MKK12_MKKA, "JP"}, 4143a702e49SBob Copeland {CTRY_JAPAN51, MKK12_FCCA, "JP"}, 4153a702e49SBob Copeland {CTRY_JAPAN52, MKK12_MKKA1, "JP"}, 4163a702e49SBob Copeland {CTRY_JAPAN53, MKK12_MKKC, "JP"}, 4173a702e49SBob Copeland {CTRY_JAPAN54, MKK12_MKKA2, "JP"}, 4183a702e49SBob Copeland {CTRY_JAPAN57, MKK13_MKKB, "JP"}, 4193a702e49SBob Copeland {CTRY_JAPAN58, MKK14_MKKA1, "JP"}, 4203a702e49SBob Copeland {CTRY_JAPAN59, MKK15_MKKA1, "JP"}, 4213a702e49SBob Copeland 4223a702e49SBob Copeland {CTRY_JORDAN, ETSI2_WORLD, "JO"}, 4233a702e49SBob Copeland {CTRY_KAZAKHSTAN, NULL1_WORLD, "KZ"}, 424b840fa91SSven Eckelmann {CTRY_KENYA, APL1_WORLD, "KE"}, 4253a702e49SBob Copeland {CTRY_KOREA_NORTH, APL9_WORLD, "KP"}, 4263a702e49SBob Copeland {CTRY_KOREA_ROC, APL9_WORLD, "KR"}, 4273a702e49SBob Copeland {CTRY_KOREA_ROC2, APL2_WORLD, "K2"}, 4283a702e49SBob Copeland {CTRY_KOREA_ROC3, APL9_WORLD, "K3"}, 429bd6b4442SVivek Natarajan {CTRY_KUWAIT, ETSI3_WORLD, "KW"}, 4303a702e49SBob Copeland {CTRY_LATVIA, ETSI1_WORLD, "LV"}, 4313a702e49SBob Copeland {CTRY_LEBANON, NULL1_WORLD, "LB"}, 4323a702e49SBob Copeland {CTRY_LIECHTENSTEIN, ETSI1_WORLD, "LI"}, 4333a702e49SBob Copeland {CTRY_LITHUANIA, ETSI1_WORLD, "LT"}, 4343a702e49SBob Copeland {CTRY_LUXEMBOURG, ETSI1_WORLD, "LU"}, 4353a702e49SBob Copeland {CTRY_MACAU, FCC2_WORLD, "MO"}, 43664874ed2SSven Eckelmann {CTRY_MACEDONIA, ETSI1_WORLD, "MK"}, 437823a6406SSven Eckelmann {CTRY_MALAYSIA, FCC1_WORLD, "MY"}, 4383a702e49SBob Copeland {CTRY_MALTA, ETSI1_WORLD, "MT"}, 439a71c984bSSven Eckelmann {CTRY_MAURITIUS, ETSI1_WORLD, "MU"}, 4403a702e49SBob Copeland {CTRY_MEXICO, FCC1_FCCA, "MX"}, 4413a702e49SBob Copeland {CTRY_MONACO, ETSI4_WORLD, "MC"}, 442a0a6f2a9SSven Eckelmann {CTRY_MONTENEGRO, ETSI1_WORLD, "ME"}, 443bd6b4442SVivek Natarajan {CTRY_MOROCCO, APL4_WORLD, "MA"}, 4443a702e49SBob Copeland {CTRY_NEPAL, APL1_WORLD, "NP"}, 4453a702e49SBob Copeland {CTRY_NETHERLANDS, ETSI1_WORLD, "NL"}, 4463a702e49SBob Copeland {CTRY_NETHERLANDS_ANTILLES, ETSI1_WORLD, "AN"}, 447*9bfc2bb3SSven Eckelmann {CTRY_NEW_ZEALAND, FCC3_ETSIC, "NZ"}, 448a20f1338SSven Eckelmann {CTRY_NICARAGUA, FCC3_FCCA, "NI"}, 4493a702e49SBob Copeland {CTRY_NORWAY, ETSI1_WORLD, "NO"}, 450bd6b4442SVivek Natarajan {CTRY_OMAN, FCC3_WORLD, "OM"}, 4513a702e49SBob Copeland {CTRY_PAKISTAN, NULL1_WORLD, "PK"}, 4523a702e49SBob Copeland {CTRY_PANAMA, FCC1_FCCA, "PA"}, 4533a702e49SBob Copeland {CTRY_PAPUA_NEW_GUINEA, FCC1_WORLD, "PG"}, 45467a95668SSven Eckelmann {CTRY_PARAGUAY, FCC3_WORLD, "PY"}, 4553a702e49SBob Copeland {CTRY_PERU, APL1_WORLD, "PE"}, 4563a702e49SBob Copeland {CTRY_PHILIPPINES, APL1_WORLD, "PH"}, 4573a702e49SBob Copeland {CTRY_POLAND, ETSI1_WORLD, "PL"}, 4583a702e49SBob Copeland {CTRY_PORTUGAL, ETSI1_WORLD, "PT"}, 4593a702e49SBob Copeland {CTRY_PUERTO_RICO, FCC1_FCCA, "PR"}, 460bd6b4442SVivek Natarajan {CTRY_QATAR, APL1_WORLD, "QA"}, 4613a702e49SBob Copeland {CTRY_ROMANIA, NULL1_WORLD, "RO"}, 4623a702e49SBob Copeland {CTRY_RUSSIA, NULL1_WORLD, "RU"}, 4633a702e49SBob Copeland {CTRY_SAUDI_ARABIA, NULL1_WORLD, "SA"}, 4642a3169a5SSven Eckelmann {CTRY_SERBIA, ETSI1_WORLD, "RS"}, 4653a702e49SBob Copeland {CTRY_SERBIA_MONTENEGRO, ETSI1_WORLD, "CS"}, 4663a702e49SBob Copeland {CTRY_SINGAPORE, APL6_WORLD, "SG"}, 4673a702e49SBob Copeland {CTRY_SLOVAKIA, ETSI1_WORLD, "SK"}, 4683a702e49SBob Copeland {CTRY_SLOVENIA, ETSI1_WORLD, "SI"}, 4693a702e49SBob Copeland {CTRY_SOUTH_AFRICA, FCC3_WORLD, "ZA"}, 4703a702e49SBob Copeland {CTRY_SPAIN, ETSI1_WORLD, "ES"}, 4713a702e49SBob Copeland {CTRY_SRI_LANKA, FCC3_WORLD, "LK"}, 4723a702e49SBob Copeland {CTRY_SWEDEN, ETSI1_WORLD, "SE"}, 4733a702e49SBob Copeland {CTRY_SWITZERLAND, ETSI1_WORLD, "CH"}, 4743a702e49SBob Copeland {CTRY_SYRIA, NULL1_WORLD, "SY"}, 4753a702e49SBob Copeland {CTRY_TAIWAN, APL3_FCCA, "TW"}, 476667ddac5SSven Eckelmann {CTRY_TANZANIA, APL1_WORLD, "TZ"}, 47758d30d14SLuis R. Rodriguez {CTRY_THAILAND, FCC3_WORLD, "TH"}, 478bd6b4442SVivek Natarajan {CTRY_TRINIDAD_Y_TOBAGO, FCC3_WORLD, "TT"}, 4793a702e49SBob Copeland {CTRY_TUNISIA, ETSI3_WORLD, "TN"}, 4803a702e49SBob Copeland {CTRY_TURKEY, ETSI3_WORLD, "TR"}, 4811ea3986aSSven Eckelmann {CTRY_UGANDA, FCC3_WORLD, "UG"}, 4823a702e49SBob Copeland {CTRY_UKRAINE, NULL1_WORLD, "UA"}, 4833a702e49SBob Copeland {CTRY_UAE, NULL1_WORLD, "AE"}, 4843a702e49SBob Copeland {CTRY_UNITED_KINGDOM, ETSI1_WORLD, "GB"}, 4853a702e49SBob Copeland {CTRY_UNITED_STATES, FCC3_FCCA, "US"}, 4863a702e49SBob Copeland /* This "PS" is for US public safety actually... to support this we 4873a702e49SBob Copeland * would need to assign new special alpha2 to CRDA db as with the world 4883a702e49SBob Copeland * regdomain and use another alpha2 */ 4893a702e49SBob Copeland {CTRY_UNITED_STATES_FCC49, FCC4_FCCA, "PS"}, 490bd6b4442SVivek Natarajan {CTRY_URUGUAY, FCC3_WORLD, "UY"}, 4913a702e49SBob Copeland {CTRY_UZBEKISTAN, FCC3_FCCA, "UZ"}, 4923a702e49SBob Copeland {CTRY_VENEZUELA, APL2_ETSIC, "VE"}, 4933a702e49SBob Copeland {CTRY_VIET_NAM, NULL1_WORLD, "VN"}, 4943a702e49SBob Copeland {CTRY_YEMEN, NULL1_WORLD, "YE"}, 4953a702e49SBob Copeland {CTRY_ZIMBABWE, NULL1_WORLD, "ZW"}, 4963a702e49SBob Copeland }; 4973a702e49SBob Copeland 4983a702e49SBob Copeland #endif 499