summaryrefslogtreecommitdiff
path: root/sys/net80211/ieee80211_regdomain.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/net80211/ieee80211_regdomain.h')
-rw-r--r--sys/net80211/ieee80211_regdomain.h816
1 files changed, 816 insertions, 0 deletions
diff --git a/sys/net80211/ieee80211_regdomain.h b/sys/net80211/ieee80211_regdomain.h
new file mode 100644
index 00000000000..2138d7d2b08
--- /dev/null
+++ b/sys/net80211/ieee80211_regdomain.h
@@ -0,0 +1,816 @@
+/* $OpenBSD: ieee80211_regdomain.h,v 1.1 2004/11/02 02:15:49 reyk Exp $ */
+
+/*
+ * Copyright (c) 2004 Reyk Floeter <reyk@vantronix.net>.
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+ * OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
+ * HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY
+ * SPECIAL 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 _NET80211_IEEE80211_REGDOMAIN_H_
+#define _NET80211_IEEE80211_REGDOMAIN_H_
+
+typedef u_int32_t ieee80211_regdomain_t;
+
+enum ieee80211_regdomain {
+ DMN_DEFAULT = 0x00,
+ DMN_NULL1_WORLD = 0x03,
+ DMN_NULL1_ETSIB = 0x07,
+ DMN_NULL1_ETSIC = 0x08,
+ DMN_FCC1_FCCA = 0x10,
+ DMN_FCC1_WORLD = 0x11,
+ DMN_FCC2_FCCA = 0x20,
+ DMN_FCC2_WORLD = 0x21,
+ DMN_FCC2_ETSIC = 0x22,
+ DMN_FRANCE_RES = 0x31,
+ DMN_FCC3_FCCA = 0x3A,
+ DMN_ETSI1_WORLD = 0x37,
+ DMN_ETSI3_ETSIA = 0x32,
+ DMN_ETSI2_WORLD = 0x35,
+ DMN_ETSI3_WORLD = 0x36,
+ DMN_ETSI4_WORLD = 0x30,
+ DMN_ETSI4_ETSIC = 0x38,
+ DMN_ETSI5_WORLD = 0x39,
+ DMN_ETSI6_WORLD = 0x34,
+ DMN_ETSI_RESERVED = 0x33,
+ DMN_MKK1_MKKA = 0x40,
+ DMN_MKK1_MKKB = 0x41,
+ DMN_APL4_WORLD = 0x42,
+ DMN_MKK2_MKKA = 0x43,
+ DMN_APL_RESERVED = 0x44,
+ DMN_APL2_WORLD = 0x45,
+ DMN_APL2_APLC = 0x46,
+ DMN_APL3_WORLD = 0x47,
+ DMN_MKK1_FCCA = 0x48,
+ DMN_APL2_APLD = 0x49,
+ DMN_MKK1_MKKA1 = 0x4A,
+ DMN_MKK1_MKKA2 = 0x4B,
+ DMN_APL1_WORLD = 0x52,
+ DMN_APL1_FCCA = 0x53,
+ DMN_APL1_APLA = 0x54,
+ DMN_APL1_ETSIC = 0x55,
+ DMN_APL2_ETSIC = 0x56,
+ DMN_APL5_WORLD = 0x58,
+ DMN_WOR0_WORLD = 0x60,
+ DMN_WOR1_WORLD = 0x61,
+ DMN_WOR2_WORLD = 0x62,
+ DMN_WOR3_WORLD = 0x63,
+ DMN_WOR4_WORLD = 0x64,
+ DMN_WOR5_ETSIC = 0x65,
+ DMN_WOR01_WORLD = 0x66,
+ DMN_WOR02_WORLD = 0x67,
+ DMN_EU1_WORLD = 0x68,
+ DMN_WOR9_WORLD = 0x69,
+ DMN_WORA_WORLD = 0x6A,
+
+ DMN_APL1 = 0xf0000001,
+ DMN_APL2 = 0xf0000002,
+ DMN_APL3 = 0xf0000004,
+ DMN_APL4 = 0xf0000008,
+ DMN_APL5 = 0xf0000010,
+ DMN_ETSI1 = 0xf0000020,
+ DMN_ETSI2 = 0xf0000040,
+ DMN_ETSI3 = 0xf0000080,
+ DMN_ETSI4 = 0xf0000100,
+ DMN_ETSI5 = 0xf0000200,
+ DMN_ETSI6 = 0xf0000400,
+ DMN_ETSIA = 0xf0000800,
+ DMN_ETSIB = 0xf0001000,
+ DMN_ETSIC = 0xf0002000,
+ DMN_FCC1 = 0xf0004000,
+ DMN_FCC2 = 0xf0008000,
+ DMN_FCC3 = 0xf0010000,
+ DMN_FCCA = 0xf0020000,
+ DMN_APLD = 0xf0040000,
+ DMN_MKK1 = 0xf0080000,
+ DMN_MKK2 = 0xf0100000,
+ DMN_MKKA = 0xf0200000,
+ DMN_NULL1 = 0xf0400000,
+ DMN_WORLD = 0xf0800000,
+ DMN_DEBUG = 0xf1000000, /* used for debugging */
+};
+
+#define IEEE80211_DMN(_d) ((_d) & ~0xf0000000)
+
+struct ieee80211_regdomainname {
+ u_int32_t rn_domain;
+ const char *rn_name;
+};
+
+#define IEEE80211_REGDOMAIN_NAMES { \
+ { DMN_APL1, "APL1" }, \
+ { DMN_APL1_APLA, "APL1_APLA" }, \
+ { DMN_APL1_ETSIC, "APL1_ETSIC" }, \
+ { DMN_APL1_FCCA, "APL1_FCCA" }, \
+ { DMN_APL1_WORLD, "APL1_WORLD" }, \
+ { DMN_APL2, "APL2" }, \
+ { DMN_APL2_APLC, "APL2_APLC" }, \
+ { DMN_APL2_APLD, "APL2_APLD" }, \
+ { DMN_APL2_ETSIC, "APL2_ETSIC" }, \
+ { DMN_APL2_WORLD, "APL2_WORLD" }, \
+ { DMN_APL3, "APL3" }, \
+ { DMN_APL3_WORLD, "APL3_WORLD" }, \
+ { DMN_APL4, "APL4" }, \
+ { DMN_APL4_WORLD, "APL4_WORLD" }, \
+ { DMN_APL5, "APL5" }, \
+ { DMN_APL5_WORLD, "APL5_WORLD" }, \
+ { DMN_APLD, "APLD" }, \
+ { DMN_APL_RESERVED, "APL_RESERVED" }, \
+ { DMN_DEBUG, "DEBUG" }, \
+ { DMN_ETSI1, "ETSI1" }, \
+ { DMN_ETSI1_WORLD, "ETSI1_WORLD" }, \
+ { DMN_ETSI2, "ETSI2" }, \
+ { DMN_ETSI2_WORLD, "ETSI2_WORLD" }, \
+ { DMN_ETSI3, "ETSI3" }, \
+ { DMN_ETSI3_ETSIA, "ETSI3_ETSIA" }, \
+ { DMN_ETSI3_WORLD, "ETSI3_WORLD," }, \
+ { DMN_ETSI4, "ETSI4" }, \
+ { DMN_ETSI4_ETSIC, "ETSI4_ETSIC" }, \
+ { DMN_ETSI4_WORLD, "ETSI4_WORLD" }, \
+ { DMN_ETSI5, "ETSI5" }, \
+ { DMN_ETSI5_WORLD, "ETSI5_WORLD" }, \
+ { DMN_ETSI6, "ETSI6" }, \
+ { DMN_ETSI6_WORLD, "ETSI6_WORLD" }, \
+ { DMN_ETSIA, "ETSIA" }, \
+ { DMN_ETSIB, "ETSIB" }, \
+ { DMN_ETSIC, "ETSIC" }, \
+ { DMN_ETSI_RESERVED, "ETSI_RESERVED" }, \
+ { DMN_EU1_WORLD, "EU1_WORLD" }, \
+ { DMN_FCC1, "FCC1" }, \
+ { DMN_FCC1_FCCA, "FCC1_FCCA" }, \
+ { DMN_FCC1_WORLD, "FCC1_WORLD" }, \
+ { DMN_FCC2, "FCC2" }, \
+ { DMN_FCC2_ETSIC, "FCC2_ETSIC" }, \
+ { DMN_FCC2_FCCA, "FCC2_FCCA" }, \
+ { DMN_FCC2_WORLD, "FCC2_WORLD" }, \
+ { DMN_FCC3, "FCC3" }, \
+ { DMN_FCC3_FCCA, "FCC3_FCCA" }, \
+ { DMN_FCCA, "FCCA" }, \
+ { DMN_FRANCE_RES, "FRANCE_RES" }, \
+ { DMN_MKK1, "MKK1" }, \
+ { DMN_MKK1_FCCA, "MKK1_FCCA" }, \
+ { DMN_MKK1_MKKA, "MKK1_MKKA" }, \
+ { DMN_MKK1_MKKA1, "MKK1_MKKA" }, \
+ { DMN_MKK1_MKKA2, "MKK1_MKKA2" }, \
+ { DMN_MKK1_MKKB, "MKK1_MKKB" }, \
+ { DMN_MKK2, "MKK2" }, \
+ { DMN_MKK2_MKKA, "MKK2_MKKA" }, \
+ { DMN_MKKA, "MKKA" }, \
+ { DMN_DEFAULT, "NONE" }, \
+ { DMN_NULL1, "NULL1" }, \
+ { DMN_NULL1_ETSIB, "NULL1_ETSIB" }, \
+ { DMN_NULL1_ETSIC, "NULL1_ETSIC" }, \
+ { DMN_WOR01_WORLD, "WOR01_WORLD" }, \
+ { DMN_WOR02_WORLD, "WOR02_WORLD" }, \
+ { DMN_WOR0_WORLD, "WOR0_WORLD" }, \
+ { DMN_WOR1_WORLD, "WOR1_WORLd" }, \
+ { DMN_WOR2_WORLD, "WOR2_WORLD" }, \
+ { DMN_WOR3_WORLD, "WOR3_WORLD" }, \
+ { DMN_WOR4_WORLD, "WOR4_WORLD" }, \
+ { DMN_WOR5_ETSIC, "WOR5_ETSIC" }, \
+ { DMN_WOR9_WORLD, "WOR9_WORLD" }, \
+ { DMN_WORA_WORLD, "WORA_WORLD" }, \
+ { DMN_NULL1_WORLD, "WORLD" }, \
+ { DMN_WORLD, "WORLD" }, \
+}
+
+struct ieee80211_regdomainmap {
+ u_int16_t rm_domain;
+ u_int32_t rm_domain_5ghz;
+ u_int32_t rm_domain_2ghz;
+};
+
+#define IEEE80211_REGDOMAIN_MAP { \
+ { DMN_DEFAULT, DMN_DEBUG, DMN_DEBUG }, \
+ { DMN_NULL1_WORLD, DMN_NULL1, DMN_WORLD }, \
+ { DMN_NULL1_ETSIB, DMN_NULL1, DMN_ETSIB }, \
+ { DMN_NULL1_ETSIC, DMN_NULL1, DMN_ETSIC }, \
+ { DMN_FCC2_FCCA, DMN_FCC2, DMN_FCCA }, \
+ { DMN_FCC2_WORLD, DMN_FCC2, DMN_WORLD }, \
+ { DMN_FCC2_ETSIC, DMN_FCC2, DMN_ETSIC }, \
+ { DMN_FCC3_FCCA, DMN_FCC3, DMN_FCCA }, \
+ { DMN_ETSI1_WORLD, DMN_ETSI1, DMN_WORLD }, \
+ { DMN_ETSI2_WORLD, DMN_ETSI2, DMN_WORLD }, \
+ { DMN_ETSI3_WORLD, DMN_ETSI3, DMN_WORLD }, \
+ { DMN_ETSI4_WORLD, DMN_ETSI4, DMN_WORLD }, \
+ { DMN_ETSI5_WORLD, DMN_ETSI5, DMN_WORLD }, \
+ { DMN_ETSI6_WORLD, DMN_ETSI6, DMN_WORLD }, \
+ { DMN_ETSI3_ETSIA, DMN_ETSI3, DMN_WORLD }, \
+ { DMN_FRANCE_RES, DMN_ETSI3, DMN_WORLD }, \
+ { DMN_FCC1_WORLD, DMN_FCC1, DMN_WORLD }, \
+ { DMN_FCC1_FCCA, DMN_FCC1, DMN_FCCA }, \
+ { DMN_APL1_WORLD, DMN_APL1, DMN_WORLD }, \
+ { DMN_APL2_WORLD, DMN_APL2, DMN_WORLD }, \
+ { DMN_APL3_WORLD, DMN_APL3, DMN_WORLD }, \
+ { DMN_APL4_WORLD, DMN_APL4, DMN_WORLD }, \
+ { DMN_APL5_WORLD, DMN_APL5, DMN_WORLD }, \
+ { DMN_APL1_ETSIC, DMN_APL1, DMN_ETSIC }, \
+ { DMN_APL2_ETSIC, DMN_APL2, DMN_ETSIC }, \
+ { DMN_APL2_APLD, DMN_APL2, DMN_APLD }, \
+ { DMN_MKK1_MKKA, DMN_MKK1, DMN_MKKA }, \
+ { DMN_MKK1_MKKB, DMN_MKK1, DMN_MKKA }, \
+ { DMN_MKK2_MKKA, DMN_MKK2, DMN_MKKA }, \
+ { DMN_MKK1_FCCA, DMN_MKK1, DMN_FCCA }, \
+ { DMN_MKK1_MKKA1, DMN_MKK1, DMN_MKKA }, \
+ { DMN_MKK1_MKKA2, DMN_MKK1, DMN_MKKA }, \
+}
+
+enum ieee80211_countrycode {
+ CTRY_DEFAULT = 0, /* Default domain (NA) */
+ CTRY_ALBANIA = 8, /* Albania */
+ CTRY_ALGERIA = 12, /* Algeria */
+ CTRY_ARGENTINA = 32, /* Argentina */
+ CTRY_ARMENIA = 51, /* Armenia */
+ CTRY_AUSTRALIA = 36, /* Australia */
+ CTRY_AUSTRIA = 40, /* Austria */
+ CTRY_AZERBAIJAN = 31, /* Azerbaijan */
+ CTRY_BAHRAIN = 48, /* Bahrain */
+ CTRY_BELARUS = 112, /* Belarus */
+ CTRY_BELGIUM = 56, /* Belgium */
+ CTRY_BELIZE = 84, /* Belize */
+ CTRY_BOLIVIA = 68, /* Bolivia */
+ CTRY_BRAZIL = 76, /* Brazil */
+ CTRY_BRUNEI_DARUSSALAM = 96, /* Brunei Darussalam */
+ CTRY_BULGARIA = 100, /* Bulgaria */
+ CTRY_CANADA = 124, /* Canada */
+ CTRY_CHILE = 152, /* Chile */
+ CTRY_CHINA = 156, /* People's Republic of China */
+ CTRY_COLOMBIA = 170, /* Colombia */
+ CTRY_COSTA_RICA = 188, /* Costa Rica */
+ CTRY_CROATIA = 191, /* Croatia */
+ CTRY_CYPRUS = 196, /* Cyprus */
+ CTRY_CZECH = 203, /* Czech Republic */
+ CTRY_DENMARK = 208, /* Denmark */
+ CTRY_DOMINICAN_REPUBLIC = 214, /* Dominican Republic */
+ CTRY_ECUADOR = 218, /* Ecuador */
+ CTRY_EGYPT = 818, /* Egypt */
+ CTRY_EL_SALVADOR = 222, /* El Salvador */
+ CTRY_ESTONIA = 233, /* Estonia */
+ CTRY_FAEROE_ISLANDS = 234, /* Faeroe Islands */
+ CTRY_FINLAND = 246, /* Finland */
+ CTRY_FRANCE = 250, /* France */
+ CTRY_FRANCE2 = 255, /* France2 */
+ CTRY_GEORGIA = 268, /* Georgia */
+ CTRY_GERMANY = 276, /* Germany */
+ CTRY_GREECE = 300, /* Greece */
+ CTRY_GUATEMALA = 320, /* Guatemala */
+ CTRY_HONDURAS = 340, /* Honduras */
+ CTRY_HONG_KONG = 344, /* Hong Kong S.A.R., P.R.C. */
+ CTRY_HUNGARY = 348, /* Hungary */
+ CTRY_ICELAND = 352, /* Iceland */
+ CTRY_INDIA = 356, /* India */
+ CTRY_INDONESIA = 360, /* Indonesia */
+ CTRY_IRAN = 364, /* Iran */
+ CTRY_IRAQ = 368, /* Iraq */
+ CTRY_IRELAND = 372, /* Ireland */
+ CTRY_ISRAEL = 376, /* Israel */
+ CTRY_ITALY = 380, /* Italy */
+ CTRY_JAMAICA = 388, /* Jamaica */
+ CTRY_JAPAN = 392, /* Japan */
+ CTRY_JAPAN1 = 393, /* Japan (JP1) */
+ CTRY_JAPAN2 = 394, /* Japan (JP0) */
+ CTRY_JAPAN3 = 395, /* Japan (JP1-1) */
+ CTRY_JAPAN4 = 396, /* Japan (JE1) */
+ CTRY_JAPAN5 = 397, /* Japan (JE2) */
+ CTRY_JORDAN = 400, /* Jordan */
+ CTRY_KAZAKHSTAN = 398, /* Kazakhstan */
+ CTRY_KENYA = 404, /* Kenya */
+ CTRY_KOREA_NORTH = 408, /* North Korea */
+ CTRY_KOREA_ROC = 410, /* South Korea */
+ CTRY_KOREA_ROC2 = 411, /* South Korea */
+ CTRY_KUWAIT = 414, /* Kuwait */
+ CTRY_LATVIA = 428, /* Latvia */
+ CTRY_LEBANON = 422, /* Lebanon */
+ CTRY_LIBYA = 434, /* Libya */
+ CTRY_LIECHTENSTEIN = 438, /* Liechtenstein */
+ CTRY_LITHUANIA = 440, /* Lithuania */
+ CTRY_LUXEMBOURG = 442, /* Luxembourg */
+ CTRY_MACAU = 446, /* Macau */
+ CTRY_MACEDONIA = 807, /* the Former Yugoslav Republic of Macedonia */
+ CTRY_MALAYSIA = 458, /* Malaysia */
+ CTRY_MEXICO = 484, /* Mexico */
+ CTRY_MONACO = 492, /* Principality of Monaco */
+ CTRY_MOROCCO = 504, /* Morocco */
+ CTRY_NETHERLANDS = 528, /* Netherlands */
+ CTRY_NEW_ZEALAND = 554, /* New Zealand */
+ CTRY_NICARAGUA = 558, /* Nicaragua */
+ CTRY_NORWAY = 578, /* Norway */
+ CTRY_OMAN = 512, /* Oman */
+ CTRY_PAKISTAN = 586, /* Islamic Republic of Pakistan */
+ CTRY_PANAMA = 591, /* Panama */
+ CTRY_PARAGUAY = 600, /* Paraguay */
+ CTRY_PERU = 604, /* Peru */
+ CTRY_PHILIPPINES = 608, /* Republic of the Philippines */
+ CTRY_POLAND = 616, /* Poland */
+ CTRY_PORTUGAL = 620, /* Portugal */
+ CTRY_PUERTO_RICO = 630, /* Puerto Rico */
+ CTRY_QATAR = 634, /* Qatar */
+ CTRY_ROMANIA = 642, /* Romania */
+ CTRY_RUSSIA = 643, /* Russia */
+ CTRY_SAUDI_ARABIA = 682, /* Saudi Arabia */
+ CTRY_SINGAPORE = 702, /* Singapore */
+ CTRY_SLOVAKIA = 703, /* Slovak Republic */
+ CTRY_SLOVENIA = 705, /* Slovenia */
+ CTRY_SOUTH_AFRICA = 710, /* South Africa */
+ CTRY_SPAIN = 724, /* Spain */
+ CTRY_SRI_LANKA = 728, /* Sri Lanka */
+ CTRY_SWEDEN = 752, /* Sweden */
+ CTRY_SWITZERLAND = 756, /* Switzerland */
+ CTRY_SYRIA = 760, /* Syria */
+ CTRY_TAIWAN = 158, /* Taiwan */
+ CTRY_THAILAND = 764, /* Thailand */
+ CTRY_TRINIDAD_Y_TOBAGO = 780, /* Trinidad y Tobago */
+ CTRY_TUNISIA = 788, /* Tunisia */
+ CTRY_TURKEY = 792, /* Turkey */
+ CTRY_UAE = 784, /* U.A.E. */
+ CTRY_UKRAINE = 804, /* Ukraine */
+ CTRY_UNITED_KINGDOM = 826, /* United Kingdom */
+ CTRY_UNITED_STATES = 840, /* United States */
+ CTRY_URUGUAY = 858, /* Uruguay */
+ CTRY_UZBEKISTAN = 860, /* Uzbekistan */
+ CTRY_VENEZUELA = 862, /* Venezuela */
+ CTRY_VIET_NAM = 704, /* Viet Nam */
+ CTRY_YEMEN = 887, /* Yemen */
+ CTRY_ZIMBABWE = 716, /* Zimbabwe */
+ CTRY_DEBUG = 0x1ff, /* for debugging */
+};
+
+struct ieee80211_countryname {
+ u_int16_t cn_code;
+ const char *cn_name;
+ u_int16_t cn_domain;
+};
+
+#define IEEE80211_REGDOMAIN_COUNTRY_NAMES { \
+ { CTRY_DEFAULT, "00", DMN_DEBUG }, \
+ { CTRY_UAE, "ae", DMN_NULL1_WORLD }, \
+ { CTRY_ALBANIA, "al", DMN_NULL1_WORLD }, \
+ { CTRY_ARMENIA, "am", DMN_ETSI4_WORLD }, \
+ { CTRY_ARGENTINA, "ar", DMN_APL3_WORLD }, \
+ { CTRY_AUSTRIA, "at", DMN_ETSI5_WORLD }, \
+ { CTRY_AUSTRALIA, "au", DMN_FCC2_WORLD }, \
+ { CTRY_AZERBAIJAN, "az", DMN_ETSI4_WORLD }, \
+ { CTRY_BELGIUM, "be", DMN_ETSI4_WORLD }, \
+ { CTRY_BULGARIA, "bg", DMN_ETSI6_WORLD }, \
+ { CTRY_BAHRAIN, "bh", DMN_NULL1_WORLD }, \
+ { CTRY_BRUNEI_DARUSSALAM, "bn", DMN_APL1_WORLD }, \
+ { CTRY_BOLIVIA, "bo", DMN_APL1_ETSIC }, \
+ { CTRY_BRAZIL, "br", DMN_NULL1_ETSIC }, \
+ { CTRY_BELARUS, "by", DMN_NULL1_WORLD }, \
+ { CTRY_BELIZE, "bz", DMN_NULL1_ETSIC }, \
+ { CTRY_CANADA, "ca", DMN_FCC2_FCCA }, \
+ { CTRY_SWITZERLAND, "ch", DMN_ETSI2_WORLD }, \
+ { CTRY_CHILE, "cl", DMN_APL5_WORLD }, \
+ { CTRY_CHINA, "cn", DMN_APL1_WORLD }, \
+ { CTRY_COLOMBIA, "co", DMN_FCC1_FCCA }, \
+ { CTRY_COSTA_RICA, "cr", DMN_NULL1_WORLD }, \
+ { CTRY_CYPRUS, "cy", DMN_ETSI1_WORLD }, \
+ { CTRY_CZECH, "cz", DMN_ETSI3_WORLD }, \
+ { CTRY_GERMANY, "de", DMN_ETSI1_WORLD }, \
+ { CTRY_DENMARK, "dk", DMN_ETSI1_WORLD }, \
+ { CTRY_DOMINICAN_REPUBLIC, "do", DMN_FCC1_FCCA }, \
+ { CTRY_ALGERIA, "dz", DMN_NULL1_WORLD }, \
+ { CTRY_ECUADOR, "ec", DMN_NULL1_WORLD }, \
+ { CTRY_ESTONIA, "ee", DMN_ETSI1_WORLD }, \
+ { CTRY_EGYPT, "eg", DMN_NULL1_WORLD }, \
+ { CTRY_SPAIN, "es", DMN_ETSI1_WORLD }, \
+ { CTRY_FRANCE2, "f2", DMN_ETSI3_WORLD }, \
+ { CTRY_FINLAND, "fi", DMN_ETSI1_WORLD }, \
+ { CTRY_FAEROE_ISLANDS, "fo", DMN_NULL1_WORLD }, \
+ { CTRY_FRANCE, "fr", DMN_ETSI3_WORLD }, \
+ { CTRY_GEORGIA, "ge", DMN_ETSI4_WORLD }, \
+ { CTRY_GREECE, "gr", DMN_NULL1_WORLD }, \
+ { CTRY_GUATEMALA, "gt", DMN_FCC1_FCCA }, \
+ { CTRY_HONG_KONG, "hk", DMN_FCC2_WORLD }, \
+ { CTRY_HONDURAS, "hn", DMN_NULL1_WORLD }, \
+ { CTRY_CROATIA, "hr", DMN_ETSI3_WORLD }, \
+ { CTRY_HUNGARY, "hu", DMN_ETSI2_WORLD }, \
+ { CTRY_INDONESIA, "id", DMN_NULL1_WORLD }, \
+ { CTRY_IRELAND, "ie", DMN_ETSI1_WORLD }, \
+ { CTRY_ISRAEL, "il", DMN_NULL1_WORLD }, \
+ { CTRY_INDIA, "in", DMN_NULL1_WORLD }, \
+ { CTRY_IRAQ, "iq", DMN_NULL1_WORLD }, \
+ { CTRY_IRAN, "ir", DMN_APL1_WORLD }, \
+ { CTRY_ICELAND, "is", DMN_ETSI1_WORLD }, \
+ { CTRY_ITALY, "it", DMN_ETSI1_WORLD }, \
+ { CTRY_JAPAN1, "j1", DMN_MKK1_MKKB }, \
+ { CTRY_JAPAN2, "j2", DMN_MKK1_FCCA }, \
+ { CTRY_JAPAN3, "j3", DMN_MKK2_MKKA }, \
+ { CTRY_JAPAN4, "j4", DMN_MKK1_MKKA1 }, \
+ { CTRY_JAPAN5, "j5", DMN_MKK1_MKKA2 }, \
+ { CTRY_JAMAICA, "jm", DMN_NULL1_WORLD }, \
+ { CTRY_JORDAN, "jo", DMN_NULL1_WORLD }, \
+ { CTRY_JAPAN, "jp", DMN_MKK1_MKKA }, \
+ { CTRY_KOREA_ROC2, "k2", DMN_APL2_APLD }, \
+ { CTRY_KENYA, "ke", DMN_NULL1_WORLD }, \
+ { CTRY_KOREA_NORTH, "kp", DMN_APL2_WORLD }, \
+ { CTRY_KOREA_ROC, "kr", DMN_APL2_WORLD }, \
+ { CTRY_KUWAIT, "kw", DMN_NULL1_WORLD }, \
+ { CTRY_KAZAKHSTAN, "kz", DMN_NULL1_WORLD }, \
+ { CTRY_LEBANON, "lb", DMN_NULL1_WORLD }, \
+ { CTRY_LIECHTENSTEIN, "li", DMN_ETSI2_WORLD }, \
+ { CTRY_SRI_LANKA, "lk", DMN_NULL1_WORLD }, \
+ { CTRY_LITHUANIA, "lt", DMN_ETSI1_WORLD }, \
+ { CTRY_LUXEMBOURG, "lu", DMN_ETSI1_WORLD }, \
+ { CTRY_LATVIA, "lv", DMN_NULL1_WORLD }, \
+ { CTRY_LIBYA, "ly", DMN_NULL1_WORLD }, \
+ { CTRY_MOROCCO, "ma", DMN_NULL1_WORLD }, \
+ { CTRY_MONACO, "mc", DMN_ETSI4_WORLD }, \
+ { CTRY_MACEDONIA, "mk", DMN_NULL1_WORLD }, \
+ { CTRY_MACAU, "mo", DMN_FCC2_WORLD }, \
+ { CTRY_MEXICO, "mx", DMN_FCC1_FCCA }, \
+ { CTRY_MALAYSIA, "my", DMN_NULL1_WORLD }, \
+ { CTRY_NICARAGUA, "ni", DMN_NULL1_WORLD }, \
+ { CTRY_NETHERLANDS, "nl", DMN_ETSI1_WORLD }, \
+ { CTRY_NORWAY, "no", DMN_ETSI1_WORLD }, \
+ { CTRY_NEW_ZEALAND, "nz", DMN_FCC2_ETSIC }, \
+ { CTRY_OMAN, "om", DMN_NULL1_WORLD }, \
+ { CTRY_PANAMA, "pa", DMN_FCC1_FCCA }, \
+ { CTRY_PERU, "pe", DMN_NULL1_WORLD }, \
+ { CTRY_PHILIPPINES, "ph", DMN_FCC1_WORLD }, \
+ { CTRY_PAKISTAN, "pk", DMN_NULL1_WORLD }, \
+ { CTRY_POLAND, "pl", DMN_ETSI1_WORLD }, \
+ { CTRY_PUERTO_RICO, "pr", DMN_FCC1_FCCA }, \
+ { CTRY_PORTUGAL, "pt", DMN_ETSI1_WORLD }, \
+ { CTRY_PARAGUAY, "py", DMN_NULL1_WORLD }, \
+ { CTRY_QATAR, "qa", DMN_NULL1_WORLD }, \
+ { CTRY_ROMANIA, "ro", DMN_NULL1_WORLD }, \
+ { CTRY_RUSSIA, "ru", DMN_NULL1_WORLD }, \
+ { CTRY_SAUDI_ARABIA, "sa", DMN_NULL1_WORLD }, \
+ { CTRY_SWEDEN, "se", DMN_ETSI1_WORLD }, \
+ { CTRY_SINGAPORE, "sg", DMN_APL4_WORLD }, \
+ { CTRY_SLOVENIA, "si", DMN_ETSI1_WORLD }, \
+ { CTRY_SLOVAKIA, "sk", DMN_ETSI3_WORLD }, \
+ { CTRY_EL_SALVADOR, "sv", DMN_NULL1_WORLD }, \
+ { CTRY_SYRIA, "sy", DMN_NULL1_WORLD }, \
+ { CTRY_THAILAND, "th", DMN_APL2_WORLD }, \
+ { CTRY_TUNISIA, "tn", DMN_ETSI3_WORLD }, \
+ { CTRY_TURKEY, "tr", DMN_ETSI3_WORLD }, \
+ { CTRY_TRINIDAD_Y_TOBAGO, "tt", DMN_ETSI4_WORLD }, \
+ { CTRY_TAIWAN, "tw", DMN_APL3_WORLD }, \
+ { CTRY_UKRAINE, "ua", DMN_NULL1_WORLD }, \
+ { CTRY_UNITED_KINGDOM, "uk", DMN_ETSI1_WORLD }, \
+ { CTRY_UNITED_STATES, "us", DMN_FCC1_FCCA }, \
+ { CTRY_URUGUAY, "uy", DMN_APL2_WORLD }, \
+ { CTRY_UZBEKISTAN, "uz", DMN_FCC3_FCCA }, \
+ { CTRY_VENEZUELA, "ve", DMN_APL2_ETSIC }, \
+ { CTRY_VIET_NAM, "vn", DMN_NULL1_WORLD }, \
+ { CTRY_YEMEN, "ye", DMN_NULL1_WORLD }, \
+ { CTRY_SOUTH_AFRICA, "za", DMN_ETSI1_WORLD }, \
+ { CTRY_ZIMBABWE, "zw", DMN_NULL1_WORLD }, \
+ { CTRY_DEBUG, "zz", DMN_DEBUG }, \
+}
+
+struct ieee80211_regchannel {
+ u_int16_t rc_channel;
+ u_int32_t rc_mode;
+ u_int32_t rc_domains;
+};
+
+#define IEEE80211_CHANNELS_2GHZ_MIN 2312
+#define IEEE80211_CHANNELS_2GHZ_MAX 2732
+#define IEEE80211_CHANNELS_2GHZ { \
+ { 2312 /* -19 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2317 /* -18 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2322 /* -17 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2327 /* -16 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2332 /* -15 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2337 /* -14 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2342 /* -13 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2347 /* -12 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2352 /* -11 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2357 /* -10 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2362 /* -9 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2367 /* -8 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2372 /* -7 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2377 /* -6 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2382 /* -5 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2387 /* -4 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2392 /* -3 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2397 /* -2 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2402 /* -1 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2407 /* 0 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2412 /* 1 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2417 /* 2 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2422 /* 3 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2427 /* 4 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2432 /* 5 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2437 /* 6 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2442 /* 7 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2447 /* 8 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2452 /* 9 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2457 /* 10 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2462 /* 11 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2467 /* 12 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2472 /* 13 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2484 /* 14 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2512 /* 15 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2532 /* 16 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2552 /* 17 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2572 /* 18 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2592 /* 19 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2612 /* 20 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2632 /* 21 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2652 /* 22 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2672 /* 23 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2692 /* 24 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2712 /* 25 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+ { 2732 /* 26 */, IEEE80211_CHAN_CCK, DMN_DEBUG }, \
+}
+
+#define IEEE80211_CHANNELS_5GHZ_MIN 4800
+#define IEEE80211_CHANNELS_5GHZ_MAX 6100
+#define IEEE80211_CHANNELS_5GHZ { \
+ { 4800, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4805, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4810, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4815, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4820, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4825, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4830, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4835, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4840, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4845, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4850, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4855, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4860, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4865, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4870, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4875, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4880, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4885, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4890, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4895, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4900, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4905, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4910, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4915, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4920, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4925, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4930, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4935, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4940, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4945, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4950, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4955, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4960, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4965, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4970, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4975, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4980, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4985, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4990, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 4995, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5000, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5005, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5010, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5015, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5020, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5025, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5030, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5035, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5040, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5045, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5050, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5055, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5060, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5065, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5070, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5075, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5080, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5085, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5090, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5095, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5100, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5105, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5110, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5115, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5120, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5125, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5130, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5135, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5140, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5145, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5150, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5155, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5160, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5165, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5170, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5175, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5180, IEEE80211_CHAN_OFDM, DMN_DEBUG | DMN_FCC1 }, \
+ { 5185, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5190, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5195, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5200, IEEE80211_CHAN_OFDM, DMN_DEBUG | DMN_FCC3 }, \
+ { 5205, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5210, IEEE80211_CHAN_TURBO, DMN_DEBUG | DMN_FCC1 }, \
+ { 5215, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5220, IEEE80211_CHAN_OFDM, DMN_DEBUG | DMN_FCC1 }, \
+ { 5225, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5230, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5235, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5240, IEEE80211_CHAN_OFDM, DMN_DEBUG | DMN_FCC1 | \
+ DMN_FCC3 }, \
+ { 5245, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5250, IEEE80211_CHAN_TURBO, DMN_DEBUG | DMN_FCC1 }, \
+ { 5255, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5260, IEEE80211_CHAN_OFDM, DMN_DEBUG | DMN_FCC1 }, \
+ { 5265, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5270, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5275, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5280, IEEE80211_CHAN_OFDM, DMN_DEBUG | DMN_FCC3 }, \
+ { 5285, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5290, IEEE80211_CHAN_TURBO, DMN_DEBUG | DMN_FCC1 }, \
+ { 5295, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5300, IEEE80211_CHAN_OFDM, DMN_DEBUG | DMN_FCC1 }, \
+ { 5305, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5310, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5315, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5320, IEEE80211_CHAN_OFDM, DMN_DEBUG | DMN_FCC1 }, \
+ { 5325, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5330, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5335, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5340, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5345, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5350, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5355, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5360, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5365, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5370, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5375, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5380, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5385, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5390, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5395, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5400, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5405, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5410, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5415, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5420, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5425, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5430, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5435, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5440, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5445, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5450, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5455, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5460, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5465, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5470, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5475, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5480, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5485, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5490, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5495, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5500, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5505, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5510, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5515, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5520, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5525, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5530, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5535, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5540, IEEE80211_CHAN_OFDM, DMN_DEBUG | DMN_FCC3 }, \
+ { 5545, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5550, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5555, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5560, IEEE80211_CHAN_OFDM, DMN_DEBUG | DMN_FCC3 }, \
+ { 5565, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5570, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5575, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5580, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5585, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5590, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5595, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5600, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5605, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5610, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5615, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5620, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5625, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5630, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5635, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5640, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5645, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5650, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5655, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5660, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5665, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5670, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5675, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5680, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5685, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5690, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5695, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5700, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5705, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5710, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5715, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5720, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5725, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5730, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5735, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5740, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5745, IEEE80211_CHAN_OFDM, DMN_DEBUG | DMN_FCC1 }, \
+ { 5750, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5755, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5760, IEEE80211_CHAN_TURBO, DMN_DEBUG | DMN_FCC1 }, \
+ { 5765, IEEE80211_CHAN_OFDM, DMN_DEBUG | DMN_FCC3 }, \
+ { 5770, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5775, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5780, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5785, IEEE80211_CHAN_OFDM, DMN_DEBUG | DMN_FCC1 }, \
+ { 5790, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5795, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5800, IEEE80211_CHAN_TURBO, DMN_DEBUG | DMN_FCC1 }, \
+ { 5805, IEEE80211_CHAN_OFDM, DMN_DEBUG | DMN_FCC3 }, \
+ { 5810, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5815, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5820, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5825, IEEE80211_CHAN_OFDM, DMN_DEBUG | DMN_FCC1 }, \
+ { 5830, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5835, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5840, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5845, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5850, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5855, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5860, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5865, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5870, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5875, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5880, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5885, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5890, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5895, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5900, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5905, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5910, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5915, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5920, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5925, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5930, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5935, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5940, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5945, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5950, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5955, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5960, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5965, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5970, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5975, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5980, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5985, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5990, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 5995, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6000, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6005, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6010, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6015, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6020, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6025, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6030, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6035, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6040, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6045, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6050, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6055, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6060, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6065, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6070, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6075, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6080, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6085, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6090, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6095, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+ { 6100, IEEE80211_CHAN_OFDM, DMN_DEBUG }, \
+}
+
+__BEGIN_DECLS
+
+extern u_int16_t ieee80211_name2countrycode(const char *);
+extern u_int32_t ieee80211_name2regdomain(const char *);
+extern const char *ieee80211_countrycode2name(u_int16_t);
+extern const char *ieee80211_regdomain2name(u_int32_t);
+extern u_int32_t ieee80211_regdomain2flag(u_int16_t, u_int16_t);
+
+__END_DECLS
+
+#endif /* _NET80211_IEEE80211_REGDOMAIN_H_ */