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, 383a702e49SBob Copeland 393a702e49SBob Copeland ETSI1_WORLD = 0x37, 403a702e49SBob Copeland ETSI3_ETSIA = 0x32, 413a702e49SBob Copeland ETSI2_WORLD = 0x35, 423a702e49SBob Copeland ETSI3_WORLD = 0x36, 433a702e49SBob Copeland ETSI4_WORLD = 0x30, 443a702e49SBob Copeland ETSI4_ETSIC = 0x38, 453a702e49SBob Copeland ETSI5_WORLD = 0x39, 463a702e49SBob Copeland ETSI6_WORLD = 0x34, 4745faf6e0SSven Eckelmann ETSI8_WORLD = 0x3D, 48897fab6cSSven Eckelmann ETSI9_WORLD = 0x3E, 493a702e49SBob Copeland ETSI_RESERVED = 0x33, 503a702e49SBob Copeland 513a702e49SBob Copeland MKK1_MKKA = 0x40, 523a702e49SBob Copeland MKK1_MKKB = 0x41, 533a702e49SBob Copeland APL4_WORLD = 0x42, 543a702e49SBob Copeland MKK2_MKKA = 0x43, 553a702e49SBob Copeland APL_RESERVED = 0x44, 563a702e49SBob Copeland APL2_WORLD = 0x45, 573a702e49SBob Copeland APL2_APLC = 0x46, 583a702e49SBob Copeland APL3_WORLD = 0x47, 593a702e49SBob Copeland MKK1_FCCA = 0x48, 603a702e49SBob Copeland APL2_APLD = 0x49, 613a702e49SBob Copeland MKK1_MKKA1 = 0x4A, 623a702e49SBob Copeland MKK1_MKKA2 = 0x4B, 633a702e49SBob Copeland MKK1_MKKC = 0x4C, 644f183687SSven Eckelmann APL2_FCCA = 0x4D, 653a702e49SBob Copeland 663a702e49SBob Copeland APL3_FCCA = 0x50, 673a702e49SBob Copeland APL1_WORLD = 0x52, 683a702e49SBob Copeland APL1_FCCA = 0x53, 693a702e49SBob Copeland APL1_APLA = 0x54, 703a702e49SBob Copeland APL1_ETSIC = 0x55, 713a702e49SBob Copeland APL2_ETSIC = 0x56, 723a702e49SBob Copeland APL5_WORLD = 0x58, 739ba8df0cSSven Eckelmann APL13_WORLD = 0x5A, 743a702e49SBob Copeland APL6_WORLD = 0x5B, 753a702e49SBob Copeland APL7_FCCA = 0x5C, 763a702e49SBob Copeland APL8_WORLD = 0x5D, 773a702e49SBob Copeland APL9_WORLD = 0x5E, 783a702e49SBob Copeland 793a702e49SBob Copeland WOR0_WORLD = 0x60, 803a702e49SBob Copeland WOR1_WORLD = 0x61, 813a702e49SBob Copeland WOR2_WORLD = 0x62, 823a702e49SBob Copeland WOR3_WORLD = 0x63, 833a702e49SBob Copeland WOR4_WORLD = 0x64, 843a702e49SBob Copeland WOR5_ETSIC = 0x65, 853a702e49SBob Copeland 863a702e49SBob Copeland WOR01_WORLD = 0x66, 873a702e49SBob Copeland WOR02_WORLD = 0x67, 883a702e49SBob Copeland EU1_WORLD = 0x68, 893a702e49SBob Copeland 903a702e49SBob Copeland WOR9_WORLD = 0x69, 913a702e49SBob Copeland WORA_WORLD = 0x6A, 923a702e49SBob Copeland WORB_WORLD = 0x6B, 9334a0a202SSenthil Balasubramanian WORC_WORLD = 0x6C, 943a702e49SBob Copeland 953a702e49SBob Copeland MKK3_MKKB = 0x80, 963a702e49SBob Copeland MKK3_MKKA2 = 0x81, 973a702e49SBob Copeland MKK3_MKKC = 0x82, 983a702e49SBob Copeland 993a702e49SBob Copeland MKK4_MKKB = 0x83, 1003a702e49SBob Copeland MKK4_MKKA2 = 0x84, 1013a702e49SBob Copeland MKK4_MKKC = 0x85, 1023a702e49SBob Copeland 1033a702e49SBob Copeland MKK5_MKKB = 0x86, 1043a702e49SBob Copeland MKK5_MKKA2 = 0x87, 1053a702e49SBob Copeland MKK5_MKKC = 0x88, 1063a702e49SBob Copeland 1073a702e49SBob Copeland MKK6_MKKB = 0x89, 1083a702e49SBob Copeland MKK6_MKKA2 = 0x8A, 1093a702e49SBob Copeland MKK6_MKKC = 0x8B, 1103a702e49SBob Copeland 1113a702e49SBob Copeland MKK7_MKKB = 0x8C, 1123a702e49SBob Copeland MKK7_MKKA2 = 0x8D, 1133a702e49SBob Copeland MKK7_MKKC = 0x8E, 1143a702e49SBob Copeland 1153a702e49SBob Copeland MKK8_MKKB = 0x8F, 1163a702e49SBob Copeland MKK8_MKKA2 = 0x90, 1173a702e49SBob Copeland MKK8_MKKC = 0x91, 1183a702e49SBob Copeland 1193a702e49SBob Copeland MKK14_MKKA1 = 0x92, 1203a702e49SBob Copeland MKK15_MKKA1 = 0x93, 1213a702e49SBob Copeland 1223a702e49SBob Copeland MKK10_FCCA = 0xD0, 1233a702e49SBob Copeland MKK10_MKKA1 = 0xD1, 1243a702e49SBob Copeland MKK10_MKKC = 0xD2, 1253a702e49SBob Copeland MKK10_MKKA2 = 0xD3, 1263a702e49SBob Copeland 1273a702e49SBob Copeland MKK11_MKKA = 0xD4, 1283a702e49SBob Copeland MKK11_FCCA = 0xD5, 1293a702e49SBob Copeland MKK11_MKKA1 = 0xD6, 1303a702e49SBob Copeland MKK11_MKKC = 0xD7, 1313a702e49SBob Copeland MKK11_MKKA2 = 0xD8, 1323a702e49SBob Copeland 1333a702e49SBob Copeland MKK12_MKKA = 0xD9, 1343a702e49SBob Copeland MKK12_FCCA = 0xDA, 1353a702e49SBob Copeland MKK12_MKKA1 = 0xDB, 1363a702e49SBob Copeland MKK12_MKKC = 0xDC, 1373a702e49SBob Copeland MKK12_MKKA2 = 0xDD, 1383a702e49SBob Copeland 1393a702e49SBob Copeland MKK13_MKKB = 0xDE, 1403a702e49SBob Copeland 1413a702e49SBob Copeland MKK3_MKKA = 0xF0, 1423a702e49SBob Copeland MKK3_MKKA1 = 0xF1, 1433a702e49SBob Copeland MKK3_FCCA = 0xF2, 1443a702e49SBob Copeland MKK4_MKKA = 0xF3, 1453a702e49SBob Copeland MKK4_MKKA1 = 0xF4, 1463a702e49SBob Copeland MKK4_FCCA = 0xF5, 1473a702e49SBob Copeland MKK9_MKKA = 0xF6, 1483a702e49SBob Copeland MKK10_MKKA = 0xF7, 1493a702e49SBob Copeland MKK6_MKKA1 = 0xF8, 1503a702e49SBob Copeland MKK6_FCCA = 0xF9, 1513a702e49SBob Copeland MKK7_MKKA1 = 0xFA, 1523a702e49SBob Copeland MKK7_FCCA = 0xFB, 1533a702e49SBob Copeland MKK9_FCCA = 0xFC, 1543a702e49SBob Copeland MKK9_MKKA1 = 0xFD, 1553a702e49SBob Copeland MKK9_MKKC = 0xFE, 1563a702e49SBob Copeland MKK9_MKKA2 = 0xFF, 1573a702e49SBob Copeland 1583a702e49SBob Copeland WORLD = 0x0199, 1593a702e49SBob Copeland DEBUG_REG_DMN = 0x01ff, 1603a702e49SBob Copeland }; 1613a702e49SBob Copeland 1623a702e49SBob Copeland /* Regpair to CTL band mapping */ 1633a702e49SBob Copeland static struct reg_dmn_pair_mapping regDomainPairs[] = { 1643a702e49SBob Copeland /* regpair, 5 GHz CTL, 2 GHz CTL */ 1653a702e49SBob Copeland {NO_ENUMRD, DEBUG_REG_DMN, DEBUG_REG_DMN}, 1663a702e49SBob Copeland {NULL1_WORLD, NO_CTL, CTL_ETSI}, 1673a702e49SBob Copeland {NULL1_ETSIB, NO_CTL, CTL_ETSI}, 1683a702e49SBob Copeland {NULL1_ETSIC, NO_CTL, CTL_ETSI}, 1693a702e49SBob Copeland 1703a702e49SBob Copeland {FCC2_FCCA, CTL_FCC, CTL_FCC}, 1713a702e49SBob Copeland {FCC2_WORLD, CTL_FCC, CTL_ETSI}, 1723a702e49SBob Copeland {FCC2_ETSIC, CTL_FCC, CTL_ETSI}, 1733a702e49SBob Copeland {FCC3_FCCA, CTL_FCC, CTL_FCC}, 1743a702e49SBob Copeland {FCC3_WORLD, CTL_FCC, CTL_ETSI}, 1753a702e49SBob Copeland {FCC4_FCCA, CTL_FCC, CTL_FCC}, 1763a702e49SBob Copeland {FCC5_FCCA, CTL_FCC, CTL_FCC}, 1773a702e49SBob Copeland {FCC6_FCCA, CTL_FCC, CTL_FCC}, 1783a702e49SBob Copeland {FCC6_WORLD, CTL_FCC, CTL_ETSI}, 1793a702e49SBob Copeland 1803a702e49SBob Copeland {ETSI1_WORLD, CTL_ETSI, CTL_ETSI}, 1813a702e49SBob Copeland {ETSI2_WORLD, CTL_ETSI, CTL_ETSI}, 1823a702e49SBob Copeland {ETSI3_WORLD, CTL_ETSI, CTL_ETSI}, 1833a702e49SBob Copeland {ETSI4_WORLD, CTL_ETSI, CTL_ETSI}, 1843a702e49SBob Copeland {ETSI5_WORLD, CTL_ETSI, CTL_ETSI}, 1853a702e49SBob Copeland {ETSI6_WORLD, CTL_ETSI, CTL_ETSI}, 18645faf6e0SSven Eckelmann {ETSI8_WORLD, CTL_ETSI, CTL_ETSI}, 187897fab6cSSven Eckelmann {ETSI9_WORLD, CTL_ETSI, CTL_ETSI}, 1883a702e49SBob Copeland 1893a702e49SBob Copeland /* XXX: For ETSI3_ETSIA, Was NO_CTL meant for the 2 GHz band ? */ 1903a702e49SBob Copeland {ETSI3_ETSIA, CTL_ETSI, CTL_ETSI}, 1913a702e49SBob Copeland {FRANCE_RES, CTL_ETSI, CTL_ETSI}, 1923a702e49SBob Copeland 1933a702e49SBob Copeland {FCC1_WORLD, CTL_FCC, CTL_ETSI}, 1943a702e49SBob Copeland {FCC1_FCCA, CTL_FCC, CTL_FCC}, 1953a702e49SBob Copeland {APL1_WORLD, CTL_FCC, CTL_ETSI}, 1963a702e49SBob Copeland {APL2_WORLD, CTL_FCC, CTL_ETSI}, 1974f183687SSven Eckelmann {APL2_FCCA, CTL_FCC, CTL_FCC}, 1983a702e49SBob Copeland {APL3_WORLD, CTL_FCC, CTL_ETSI}, 1993a702e49SBob Copeland {APL4_WORLD, CTL_FCC, CTL_ETSI}, 2003a702e49SBob Copeland {APL5_WORLD, CTL_FCC, CTL_ETSI}, 2019ba8df0cSSven Eckelmann {APL13_WORLD, CTL_ETSI, CTL_ETSI}, 2023a702e49SBob Copeland {APL6_WORLD, CTL_ETSI, CTL_ETSI}, 2033a702e49SBob Copeland {APL8_WORLD, CTL_ETSI, CTL_ETSI}, 2043a702e49SBob Copeland {APL9_WORLD, CTL_ETSI, CTL_ETSI}, 2053a702e49SBob Copeland 2063a702e49SBob Copeland {APL3_FCCA, CTL_FCC, CTL_FCC}, 207bd39a274SChristian Lamparter {APL7_FCCA, CTL_FCC, CTL_FCC}, 2083a702e49SBob Copeland {APL1_ETSIC, CTL_FCC, CTL_ETSI}, 2093a702e49SBob Copeland {APL2_ETSIC, CTL_FCC, CTL_ETSI}, 2103a702e49SBob Copeland {APL2_APLD, CTL_FCC, NO_CTL}, 2113a702e49SBob Copeland 2123a702e49SBob Copeland {MKK1_MKKA, CTL_MKK, CTL_MKK}, 2133a702e49SBob Copeland {MKK1_MKKB, CTL_MKK, CTL_MKK}, 2143a702e49SBob Copeland {MKK1_FCCA, CTL_MKK, CTL_FCC}, 2153a702e49SBob Copeland {MKK1_MKKA1, CTL_MKK, CTL_MKK}, 2163a702e49SBob Copeland {MKK1_MKKA2, CTL_MKK, CTL_MKK}, 2173a702e49SBob Copeland {MKK1_MKKC, CTL_MKK, CTL_MKK}, 2183a702e49SBob Copeland 2193a702e49SBob Copeland {MKK2_MKKA, CTL_MKK, CTL_MKK}, 2203a702e49SBob Copeland {MKK3_MKKA, CTL_MKK, CTL_MKK}, 2213a702e49SBob Copeland {MKK3_MKKB, CTL_MKK, CTL_MKK}, 2223a702e49SBob Copeland {MKK3_MKKA1, CTL_MKK, CTL_MKK}, 2233a702e49SBob Copeland {MKK3_MKKA2, CTL_MKK, CTL_MKK}, 2243a702e49SBob Copeland {MKK3_MKKC, CTL_MKK, CTL_MKK}, 2253a702e49SBob Copeland {MKK3_FCCA, CTL_MKK, CTL_FCC}, 2263a702e49SBob Copeland 2273a702e49SBob Copeland {MKK4_MKKA, CTL_MKK, CTL_MKK}, 2283a702e49SBob Copeland {MKK4_MKKB, CTL_MKK, CTL_MKK}, 2293a702e49SBob Copeland {MKK4_MKKA1, CTL_MKK, CTL_MKK}, 2303a702e49SBob Copeland {MKK4_MKKA2, CTL_MKK, CTL_MKK}, 2313a702e49SBob Copeland {MKK4_MKKC, CTL_MKK, CTL_MKK}, 2323a702e49SBob Copeland {MKK4_FCCA, CTL_MKK, CTL_FCC}, 2333a702e49SBob Copeland 2343a702e49SBob Copeland {MKK5_MKKB, CTL_MKK, CTL_MKK}, 2353a702e49SBob Copeland {MKK5_MKKA2, CTL_MKK, CTL_MKK}, 2363a702e49SBob Copeland {MKK5_MKKC, CTL_MKK, CTL_MKK}, 2373a702e49SBob Copeland 2383a702e49SBob Copeland {MKK6_MKKB, CTL_MKK, CTL_MKK}, 2393a702e49SBob Copeland {MKK6_MKKA1, CTL_MKK, CTL_MKK}, 2403a702e49SBob Copeland {MKK6_MKKA2, CTL_MKK, CTL_MKK}, 2413a702e49SBob Copeland {MKK6_MKKC, CTL_MKK, CTL_MKK}, 2423a702e49SBob Copeland {MKK6_FCCA, CTL_MKK, CTL_FCC}, 2433a702e49SBob Copeland 2443a702e49SBob Copeland {MKK7_MKKB, CTL_MKK, CTL_MKK}, 2453a702e49SBob Copeland {MKK7_MKKA1, CTL_MKK, CTL_MKK}, 2463a702e49SBob Copeland {MKK7_MKKA2, CTL_MKK, CTL_MKK}, 2473a702e49SBob Copeland {MKK7_MKKC, CTL_MKK, CTL_MKK}, 2483a702e49SBob Copeland {MKK7_FCCA, CTL_MKK, CTL_FCC}, 2493a702e49SBob Copeland 2503a702e49SBob Copeland {MKK8_MKKB, CTL_MKK, CTL_MKK}, 2513a702e49SBob Copeland {MKK8_MKKA2, CTL_MKK, CTL_MKK}, 2523a702e49SBob Copeland {MKK8_MKKC, CTL_MKK, CTL_MKK}, 2533a702e49SBob Copeland 2543a702e49SBob Copeland {MKK9_MKKA, CTL_MKK, CTL_MKK}, 2553a702e49SBob Copeland {MKK9_FCCA, CTL_MKK, CTL_FCC}, 2563a702e49SBob Copeland {MKK9_MKKA1, CTL_MKK, CTL_MKK}, 2573a702e49SBob Copeland {MKK9_MKKA2, CTL_MKK, CTL_MKK}, 2583a702e49SBob Copeland {MKK9_MKKC, CTL_MKK, CTL_MKK}, 2593a702e49SBob Copeland 2603a702e49SBob Copeland {MKK10_MKKA, CTL_MKK, CTL_MKK}, 2613a702e49SBob Copeland {MKK10_FCCA, CTL_MKK, CTL_FCC}, 2623a702e49SBob Copeland {MKK10_MKKA1, CTL_MKK, CTL_MKK}, 2633a702e49SBob Copeland {MKK10_MKKA2, CTL_MKK, CTL_MKK}, 2643a702e49SBob Copeland {MKK10_MKKC, CTL_MKK, CTL_MKK}, 2653a702e49SBob Copeland 2663a702e49SBob Copeland {MKK11_MKKA, CTL_MKK, CTL_MKK}, 2673a702e49SBob Copeland {MKK11_FCCA, CTL_MKK, CTL_FCC}, 2683a702e49SBob Copeland {MKK11_MKKA1, CTL_MKK, CTL_MKK}, 2693a702e49SBob Copeland {MKK11_MKKA2, CTL_MKK, CTL_MKK}, 2703a702e49SBob Copeland {MKK11_MKKC, CTL_MKK, CTL_MKK}, 2713a702e49SBob Copeland 2723a702e49SBob Copeland {MKK12_MKKA, CTL_MKK, CTL_MKK}, 2733a702e49SBob Copeland {MKK12_FCCA, CTL_MKK, CTL_FCC}, 2743a702e49SBob Copeland {MKK12_MKKA1, CTL_MKK, CTL_MKK}, 2753a702e49SBob Copeland {MKK12_MKKA2, CTL_MKK, CTL_MKK}, 2763a702e49SBob Copeland {MKK12_MKKC, CTL_MKK, CTL_MKK}, 2773a702e49SBob Copeland 2783a702e49SBob Copeland {MKK13_MKKB, CTL_MKK, CTL_MKK}, 2793a702e49SBob Copeland {MKK14_MKKA1, CTL_MKK, CTL_MKK}, 2803a702e49SBob Copeland {MKK15_MKKA1, CTL_MKK, CTL_MKK}, 2813a702e49SBob Copeland 2823a702e49SBob Copeland {WOR0_WORLD, NO_CTL, NO_CTL}, 2833a702e49SBob Copeland {WOR1_WORLD, NO_CTL, NO_CTL}, 2843a702e49SBob Copeland {WOR2_WORLD, NO_CTL, NO_CTL}, 2853a702e49SBob Copeland {WOR3_WORLD, NO_CTL, NO_CTL}, 2863a702e49SBob Copeland {WOR4_WORLD, NO_CTL, NO_CTL}, 2873a702e49SBob Copeland {WOR5_ETSIC, NO_CTL, NO_CTL}, 2883a702e49SBob Copeland {WOR01_WORLD, NO_CTL, NO_CTL}, 2893a702e49SBob Copeland {WOR02_WORLD, NO_CTL, NO_CTL}, 2903a702e49SBob Copeland {EU1_WORLD, NO_CTL, NO_CTL}, 2913a702e49SBob Copeland {WOR9_WORLD, NO_CTL, NO_CTL}, 2923a702e49SBob Copeland {WORA_WORLD, NO_CTL, NO_CTL}, 2933a702e49SBob Copeland {WORB_WORLD, NO_CTL, NO_CTL}, 29434a0a202SSenthil Balasubramanian {WORC_WORLD, NO_CTL, NO_CTL}, 2953a702e49SBob Copeland }; 2963a702e49SBob Copeland 2973a702e49SBob Copeland static struct country_code_to_enum_rd allCountries[] = { 2983a702e49SBob Copeland {CTRY_DEBUG, NO_ENUMRD, "DB"}, 2993a702e49SBob Copeland {CTRY_DEFAULT, FCC1_FCCA, "CO"}, 3003a702e49SBob Copeland {CTRY_ALBANIA, NULL1_WORLD, "AL"}, 3013a702e49SBob Copeland {CTRY_ALGERIA, NULL1_WORLD, "DZ"}, 302bd6b4442SVivek Natarajan {CTRY_ARGENTINA, FCC3_WORLD, "AR"}, 3033a702e49SBob Copeland {CTRY_ARMENIA, ETSI4_WORLD, "AM"}, 304bd6b4442SVivek Natarajan {CTRY_ARUBA, ETSI1_WORLD, "AW"}, 3053a702e49SBob Copeland {CTRY_AUSTRALIA, FCC2_WORLD, "AU"}, 3063a702e49SBob Copeland {CTRY_AUSTRALIA2, FCC6_WORLD, "AU"}, 3073a702e49SBob Copeland {CTRY_AUSTRIA, ETSI1_WORLD, "AT"}, 3083a702e49SBob Copeland {CTRY_AZERBAIJAN, ETSI4_WORLD, "AZ"}, 309699e2302SSven Eckelmann {CTRY_BAHAMAS, FCC3_WORLD, "BS"}, 3103a702e49SBob Copeland {CTRY_BAHRAIN, APL6_WORLD, "BH"}, 311bd6b4442SVivek Natarajan {CTRY_BANGLADESH, NULL1_WORLD, "BD"}, 312bd6b4442SVivek Natarajan {CTRY_BARBADOS, FCC2_WORLD, "BB"}, 3133a702e49SBob Copeland {CTRY_BELARUS, ETSI1_WORLD, "BY"}, 3143a702e49SBob Copeland {CTRY_BELGIUM, ETSI1_WORLD, "BE"}, 3153a702e49SBob Copeland {CTRY_BELGIUM2, ETSI4_WORLD, "BL"}, 3163a702e49SBob Copeland {CTRY_BELIZE, APL1_ETSIC, "BZ"}, 3179c790f2dSSven Eckelmann {CTRY_BERMUDA, FCC3_FCCA, "BM"}, 3183a702e49SBob Copeland {CTRY_BOLIVIA, APL1_ETSIC, "BO"}, 3193a702e49SBob Copeland {CTRY_BOSNIA_HERZ, ETSI1_WORLD, "BA"}, 3203a702e49SBob Copeland {CTRY_BRAZIL, FCC3_WORLD, "BR"}, 3213a702e49SBob Copeland {CTRY_BRUNEI_DARUSSALAM, APL1_WORLD, "BN"}, 3223a702e49SBob Copeland {CTRY_BULGARIA, ETSI6_WORLD, "BG"}, 323bd6b4442SVivek Natarajan {CTRY_CAMBODIA, ETSI1_WORLD, "KH"}, 324bd6b4442SVivek Natarajan {CTRY_CANADA, FCC3_FCCA, "CA"}, 3253a702e49SBob Copeland {CTRY_CANADA2, FCC6_FCCA, "CA"}, 3263a702e49SBob Copeland {CTRY_CHILE, APL6_WORLD, "CL"}, 3273a702e49SBob Copeland {CTRY_CHINA, APL1_WORLD, "CN"}, 3283a702e49SBob Copeland {CTRY_COLOMBIA, FCC1_FCCA, "CO"}, 3293a702e49SBob Copeland {CTRY_COSTA_RICA, FCC1_WORLD, "CR"}, 330bd6b4442SVivek Natarajan {CTRY_CROATIA, ETSI1_WORLD, "HR"}, 3313a702e49SBob Copeland {CTRY_CYPRUS, ETSI1_WORLD, "CY"}, 3323a702e49SBob Copeland {CTRY_CZECH, ETSI3_WORLD, "CZ"}, 3333a702e49SBob Copeland {CTRY_DENMARK, ETSI1_WORLD, "DK"}, 3343a702e49SBob Copeland {CTRY_DOMINICAN_REPUBLIC, FCC1_FCCA, "DO"}, 3353a702e49SBob Copeland {CTRY_ECUADOR, FCC1_WORLD, "EC"}, 3363a702e49SBob Copeland {CTRY_EGYPT, ETSI3_WORLD, "EG"}, 3373a702e49SBob Copeland {CTRY_EL_SALVADOR, FCC1_WORLD, "SV"}, 3383a702e49SBob Copeland {CTRY_ESTONIA, ETSI1_WORLD, "EE"}, 3393a702e49SBob Copeland {CTRY_FINLAND, ETSI1_WORLD, "FI"}, 3403a702e49SBob Copeland {CTRY_FRANCE, ETSI1_WORLD, "FR"}, 3413a702e49SBob Copeland {CTRY_GEORGIA, ETSI4_WORLD, "GE"}, 3423a702e49SBob Copeland {CTRY_GERMANY, ETSI1_WORLD, "DE"}, 3433a702e49SBob Copeland {CTRY_GREECE, ETSI1_WORLD, "GR"}, 344bd6b4442SVivek Natarajan {CTRY_GREENLAND, ETSI1_WORLD, "GL"}, 345d601d9caSPavel Roskin {CTRY_GRENADA, FCC3_FCCA, "GD"}, 346bd6b4442SVivek Natarajan {CTRY_GUAM, FCC1_FCCA, "GU"}, 3473a702e49SBob Copeland {CTRY_GUATEMALA, FCC1_FCCA, "GT"}, 348bd6b4442SVivek Natarajan {CTRY_HAITI, ETSI1_WORLD, "HT"}, 3493a702e49SBob Copeland {CTRY_HONDURAS, NULL1_WORLD, "HN"}, 350bd6b4442SVivek Natarajan {CTRY_HONG_KONG, FCC3_WORLD, "HK"}, 3513a702e49SBob Copeland {CTRY_HUNGARY, ETSI1_WORLD, "HU"}, 3523a702e49SBob Copeland {CTRY_ICELAND, ETSI1_WORLD, "IS"}, 3533a702e49SBob Copeland {CTRY_INDIA, APL6_WORLD, "IN"}, 354bd6b4442SVivek Natarajan {CTRY_INDONESIA, NULL1_WORLD, "ID"}, 3553a702e49SBob Copeland {CTRY_IRAN, APL1_WORLD, "IR"}, 3563a702e49SBob Copeland {CTRY_IRELAND, ETSI1_WORLD, "IE"}, 3573a702e49SBob Copeland {CTRY_ISRAEL, NULL1_WORLD, "IL"}, 3583a702e49SBob Copeland {CTRY_ITALY, ETSI1_WORLD, "IT"}, 359bd6b4442SVivek Natarajan {CTRY_JAMAICA, FCC3_WORLD, "JM"}, 3603a702e49SBob Copeland 3613a702e49SBob Copeland {CTRY_JAPAN, MKK1_MKKA, "JP"}, 3623a702e49SBob Copeland {CTRY_JAPAN1, MKK1_MKKB, "JP"}, 3633a702e49SBob Copeland {CTRY_JAPAN2, MKK1_FCCA, "JP"}, 3643a702e49SBob Copeland {CTRY_JAPAN3, MKK2_MKKA, "JP"}, 3653a702e49SBob Copeland {CTRY_JAPAN4, MKK1_MKKA1, "JP"}, 3663a702e49SBob Copeland {CTRY_JAPAN5, MKK1_MKKA2, "JP"}, 3673a702e49SBob Copeland {CTRY_JAPAN6, MKK1_MKKC, "JP"}, 3683a702e49SBob Copeland {CTRY_JAPAN7, MKK3_MKKB, "JP"}, 3693a702e49SBob Copeland {CTRY_JAPAN8, MKK3_MKKA2, "JP"}, 3703a702e49SBob Copeland {CTRY_JAPAN9, MKK3_MKKC, "JP"}, 3713a702e49SBob Copeland {CTRY_JAPAN10, MKK4_MKKB, "JP"}, 3723a702e49SBob Copeland {CTRY_JAPAN11, MKK4_MKKA2, "JP"}, 3733a702e49SBob Copeland {CTRY_JAPAN12, MKK4_MKKC, "JP"}, 3743a702e49SBob Copeland {CTRY_JAPAN13, MKK5_MKKB, "JP"}, 3753a702e49SBob Copeland {CTRY_JAPAN14, MKK5_MKKA2, "JP"}, 3763a702e49SBob Copeland {CTRY_JAPAN15, MKK5_MKKC, "JP"}, 3773a702e49SBob Copeland {CTRY_JAPAN16, MKK6_MKKB, "JP"}, 3783a702e49SBob Copeland {CTRY_JAPAN17, MKK6_MKKA2, "JP"}, 3793a702e49SBob Copeland {CTRY_JAPAN18, MKK6_MKKC, "JP"}, 3803a702e49SBob Copeland {CTRY_JAPAN19, MKK7_MKKB, "JP"}, 3813a702e49SBob Copeland {CTRY_JAPAN20, MKK7_MKKA2, "JP"}, 3823a702e49SBob Copeland {CTRY_JAPAN21, MKK7_MKKC, "JP"}, 3833a702e49SBob Copeland {CTRY_JAPAN22, MKK8_MKKB, "JP"}, 3843a702e49SBob Copeland {CTRY_JAPAN23, MKK8_MKKA2, "JP"}, 3853a702e49SBob Copeland {CTRY_JAPAN24, MKK8_MKKC, "JP"}, 3863a702e49SBob Copeland {CTRY_JAPAN25, MKK3_MKKA, "JP"}, 3873a702e49SBob Copeland {CTRY_JAPAN26, MKK3_MKKA1, "JP"}, 3883a702e49SBob Copeland {CTRY_JAPAN27, MKK3_FCCA, "JP"}, 3893a702e49SBob Copeland {CTRY_JAPAN28, MKK4_MKKA1, "JP"}, 3903a702e49SBob Copeland {CTRY_JAPAN29, MKK4_FCCA, "JP"}, 3913a702e49SBob Copeland {CTRY_JAPAN30, MKK6_MKKA1, "JP"}, 3923a702e49SBob Copeland {CTRY_JAPAN31, MKK6_FCCA, "JP"}, 3933a702e49SBob Copeland {CTRY_JAPAN32, MKK7_MKKA1, "JP"}, 3943a702e49SBob Copeland {CTRY_JAPAN33, MKK7_FCCA, "JP"}, 3953a702e49SBob Copeland {CTRY_JAPAN34, MKK9_MKKA, "JP"}, 3963a702e49SBob Copeland {CTRY_JAPAN35, MKK10_MKKA, "JP"}, 3973a702e49SBob Copeland {CTRY_JAPAN36, MKK4_MKKA, "JP"}, 3983a702e49SBob Copeland {CTRY_JAPAN37, MKK9_FCCA, "JP"}, 3993a702e49SBob Copeland {CTRY_JAPAN38, MKK9_MKKA1, "JP"}, 4003a702e49SBob Copeland {CTRY_JAPAN39, MKK9_MKKC, "JP"}, 4013a702e49SBob Copeland {CTRY_JAPAN40, MKK9_MKKA2, "JP"}, 4023a702e49SBob Copeland {CTRY_JAPAN41, MKK10_FCCA, "JP"}, 4033a702e49SBob Copeland {CTRY_JAPAN42, MKK10_MKKA1, "JP"}, 4043a702e49SBob Copeland {CTRY_JAPAN43, MKK10_MKKC, "JP"}, 4053a702e49SBob Copeland {CTRY_JAPAN44, MKK10_MKKA2, "JP"}, 4063a702e49SBob Copeland {CTRY_JAPAN45, MKK11_MKKA, "JP"}, 4073a702e49SBob Copeland {CTRY_JAPAN46, MKK11_FCCA, "JP"}, 4083a702e49SBob Copeland {CTRY_JAPAN47, MKK11_MKKA1, "JP"}, 4093a702e49SBob Copeland {CTRY_JAPAN48, MKK11_MKKC, "JP"}, 4103a702e49SBob Copeland {CTRY_JAPAN49, MKK11_MKKA2, "JP"}, 4113a702e49SBob Copeland {CTRY_JAPAN50, MKK12_MKKA, "JP"}, 4123a702e49SBob Copeland {CTRY_JAPAN51, MKK12_FCCA, "JP"}, 4133a702e49SBob Copeland {CTRY_JAPAN52, MKK12_MKKA1, "JP"}, 4143a702e49SBob Copeland {CTRY_JAPAN53, MKK12_MKKC, "JP"}, 4153a702e49SBob Copeland {CTRY_JAPAN54, MKK12_MKKA2, "JP"}, 4163a702e49SBob Copeland {CTRY_JAPAN57, MKK13_MKKB, "JP"}, 4173a702e49SBob Copeland {CTRY_JAPAN58, MKK14_MKKA1, "JP"}, 4183a702e49SBob Copeland {CTRY_JAPAN59, MKK15_MKKA1, "JP"}, 4193a702e49SBob Copeland 4203a702e49SBob Copeland {CTRY_JORDAN, ETSI2_WORLD, "JO"}, 4213a702e49SBob Copeland {CTRY_KAZAKHSTAN, NULL1_WORLD, "KZ"}, 422b840fa91SSven Eckelmann {CTRY_KENYA, APL1_WORLD, "KE"}, 4233a702e49SBob Copeland {CTRY_KOREA_NORTH, APL9_WORLD, "KP"}, 4243a702e49SBob Copeland {CTRY_KOREA_ROC, APL9_WORLD, "KR"}, 4253a702e49SBob Copeland {CTRY_KOREA_ROC2, APL2_WORLD, "K2"}, 4263a702e49SBob Copeland {CTRY_KOREA_ROC3, APL9_WORLD, "K3"}, 427bd6b4442SVivek Natarajan {CTRY_KUWAIT, ETSI3_WORLD, "KW"}, 4283a702e49SBob Copeland {CTRY_LATVIA, ETSI1_WORLD, "LV"}, 4293a702e49SBob Copeland {CTRY_LEBANON, NULL1_WORLD, "LB"}, 4303a702e49SBob Copeland {CTRY_LIECHTENSTEIN, ETSI1_WORLD, "LI"}, 4313a702e49SBob Copeland {CTRY_LITHUANIA, ETSI1_WORLD, "LT"}, 4323a702e49SBob Copeland {CTRY_LUXEMBOURG, ETSI1_WORLD, "LU"}, 4333a702e49SBob Copeland {CTRY_MACAU, FCC2_WORLD, "MO"}, 4343a702e49SBob Copeland {CTRY_MACEDONIA, NULL1_WORLD, "MK"}, 4353a702e49SBob Copeland {CTRY_MALAYSIA, APL8_WORLD, "MY"}, 4363a702e49SBob Copeland {CTRY_MALTA, ETSI1_WORLD, "MT"}, 437a71c984bSSven Eckelmann {CTRY_MAURITIUS, ETSI1_WORLD, "MU"}, 4383a702e49SBob Copeland {CTRY_MEXICO, FCC1_FCCA, "MX"}, 4393a702e49SBob Copeland {CTRY_MONACO, ETSI4_WORLD, "MC"}, 440a0a6f2a9SSven Eckelmann {CTRY_MONTENEGRO, ETSI1_WORLD, "ME"}, 441bd6b4442SVivek Natarajan {CTRY_MOROCCO, APL4_WORLD, "MA"}, 4423a702e49SBob Copeland {CTRY_NEPAL, APL1_WORLD, "NP"}, 4433a702e49SBob Copeland {CTRY_NETHERLANDS, ETSI1_WORLD, "NL"}, 4443a702e49SBob Copeland {CTRY_NETHERLANDS_ANTILLES, ETSI1_WORLD, "AN"}, 4453a702e49SBob Copeland {CTRY_NEW_ZEALAND, FCC2_ETSIC, "NZ"}, 446a20f1338SSven Eckelmann {CTRY_NICARAGUA, FCC3_FCCA, "NI"}, 4473a702e49SBob Copeland {CTRY_NORWAY, ETSI1_WORLD, "NO"}, 448bd6b4442SVivek Natarajan {CTRY_OMAN, FCC3_WORLD, "OM"}, 4493a702e49SBob Copeland {CTRY_PAKISTAN, NULL1_WORLD, "PK"}, 4503a702e49SBob Copeland {CTRY_PANAMA, FCC1_FCCA, "PA"}, 4513a702e49SBob Copeland {CTRY_PAPUA_NEW_GUINEA, FCC1_WORLD, "PG"}, 45267a95668SSven Eckelmann {CTRY_PARAGUAY, FCC3_WORLD, "PY"}, 4533a702e49SBob Copeland {CTRY_PERU, APL1_WORLD, "PE"}, 4543a702e49SBob Copeland {CTRY_PHILIPPINES, APL1_WORLD, "PH"}, 4553a702e49SBob Copeland {CTRY_POLAND, ETSI1_WORLD, "PL"}, 4563a702e49SBob Copeland {CTRY_PORTUGAL, ETSI1_WORLD, "PT"}, 4573a702e49SBob Copeland {CTRY_PUERTO_RICO, FCC1_FCCA, "PR"}, 458bd6b4442SVivek Natarajan {CTRY_QATAR, APL1_WORLD, "QA"}, 4593a702e49SBob Copeland {CTRY_ROMANIA, NULL1_WORLD, "RO"}, 4603a702e49SBob Copeland {CTRY_RUSSIA, NULL1_WORLD, "RU"}, 4613a702e49SBob Copeland {CTRY_SAUDI_ARABIA, NULL1_WORLD, "SA"}, 4622a3169a5SSven Eckelmann {CTRY_SERBIA, ETSI1_WORLD, "RS"}, 4633a702e49SBob Copeland {CTRY_SERBIA_MONTENEGRO, ETSI1_WORLD, "CS"}, 4643a702e49SBob Copeland {CTRY_SINGAPORE, APL6_WORLD, "SG"}, 4653a702e49SBob Copeland {CTRY_SLOVAKIA, ETSI1_WORLD, "SK"}, 4663a702e49SBob Copeland {CTRY_SLOVENIA, ETSI1_WORLD, "SI"}, 4673a702e49SBob Copeland {CTRY_SOUTH_AFRICA, FCC3_WORLD, "ZA"}, 4683a702e49SBob Copeland {CTRY_SPAIN, ETSI1_WORLD, "ES"}, 4693a702e49SBob Copeland {CTRY_SRI_LANKA, FCC3_WORLD, "LK"}, 4703a702e49SBob Copeland {CTRY_SWEDEN, ETSI1_WORLD, "SE"}, 4713a702e49SBob Copeland {CTRY_SWITZERLAND, ETSI1_WORLD, "CH"}, 4723a702e49SBob Copeland {CTRY_SYRIA, NULL1_WORLD, "SY"}, 4733a702e49SBob Copeland {CTRY_TAIWAN, APL3_FCCA, "TW"}, 474667ddac5SSven Eckelmann {CTRY_TANZANIA, APL1_WORLD, "TZ"}, 47558d30d14SLuis R. Rodriguez {CTRY_THAILAND, FCC3_WORLD, "TH"}, 476bd6b4442SVivek Natarajan {CTRY_TRINIDAD_Y_TOBAGO, FCC3_WORLD, "TT"}, 4773a702e49SBob Copeland {CTRY_TUNISIA, ETSI3_WORLD, "TN"}, 4783a702e49SBob Copeland {CTRY_TURKEY, ETSI3_WORLD, "TR"}, 4791ea3986aSSven Eckelmann {CTRY_UGANDA, FCC3_WORLD, "UG"}, 4803a702e49SBob Copeland {CTRY_UKRAINE, NULL1_WORLD, "UA"}, 4813a702e49SBob Copeland {CTRY_UAE, NULL1_WORLD, "AE"}, 4823a702e49SBob Copeland {CTRY_UNITED_KINGDOM, ETSI1_WORLD, "GB"}, 4833a702e49SBob Copeland {CTRY_UNITED_STATES, FCC3_FCCA, "US"}, 4843a702e49SBob Copeland /* This "PS" is for US public safety actually... to support this we 4853a702e49SBob Copeland * would need to assign new special alpha2 to CRDA db as with the world 4863a702e49SBob Copeland * regdomain and use another alpha2 */ 4873a702e49SBob Copeland {CTRY_UNITED_STATES_FCC49, FCC4_FCCA, "PS"}, 488bd6b4442SVivek Natarajan {CTRY_URUGUAY, FCC3_WORLD, "UY"}, 4893a702e49SBob Copeland {CTRY_UZBEKISTAN, FCC3_FCCA, "UZ"}, 4903a702e49SBob Copeland {CTRY_VENEZUELA, APL2_ETSIC, "VE"}, 4913a702e49SBob Copeland {CTRY_VIET_NAM, NULL1_WORLD, "VN"}, 4923a702e49SBob Copeland {CTRY_YEMEN, NULL1_WORLD, "YE"}, 4933a702e49SBob Copeland {CTRY_ZIMBABWE, NULL1_WORLD, "ZW"}, 4943a702e49SBob Copeland }; 4953a702e49SBob Copeland 4963a702e49SBob Copeland #endif 497