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, 79*dec05cdfSPeter Oh APL10_WORLD = 0x5F, 803a702e49SBob Copeland 813a702e49SBob Copeland WOR0_WORLD = 0x60, 823a702e49SBob Copeland WOR1_WORLD = 0x61, 833a702e49SBob Copeland WOR2_WORLD = 0x62, 843a702e49SBob Copeland WOR3_WORLD = 0x63, 853a702e49SBob Copeland WOR4_WORLD = 0x64, 863a702e49SBob Copeland WOR5_ETSIC = 0x65, 873a702e49SBob Copeland 883a702e49SBob Copeland WOR01_WORLD = 0x66, 893a702e49SBob Copeland WOR02_WORLD = 0x67, 903a702e49SBob Copeland EU1_WORLD = 0x68, 913a702e49SBob Copeland 923a702e49SBob Copeland WOR9_WORLD = 0x69, 933a702e49SBob Copeland WORA_WORLD = 0x6A, 943a702e49SBob Copeland WORB_WORLD = 0x6B, 9534a0a202SSenthil Balasubramanian WORC_WORLD = 0x6C, 963a702e49SBob Copeland 973a702e49SBob Copeland MKK3_MKKB = 0x80, 983a702e49SBob Copeland MKK3_MKKA2 = 0x81, 993a702e49SBob Copeland MKK3_MKKC = 0x82, 1003a702e49SBob Copeland 1013a702e49SBob Copeland MKK4_MKKB = 0x83, 1023a702e49SBob Copeland MKK4_MKKA2 = 0x84, 1033a702e49SBob Copeland MKK4_MKKC = 0x85, 1043a702e49SBob Copeland 1053a702e49SBob Copeland MKK5_MKKB = 0x86, 1063a702e49SBob Copeland MKK5_MKKA2 = 0x87, 1073a702e49SBob Copeland MKK5_MKKC = 0x88, 1083a702e49SBob Copeland 1093a702e49SBob Copeland MKK6_MKKB = 0x89, 1103a702e49SBob Copeland MKK6_MKKA2 = 0x8A, 1113a702e49SBob Copeland MKK6_MKKC = 0x8B, 1123a702e49SBob Copeland 1133a702e49SBob Copeland MKK7_MKKB = 0x8C, 1143a702e49SBob Copeland MKK7_MKKA2 = 0x8D, 1153a702e49SBob Copeland MKK7_MKKC = 0x8E, 1163a702e49SBob Copeland 1173a702e49SBob Copeland MKK8_MKKB = 0x8F, 1183a702e49SBob Copeland MKK8_MKKA2 = 0x90, 1193a702e49SBob Copeland MKK8_MKKC = 0x91, 1203a702e49SBob Copeland 1213a702e49SBob Copeland MKK14_MKKA1 = 0x92, 1223a702e49SBob Copeland MKK15_MKKA1 = 0x93, 1233a702e49SBob Copeland 1243a702e49SBob Copeland MKK10_FCCA = 0xD0, 1253a702e49SBob Copeland MKK10_MKKA1 = 0xD1, 1263a702e49SBob Copeland MKK10_MKKC = 0xD2, 1273a702e49SBob Copeland MKK10_MKKA2 = 0xD3, 1283a702e49SBob Copeland 1293a702e49SBob Copeland MKK11_MKKA = 0xD4, 1303a702e49SBob Copeland MKK11_FCCA = 0xD5, 1313a702e49SBob Copeland MKK11_MKKA1 = 0xD6, 1323a702e49SBob Copeland MKK11_MKKC = 0xD7, 1333a702e49SBob Copeland MKK11_MKKA2 = 0xD8, 1343a702e49SBob Copeland 1353a702e49SBob Copeland MKK12_MKKA = 0xD9, 1363a702e49SBob Copeland MKK12_FCCA = 0xDA, 1373a702e49SBob Copeland MKK12_MKKA1 = 0xDB, 1383a702e49SBob Copeland MKK12_MKKC = 0xDC, 1393a702e49SBob Copeland MKK12_MKKA2 = 0xDD, 1403a702e49SBob Copeland 1413a702e49SBob Copeland MKK13_MKKB = 0xDE, 1423a702e49SBob Copeland 1433a702e49SBob Copeland MKK3_MKKA = 0xF0, 1443a702e49SBob Copeland MKK3_MKKA1 = 0xF1, 1453a702e49SBob Copeland MKK3_FCCA = 0xF2, 1463a702e49SBob Copeland MKK4_MKKA = 0xF3, 1473a702e49SBob Copeland MKK4_MKKA1 = 0xF4, 1483a702e49SBob Copeland MKK4_FCCA = 0xF5, 1493a702e49SBob Copeland MKK9_MKKA = 0xF6, 1503a702e49SBob Copeland MKK10_MKKA = 0xF7, 1513a702e49SBob Copeland MKK6_MKKA1 = 0xF8, 1523a702e49SBob Copeland MKK6_FCCA = 0xF9, 1533a702e49SBob Copeland MKK7_MKKA1 = 0xFA, 1543a702e49SBob Copeland MKK7_FCCA = 0xFB, 1553a702e49SBob Copeland MKK9_FCCA = 0xFC, 1563a702e49SBob Copeland MKK9_MKKA1 = 0xFD, 1573a702e49SBob Copeland MKK9_MKKC = 0xFE, 1583a702e49SBob Copeland MKK9_MKKA2 = 0xFF, 1593a702e49SBob Copeland 1603a702e49SBob Copeland WORLD = 0x0199, 1613a702e49SBob Copeland DEBUG_REG_DMN = 0x01ff, 1623a702e49SBob Copeland }; 1633a702e49SBob Copeland 1643a702e49SBob Copeland /* Regpair to CTL band mapping */ 1653a702e49SBob Copeland static struct reg_dmn_pair_mapping regDomainPairs[] = { 1663a702e49SBob Copeland /* regpair, 5 GHz CTL, 2 GHz CTL */ 1673a702e49SBob Copeland {NO_ENUMRD, DEBUG_REG_DMN, DEBUG_REG_DMN}, 1683a702e49SBob Copeland {NULL1_WORLD, NO_CTL, CTL_ETSI}, 1693a702e49SBob Copeland {NULL1_ETSIB, NO_CTL, CTL_ETSI}, 1703a702e49SBob Copeland {NULL1_ETSIC, NO_CTL, CTL_ETSI}, 1713a702e49SBob Copeland 1723a702e49SBob Copeland {FCC2_FCCA, CTL_FCC, CTL_FCC}, 1733a702e49SBob Copeland {FCC2_WORLD, CTL_FCC, CTL_ETSI}, 1743a702e49SBob Copeland {FCC2_ETSIC, CTL_FCC, CTL_ETSI}, 1753a702e49SBob Copeland {FCC3_FCCA, CTL_FCC, CTL_FCC}, 1763a702e49SBob Copeland {FCC3_WORLD, CTL_FCC, CTL_ETSI}, 17701fb2994SSven Eckelmann {FCC3_ETSIC, CTL_FCC, CTL_ETSI}, 1783a702e49SBob Copeland {FCC4_FCCA, CTL_FCC, CTL_FCC}, 1793a702e49SBob Copeland {FCC5_FCCA, CTL_FCC, CTL_FCC}, 1803a702e49SBob Copeland {FCC6_FCCA, CTL_FCC, CTL_FCC}, 1813a702e49SBob Copeland {FCC6_WORLD, CTL_FCC, CTL_ETSI}, 1823a702e49SBob Copeland 1833a702e49SBob Copeland {ETSI1_WORLD, CTL_ETSI, CTL_ETSI}, 1843a702e49SBob Copeland {ETSI2_WORLD, CTL_ETSI, CTL_ETSI}, 1853a702e49SBob Copeland {ETSI3_WORLD, CTL_ETSI, CTL_ETSI}, 1863a702e49SBob Copeland {ETSI4_WORLD, CTL_ETSI, CTL_ETSI}, 1873a702e49SBob Copeland {ETSI5_WORLD, CTL_ETSI, CTL_ETSI}, 1883a702e49SBob Copeland {ETSI6_WORLD, CTL_ETSI, CTL_ETSI}, 18945faf6e0SSven Eckelmann {ETSI8_WORLD, CTL_ETSI, CTL_ETSI}, 190897fab6cSSven Eckelmann {ETSI9_WORLD, CTL_ETSI, CTL_ETSI}, 1913a702e49SBob Copeland 1923a702e49SBob Copeland /* XXX: For ETSI3_ETSIA, Was NO_CTL meant for the 2 GHz band ? */ 1933a702e49SBob Copeland {ETSI3_ETSIA, CTL_ETSI, CTL_ETSI}, 1943a702e49SBob Copeland {FRANCE_RES, CTL_ETSI, CTL_ETSI}, 1953a702e49SBob Copeland 1963a702e49SBob Copeland {FCC1_WORLD, CTL_FCC, CTL_ETSI}, 1973a702e49SBob Copeland {FCC1_FCCA, CTL_FCC, CTL_FCC}, 1983a702e49SBob Copeland {APL1_WORLD, CTL_FCC, CTL_ETSI}, 1993a702e49SBob Copeland {APL2_WORLD, CTL_FCC, CTL_ETSI}, 2004f183687SSven Eckelmann {APL2_FCCA, CTL_FCC, CTL_FCC}, 2013a702e49SBob Copeland {APL3_WORLD, CTL_FCC, CTL_ETSI}, 2023a702e49SBob Copeland {APL4_WORLD, CTL_FCC, CTL_ETSI}, 2033a702e49SBob Copeland {APL5_WORLD, CTL_FCC, CTL_ETSI}, 2049ba8df0cSSven Eckelmann {APL13_WORLD, CTL_ETSI, CTL_ETSI}, 2053a702e49SBob Copeland {APL6_WORLD, CTL_ETSI, CTL_ETSI}, 2063a702e49SBob Copeland {APL8_WORLD, CTL_ETSI, CTL_ETSI}, 2073a702e49SBob Copeland {APL9_WORLD, CTL_ETSI, CTL_ETSI}, 208*dec05cdfSPeter Oh {APL10_WORLD, CTL_ETSI, CTL_ETSI}, 2093a702e49SBob Copeland 2103a702e49SBob Copeland {APL3_FCCA, CTL_FCC, CTL_FCC}, 211bd39a274SChristian Lamparter {APL7_FCCA, CTL_FCC, CTL_FCC}, 2123a702e49SBob Copeland {APL1_ETSIC, CTL_FCC, CTL_ETSI}, 2133a702e49SBob Copeland {APL2_ETSIC, CTL_FCC, CTL_ETSI}, 2143a702e49SBob Copeland {APL2_APLD, CTL_FCC, NO_CTL}, 2153a702e49SBob Copeland 2163a702e49SBob Copeland {MKK1_MKKA, CTL_MKK, CTL_MKK}, 2173a702e49SBob Copeland {MKK1_MKKB, CTL_MKK, CTL_MKK}, 2183a702e49SBob Copeland {MKK1_FCCA, CTL_MKK, CTL_FCC}, 2193a702e49SBob Copeland {MKK1_MKKA1, CTL_MKK, CTL_MKK}, 2203a702e49SBob Copeland {MKK1_MKKA2, CTL_MKK, CTL_MKK}, 2213a702e49SBob Copeland {MKK1_MKKC, CTL_MKK, CTL_MKK}, 2223a702e49SBob Copeland 2233a702e49SBob Copeland {MKK2_MKKA, CTL_MKK, CTL_MKK}, 2243a702e49SBob Copeland {MKK3_MKKA, CTL_MKK, CTL_MKK}, 2253a702e49SBob Copeland {MKK3_MKKB, CTL_MKK, CTL_MKK}, 2263a702e49SBob Copeland {MKK3_MKKA1, CTL_MKK, CTL_MKK}, 2273a702e49SBob Copeland {MKK3_MKKA2, CTL_MKK, CTL_MKK}, 2283a702e49SBob Copeland {MKK3_MKKC, CTL_MKK, CTL_MKK}, 2293a702e49SBob Copeland {MKK3_FCCA, CTL_MKK, CTL_FCC}, 2303a702e49SBob Copeland 2313a702e49SBob Copeland {MKK4_MKKA, CTL_MKK, CTL_MKK}, 2323a702e49SBob Copeland {MKK4_MKKB, CTL_MKK, CTL_MKK}, 2333a702e49SBob Copeland {MKK4_MKKA1, CTL_MKK, CTL_MKK}, 2343a702e49SBob Copeland {MKK4_MKKA2, CTL_MKK, CTL_MKK}, 2353a702e49SBob Copeland {MKK4_MKKC, CTL_MKK, CTL_MKK}, 2363a702e49SBob Copeland {MKK4_FCCA, CTL_MKK, CTL_FCC}, 2373a702e49SBob Copeland 2383a702e49SBob Copeland {MKK5_MKKB, CTL_MKK, CTL_MKK}, 2393a702e49SBob Copeland {MKK5_MKKA2, CTL_MKK, CTL_MKK}, 2403a702e49SBob Copeland {MKK5_MKKC, CTL_MKK, CTL_MKK}, 2413a702e49SBob Copeland 2423a702e49SBob Copeland {MKK6_MKKB, CTL_MKK, CTL_MKK}, 2433a702e49SBob Copeland {MKK6_MKKA1, CTL_MKK, CTL_MKK}, 2443a702e49SBob Copeland {MKK6_MKKA2, CTL_MKK, CTL_MKK}, 2453a702e49SBob Copeland {MKK6_MKKC, CTL_MKK, CTL_MKK}, 2463a702e49SBob Copeland {MKK6_FCCA, CTL_MKK, CTL_FCC}, 2473a702e49SBob Copeland 2483a702e49SBob Copeland {MKK7_MKKB, CTL_MKK, CTL_MKK}, 2493a702e49SBob Copeland {MKK7_MKKA1, CTL_MKK, CTL_MKK}, 2503a702e49SBob Copeland {MKK7_MKKA2, CTL_MKK, CTL_MKK}, 2513a702e49SBob Copeland {MKK7_MKKC, CTL_MKK, CTL_MKK}, 2523a702e49SBob Copeland {MKK7_FCCA, CTL_MKK, CTL_FCC}, 2533a702e49SBob Copeland 2543a702e49SBob Copeland {MKK8_MKKB, CTL_MKK, CTL_MKK}, 2553a702e49SBob Copeland {MKK8_MKKA2, CTL_MKK, CTL_MKK}, 2563a702e49SBob Copeland {MKK8_MKKC, CTL_MKK, CTL_MKK}, 2573a702e49SBob Copeland 2583a702e49SBob Copeland {MKK9_MKKA, CTL_MKK, CTL_MKK}, 2593a702e49SBob Copeland {MKK9_FCCA, CTL_MKK, CTL_FCC}, 2603a702e49SBob Copeland {MKK9_MKKA1, CTL_MKK, CTL_MKK}, 2613a702e49SBob Copeland {MKK9_MKKA2, CTL_MKK, CTL_MKK}, 2623a702e49SBob Copeland {MKK9_MKKC, CTL_MKK, CTL_MKK}, 2633a702e49SBob Copeland 2643a702e49SBob Copeland {MKK10_MKKA, CTL_MKK, CTL_MKK}, 2653a702e49SBob Copeland {MKK10_FCCA, CTL_MKK, CTL_FCC}, 2663a702e49SBob Copeland {MKK10_MKKA1, CTL_MKK, CTL_MKK}, 2673a702e49SBob Copeland {MKK10_MKKA2, CTL_MKK, CTL_MKK}, 2683a702e49SBob Copeland {MKK10_MKKC, CTL_MKK, CTL_MKK}, 2693a702e49SBob Copeland 2703a702e49SBob Copeland {MKK11_MKKA, CTL_MKK, CTL_MKK}, 2713a702e49SBob Copeland {MKK11_FCCA, CTL_MKK, CTL_FCC}, 2723a702e49SBob Copeland {MKK11_MKKA1, CTL_MKK, CTL_MKK}, 2733a702e49SBob Copeland {MKK11_MKKA2, CTL_MKK, CTL_MKK}, 2743a702e49SBob Copeland {MKK11_MKKC, CTL_MKK, CTL_MKK}, 2753a702e49SBob Copeland 2763a702e49SBob Copeland {MKK12_MKKA, CTL_MKK, CTL_MKK}, 2773a702e49SBob Copeland {MKK12_FCCA, CTL_MKK, CTL_FCC}, 2783a702e49SBob Copeland {MKK12_MKKA1, CTL_MKK, CTL_MKK}, 2793a702e49SBob Copeland {MKK12_MKKA2, CTL_MKK, CTL_MKK}, 2803a702e49SBob Copeland {MKK12_MKKC, CTL_MKK, CTL_MKK}, 2813a702e49SBob Copeland 2823a702e49SBob Copeland {MKK13_MKKB, CTL_MKK, CTL_MKK}, 2833a702e49SBob Copeland {MKK14_MKKA1, CTL_MKK, CTL_MKK}, 2843a702e49SBob Copeland {MKK15_MKKA1, CTL_MKK, CTL_MKK}, 2853a702e49SBob Copeland 2863a702e49SBob Copeland {WOR0_WORLD, NO_CTL, NO_CTL}, 2873a702e49SBob Copeland {WOR1_WORLD, NO_CTL, NO_CTL}, 2883a702e49SBob Copeland {WOR2_WORLD, NO_CTL, NO_CTL}, 2893a702e49SBob Copeland {WOR3_WORLD, NO_CTL, NO_CTL}, 2903a702e49SBob Copeland {WOR4_WORLD, NO_CTL, NO_CTL}, 2913a702e49SBob Copeland {WOR5_ETSIC, NO_CTL, NO_CTL}, 2923a702e49SBob Copeland {WOR01_WORLD, NO_CTL, NO_CTL}, 2933a702e49SBob Copeland {WOR02_WORLD, NO_CTL, NO_CTL}, 2943a702e49SBob Copeland {EU1_WORLD, NO_CTL, NO_CTL}, 2953a702e49SBob Copeland {WOR9_WORLD, NO_CTL, NO_CTL}, 2963a702e49SBob Copeland {WORA_WORLD, NO_CTL, NO_CTL}, 2973a702e49SBob Copeland {WORB_WORLD, NO_CTL, NO_CTL}, 29834a0a202SSenthil Balasubramanian {WORC_WORLD, NO_CTL, NO_CTL}, 2993a702e49SBob Copeland }; 3003a702e49SBob Copeland 3013a702e49SBob Copeland static struct country_code_to_enum_rd allCountries[] = { 3023a702e49SBob Copeland {CTRY_DEBUG, NO_ENUMRD, "DB"}, 3033a702e49SBob Copeland {CTRY_DEFAULT, FCC1_FCCA, "CO"}, 304fed8f5e8SSven Eckelmann {CTRY_ALBANIA, ETSI1_WORLD, "AL"}, 305485daee9SSven Eckelmann {CTRY_ALGERIA, APL13_WORLD, "DZ"}, 306bd6b4442SVivek Natarajan {CTRY_ARGENTINA, FCC3_WORLD, "AR"}, 3073a702e49SBob Copeland {CTRY_ARMENIA, ETSI4_WORLD, "AM"}, 308bd6b4442SVivek Natarajan {CTRY_ARUBA, ETSI1_WORLD, "AW"}, 3098120cc0bSSven Eckelmann {CTRY_AUSTRALIA, FCC3_WORLD, "AU"}, 3103a702e49SBob Copeland {CTRY_AUSTRALIA2, FCC6_WORLD, "AU"}, 3113a702e49SBob Copeland {CTRY_AUSTRIA, ETSI1_WORLD, "AT"}, 3123a702e49SBob Copeland {CTRY_AZERBAIJAN, ETSI4_WORLD, "AZ"}, 313699e2302SSven Eckelmann {CTRY_BAHAMAS, FCC3_WORLD, "BS"}, 3143a702e49SBob Copeland {CTRY_BAHRAIN, APL6_WORLD, "BH"}, 3151507b328SSven Eckelmann {CTRY_BANGLADESH, APL1_WORLD, "BD"}, 316bd6b4442SVivek Natarajan {CTRY_BARBADOS, FCC2_WORLD, "BB"}, 3173a702e49SBob Copeland {CTRY_BELARUS, ETSI1_WORLD, "BY"}, 3183a702e49SBob Copeland {CTRY_BELGIUM, ETSI1_WORLD, "BE"}, 3193a702e49SBob Copeland {CTRY_BELGIUM2, ETSI4_WORLD, "BL"}, 3203a702e49SBob Copeland {CTRY_BELIZE, APL1_ETSIC, "BZ"}, 3219c790f2dSSven Eckelmann {CTRY_BERMUDA, FCC3_FCCA, "BM"}, 3223a702e49SBob Copeland {CTRY_BOLIVIA, APL1_ETSIC, "BO"}, 3233a702e49SBob Copeland {CTRY_BOSNIA_HERZ, ETSI1_WORLD, "BA"}, 3243a702e49SBob Copeland {CTRY_BRAZIL, FCC3_WORLD, "BR"}, 32537090d94SSven Eckelmann {CTRY_BRUNEI_DARUSSALAM, APL6_WORLD, "BN"}, 326fed60f81SSven Eckelmann {CTRY_BULGARIA, ETSI1_WORLD, "BG"}, 327bd6b4442SVivek Natarajan {CTRY_CAMBODIA, ETSI1_WORLD, "KH"}, 328bd6b4442SVivek Natarajan {CTRY_CANADA, FCC3_FCCA, "CA"}, 3293a702e49SBob Copeland {CTRY_CANADA2, FCC6_FCCA, "CA"}, 3303a702e49SBob Copeland {CTRY_CHILE, APL6_WORLD, "CL"}, 3313a702e49SBob Copeland {CTRY_CHINA, APL1_WORLD, "CN"}, 332515e9686SSven Eckelmann {CTRY_COLOMBIA, FCC3_WORLD, "CO"}, 3333a702e49SBob Copeland {CTRY_COSTA_RICA, FCC1_WORLD, "CR"}, 334bd6b4442SVivek Natarajan {CTRY_CROATIA, ETSI1_WORLD, "HR"}, 3353a702e49SBob Copeland {CTRY_CYPRUS, ETSI1_WORLD, "CY"}, 3360fa31a86SSven Eckelmann {CTRY_CZECH, ETSI1_WORLD, "CZ"}, 3373a702e49SBob Copeland {CTRY_DENMARK, ETSI1_WORLD, "DK"}, 3383a702e49SBob Copeland {CTRY_DOMINICAN_REPUBLIC, FCC1_FCCA, "DO"}, 3393a702e49SBob Copeland {CTRY_ECUADOR, FCC1_WORLD, "EC"}, 3403a702e49SBob Copeland {CTRY_EGYPT, ETSI3_WORLD, "EG"}, 3413a702e49SBob Copeland {CTRY_EL_SALVADOR, FCC1_WORLD, "SV"}, 3423a702e49SBob Copeland {CTRY_ESTONIA, ETSI1_WORLD, "EE"}, 3433a702e49SBob Copeland {CTRY_FINLAND, ETSI1_WORLD, "FI"}, 3443a702e49SBob Copeland {CTRY_FRANCE, ETSI1_WORLD, "FR"}, 3453a702e49SBob Copeland {CTRY_GEORGIA, ETSI4_WORLD, "GE"}, 3463a702e49SBob Copeland {CTRY_GERMANY, ETSI1_WORLD, "DE"}, 3473a702e49SBob Copeland {CTRY_GREECE, ETSI1_WORLD, "GR"}, 348bd6b4442SVivek Natarajan {CTRY_GREENLAND, ETSI1_WORLD, "GL"}, 349d601d9caSPavel Roskin {CTRY_GRENADA, FCC3_FCCA, "GD"}, 350bd6b4442SVivek Natarajan {CTRY_GUAM, FCC1_FCCA, "GU"}, 3513a702e49SBob Copeland {CTRY_GUATEMALA, FCC1_FCCA, "GT"}, 352bd6b4442SVivek Natarajan {CTRY_HAITI, ETSI1_WORLD, "HT"}, 353143a9b9bSSven Eckelmann {CTRY_HONDURAS, FCC3_WORLD, "HN"}, 354bd6b4442SVivek Natarajan {CTRY_HONG_KONG, FCC3_WORLD, "HK"}, 3553a702e49SBob Copeland {CTRY_HUNGARY, ETSI1_WORLD, "HU"}, 3563a702e49SBob Copeland {CTRY_ICELAND, ETSI1_WORLD, "IS"}, 3573a702e49SBob Copeland {CTRY_INDIA, APL6_WORLD, "IN"}, 358bd6b4442SVivek Natarajan {CTRY_INDONESIA, NULL1_WORLD, "ID"}, 3593a702e49SBob Copeland {CTRY_IRAN, APL1_WORLD, "IR"}, 3603a702e49SBob Copeland {CTRY_IRELAND, ETSI1_WORLD, "IE"}, 36162ba2b22SSven Eckelmann {CTRY_ISRAEL, ETSI3_WORLD, "IL"}, 3623a702e49SBob Copeland {CTRY_ITALY, ETSI1_WORLD, "IT"}, 363bd6b4442SVivek Natarajan {CTRY_JAMAICA, FCC3_WORLD, "JM"}, 3643a702e49SBob Copeland 3653a702e49SBob Copeland {CTRY_JAPAN, MKK1_MKKA, "JP"}, 3663a702e49SBob Copeland {CTRY_JAPAN1, MKK1_MKKB, "JP"}, 3673a702e49SBob Copeland {CTRY_JAPAN2, MKK1_FCCA, "JP"}, 3683a702e49SBob Copeland {CTRY_JAPAN3, MKK2_MKKA, "JP"}, 3693a702e49SBob Copeland {CTRY_JAPAN4, MKK1_MKKA1, "JP"}, 3703a702e49SBob Copeland {CTRY_JAPAN5, MKK1_MKKA2, "JP"}, 3713a702e49SBob Copeland {CTRY_JAPAN6, MKK1_MKKC, "JP"}, 3723a702e49SBob Copeland {CTRY_JAPAN7, MKK3_MKKB, "JP"}, 3733a702e49SBob Copeland {CTRY_JAPAN8, MKK3_MKKA2, "JP"}, 3743a702e49SBob Copeland {CTRY_JAPAN9, MKK3_MKKC, "JP"}, 3753a702e49SBob Copeland {CTRY_JAPAN10, MKK4_MKKB, "JP"}, 3763a702e49SBob Copeland {CTRY_JAPAN11, MKK4_MKKA2, "JP"}, 3773a702e49SBob Copeland {CTRY_JAPAN12, MKK4_MKKC, "JP"}, 3783a702e49SBob Copeland {CTRY_JAPAN13, MKK5_MKKB, "JP"}, 3793a702e49SBob Copeland {CTRY_JAPAN14, MKK5_MKKA2, "JP"}, 3803a702e49SBob Copeland {CTRY_JAPAN15, MKK5_MKKC, "JP"}, 3813a702e49SBob Copeland {CTRY_JAPAN16, MKK6_MKKB, "JP"}, 3823a702e49SBob Copeland {CTRY_JAPAN17, MKK6_MKKA2, "JP"}, 3833a702e49SBob Copeland {CTRY_JAPAN18, MKK6_MKKC, "JP"}, 3843a702e49SBob Copeland {CTRY_JAPAN19, MKK7_MKKB, "JP"}, 3853a702e49SBob Copeland {CTRY_JAPAN20, MKK7_MKKA2, "JP"}, 3863a702e49SBob Copeland {CTRY_JAPAN21, MKK7_MKKC, "JP"}, 3873a702e49SBob Copeland {CTRY_JAPAN22, MKK8_MKKB, "JP"}, 3883a702e49SBob Copeland {CTRY_JAPAN23, MKK8_MKKA2, "JP"}, 3893a702e49SBob Copeland {CTRY_JAPAN24, MKK8_MKKC, "JP"}, 3903a702e49SBob Copeland {CTRY_JAPAN25, MKK3_MKKA, "JP"}, 3913a702e49SBob Copeland {CTRY_JAPAN26, MKK3_MKKA1, "JP"}, 3923a702e49SBob Copeland {CTRY_JAPAN27, MKK3_FCCA, "JP"}, 3933a702e49SBob Copeland {CTRY_JAPAN28, MKK4_MKKA1, "JP"}, 3943a702e49SBob Copeland {CTRY_JAPAN29, MKK4_FCCA, "JP"}, 3953a702e49SBob Copeland {CTRY_JAPAN30, MKK6_MKKA1, "JP"}, 3963a702e49SBob Copeland {CTRY_JAPAN31, MKK6_FCCA, "JP"}, 3973a702e49SBob Copeland {CTRY_JAPAN32, MKK7_MKKA1, "JP"}, 3983a702e49SBob Copeland {CTRY_JAPAN33, MKK7_FCCA, "JP"}, 3993a702e49SBob Copeland {CTRY_JAPAN34, MKK9_MKKA, "JP"}, 4003a702e49SBob Copeland {CTRY_JAPAN35, MKK10_MKKA, "JP"}, 4013a702e49SBob Copeland {CTRY_JAPAN36, MKK4_MKKA, "JP"}, 4023a702e49SBob Copeland {CTRY_JAPAN37, MKK9_FCCA, "JP"}, 4033a702e49SBob Copeland {CTRY_JAPAN38, MKK9_MKKA1, "JP"}, 4043a702e49SBob Copeland {CTRY_JAPAN39, MKK9_MKKC, "JP"}, 4053a702e49SBob Copeland {CTRY_JAPAN40, MKK9_MKKA2, "JP"}, 4063a702e49SBob Copeland {CTRY_JAPAN41, MKK10_FCCA, "JP"}, 4073a702e49SBob Copeland {CTRY_JAPAN42, MKK10_MKKA1, "JP"}, 4083a702e49SBob Copeland {CTRY_JAPAN43, MKK10_MKKC, "JP"}, 4093a702e49SBob Copeland {CTRY_JAPAN44, MKK10_MKKA2, "JP"}, 4103a702e49SBob Copeland {CTRY_JAPAN45, MKK11_MKKA, "JP"}, 4113a702e49SBob Copeland {CTRY_JAPAN46, MKK11_FCCA, "JP"}, 4123a702e49SBob Copeland {CTRY_JAPAN47, MKK11_MKKA1, "JP"}, 4133a702e49SBob Copeland {CTRY_JAPAN48, MKK11_MKKC, "JP"}, 4143a702e49SBob Copeland {CTRY_JAPAN49, MKK11_MKKA2, "JP"}, 4153a702e49SBob Copeland {CTRY_JAPAN50, MKK12_MKKA, "JP"}, 4163a702e49SBob Copeland {CTRY_JAPAN51, MKK12_FCCA, "JP"}, 4173a702e49SBob Copeland {CTRY_JAPAN52, MKK12_MKKA1, "JP"}, 4183a702e49SBob Copeland {CTRY_JAPAN53, MKK12_MKKC, "JP"}, 4193a702e49SBob Copeland {CTRY_JAPAN54, MKK12_MKKA2, "JP"}, 4203a702e49SBob Copeland {CTRY_JAPAN57, MKK13_MKKB, "JP"}, 4213a702e49SBob Copeland {CTRY_JAPAN58, MKK14_MKKA1, "JP"}, 4223a702e49SBob Copeland {CTRY_JAPAN59, MKK15_MKKA1, "JP"}, 4233a702e49SBob Copeland 4243a702e49SBob Copeland {CTRY_JORDAN, ETSI2_WORLD, "JO"}, 4253a702e49SBob Copeland {CTRY_KAZAKHSTAN, NULL1_WORLD, "KZ"}, 426b840fa91SSven Eckelmann {CTRY_KENYA, APL1_WORLD, "KE"}, 4273a702e49SBob Copeland {CTRY_KOREA_NORTH, APL9_WORLD, "KP"}, 4283a702e49SBob Copeland {CTRY_KOREA_ROC, APL9_WORLD, "KR"}, 4293a702e49SBob Copeland {CTRY_KOREA_ROC2, APL2_WORLD, "K2"}, 4303a702e49SBob Copeland {CTRY_KOREA_ROC3, APL9_WORLD, "K3"}, 431*dec05cdfSPeter Oh {CTRY_KOREA_ROC4, APL10_WORLD, "K4"}, 432bd6b4442SVivek Natarajan {CTRY_KUWAIT, ETSI3_WORLD, "KW"}, 4333a702e49SBob Copeland {CTRY_LATVIA, ETSI1_WORLD, "LV"}, 4343a702e49SBob Copeland {CTRY_LEBANON, NULL1_WORLD, "LB"}, 4353a702e49SBob Copeland {CTRY_LIECHTENSTEIN, ETSI1_WORLD, "LI"}, 4363a702e49SBob Copeland {CTRY_LITHUANIA, ETSI1_WORLD, "LT"}, 4373a702e49SBob Copeland {CTRY_LUXEMBOURG, ETSI1_WORLD, "LU"}, 4383a702e49SBob Copeland {CTRY_MACAU, FCC2_WORLD, "MO"}, 43964874ed2SSven Eckelmann {CTRY_MACEDONIA, ETSI1_WORLD, "MK"}, 440823a6406SSven Eckelmann {CTRY_MALAYSIA, FCC1_WORLD, "MY"}, 4413a702e49SBob Copeland {CTRY_MALTA, ETSI1_WORLD, "MT"}, 442a71c984bSSven Eckelmann {CTRY_MAURITIUS, ETSI1_WORLD, "MU"}, 4433a702e49SBob Copeland {CTRY_MEXICO, FCC1_FCCA, "MX"}, 4443a702e49SBob Copeland {CTRY_MONACO, ETSI4_WORLD, "MC"}, 445a0a6f2a9SSven Eckelmann {CTRY_MONTENEGRO, ETSI1_WORLD, "ME"}, 446bd6b4442SVivek Natarajan {CTRY_MOROCCO, APL4_WORLD, "MA"}, 4473a702e49SBob Copeland {CTRY_NEPAL, APL1_WORLD, "NP"}, 4483a702e49SBob Copeland {CTRY_NETHERLANDS, ETSI1_WORLD, "NL"}, 4493a702e49SBob Copeland {CTRY_NETHERLANDS_ANTILLES, ETSI1_WORLD, "AN"}, 4509bfc2bb3SSven Eckelmann {CTRY_NEW_ZEALAND, FCC3_ETSIC, "NZ"}, 451a20f1338SSven Eckelmann {CTRY_NICARAGUA, FCC3_FCCA, "NI"}, 4523a702e49SBob Copeland {CTRY_NORWAY, ETSI1_WORLD, "NO"}, 453bd6b4442SVivek Natarajan {CTRY_OMAN, FCC3_WORLD, "OM"}, 4543a702e49SBob Copeland {CTRY_PAKISTAN, NULL1_WORLD, "PK"}, 4553a702e49SBob Copeland {CTRY_PANAMA, FCC1_FCCA, "PA"}, 4563a702e49SBob Copeland {CTRY_PAPUA_NEW_GUINEA, FCC1_WORLD, "PG"}, 45767a95668SSven Eckelmann {CTRY_PARAGUAY, FCC3_WORLD, "PY"}, 458b5c11e47SSven Eckelmann {CTRY_PERU, FCC3_WORLD, "PE"}, 459c454d4c2SSven Eckelmann {CTRY_PHILIPPINES, FCC3_WORLD, "PH"}, 4603a702e49SBob Copeland {CTRY_POLAND, ETSI1_WORLD, "PL"}, 4613a702e49SBob Copeland {CTRY_PORTUGAL, ETSI1_WORLD, "PT"}, 4623a702e49SBob Copeland {CTRY_PUERTO_RICO, FCC1_FCCA, "PR"}, 463bd6b4442SVivek Natarajan {CTRY_QATAR, APL1_WORLD, "QA"}, 46412f41556SSven Eckelmann {CTRY_ROMANIA, ETSI1_WORLD, "RO"}, 465b7e01513SSven Eckelmann {CTRY_RUSSIA, ETSI8_WORLD, "RU"}, 4663a702e49SBob Copeland {CTRY_SAUDI_ARABIA, NULL1_WORLD, "SA"}, 4672a3169a5SSven Eckelmann {CTRY_SERBIA, ETSI1_WORLD, "RS"}, 4683a702e49SBob Copeland {CTRY_SERBIA_MONTENEGRO, ETSI1_WORLD, "CS"}, 469054e0778SSven Eckelmann {CTRY_SINGAPORE, FCC3_WORLD, "SG"}, 4703a702e49SBob Copeland {CTRY_SLOVAKIA, ETSI1_WORLD, "SK"}, 4713a702e49SBob Copeland {CTRY_SLOVENIA, ETSI1_WORLD, "SI"}, 4723a702e49SBob Copeland {CTRY_SOUTH_AFRICA, FCC3_WORLD, "ZA"}, 4733a702e49SBob Copeland {CTRY_SPAIN, ETSI1_WORLD, "ES"}, 4743a702e49SBob Copeland {CTRY_SRI_LANKA, FCC3_WORLD, "LK"}, 4753a702e49SBob Copeland {CTRY_SWEDEN, ETSI1_WORLD, "SE"}, 4763a702e49SBob Copeland {CTRY_SWITZERLAND, ETSI1_WORLD, "CH"}, 4773a702e49SBob Copeland {CTRY_SYRIA, NULL1_WORLD, "SY"}, 4783a702e49SBob Copeland {CTRY_TAIWAN, APL3_FCCA, "TW"}, 479667ddac5SSven Eckelmann {CTRY_TANZANIA, APL1_WORLD, "TZ"}, 48058d30d14SLuis R. Rodriguez {CTRY_THAILAND, FCC3_WORLD, "TH"}, 481bd6b4442SVivek Natarajan {CTRY_TRINIDAD_Y_TOBAGO, FCC3_WORLD, "TT"}, 4823a702e49SBob Copeland {CTRY_TUNISIA, ETSI3_WORLD, "TN"}, 4833a702e49SBob Copeland {CTRY_TURKEY, ETSI3_WORLD, "TR"}, 4841ea3986aSSven Eckelmann {CTRY_UGANDA, FCC3_WORLD, "UG"}, 4854e78075cSSven Eckelmann {CTRY_UKRAINE, ETSI9_WORLD, "UA"}, 4863a702e49SBob Copeland {CTRY_UAE, NULL1_WORLD, "AE"}, 4873a702e49SBob Copeland {CTRY_UNITED_KINGDOM, ETSI1_WORLD, "GB"}, 4883a702e49SBob Copeland {CTRY_UNITED_STATES, FCC3_FCCA, "US"}, 48962a2c135SOever Gonzalez {CTRY_UNITED_STATES2, FCC3_FCCA, "US"}, 49062a2c135SOever Gonzalez {CTRY_UNITED_STATES3, FCC3_FCCA, "US"}, 4913a702e49SBob Copeland /* This "PS" is for US public safety actually... to support this we 4923a702e49SBob Copeland * would need to assign new special alpha2 to CRDA db as with the world 4933a702e49SBob Copeland * regdomain and use another alpha2 */ 4943a702e49SBob Copeland {CTRY_UNITED_STATES_FCC49, FCC4_FCCA, "PS"}, 495bd6b4442SVivek Natarajan {CTRY_URUGUAY, FCC3_WORLD, "UY"}, 4963a702e49SBob Copeland {CTRY_UZBEKISTAN, FCC3_FCCA, "UZ"}, 4973a702e49SBob Copeland {CTRY_VENEZUELA, APL2_ETSIC, "VE"}, 4983a702e49SBob Copeland {CTRY_VIET_NAM, NULL1_WORLD, "VN"}, 4993a702e49SBob Copeland {CTRY_YEMEN, NULL1_WORLD, "YE"}, 500f1abff21SSven Eckelmann {CTRY_ZIMBABWE, ETSI1_WORLD, "ZW"}, 5013a702e49SBob Copeland }; 5023a702e49SBob Copeland 5033a702e49SBob Copeland #endif 504