/*
 * Copyright (c) 2008-2009 Atheros Communications Inc.
 *
 * Permission to use, copy, modify, and/or distribute this software for any
 * purpose with or without fee is hereby granted, provided that the above
 * copyright notice and this permission notice appear in all copies.
 *
 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 */

#ifndef REGD_COMMON_H
#define REGD_COMMON_H

enum EnumRd {
	NO_ENUMRD = 0x00,
	NULL1_WORLD = 0x03,
	NULL1_ETSIB = 0x07,
	NULL1_ETSIC = 0x08,
	FCC1_FCCA = 0x10,
	FCC1_WORLD = 0x11,
	FCC4_FCCA = 0x12,
	FCC5_FCCA = 0x13,
	FCC6_FCCA = 0x14,

	FCC2_FCCA = 0x20,
	FCC2_WORLD = 0x21,
	FCC2_ETSIC = 0x22,
	FCC6_WORLD = 0x23,
	FRANCE_RES = 0x31,
	FCC3_FCCA = 0x3A,
	FCC3_WORLD = 0x3B,

	ETSI1_WORLD = 0x37,
	ETSI3_ETSIA = 0x32,
	ETSI2_WORLD = 0x35,
	ETSI3_WORLD = 0x36,
	ETSI4_WORLD = 0x30,
	ETSI4_ETSIC = 0x38,
	ETSI5_WORLD = 0x39,
	ETSI6_WORLD = 0x34,
	ETSI_RESERVED = 0x33,

	MKK1_MKKA = 0x40,
	MKK1_MKKB = 0x41,
	APL4_WORLD = 0x42,
	MKK2_MKKA = 0x43,
	APL_RESERVED = 0x44,
	APL2_WORLD = 0x45,
	APL2_APLC = 0x46,
	APL3_WORLD = 0x47,
	MKK1_FCCA = 0x48,
	APL2_APLD = 0x49,
	MKK1_MKKA1 = 0x4A,
	MKK1_MKKA2 = 0x4B,
	MKK1_MKKC = 0x4C,

	APL3_FCCA = 0x50,
	APL1_WORLD = 0x52,
	APL1_FCCA = 0x53,
	APL1_APLA = 0x54,
	APL1_ETSIC = 0x55,
	APL2_ETSIC = 0x56,
	APL5_WORLD = 0x58,
	APL6_WORLD = 0x5B,
	APL7_FCCA = 0x5C,
	APL8_WORLD = 0x5D,
	APL9_WORLD = 0x5E,

	WOR0_WORLD = 0x60,
	WOR1_WORLD = 0x61,
	WOR2_WORLD = 0x62,
	WOR3_WORLD = 0x63,
	WOR4_WORLD = 0x64,
	WOR5_ETSIC = 0x65,

	WOR01_WORLD = 0x66,
	WOR02_WORLD = 0x67,
	EU1_WORLD = 0x68,

	WOR9_WORLD = 0x69,
	WORA_WORLD = 0x6A,
	WORB_WORLD = 0x6B,

	MKK3_MKKB = 0x80,
	MKK3_MKKA2 = 0x81,
	MKK3_MKKC = 0x82,

	MKK4_MKKB = 0x83,
	MKK4_MKKA2 = 0x84,
	MKK4_MKKC = 0x85,

	MKK5_MKKB = 0x86,
	MKK5_MKKA2 = 0x87,
	MKK5_MKKC = 0x88,

	MKK6_MKKB = 0x89,
	MKK6_MKKA2 = 0x8A,
	MKK6_MKKC = 0x8B,

	MKK7_MKKB = 0x8C,
	MKK7_MKKA2 = 0x8D,
	MKK7_MKKC = 0x8E,

	MKK8_MKKB = 0x8F,
	MKK8_MKKA2 = 0x90,
	MKK8_MKKC = 0x91,

	MKK14_MKKA1 = 0x92,
	MKK15_MKKA1 = 0x93,

