Annotation of sys/net80211/ieee80211_regdomain.h, Revision 1.1
1.1 ! nbrk 1: /* $OpenBSD: ieee80211_regdomain.h,v 1.8 2005/12/18 17:59:59 reyk Exp $ */
! 2:
! 3: /*
! 4: * Copyright (c) 2004, 2005 Reyk Floeter <reyk@openbsd.org>
! 5: *
! 6: * Permission to use, copy, modify, and distribute this software for any
! 7: * purpose with or without fee is hereby granted, provided that the above
! 8: * copyright notice and this permission notice appear in all copies.
! 9: *
! 10: * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
! 11: * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
! 12: * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
! 13: * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
! 14: * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
! 15: * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
! 16: * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
! 17: */
! 18:
! 19: #ifndef _NET80211_IEEE80211_REGDOMAIN_H_
! 20: #define _NET80211_IEEE80211_REGDOMAIN_H_
! 21:
! 22: typedef u_int32_t ieee80211_regdomain_t;
! 23:
! 24: enum ieee80211_regdomain {
! 25: DMN_DEFAULT = 0x00,
! 26: DMN_NULL_WORLD = 0x03,
! 27: DMN_NULL_ETSIB = 0x07,
! 28: DMN_NULL_ETSIC = 0x08,
! 29: DMN_FCC1_FCCA = 0x10,
! 30: DMN_FCC1_WORLD = 0x11,
! 31: DMN_FCC2_FCCA = 0x20,
! 32: DMN_FCC2_WORLD = 0x21,
! 33: DMN_FCC2_ETSIC = 0x22,
! 34: DMN_FRANCE_NULL = 0x31,
! 35: DMN_FCC3_FCCA = 0x3A,
! 36: DMN_ETSI1_WORLD = 0x37,
! 37: DMN_ETSI3_ETSIA = 0x32,
! 38: DMN_ETSI2_WORLD = 0x35,
! 39: DMN_ETSI3_WORLD = 0x36,
! 40: DMN_ETSI4_WORLD = 0x30,
! 41: DMN_ETSI4_ETSIC = 0x38,
! 42: DMN_ETSI5_WORLD = 0x39,
! 43: DMN_ETSI6_WORLD = 0x34,
! 44: DMN_ETSI_NULL = 0x33,
! 45: DMN_MKK1_MKKA = 0x40,
! 46: DMN_MKK1_MKKB = 0x41,
! 47: DMN_APL4_WORLD = 0x42,
! 48: DMN_MKK2_MKKA = 0x43,
! 49: DMN_APL_NULL = 0x44,
! 50: DMN_APL2_WORLD = 0x45,
! 51: DMN_APL2_APLC = 0x46,
! 52: DMN_APL3_WORLD = 0x47,
! 53: DMN_MKK1_FCCA = 0x48,
! 54: DMN_APL2_APLD = 0x49,
! 55: DMN_MKK1_MKKA1 = 0x4A,
! 56: DMN_MKK1_MKKA2 = 0x4B,
! 57: DMN_APL1_WORLD = 0x52,
! 58: DMN_APL1_FCCA = 0x53,
! 59: DMN_APL1_APLA = 0x54,
! 60: DMN_APL1_ETSIC = 0x55,
! 61: DMN_APL2_ETSIC = 0x56,
! 62: DMN_APL5_WORLD = 0x58,
! 63: DMN_WOR0_WORLD = 0x60,
! 64: DMN_WOR1_WORLD = 0x61,
! 65: DMN_WOR2_WORLD = 0x62,
! 66: DMN_WOR3_WORLD = 0x63,
! 67: DMN_WOR4_WORLD = 0x64,
! 68: DMN_WOR5_ETSIC = 0x65,
! 69: DMN_WOR01_WORLD = 0x66,
! 70: DMN_WOR02_WORLD = 0x67,
! 71: DMN_EU1_WORLD = 0x68,
! 72: DMN_WOR9_WORLD = 0x69,
! 73: DMN_WORA_WORLD = 0x6A,
! 74:
! 75: DMN_APL1 = 0xf0000001,
! 76: DMN_APL2 = 0xf0000002,
! 77: DMN_APL3 = 0xf0000004,
! 78: DMN_APL4 = 0xf0000008,
! 79: DMN_APL5 = 0xf0000010,
! 80: DMN_ETSI1 = 0xf0000020,
! 81: DMN_ETSI2 = 0xf0000040,
! 82: DMN_ETSI3 = 0xf0000080,
! 83: DMN_ETSI4 = 0xf0000100,
! 84: DMN_ETSI5 = 0xf0000200,
! 85: DMN_ETSI6 = 0xf0000400,
! 86: DMN_ETSIA = 0xf0000800,
! 87: DMN_ETSIB = 0xf0001000,
! 88: DMN_ETSIC = 0xf0002000,
! 89: DMN_FCC1 = 0xf0004000,
! 90: DMN_FCC2 = 0xf0008000,
! 91: DMN_FCC3 = 0xf0010000,
! 92: DMN_FCCA = 0xf0020000,
! 93: DMN_APLD = 0xf0040000,
! 94: DMN_MKK1 = 0xf0080000,
! 95: DMN_MKK2 = 0xf0100000,
! 96: DMN_MKKA = 0xf0200000,
! 97: DMN_NULL = 0xf0400000,
! 98: DMN_WORLD = 0xf0800000,
! 99: DMN_DEBUG = 0xf1000000 /* used for debugging */
! 100: };
! 101:
! 102: #define IEEE80211_DMN(_d) ((_d) & ~0xf0000000)
! 103:
! 104: struct ieee80211_regdomainname {
! 105: u_int32_t rn_domain;
! 106: const char *rn_name;
! 107: };
! 108:
! 109: #define IEEE80211_REGDOMAIN_NAMES { \
! 110: { DMN_APL1, "APL1" }, \
! 111: { DMN_APL1_APLA, "APL1A" }, \
! 112: { DMN_APL1_ETSIC, "APL1_ETSIC" }, \
! 113: { DMN_APL1_FCCA, "APL1_FCCA" }, \
! 114: { DMN_APL1_WORLD, "APL1W" }, \
! 115: { DMN_APL2, "APL2" }, \
! 116: { DMN_APL2_APLC, "APL2C" }, \
! 117: { DMN_APL2_APLD, "APL2D" }, \
! 118: { DMN_APL2_ETSIC, "APL2_ETSIC" }, \
! 119: { DMN_APL2_WORLD, "APL2W" }, \
! 120: { DMN_APL3, "APL3" }, \
! 121: { DMN_APL3_WORLD, "APL3W" }, \
! 122: { DMN_APL4, "APL4" }, \
! 123: { DMN_APL4_WORLD, "APL4W" }, \
! 124: { DMN_APL5, "APL5" }, \
! 125: { DMN_APL5_WORLD, "APL5W" }, \
! 126: { DMN_APLD, "APLD" }, \
! 127: { DMN_APL_NULL, "APL" }, \
! 128: { DMN_DEBUG, "DEBUG" }, \
! 129: { DMN_ETSI1, "ETSI1" }, \
! 130: { DMN_ETSI1_WORLD, "ETSI1W" }, \
! 131: { DMN_ETSI2, "ETSI2" }, \
! 132: { DMN_ETSI2_WORLD, "ETSI2W" }, \
! 133: { DMN_ETSI3, "ETSI3" }, \
! 134: { DMN_ETSI3_ETSIA, "ETSI3A" }, \
! 135: { DMN_ETSI3_WORLD, "ETSI3W," }, \
! 136: { DMN_ETSI4, "ETSI4" }, \
! 137: { DMN_ETSI4_ETSIC, "ETSI4C" }, \
! 138: { DMN_ETSI4_WORLD, "ETSI4W" }, \
! 139: { DMN_ETSI5, "ETSI5" }, \
! 140: { DMN_ETSI5_WORLD, "ETSI5W" }, \
! 141: { DMN_ETSI6, "ETSI6" }, \
! 142: { DMN_ETSI6_WORLD, "ETSI6W" }, \
! 143: { DMN_ETSIA, "ETSIA" }, \
! 144: { DMN_ETSIB, "ETSIB" }, \
! 145: { DMN_ETSIC, "ETSIC" }, \
! 146: { DMN_ETSI_NULL, "ETSI" }, \
! 147: { DMN_EU1_WORLD, "EU1W" }, \
! 148: { DMN_FCC1, "FCC1" }, \
! 149: { DMN_FCC1_FCCA, "FCC1A" }, \
! 150: { DMN_FCC1_WORLD, "FCC1W" }, \
! 151: { DMN_FCC2, "FCC2" }, \
! 152: { DMN_FCC2_ETSIC, "FCC2C" }, \
! 153: { DMN_FCC2_FCCA, "FCC2A" }, \
! 154: { DMN_FCC2_WORLD, "FCC2W" }, \
! 155: { DMN_FCC3, "FCC3" }, \
! 156: { DMN_FCC3_FCCA, "FCC3A" }, \
! 157: { DMN_FCCA, "FCCA" }, \
! 158: { DMN_FRANCE_NULL, "FRANCE" }, \
! 159: { DMN_MKK1, "MKK1" }, \
! 160: { DMN_MKK1_FCCA, "MKK1_FCCA" }, \
! 161: { DMN_MKK1_MKKA, "MKK1A" }, \
! 162: { DMN_MKK1_MKKA1, "MKK1A1" }, \
! 163: { DMN_MKK1_MKKA2, "MKK1A2" }, \
! 164: { DMN_MKK1_MKKB, "MKK1B" }, \
! 165: { DMN_MKK2, "MKK2" }, \
! 166: { DMN_MKK2_MKKA, "MKK2A" }, \
! 167: { DMN_MKKA, "MKKA" }, \
! 168: { DMN_DEFAULT, "NONE" }, \
! 169: { DMN_NULL, "NONE" }, \
! 170: { DMN_NULL_ETSIB, "ETSIB" }, \
! 171: { DMN_NULL_ETSIC, "ETSIC" }, \
! 172: { DMN_WOR01_WORLD, "WOR01W" }, \
! 173: { DMN_WOR02_WORLD, "WOR02W" }, \
! 174: { DMN_WOR0_WORLD, "WOR0W" }, \
! 175: { DMN_WOR1_WORLD, "WOR1W" }, \
! 176: { DMN_WOR2_WORLD, "WOR2W" }, \
! 177: { DMN_WOR3_WORLD, "WOR3W" }, \
! 178: { DMN_WOR4_WORLD, "WOR4W" }, \
! 179: { DMN_WOR5_ETSIC, "WOR5_ETSIC" }, \
! 180: { DMN_WOR9_WORLD, "WOR9W" }, \
! 181: { DMN_WORA_WORLD, "WORAW" }, \
! 182: { DMN_NULL_WORLD, "WORLD" }, \
! 183: { DMN_WORLD, "WORLD" } \
! 184: }
! 185:
! 186: struct ieee80211_regdomainmap {
! 187: u_int16_t rm_domain;
! 188: u_int32_t rm_domain_5ghz;
! 189: u_int32_t rm_domain_2ghz;
! 190: };
! 191:
! 192: #define IEEE80211_REGDOMAIN_MAP { \
! 193: { DMN_DEFAULT, DMN_DEBUG, DMN_DEBUG }, \
! 194: { DMN_NULL_WORLD, DMN_NULL, DMN_WORLD }, \
! 195: { DMN_NULL_ETSIB, DMN_NULL, DMN_ETSIB }, \
! 196: { DMN_NULL_ETSIC, DMN_NULL, DMN_ETSIC }, \
! 197: { DMN_FCC1_FCCA, DMN_FCC1, DMN_FCCA }, \
! 198: { DMN_FCC1_WORLD, DMN_FCC1, DMN_WORLD }, \
! 199: { DMN_FCC2_FCCA, DMN_FCC2, DMN_FCCA }, \
! 200: { DMN_FCC2_WORLD, DMN_FCC2, DMN_WORLD }, \
! 201: { DMN_FCC2_ETSIC, DMN_FCC2, DMN_ETSIC }, \
! 202: { DMN_FRANCE_NULL, DMN_ETSI3, DMN_ETSI3 }, \
! 203: { DMN_FCC3_FCCA, DMN_FCC3, DMN_WORLD }, \
! 204: { DMN_ETSI1_WORLD, DMN_ETSI1, DMN_WORLD }, \
! 205: { DMN_ETSI3_ETSIA, DMN_ETSI3, DMN_WORLD }, \
! 206: { DMN_ETSI2_WORLD, DMN_ETSI2, DMN_WORLD }, \
! 207: { DMN_ETSI3_WORLD, DMN_ETSI3, DMN_WORLD }, \
! 208: { DMN_ETSI4_WORLD, DMN_ETSI4, DMN_WORLD }, \
! 209: { DMN_ETSI4_ETSIC, DMN_ETSI4, DMN_ETSIC }, \
! 210: { DMN_ETSI5_WORLD, DMN_ETSI5, DMN_WORLD }, \
! 211: { DMN_ETSI6_WORLD, DMN_ETSI6, DMN_WORLD }, \
! 212: { DMN_ETSI_NULL, DMN_ETSI1, DMN_ETSI1 }, \
! 213: { DMN_MKK1_MKKA, DMN_MKK1, DMN_MKKA }, \
! 214: { DMN_MKK1_MKKB, DMN_MKK1, DMN_MKKA }, \
! 215: { DMN_APL4_WORLD, DMN_APL4, DMN_WORLD }, \
! 216: { DMN_MKK2_MKKA, DMN_MKK2, DMN_MKKA }, \
! 217: { DMN_APL_NULL, DMN_APL1, DMN_NULL }, \
! 218: { DMN_APL2_WORLD, DMN_APL2, DMN_WORLD }, \
! 219: { DMN_APL2_APLC, DMN_APL2, DMN_WORLD }, \
! 220: { DMN_APL3_WORLD, DMN_APL3, DMN_WORLD }, \
! 221: { DMN_MKK1_FCCA, DMN_MKK1, DMN_FCCA }, \
! 222: { DMN_APL2_APLD, DMN_APL2, DMN_APLD }, \
! 223: { DMN_MKK1_MKKA1, DMN_MKK1, DMN_MKKA }, \
! 224: { DMN_MKK1_MKKA2, DMN_MKK1, DMN_MKKA }, \
! 225: { DMN_APL1_WORLD, DMN_APL1, DMN_WORLD }, \
! 226: { DMN_APL1_FCCA, DMN_APL1, DMN_FCCA }, \
! 227: { DMN_APL1_APLA, DMN_APL1, DMN_WORLD }, \
! 228: { DMN_APL1_ETSIC, DMN_APL1, DMN_ETSIC }, \
! 229: { DMN_APL2_ETSIC, DMN_APL2, DMN_ETSIC }, \
! 230: { DMN_APL5_WORLD, DMN_APL5, DMN_WORLD }, \
! 231: { DMN_WOR0_WORLD, DMN_WORLD, DMN_WORLD }, \
! 232: { DMN_WOR1_WORLD, DMN_WORLD, DMN_WORLD }, \
! 233: { DMN_WOR2_WORLD, DMN_WORLD, DMN_WORLD }, \
! 234: { DMN_WOR3_WORLD, DMN_WORLD, DMN_WORLD }, \
! 235: { DMN_WOR4_WORLD, DMN_WORLD, DMN_WORLD }, \
! 236: { DMN_WOR5_ETSIC, DMN_WORLD, DMN_WORLD }, \
! 237: { DMN_WOR01_WORLD, DMN_WORLD, DMN_WORLD }, \
! 238: { DMN_WOR02_WORLD, DMN_WORLD, DMN_WORLD }, \
! 239: { DMN_EU1_WORLD, DMN_ETSI1, DMN_WORLD }, \
! 240: { DMN_WOR9_WORLD, DMN_WORLD, DMN_WORLD }, \
! 241: { DMN_WORA_WORLD, DMN_WORLD, DMN_WORLD }, \
! 242: }
! 243:
! 244: enum ieee80211_countrycode {
! 245: CTRY_DEFAULT = 0, /* Default domain (NA) */
! 246: CTRY_ALBANIA = 8, /* Albania */
! 247: CTRY_ALGERIA = 12, /* Algeria */
! 248: CTRY_ARGENTINA = 32, /* Argentina */
! 249: CTRY_ARMENIA = 51, /* Armenia */
! 250: CTRY_AUSTRALIA = 36, /* Australia */
! 251: CTRY_AUSTRIA = 40, /* Austria */
! 252: CTRY_AZERBAIJAN = 31, /* Azerbaijan */
! 253: CTRY_BAHRAIN = 48, /* Bahrain */
! 254: CTRY_BELARUS = 112, /* Belarus */
! 255: CTRY_BELGIUM = 56, /* Belgium */
! 256: CTRY_BELIZE = 84, /* Belize */
! 257: CTRY_BOLIVIA = 68, /* Bolivia */
! 258: CTRY_BRAZIL = 76, /* Brazil */
! 259: CTRY_BRUNEI_DARUSSALAM = 96, /* Brunei Darussalam */
! 260: CTRY_BULGARIA = 100, /* Bulgaria */
! 261: CTRY_CANADA = 124, /* Canada */
! 262: CTRY_CHILE = 152, /* Chile */
! 263: CTRY_CHINA = 156, /* People's Republic of China */
! 264: CTRY_COLOMBIA = 170, /* Colombia */
! 265: CTRY_COSTA_RICA = 188, /* Costa Rica */
! 266: CTRY_CROATIA = 191, /* Croatia */
! 267: CTRY_CYPRUS = 196, /* Cyprus */
! 268: CTRY_CZECH = 203, /* Czech Republic */
! 269: CTRY_DENMARK = 208, /* Denmark */
! 270: CTRY_DOMINICAN_REPUBLIC = 214, /* Dominican Republic */
! 271: CTRY_ECUADOR = 218, /* Ecuador */
! 272: CTRY_EGYPT = 818, /* Egypt */
! 273: CTRY_EL_SALVADOR = 222, /* El Salvador */
! 274: CTRY_ESTONIA = 233, /* Estonia */
! 275: CTRY_FAEROE_ISLANDS = 234, /* Faeroe Islands */
! 276: CTRY_FINLAND = 246, /* Finland */
! 277: CTRY_FRANCE = 250, /* France */
! 278: CTRY_FRANCE2 = 255, /* France2 */
! 279: CTRY_GEORGIA = 268, /* Georgia */
! 280: CTRY_GERMANY = 276, /* Germany */
! 281: CTRY_GREECE = 300, /* Greece */
! 282: CTRY_GUATEMALA = 320, /* Guatemala */
! 283: CTRY_HONDURAS = 340, /* Honduras */
! 284: CTRY_HONG_KONG = 344, /* Hong Kong S.A.R., P.R.C. */
! 285: CTRY_HUNGARY = 348, /* Hungary */
! 286: CTRY_ICELAND = 352, /* Iceland */
! 287: CTRY_INDIA = 356, /* India */
! 288: CTRY_INDONESIA = 360, /* Indonesia */
! 289: CTRY_IRAN = 364, /* Iran */
! 290: CTRY_IRAQ = 368, /* Iraq */
! 291: CTRY_IRELAND = 372, /* Ireland */
! 292: CTRY_ISRAEL = 376, /* Israel */
! 293: CTRY_ITALY = 380, /* Italy */
! 294: CTRY_JAMAICA = 388, /* Jamaica */
! 295: CTRY_JAPAN = 392, /* Japan */
! 296: CTRY_JAPAN1 = 393, /* Japan (JP1) */
! 297: CTRY_JAPAN2 = 394, /* Japan (JP0) */
! 298: CTRY_JAPAN3 = 395, /* Japan (JP1-1) */
! 299: CTRY_JAPAN4 = 396, /* Japan (JE1) */
! 300: CTRY_JAPAN5 = 397, /* Japan (JE2) */
! 301: CTRY_JORDAN = 400, /* Jordan */
! 302: CTRY_KAZAKHSTAN = 398, /* Kazakhstan */
! 303: CTRY_KENYA = 404, /* Kenya */
! 304: CTRY_KOREA_NORTH = 408, /* North Korea */
! 305: CTRY_KOREA_ROC = 410, /* South Korea */
! 306: CTRY_KOREA_ROC2 = 411, /* South Korea */
! 307: CTRY_KUWAIT = 414, /* Kuwait */
! 308: CTRY_LATVIA = 428, /* Latvia */
! 309: CTRY_LEBANON = 422, /* Lebanon */
! 310: CTRY_LIBYA = 434, /* Libya */
! 311: CTRY_LIECHTENSTEIN = 438, /* Liechtenstein */
! 312: CTRY_LITHUANIA = 440, /* Lithuania */
! 313: CTRY_LUXEMBOURG = 442, /* Luxembourg */
! 314: CTRY_MACAU = 446, /* Macau */
! 315: CTRY_MACEDONIA = 807, /* Republic of Macedonia */
! 316: CTRY_MALAYSIA = 458, /* Malaysia */
! 317: CTRY_MEXICO = 484, /* Mexico */
! 318: CTRY_MONACO = 492, /* Principality of Monaco */
! 319: CTRY_MOROCCO = 504, /* Morocco */
! 320: CTRY_NETHERLANDS = 528, /* Netherlands */
! 321: CTRY_NEW_ZEALAND = 554, /* New Zealand */
! 322: CTRY_NICARAGUA = 558, /* Nicaragua */
! 323: CTRY_NORWAY = 578, /* Norway */
! 324: CTRY_OMAN = 512, /* Oman */
! 325: CTRY_PAKISTAN = 586, /* Islamic Republic of Pakistan */
! 326: CTRY_PANAMA = 591, /* Panama */
! 327: CTRY_PARAGUAY = 600, /* Paraguay */
! 328: CTRY_PERU = 604, /* Peru */
! 329: CTRY_PHILIPPINES = 608, /* Republic of the Philippines */
! 330: CTRY_POLAND = 616, /* Poland */
! 331: CTRY_PORTUGAL = 620, /* Portugal */
! 332: CTRY_PUERTO_RICO = 630, /* Puerto Rico */
! 333: CTRY_QATAR = 634, /* Qatar */
! 334: CTRY_ROMANIA = 642, /* Romania */
! 335: CTRY_RUSSIA = 643, /* Russia */
! 336: CTRY_SAUDI_ARABIA = 682, /* Saudi Arabia */
! 337: CTRY_SINGAPORE = 702, /* Singapore */
! 338: CTRY_SLOVAKIA = 703, /* Slovak Republic */
! 339: CTRY_SLOVENIA = 705, /* Slovenia */
! 340: CTRY_SOUTH_AFRICA = 710, /* South Africa */
! 341: CTRY_SPAIN = 724, /* Spain */
! 342: CTRY_SRI_LANKA = 728, /* Sri Lanka */
! 343: CTRY_SWEDEN = 752, /* Sweden */
! 344: CTRY_SWITZERLAND = 756, /* Switzerland */
! 345: CTRY_SYRIA = 760, /* Syria */
! 346: CTRY_TAIWAN = 158, /* Taiwan */
! 347: CTRY_THAILAND = 764, /* Thailand */
! 348: CTRY_TRINIDAD_Y_TOBAGO = 780, /* Trinidad y Tobago */
! 349: CTRY_TUNISIA = 788, /* Tunisia */
! 350: CTRY_TURKEY = 792, /* Turkey */
! 351: CTRY_UAE = 784, /* U.A.E. */
! 352: CTRY_UKRAINE = 804, /* Ukraine */
! 353: CTRY_UNITED_KINGDOM = 826, /* United Kingdom */
! 354: CTRY_UNITED_STATES = 840, /* United States */
! 355: CTRY_URUGUAY = 858, /* Uruguay */
! 356: CTRY_UZBEKISTAN = 860, /* Uzbekistan */
! 357: CTRY_VENEZUELA = 862, /* Venezuela */
! 358: CTRY_VIET_NAM = 704, /* Viet Nam */
! 359: CTRY_YEMEN = 887, /* Yemen */
! 360: CTRY_ZIMBABWE = 716, /* Zimbabwe */
! 361: };
! 362:
! 363: struct ieee80211_countryname {
! 364: u_int16_t cn_code;
! 365: const char *cn_name;
! 366: u_int32_t cn_domain;
! 367: };
! 368:
! 369: #define IEEE80211_REGDOMAIN_COUNTRY_NAMES { \
! 370: { CTRY_DEFAULT, "00", DMN_DEFAULT }, \
! 371: { CTRY_UAE, "ae", DMN_NULL_WORLD }, \
! 372: { CTRY_ALBANIA, "al", DMN_NULL_WORLD }, \
! 373: { CTRY_ARMENIA, "am", DMN_ETSI4_WORLD }, \
! 374: { CTRY_ARGENTINA, "ar", DMN_APL3_WORLD }, \
! 375: { CTRY_AUSTRIA, "at", DMN_ETSI5_WORLD }, \
! 376: { CTRY_AUSTRALIA, "au", DMN_FCC2_WORLD }, \
! 377: { CTRY_AZERBAIJAN, "az", DMN_ETSI4_WORLD }, \
! 378: { CTRY_BELGIUM, "be", DMN_ETSI4_WORLD }, \
! 379: { CTRY_BULGARIA, "bg", DMN_ETSI6_WORLD }, \
! 380: { CTRY_BAHRAIN, "bh", DMN_NULL_WORLD }, \
! 381: { CTRY_BRUNEI_DARUSSALAM, "bn", DMN_APL1_WORLD }, \
! 382: { CTRY_BOLIVIA, "bo", DMN_APL1_ETSIC }, \
! 383: { CTRY_BRAZIL, "br", DMN_NULL_ETSIC }, \
! 384: { CTRY_BELARUS, "by", DMN_NULL_WORLD }, \
! 385: { CTRY_BELIZE, "bz", DMN_NULL_ETSIC }, \
! 386: { CTRY_CANADA, "ca", DMN_FCC2_FCCA }, \
! 387: { CTRY_SWITZERLAND, "ch", DMN_ETSI2_WORLD }, \
! 388: { CTRY_CHILE, "cl", DMN_APL5_WORLD }, \
! 389: { CTRY_CHINA, "cn", DMN_APL1_WORLD }, \
! 390: { CTRY_COLOMBIA, "co", DMN_FCC1_FCCA }, \
! 391: { CTRY_COSTA_RICA, "cr", DMN_NULL_WORLD }, \
! 392: { CTRY_CYPRUS, "cy", DMN_ETSI1_WORLD }, \
! 393: { CTRY_CZECH, "cz", DMN_ETSI3_WORLD }, \
! 394: { CTRY_GERMANY, "de", DMN_ETSI1_WORLD }, \
! 395: { CTRY_DENMARK, "dk", DMN_ETSI1_WORLD }, \
! 396: { CTRY_DOMINICAN_REPUBLIC, "do", DMN_FCC1_FCCA }, \
! 397: { CTRY_ALGERIA, "dz", DMN_NULL_WORLD }, \
! 398: { CTRY_ECUADOR, "ec", DMN_NULL_WORLD }, \
! 399: { CTRY_ESTONIA, "ee", DMN_ETSI1_WORLD }, \
! 400: { CTRY_EGYPT, "eg", DMN_NULL_WORLD }, \
! 401: { CTRY_SPAIN, "es", DMN_ETSI1_WORLD }, \
! 402: { CTRY_FRANCE2, "f2", DMN_ETSI3_WORLD }, \
! 403: { CTRY_FINLAND, "fi", DMN_ETSI1_WORLD }, \
! 404: { CTRY_FAEROE_ISLANDS, "fo", DMN_NULL_WORLD }, \
! 405: { CTRY_FRANCE, "fr", DMN_ETSI3_WORLD }, \
! 406: { CTRY_GEORGIA, "ge", DMN_ETSI4_WORLD }, \
! 407: { CTRY_GREECE, "gr", DMN_NULL_WORLD }, \
! 408: { CTRY_GUATEMALA, "gt", DMN_FCC1_FCCA }, \
! 409: { CTRY_HONG_KONG, "hk", DMN_FCC2_WORLD }, \
! 410: { CTRY_HONDURAS, "hn", DMN_NULL_WORLD }, \
! 411: { CTRY_CROATIA, "hr", DMN_ETSI3_WORLD }, \
! 412: { CTRY_HUNGARY, "hu", DMN_ETSI2_WORLD }, \
! 413: { CTRY_INDONESIA, "id", DMN_NULL_WORLD }, \
! 414: { CTRY_IRELAND, "ie", DMN_ETSI1_WORLD }, \
! 415: { CTRY_ISRAEL, "il", DMN_NULL_WORLD }, \
! 416: { CTRY_INDIA, "in", DMN_NULL_WORLD }, \
! 417: { CTRY_IRAQ, "iq", DMN_NULL_WORLD }, \
! 418: { CTRY_IRAN, "ir", DMN_APL1_WORLD }, \
! 419: { CTRY_ICELAND, "is", DMN_ETSI1_WORLD }, \
! 420: { CTRY_ITALY, "it", DMN_ETSI1_WORLD }, \
! 421: { CTRY_JAPAN1, "j1", DMN_MKK1_MKKB }, \
! 422: { CTRY_JAPAN2, "j2", DMN_MKK1_FCCA }, \
! 423: { CTRY_JAPAN3, "j3", DMN_MKK2_MKKA }, \
! 424: { CTRY_JAPAN4, "j4", DMN_MKK1_MKKA1 }, \
! 425: { CTRY_JAPAN5, "j5", DMN_MKK1_MKKA2 }, \
! 426: { CTRY_JAMAICA, "jm", DMN_NULL_WORLD }, \
! 427: { CTRY_JORDAN, "jo", DMN_NULL_WORLD }, \
! 428: { CTRY_JAPAN, "jp", DMN_MKK1_MKKA }, \
! 429: { CTRY_KOREA_ROC2, "k2", DMN_APL2_APLD }, \
! 430: { CTRY_KENYA, "ke", DMN_NULL_WORLD }, \
! 431: { CTRY_KOREA_NORTH, "kp", DMN_APL2_WORLD }, \
! 432: { CTRY_KOREA_ROC, "kr", DMN_APL2_WORLD }, \
! 433: { CTRY_KUWAIT, "kw", DMN_NULL_WORLD }, \
! 434: { CTRY_KAZAKHSTAN, "kz", DMN_NULL_WORLD }, \
! 435: { CTRY_LEBANON, "lb", DMN_NULL_WORLD }, \
! 436: { CTRY_LIECHTENSTEIN, "li", DMN_ETSI2_WORLD }, \
! 437: { CTRY_SRI_LANKA, "lk", DMN_NULL_WORLD }, \
! 438: { CTRY_LITHUANIA, "lt", DMN_ETSI1_WORLD }, \
! 439: { CTRY_LUXEMBOURG, "lu", DMN_ETSI1_WORLD }, \
! 440: { CTRY_LATVIA, "lv", DMN_NULL_WORLD }, \
! 441: { CTRY_LIBYA, "ly", DMN_NULL_WORLD }, \
! 442: { CTRY_MOROCCO, "ma", DMN_NULL_WORLD }, \
! 443: { CTRY_MONACO, "mc", DMN_ETSI4_WORLD }, \
! 444: { CTRY_MACEDONIA, "mk", DMN_NULL_WORLD }, \
! 445: { CTRY_MACAU, "mo", DMN_FCC2_WORLD }, \
! 446: { CTRY_MEXICO, "mx", DMN_FCC1_FCCA }, \
! 447: { CTRY_MALAYSIA, "my", DMN_NULL_WORLD }, \
! 448: { CTRY_NICARAGUA, "ni", DMN_NULL_WORLD }, \
! 449: { CTRY_NETHERLANDS, "nl", DMN_ETSI1_WORLD }, \
! 450: { CTRY_NORWAY, "no", DMN_ETSI1_WORLD }, \
! 451: { CTRY_NEW_ZEALAND, "nz", DMN_FCC2_ETSIC }, \
! 452: { CTRY_OMAN, "om", DMN_NULL_WORLD }, \
! 453: { CTRY_PANAMA, "pa", DMN_FCC1_FCCA }, \
! 454: { CTRY_PERU, "pe", DMN_NULL_WORLD }, \
! 455: { CTRY_PHILIPPINES, "ph", DMN_FCC1_WORLD }, \
! 456: { CTRY_PAKISTAN, "pk", DMN_NULL_WORLD }, \
! 457: { CTRY_POLAND, "pl", DMN_ETSI1_WORLD }, \
! 458: { CTRY_PUERTO_RICO, "pr", DMN_FCC1_FCCA }, \
! 459: { CTRY_PORTUGAL, "pt", DMN_ETSI1_WORLD }, \
! 460: { CTRY_PARAGUAY, "py", DMN_NULL_WORLD }, \
! 461: { CTRY_QATAR, "qa", DMN_NULL_WORLD }, \
! 462: { CTRY_ROMANIA, "ro", DMN_NULL_WORLD }, \
! 463: { CTRY_RUSSIA, "ru", DMN_NULL_WORLD }, \
! 464: { CTRY_SAUDI_ARABIA, "sa", DMN_NULL_WORLD }, \
! 465: { CTRY_SWEDEN, "se", DMN_ETSI1_WORLD }, \
! 466: { CTRY_SINGAPORE, "sg", DMN_APL4_WORLD }, \
! 467: { CTRY_SLOVENIA, "si", DMN_ETSI1_WORLD }, \
! 468: { CTRY_SLOVAKIA, "sk", DMN_ETSI3_WORLD }, \
! 469: { CTRY_EL_SALVADOR, "sv", DMN_NULL_WORLD }, \
! 470: { CTRY_SYRIA, "sy", DMN_NULL_WORLD }, \
! 471: { CTRY_THAILAND, "th", DMN_APL2_WORLD }, \
! 472: { CTRY_TUNISIA, "tn", DMN_ETSI3_WORLD }, \
! 473: { CTRY_TURKEY, "tr", DMN_ETSI3_WORLD }, \
! 474: { CTRY_TRINIDAD_Y_TOBAGO, "tt", DMN_ETSI4_WORLD }, \
! 475: { CTRY_TAIWAN, "tw", DMN_APL3_WORLD }, \
! 476: { CTRY_UKRAINE, "ua", DMN_NULL_WORLD }, \
! 477: { CTRY_UNITED_KINGDOM, "uk", DMN_ETSI1_WORLD }, \
! 478: { CTRY_UNITED_STATES, "us", DMN_FCC1_FCCA }, \
! 479: { CTRY_URUGUAY, "uy", DMN_APL2_WORLD }, \
! 480: { CTRY_UZBEKISTAN, "uz", DMN_FCC3_FCCA }, \
! 481: { CTRY_VENEZUELA, "ve", DMN_APL2_ETSIC }, \
! 482: { CTRY_VIET_NAM, "vn", DMN_NULL_WORLD }, \
! 483: { CTRY_YEMEN, "ye", DMN_NULL_WORLD }, \
! 484: { CTRY_SOUTH_AFRICA, "za", DMN_ETSI1_WORLD }, \
! 485: { CTRY_ZIMBABWE, "zw", DMN_NULL_WORLD }, \
! 486: }
! 487:
! 488: enum ieee80211_ctl {
! 489: CTL_11A = 0x00,
! 490: CTL_11B = 0x01,
! 491: CTL_11G = 0x02,
! 492: CTL_TURBO = 0x03,
! 493: CTL_TURBO_G = 0x04,
! 494: CTL_FCC = 0x10,
! 495: CTL_ETSI = 0x30,
! 496: CTL_MKK = 0x40,
! 497: CTL_NONE = 0xff
! 498: };
! 499:
! 500: #define IEEE80211_CHANNELS_2GHZ_MIN 2412 /* 2GHz channel 1 */
! 501: #define IEEE80211_CHANNELS_2GHZ_MAX 2732 /* 2GHz channel 26 */
! 502:
! 503: struct ieee80211_regchannel {
! 504: u_int16_t rc_channel;
! 505: u_int32_t rc_domain;
! 506: u_int32_t rc_mode;
! 507: };
! 508:
! 509: #define IEEE80211_CHANNELS_2GHZ { \
! 510: { 2412, DMN_APLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 511: { 2417, DMN_APLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 512: { 2422, DMN_APLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 513: { 2427, DMN_APLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 514: { 2432, DMN_APLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 515: { 2437, DMN_APLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 516: { 2442, DMN_APLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 517: { 2447, DMN_APLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 518: { 2452, DMN_APLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 519: { 2457, DMN_APLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 520: { 2462, DMN_APLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 521: { 2467, DMN_APLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 522: { 2472, DMN_APLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 523: \
! 524: { 2432, DMN_ETSIB, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 525: { 2437, DMN_ETSIB, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM| \
! 526: IEEE80211_CHAN_TURBO }, \
! 527: { 2442, DMN_ETSIB, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 528: \
! 529: { 2412, DMN_ETSIC, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 530: { 2417, DMN_ETSIC, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 531: { 2422, DMN_ETSIC, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 532: { 2427, DMN_ETSIC, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 533: { 2432, DMN_ETSIC, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 534: { 2437, DMN_ETSIC, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM| \
! 535: IEEE80211_CHAN_TURBO }, \
! 536: { 2442, DMN_ETSIC, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 537: { 2447, DMN_ETSIC, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 538: { 2452, DMN_ETSIC, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 539: { 2457, DMN_ETSIC, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 540: { 2462, DMN_ETSIC, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 541: { 2467, DMN_ETSIC, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 542: { 2472, DMN_ETSIC, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 543: \
! 544: { 2412, DMN_FCCA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 545: { 2417, DMN_FCCA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 546: { 2422, DMN_FCCA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 547: { 2427, DMN_FCCA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 548: { 2432, DMN_FCCA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 549: { 2437, DMN_FCCA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM| \
! 550: IEEE80211_CHAN_TURBO }, \
! 551: { 2442, DMN_FCCA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 552: { 2447, DMN_FCCA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 553: { 2452, DMN_FCCA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 554: { 2457, DMN_FCCA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 555: { 2462, DMN_FCCA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 556: \
! 557: { 2412, DMN_MKKA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 558: { 2417, DMN_MKKA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 559: { 2422, DMN_MKKA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 560: { 2427, DMN_MKKA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 561: { 2432, DMN_MKKA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 562: { 2437, DMN_MKKA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 563: { 2442, DMN_MKKA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 564: { 2447, DMN_MKKA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 565: { 2452, DMN_MKKA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 566: { 2457, DMN_MKKA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 567: { 2462, DMN_MKKA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 568: { 2467, DMN_MKKA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 569: { 2472, DMN_MKKA, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 570: { 2484, DMN_MKKA, IEEE80211_CHAN_CCK }, \
! 571: \
! 572: { 2412, DMN_WORLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 573: { 2417, DMN_WORLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 574: { 2422, DMN_WORLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 575: { 2427, DMN_WORLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 576: { 2432, DMN_WORLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 577: { 2437, DMN_WORLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM| \
! 578: IEEE80211_CHAN_TURBO }, \
! 579: { 2442, DMN_WORLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 580: { 2447, DMN_WORLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 581: { 2452, DMN_WORLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 582: { 2457, DMN_WORLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 583: { 2462, DMN_WORLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 584: { 2467, DMN_WORLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 585: { 2472, DMN_WORLD, IEEE80211_CHAN_CCK|IEEE80211_CHAN_OFDM }, \
! 586: }
! 587:
! 588: #define IEEE80211_CHANNELS_5GHZ_MIN 5005 /* 5GHz channel 1 */
! 589: #define IEEE80211_CHANNELS_5GHZ_MAX 6100 /* 5GHz channel 220 */
! 590:
! 591: #define IEEE80211_CHANNELS_5GHZ { \
! 592: { 5745, DMN_APL1, IEEE80211_CHAN_OFDM }, \
! 593: { 5765, DMN_APL1, IEEE80211_CHAN_OFDM }, \
! 594: { 5785, DMN_APL1, IEEE80211_CHAN_OFDM }, \
! 595: { 5805, DMN_APL1, IEEE80211_CHAN_OFDM }, \
! 596: { 5825, DMN_APL1, IEEE80211_CHAN_OFDM }, \
! 597: \
! 598: { 5745, DMN_APL2, IEEE80211_CHAN_OFDM }, \
! 599: { 5765, DMN_APL2, IEEE80211_CHAN_OFDM }, \
! 600: { 5785, DMN_APL2, IEEE80211_CHAN_OFDM }, \
! 601: { 5805, DMN_APL2, IEEE80211_CHAN_OFDM }, \
! 602: \
! 603: { 5280, DMN_APL3, IEEE80211_CHAN_OFDM }, \
! 604: { 5300, DMN_APL3, IEEE80211_CHAN_OFDM }, \
! 605: { 5320, DMN_APL3, IEEE80211_CHAN_OFDM }, \
! 606: { 5745, DMN_APL3, IEEE80211_CHAN_OFDM }, \
! 607: { 5765, DMN_APL3, IEEE80211_CHAN_OFDM }, \
! 608: { 5785, DMN_APL3, IEEE80211_CHAN_OFDM }, \
! 609: { 5805, DMN_APL3, IEEE80211_CHAN_OFDM }, \
! 610: \
! 611: { 5180, DMN_APL4, IEEE80211_CHAN_OFDM }, \
! 612: { 5200, DMN_APL4, IEEE80211_CHAN_OFDM }, \
! 613: { 5220, DMN_APL4, IEEE80211_CHAN_OFDM }, \
! 614: { 5240, DMN_APL4, IEEE80211_CHAN_OFDM }, \
! 615: { 5745, DMN_APL4, IEEE80211_CHAN_OFDM }, \
! 616: { 5765, DMN_APL4, IEEE80211_CHAN_OFDM }, \
! 617: { 5785, DMN_APL4, IEEE80211_CHAN_OFDM }, \
! 618: { 5805, DMN_APL4, IEEE80211_CHAN_OFDM }, \
! 619: { 5825, DMN_APL4, IEEE80211_CHAN_OFDM }, \
! 620: \
! 621: { 5745, DMN_APL5, IEEE80211_CHAN_OFDM }, \
! 622: { 5765, DMN_APL5, IEEE80211_CHAN_OFDM }, \
! 623: { 5785, DMN_APL5, IEEE80211_CHAN_OFDM }, \
! 624: { 5805, DMN_APL5, IEEE80211_CHAN_OFDM }, \
! 625: { 5825, DMN_APL5, IEEE80211_CHAN_OFDM }, \
! 626: \
! 627: { 5180, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 628: { 5200, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 629: { 5220, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 630: { 5240, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 631: { 5260, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 632: { 5280, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 633: { 5300, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 634: { 5320, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 635: { 5500, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 636: { 5520, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 637: { 5540, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 638: { 5560, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 639: { 5580, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 640: { 5600, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 641: { 5620, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 642: { 5640, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 643: { 5660, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 644: { 5680, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 645: { 5700, DMN_ETSI1, IEEE80211_CHAN_OFDM }, \
! 646: \
! 647: { 5180, DMN_ETSI2, IEEE80211_CHAN_OFDM }, \
! 648: { 5200, DMN_ETSI2, IEEE80211_CHAN_OFDM }, \
! 649: { 5220, DMN_ETSI2, IEEE80211_CHAN_OFDM }, \
! 650: { 5240, DMN_ETSI2, IEEE80211_CHAN_OFDM }, \
! 651: \
! 652: { 5180, DMN_ETSI3, IEEE80211_CHAN_OFDM }, \
! 653: { 5200, DMN_ETSI3, IEEE80211_CHAN_OFDM }, \
! 654: { 5220, DMN_ETSI3, IEEE80211_CHAN_OFDM }, \
! 655: { 5240, DMN_ETSI3, IEEE80211_CHAN_OFDM }, \
! 656: { 5260, DMN_ETSI3, IEEE80211_CHAN_OFDM }, \
! 657: { 5280, DMN_ETSI3, IEEE80211_CHAN_OFDM }, \
! 658: { 5300, DMN_ETSI3, IEEE80211_CHAN_OFDM }, \
! 659: { 5320, DMN_ETSI3, IEEE80211_CHAN_OFDM }, \
! 660: \
! 661: { 5180, DMN_ETSI4, IEEE80211_CHAN_OFDM }, \
! 662: { 5200, DMN_ETSI4, IEEE80211_CHAN_OFDM }, \
! 663: { 5220, DMN_ETSI4, IEEE80211_CHAN_OFDM }, \
! 664: { 5240, DMN_ETSI4, IEEE80211_CHAN_OFDM }, \
! 665: { 5260, DMN_ETSI4, IEEE80211_CHAN_OFDM }, \
! 666: { 5280, DMN_ETSI4, IEEE80211_CHAN_OFDM }, \
! 667: { 5300, DMN_ETSI4, IEEE80211_CHAN_OFDM }, \
! 668: { 5320, DMN_ETSI4, IEEE80211_CHAN_OFDM }, \
! 669: \
! 670: { 5180, DMN_ETSI5, IEEE80211_CHAN_OFDM }, \
! 671: { 5200, DMN_ETSI5, IEEE80211_CHAN_OFDM }, \
! 672: { 5220, DMN_ETSI5, IEEE80211_CHAN_OFDM }, \
! 673: { 5240, DMN_ETSI5, IEEE80211_CHAN_OFDM }, \
! 674: \
! 675: { 5180, DMN_ETSI6, IEEE80211_CHAN_OFDM }, \
! 676: { 5200, DMN_ETSI6, IEEE80211_CHAN_OFDM }, \
! 677: { 5220, DMN_ETSI6, IEEE80211_CHAN_OFDM }, \
! 678: { 5240, DMN_ETSI6, IEEE80211_CHAN_OFDM }, \
! 679: { 5260, DMN_ETSI6, IEEE80211_CHAN_OFDM }, \
! 680: { 5280, DMN_ETSI6, IEEE80211_CHAN_OFDM }, \
! 681: { 5500, DMN_ETSI6, IEEE80211_CHAN_OFDM }, \
! 682: { 5520, DMN_ETSI6, IEEE80211_CHAN_OFDM }, \
! 683: { 5540, DMN_ETSI6, IEEE80211_CHAN_OFDM }, \
! 684: { 5560, DMN_ETSI6, IEEE80211_CHAN_OFDM }, \
! 685: { 5580, DMN_ETSI6, IEEE80211_CHAN_OFDM }, \
! 686: { 5600, DMN_ETSI6, IEEE80211_CHAN_OFDM }, \
! 687: { 5620, DMN_ETSI6, IEEE80211_CHAN_OFDM }, \
! 688: { 5640, DMN_ETSI6, IEEE80211_CHAN_OFDM }, \
! 689: { 5660, DMN_ETSI6, IEEE80211_CHAN_OFDM }, \
! 690: { 5680, DMN_ETSI6, IEEE80211_CHAN_OFDM }, \
! 691: { 5700, DMN_ETSI6, IEEE80211_CHAN_OFDM }, \
! 692: \
! 693: { 5180, DMN_FCC1, IEEE80211_CHAN_OFDM }, \
! 694: { 5200, DMN_FCC1, IEEE80211_CHAN_OFDM }, \
! 695: { 5210, DMN_FCC1, IEEE80211_CHAN_OFDM|IEEE80211_CHAN_TURBO }, \
! 696: { 5220, DMN_FCC1, IEEE80211_CHAN_OFDM }, \
! 697: { 5240, DMN_FCC1, IEEE80211_CHAN_OFDM }, \
! 698: { 5250, DMN_FCC1, IEEE80211_CHAN_OFDM|IEEE80211_CHAN_TURBO }, \
! 699: { 5260, DMN_FCC1, IEEE80211_CHAN_OFDM }, \
! 700: { 5280, DMN_FCC1, IEEE80211_CHAN_OFDM }, \
! 701: { 5290, DMN_FCC1, IEEE80211_CHAN_OFDM|IEEE80211_CHAN_TURBO }, \
! 702: { 5300, DMN_FCC1, IEEE80211_CHAN_OFDM }, \
! 703: { 5320, DMN_FCC1, IEEE80211_CHAN_OFDM }, \
! 704: { 5745, DMN_FCC1, IEEE80211_CHAN_OFDM }, \
! 705: { 5760, DMN_FCC1, IEEE80211_CHAN_OFDM|IEEE80211_CHAN_TURBO }, \
! 706: { 5765, DMN_FCC1, IEEE80211_CHAN_OFDM }, \
! 707: { 5785, DMN_FCC1, IEEE80211_CHAN_OFDM }, \
! 708: { 5800, DMN_FCC1, IEEE80211_CHAN_OFDM|IEEE80211_CHAN_TURBO }, \
! 709: { 5805, DMN_FCC1, IEEE80211_CHAN_OFDM }, \
! 710: { 5825, DMN_FCC1, IEEE80211_CHAN_OFDM }, \
! 711: \
! 712: { 5180, DMN_FCC2, IEEE80211_CHAN_OFDM }, \
! 713: { 5200, DMN_FCC2, IEEE80211_CHAN_OFDM }, \
! 714: { 5220, DMN_FCC2, IEEE80211_CHAN_OFDM }, \
! 715: { 5240, DMN_FCC2, IEEE80211_CHAN_OFDM }, \
! 716: { 5260, DMN_FCC2, IEEE80211_CHAN_OFDM }, \
! 717: { 5280, DMN_FCC2, IEEE80211_CHAN_OFDM }, \
! 718: { 5300, DMN_FCC2, IEEE80211_CHAN_OFDM }, \
! 719: { 5320, DMN_FCC2, IEEE80211_CHAN_OFDM }, \
! 720: { 5745, DMN_FCC2, IEEE80211_CHAN_OFDM }, \
! 721: { 5765, DMN_FCC2, IEEE80211_CHAN_OFDM }, \
! 722: { 5785, DMN_FCC2, IEEE80211_CHAN_OFDM }, \
! 723: { 5805, DMN_FCC2, IEEE80211_CHAN_OFDM }, \
! 724: { 5825, DMN_FCC2, IEEE80211_CHAN_OFDM }, \
! 725: \
! 726: { 5180, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 727: { 5200, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 728: { 5210, DMN_FCC3, IEEE80211_CHAN_OFDM|IEEE80211_CHAN_TURBO }, \
! 729: { 5220, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 730: { 5240, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 731: { 5250, DMN_FCC3, IEEE80211_CHAN_OFDM|IEEE80211_CHAN_TURBO }, \
! 732: { 5260, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 733: { 5280, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 734: { 5290, DMN_FCC3, IEEE80211_CHAN_OFDM|IEEE80211_CHAN_TURBO }, \
! 735: { 5300, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 736: { 5320, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 737: { 5500, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 738: { 5520, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 739: { 5540, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 740: { 5560, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 741: { 5580, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 742: { 5600, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 743: { 5620, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 744: { 5640, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 745: { 5660, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 746: { 5680, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 747: { 5700, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 748: { 5745, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 749: { 5760, DMN_FCC3, IEEE80211_CHAN_OFDM|IEEE80211_CHAN_TURBO }, \
! 750: { 5765, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 751: { 5785, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 752: { 5800, DMN_FCC3, IEEE80211_CHAN_OFDM|IEEE80211_CHAN_TURBO }, \
! 753: { 5805, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 754: { 5825, DMN_FCC3, IEEE80211_CHAN_OFDM }, \
! 755: \
! 756: { 5170, DMN_MKK1, IEEE80211_CHAN_OFDM }, \
! 757: { 5190, DMN_MKK1, IEEE80211_CHAN_OFDM }, \
! 758: { 5210, DMN_MKK1, IEEE80211_CHAN_OFDM }, \
! 759: { 5230, DMN_MKK1, IEEE80211_CHAN_OFDM }, \
! 760: \
! 761: { 5040, DMN_MKK2, IEEE80211_CHAN_OFDM }, \
! 762: { 5060, DMN_MKK2, IEEE80211_CHAN_OFDM }, \
! 763: { 5080, DMN_MKK2, IEEE80211_CHAN_OFDM }, \
! 764: { 5170, DMN_MKK2, IEEE80211_CHAN_OFDM }, \
! 765: { 5190, DMN_MKK2, IEEE80211_CHAN_OFDM }, \
! 766: { 5210, DMN_MKK2, IEEE80211_CHAN_OFDM }, \
! 767: { 5230, DMN_MKK2, IEEE80211_CHAN_OFDM }, \
! 768: \
! 769: { 5180, DMN_WORLD, IEEE80211_CHAN_OFDM }, \
! 770: { 5200, DMN_WORLD, IEEE80211_CHAN_OFDM }, \
! 771: { 5220, DMN_WORLD, IEEE80211_CHAN_OFDM }, \
! 772: { 5240, DMN_WORLD, IEEE80211_CHAN_OFDM }, \
! 773: }
! 774:
! 775: __BEGIN_DECLS
! 776:
! 777: extern u_int16_t ieee80211_name2countrycode(const char *);
! 778: extern u_int32_t ieee80211_name2regdomain(const char *);
! 779: extern const char *ieee80211_countrycode2name(u_int16_t);
! 780: extern const char *ieee80211_regdomain2name(u_int32_t);
! 781: extern u_int32_t ieee80211_regdomain2flag(u_int16_t, u_int16_t);
! 782: extern u_int32_t ieee80211_countrycode2regdomain(u_int16_t);
! 783:
! 784: __END_DECLS
! 785:
! 786: #endif /* _NET80211_IEEE80211_REGDOMAIN_H_ */
CVSweb