linux/drivers/net/wireless/ath/regd_common.h
<<
>>
Prefs
   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
  20enum 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 */
 159static 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
 289static 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
 479