	MKK10_FCCA = 0xD0,
	MKK10_MKKA1 = 0xD1,
	MKK10_MKKC = 0xD2,
	MKK10_MKKA2 = 0xD3,

	MKK11_MKKA = 0xD4,
	MKK11_FCCA = 0xD5,
	MKK11_MKKA1 = 0xD6,
	MKK11_MKKC = 0xD7,
	MKK11_MKKA2 = 0xD8,

	MKK12_MKKA = 0xD9,
	MKK12_FCCA = 0xDA,
	MKK12_MKKA1 = 0xDB,
	MKK12_MKKC = 0xDC,
	MKK12_MKKA2 = 0xDD,

	MKK13_MKKB = 0xDE,

	MKK3_MKKA = 0xF0,
	MKK3_MKKA1 = 0xF1,
	MKK3_FCCA = 0xF2,
	MKK4_MKKA = 0xF3,
	MKK4_MKKA1 = 0xF4,
	MKK4_FCCA = 0xF5,
	MKK9_MKKA = 0xF6,
	MKK10_MKKA = 0xF7,
	MKK6_MKKA1 = 0xF8,
	MKK6_FCCA = 0xF9,
	MKK7_MKKA1 = 0xFA,
	MKK7_FCCA = 0xFB,
	MKK9_FCCA = 0xFC,
	MKK9_MKKA1 = 0xFD,
	MKK9_MKKC = 0xFE,
	MKK9_MKKA2 = 0xFF,

	WORLD = 0x0199,
	DEBUG_REG_DMN = 0x01ff,
};

/* Regpair to CTL band mapping */
static struct reg_dmn_pair_mapping regDomainPairs[] = {
	/* regpair, 5 GHz CTL, 2 GHz CTL */
	{NO_ENUMRD, DEBUG_REG_DMN, DEBUG_REG_DMN},
	{NULL1_WORLD, NO_CTL, CTL_ETSI},
	{NULL1_ETSIB, NO_CTL, CTL_ETSI},
	{NULL1_ETSIC, NO_CTL, CTL_ETSI},

	{FCC2_FCCA, CTL_FCC, CTL_FCC},
	{FCC2_WORLD, CTL_FCC, CTL_ETSI},
	{FCC2_ETSIC, CTL_FCC, CTL_ETSI},
	{FCC3_FCCA, CTL_FCC, CTL_FCC},
	{FCC3_WORLD, CTL_FCC, CTL_ETSI},
	{FCC4_FCCA, CTL_FCC, CTL_FCC},
	{FCC5_FCCA, CTL_FCC, CTL_FCC},
	{FCC6_FCCA, CTL_FCC, CTL_FCC},
	{FCC6_WORLD, CTL_FCC, CTL_ETSI},

	{ETSI1_WORLD, CTL_ETSI, CTL_ETSI},
	{ETSI2_WORLD, CTL_ETSI, CTL_ETSI},
	{ETSI3_WORLD, CTL_ETSI, CTL_ETSI},
	{ETSI4_WORLD, CTL_ETSI, CTL_ETSI},
	{ETSI5_WORLD, CTL_ETSI, CTL_ETSI},
	{ETSI6_WORLD, CTL_ETSI, CTL_ETSI},

	/* XXX: For ETSI3_ETSIA, Was NO_CTL meant for the 2 GHz band ? */
	{ETSI3_ETSIA, CTL_ETSI, CTL_ETSI},
	{FRANCE_RES, CTL_ETSI, CTL_ETSI},

	{FCC1_WORLD, CTL_FCC, CTL_ETSI},
	{FCC1_FCCA, CTL_FCC, CTL_FCC},
	{APL1_WORLD, CTL_FCC, CTL_ETSI},
	{APL2_WORLD, CTL_FCC, CTL_ETSI},
	{APL3_WORLD, CTL_FCC, CTL_ETSI},
	{APL4_WORLD, CTL_FCC, CTL_ETSI},
	{APL5_WORLD, CTL_FCC, CTL_ETSI},
	{APL6_WORLD, CTL_ETSI, CTL_ETSI},
	{APL8_WORLD, CTL_ETSI, CTL_ETSI},
	{APL9_WORLD, CTL_ETSI, CTL_ETSI},

	{APL3_FCCA, CTL_FCC, CTL_FCC},
	{APL7_FCCA, CTL_FCC, CTL_FCC},
	{APL1_ETSIC, CTL_FCC, CTL_ETSI},
	{APL2_ETSIC, CTL_FCC, CTL_ETSI},
	{APL2_APLD, CTL_FCC, NO_CTL},

	{MKK1_MKKA, CTL_MKK, CTL_MKK},
	{MKK1_MKKB, CTL_MKK, CTL_MKK},
	{MKK1_FCCA, CTL_MKK, CTL_FCC},
	{MKK1_MKKA1, CTL_MKK, CTL_MKK},
	{MKK1_MKKA2, CTL_MKK, CTL_MKK},
	{MKK1_MKKC, CTL_MKK, CTL_MKK},

	{MKK2_MKKA, CTL_MKK, CTL_MKK},
	{MKK3_MKKA, CTL_MKK, CTL_MKK},
	{MKK3_MKKB, CTL_MKK, CTL_MKK},
	{MKK3_MKKA1, CTL_MKK, CTL_MKK},
	{MKK3_MKKA2, CTL_MKK, CTL_MKK},
	{MKK3_MKKC, CTL_MKK, CTL_MKK},
	{MKK3_FCCA, CTL_MKK, CTL_FCC},

	{MKK4_MKKA, CTL_MKK, CTL_MKK},
	{MKK4_MKKB, CTL_MKK, CTL_MKK},
	{MKK4_MKKA1, CTL_MKK, CTL_MKK},
	{MKK4_MKKA2, CTL_MKK, CTL_MKK},
	{MKK4_MKKC, CTL_MKK, CTL_MKK},
	{MKK4_FCCA, CTL_MKK, CTL_FCC},

	{MKK5_MKKB, CTL_MKK, CTL_MKK},
	{MKK5_MKKA2, CTL_MKK, CTL_MKK},
	{MKK5_MKKC, CTL_MKK, CTL_MKK},

	{MKK6_MKKB, CTL_MKK, CTL_MKK},
	{MKK6_MKKA1, CTL_MKK, CTL_MKK},
	{MKK6_MKKA2, CTL_MKK, CTL_MKK},
	{MKK6_MKKC, CTL_MKK, CTL_MKK},
	{MKK6_FCCA, CTL_MKK, CTL_FCC},

	{MKK7_MKKB, CTL_MKK, CTL_MKK},
	{MKK7_MKKA1, CTL_MKK, CTL_MKK},
	{MKK7_MKKA2, CTL_MKK, CTL_MKK},
	{MKK7_MKKC, CTL_MKK, CTL_MKK},
	{MKK7_FCCA, CTL_MKK, CTL_FCC},

	{MKK8_MKKB, CTL_MKK, CTL_MKK},
	{MKK8_MKKA2, CTL_MKK, CTL_MKK},
	{MKK8_MKKC, CTL_MKK, CTL_MKK},

	{MKK9_MKKA, CTL_MKK, CTL_MKK},
	{MKK9_FCCA, CTL_MKK, CTL_FCC},
	{MKK9_MKKA1, CTL_MKK, CTL_MKK},
	{MKK9_MKKA2, CTL_MKK, CTL_MKK},
	{MKK9_MKKC, CTL_MKK, CTL_MKK},

	{MKK10_MKKA, CTL_MKK, CTL_MKK},
	{MKK10_FCCA, CTL_MKK, CTL_FCC},
	{MKK10_MKKA1, CTL_MKK, CTL_MKK},
	{MKK10_MKKA2, CTL_MKK, CTL_MKK},
	{MKK10_MKKC, CTL_MKK, CTL_MKK},

	{MKK11_MKKA, CTL_MKK, CTL_MKK},
	{MKK11_FCCA, CTL_MKK, CTL_FCC},
	{MKK11_MKKA1, CTL_MKK, CTL_MKK},
	{MKK11_MKKA2, CTL_MKK, CTL_MKK},
	{MKK11_MKKC, CTL_MKK, CTL_MKK},

	{MKK12_MKKA, CTL_MKK, CTL_MKK},
	{MKK12_FCCA, CTL_MKK, CTL_FCC},
	{MKK12_MKKA1, CTL_MKK, CTL_MKK},
	{MKK12_MKKA2, CTL_MKK, CTL_MKK},
	{MKK12_MKKC, CTL_MKK, CTL_MKK},

	{MKK13_MKKB, CTL_MKK, CTL_MKK},
	{MKK14_MKKA1, CTL_MKK, CTL_MKK},
	{MKK15_MKKA1, CTL_MKK, CTL_MKK},

	{WOR0_WORLD, NO_CTL, NO_CTL},
	{WOR1_WORLD, NO_CTL, NO_CTL},
	{WOR2_WORLD, NO_CTL, NO_CTL},
	{WOR3_WORLD, NO_CTL, NO_CTL},
	{WOR4_WORLD, NO_CTL, NO_CTL},
	{WOR5_ETSIC, NO_CTL, NO_CTL},
	{WOR01_WORLD, NO_CTL, NO_CTL},
	{WOR02_WORLD, NO_CTL, NO_CTL},
	{EU1_WORLD, NO_CTL, NO_CTL},
	{WOR9_WORLD, NO_CTL, NO_CTL},
	{WORA_WORLD, NO_CTL, NO_CTL},
	{WORB_WORLD, NO_CTL, NO_CTL},
};

static struct country_code_to_enum_rd allCountries[] = {
	{CTRY_DEBUG, NO_ENUMRD, "DB"},
	{CTRY_DEFAULT, FCC1_FCCA, "CO"},
	{CTRY_ALBANIA, NULL1_WORLD, "AL"},
	{CTRY_ALGERIA, NULL1_WORLD, "DZ"},
	{CTRY_ARGENTINA, FCC3_WORLD, "AR"},
	{CTRY_ARMENIA, ETSI4_WORLD, "AM"},
	{CTRY_ARUBA, ETSI1_WORLD, "AW"},
	{CTRY_AUSTRALIA, FCC2_WORLD, "AU"},
	{CTRY_AUSTRALIA2, FCC6_WORLD, "AU"},
	{CTRY_AUSTRIA, ETSI1_WORLD, "AT"},
	{CTRY_AZERBAIJAN, ETSI4_WORLD, "AZ"},
	{CTRY_BAHRAIN, APL6_WORLD, "BH"},
	{CTRY_BANGLADESH, NULL1_WORLD, "BD"},
	{CTRY_BARBADOS, FCC2_WORLD, "BB"},
	{CTRY_BELARUS, ETSI1_WORLD, "BY"},
	{CTRY_BELGIUM, ETSI1_WORLD, "BE"},
	{CTRY_BELGIUM2, ETSI4_WORLD, "BL"},
	{CTRY_BELIZE, APL1_ETSIC, "BZ"},
	{CTRY_BOLIVIA, APL1_ETSIC, "BO"},
	{CTRY_BOSNIA_HERZ, ETSI1_WORLD, "BA"},
	{CTRY_BRAZIL, FCC3_WORLD, "BR"},
	{CTRY_BRUNEI_DARUSSALAM, APL1_WORLD, "BN"},
	{CTRY_BULGARIA, ETSI6_WORLD, "BG"},
	{CTRY_CAMBODIA, ETSI1_WORLD, "KH"},
	{CTRY_CANADA, FCC3_FCCA, "CA"},
	{CTRY_CANADA2, FCC6_FCCA, "CA"},
	{CTRY_CHILE, APL6_WORLD, "CL"},
	{CTRY_CHINA, APL1_WORLD, "CN"},
	{CTRY_COLOMBIA, FCC1_FCCA, "CO"},
	{CTRY_COSTA_RICA, FCC1_WORLD, "CR"},
	{CTRY_CROATIA, ETSI1_WORLD, "HR"},
	{CTRY_CYPRUS, ETSI1_WORLD, "CY"},
	{CTRY_CZECH, ETSI3_WORLD, "CZ"},
	{CTRY_DENMARK, ETSI1_WORLD, "DK"},
	{CTRY_DOMINICAN_REPUBLIC, FCC1_FCCA, "DO"},
	{CTRY_ECUADOR, FCC1_WORLD, "EC"},
	{CTRY_EGYPT, ETSI3_WORLD, "EG"},
	{CTRY_EL_SALVADOR, FCC1_WORLD, "SV"},
	{CTRY_ESTONIA, ETSI1_WORLD, "EE"},
	{CTRY_FINLAND, ETSI1_WORLD, "FI"},
	{CTRY_FRANCE, ETSI1_WORLD, "FR"},
	{CTRY_GEORGIA, ETSI4_WORLD, "GE"},
	{CTRY_GERMANY, ETSI1_WORLD, "DE"},
	{CTRY_GREECE, ETSI1_WORLD, "GR"},
	{CTRY_GREENLAND, ETSI1_WORLD, "GL"},
	{CTRY_GRENEDA, FCC3_FCCA, "GD"},
	{CTRY_GUAM, FCC1_FCCA, "GU"},
	{CTRY_GUATEMALA, FCC1_FCCA, "GT"},
	{CTRY_HAITI, ETSI1_WORLD, "HT"},
	{CTRY_HONDURAS, NULL1_WORLD, "HN"},
	{CTRY_HONG_KONG, FCC3_WORLD, "HK"},
	{CTRY_HUNGARY, ETSI1_WORLD, "HU"},
	{CTRY_ICELAND, ETSI1_WORLD, "IS"},
	{CTRY_INDIA, APL6_WORLD, "IN"},
	{CTRY_INDONESIA, NULL1_WORLD, "ID"},
	{CTRY_IRAN, APL1_WORLD, "IR"},
	{CTRY_IRELAND, ETSI1_WORLD, "IE"},
	{CTRY_ISRAEL, NULL1_WORLD, "IL"},
	{CTRY_ITALY, ETSI1_WORLD, "IT"},
	{CTRY_JAMAICA, FCC3_WORLD, "JM"},

	{CTRY_JAPAN, MKK1_MKKA, "JP"},
	{CTRY_JAPAN1, MKK1_MKKB, "JP"},
	{CTRY_JAPAN2, MKK1_FCCA, "JP"},
	{CTRY_JAPAN3, MKK2_MKKA, "JP"},
	{CTRY_JAPAN4, MKK1_MKKA1, "JP"},
	{CTRY_JAPAN5, MKK1_MKKA2, "JP"},
	{CTRY_JAPAN6, MKK1_MKKC, "JP"},
	{CTRY_JAPAN7, MKK3_MKKB, "JP"},
	{CTRY_JAPAN8, MKK3_MKKA2, "JP"},
	{CTRY_JAPAN9, MKK3_MKKC, "JP"},
	{CTRY_JAPAN10, MKK4_MKKB, "JP"},
	{CTRY_JAPAN11, MKK4_MKKA2, "JP"},
	{CTRY_JAPAN12, MKK4_MKKC, "JP"},
	{CTRY_JAPAN13, MKK5_MKKB, "JP"},
	{CTRY_JAPAN14, MKK5_MKKA2, "JP"},
	{CTRY_JAPAN15, MKK5_MKKC, "JP"},
	{CTRY_JAPAN16, MKK6_MKKB, "JP"},
	{CTRY_JAPAN17, MKK6_MKKA2, "JP"},
	{CTRY_JAPAN18, MKK6_MKKC, "JP"},
	{CTRY_JAPAN19, MKK7_MKKB, "JP"},
	{CTRY_JAPAN20, MKK7_MKKA2, "JP"},
	{CTRY_JAPAN21, MKK7_MKKC, "JP"},
	{CTRY_JAPAN22, MKK8_MKKB, "JP"},
	{CTRY_JAPAN23, MKK8_MKKA2, "JP"},
	{CTRY_JAPAN24, MKK8_MKKC, "JP"},
	{CTRY_JAPAN25, MKK3_MKKA, "JP"},
	{CTRY_JAPAN26, MKK3_MKKA1, "JP"},
	{CTRY_JAPAN27, MKK3_FCCA, "JP"},
	{CTRY_JAPAN28, MKK4_MKKA1, "JP"},
	{CTRY_JAPAN29, MKK4_FCCA, "JP"},
	{CTRY_JAPAN30, MKK6_MKKA1, "JP"},
	{CTRY_JAPAN31, MKK6_FCCA, "JP"},
	{CTRY_JAPAN32, MKK7_MKKA1, "JP"},
	{CTRY_JAPAN33, MKK7_FCCA, "JP"},
	{CTRY_JAPAN34, MKK9_MKKA, "JP"},
	{CTRY_JAPAN35, MKK10_MKKA, "JP"},
	{CTRY_JAPAN36, MKK4_MKKA, "JP"},
	{CTRY_JAPAN37, MKK9_FCCA, "JP"},
	{CTRY_JAPAN38, MKK9_MKKA1, "JP"},
	{CTRY_JAPAN39, MKK9_MKKC, "JP"},
	{CTRY_JAPAN40, MKK9_MKKA2, "JP"},
	{CTRY_JAPAN41, MKK10_FCCA, "JP"},
	{CTRY_JAPAN42, MKK10_MKKA1, "JP"},
	{CTRY_JAPAN43, MKK10_MKKC, "JP"},
	{CTRY_JAPAN44, MKK10_MKKA2, "JP"},
	{CTRY_JAPAN45, MKK11_MKKA, "JP"},
	{CTRY_JAPAN46, MKK11_FCCA, "JP"},
	{CTRY_JAPAN47, MKK11_MKKA1, "JP"},
	{CTRY_JAPAN48, MKK11_MKKC, "JP"},
	{CTRY_JAPAN49, MKK11_MKKA2, "JP"},
	{CTRY_JAPAN50, MKK12_MKKA, "JP"},
	{CTRY_JAPAN51, MKK12_FCCA, "JP"},
	{CTRY_JAPAN52, MKK12_MKKA1, "JP"},
	{CTRY_JAPAN53, MKK12_MKKC, "JP"},
	{CTRY_JAPAN54, MKK12_MKKA2, "JP"},
	{CTRY_JAPAN57, MKK13_MKKB, "JP"},
	{CTRY_JAPAN58, MKK14_MKKA1, "JP"},
	{CTRY_JAPAN59, MKK15_MKKA1, "JP"},

	{CTRY_JORDAN, ETSI2_WORLD, "JO"},
	{CTRY_KAZAKHSTAN, NULL1_WORLD, "KZ"},
	{CTRY_KOREA_NORTH, APL9_WORLD, "KP"},
	{CTRY_KOREA_ROC, APL9_WORLD, "KR"},
	{CTRY_KOREA_ROC2, APL2_WORLD, "K2"},
	{CTRY_KOREA_ROC3, APL9_WORLD, "K3"},
	{CTRY_KUWAIT, ETSI3_WORLD, "KW"},
	{CTRY_LATVIA, ETSI1_WORLD, "LV"},
	{CTRY_LEBANON, NULL1_WORLD, "LB"},
	{CTRY_LIECHTENSTEIN, ETSI1_WORLD, "LI"},
	{CTRY_LITHUANIA, ETSI1_WORLD, "LT"},
	{CTRY_LUXEMBOURG, ETSI1_WORLD, "LU"},
	{CTRY_MACAU, FCC2_WORLD, "MO"},
	{CTRY_MACEDONIA, NULL1_WORLD, "MK"},
	{CTRY_MALAYSIA, APL8_WORLD, "MY"},
	{CTRY_MALTA, ETSI1_WORLD, "MT"},
	{CTRY_MEXICO, FCC1_FCCA, "MX"},
	{CTRY_MONACO, ETSI4_WORLD, "MC"},
	{CTRY_MOROCCO, APL4_WORLD, "MA"},
	{CTRY_NEPAL, APL1_WORLD, "NP"},
	{CTRY_NETHERLANDS, ETSI1_WORLD, "NL"},
	{CTRY_NETHERLANDS_ANTILLES, ETSI1_WORLD, "AN"},
	{CTRY_NEW_ZEALAND, FCC2_ETSIC, "NZ"},
	{CTRY_NORWAY, ETSI1_WORLD, "NO"},
	{CTRY_OMAN, FCC3_WORLD, "OM"},
	{CTRY_PAKISTAN, NULL1_WORLD, "PK"},
	{CTRY_PANAMA, FCC1_FCCA, "PA"},
	{CTRY_PAPUA_NEW_GUINEA, FCC1_WORLD, "PG"},
	{CTRY_PERU, APL1_WORLD, "PE"},
	{CTRY_PHILIPPINES, APL1_WORLD, "PH"},
	{CTRY_POLAND, ETSI1_WORLD, "PL"},
	{CTRY_PORTUGAL, ETSI1_WORLD, "PT"},
	{CTRY_PUERTO_RICO, FCC1_FCCA, "PR"},
	{CTRY_QATAR, APL1_WORLD, "QA"},
	{CTRY_ROMANIA, NULL1_WORLD, "RO"},
	{CTRY_RUSSIA, NULL1_WORLD, "RU"},
	{CTRY_SAUDI_ARABIA, NULL1_WORLD, "SA"},
	{CTRY_SERBIA_MONTENEGRO, ETSI1_WORLD, "CS"},
	{CTRY_SINGAPORE, APL6_WORLD, "SG"},
	{CTRY_SLOVAKIA, ETSI1_WORLD, "SK"},
	{CTRY_SLOVENIA, ETSI1_WORLD, "SI"},
	{CTRY_SOUTH_AFRICA, FCC3_WORLD, "ZA"},
	{CTRY_SPAIN, ETSI1_WORLD, "ES"},
	{CTRY_SRI_LANKA, FCC3_WORLD, "LK"},
	{CTRY_SWEDEN, ETSI1_WORLD, "SE"},
	{CTRY_SWITZERLAND, ETSI1_WORLD, "CH"},
	{CTRY_SYRIA, NULL1_WORLD, "SY"},
	{CTRY_TAIWAN, APL3_FCCA, "TW"},
	{CTRY_THAILAND, FCC3_WORLD, "TH"},
	{CTRY_TRINIDAD_Y_TOBAGO, FCC3_WORLD, "TT"},
	{CTRY_TUNISIA, ETSI3_WORLD, "TN"},
	{CTRY_TURKEY, ETSI3_WORLD, "TR"},
	{CTRY_UKRAINE, NULL1_WORLD, "UA"},
	{CTRY_UAE, NULL1_WORLD, "AE"},
	{CTRY_UNITED_KINGDOM, ETSI1_WORLD, "GB"},
	{CTRY_UNITED_STATES, FCC3_FCCA, "US"},
	/* This "PS" is for US public safety actually... to support this we
	 * would need to assign new special alpha2 to CRDA db as with the world
	 * regdomain and use another alpha2 */
	{CTRY_UNITED_STATES_FCC49, FCC4_FCCA, "PS"},
	{CTRY_URUGUAY, FCC3_WORLD, "UY"},
	{CTRY_UZBEKISTAN, FCC3_FCCA, "UZ"},
	{CTRY_VENEZUELA, APL2_ETSIC, "VE"},
	{CTRY_VIET_NAM, NULL1_WORLD, "VN"},
	{CTRY_YEMEN, NULL1_WORLD, "YE"},
	{CTRY_ZIMBABWE, NULL1_WORLD, "ZW"},
};

#endif
