ah_rd_regenum.h revision 224226
1219442Sadrian/* 2219442Sadrian * Copyright (c) 2002-2009 Sam Leffler, Errno Consulting 3224226Sadrian * Copyright (c) 2005-2011 Atheros Communications, Inc. 4219442Sadrian * All rights reserved. 5219442Sadrian * 6219442Sadrian * Permission to use, copy, modify, and/or distribute this software for any 7219442Sadrian * purpose with or without fee is hereby granted, provided that the above 8219442Sadrian * copyright notice and this permission notice appear in all copies. 9219442Sadrian * 10219442Sadrian * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 11219442Sadrian * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 12219442Sadrian * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 13219442Sadrian * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 14219442Sadrian * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 15219442Sadrian * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 16219442Sadrian * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 17219442Sadrian * 18219442Sadrian * $FreeBSD: head/sys/dev/ath/ath_hal/ah_regdomain/ah_rd_regenum.h 224226 2011-07-20 12:46:58Z adrian $ 19219442Sadrian */ 20219442Sadrian 21219442Sadrian#ifndef __AH_REGDOMAIN_REGENUM_H__ 22219442Sadrian#define __AH_REGDOMAIN_REGENUM_H__ 23219442Sadrian 24219442Sadrian/* 25219442Sadrian * Enumerated Regulatory Domain Information 8 bit values indicate that 26219442Sadrian * the regdomain is really a pair of unitary regdomains. 12 bit values 27219442Sadrian * are the real unitary regdomains and are the only ones which have the 28219442Sadrian * frequency bitmasks and flags set. 29219442Sadrian */ 30219442Sadrianenum { 31219442Sadrian /* 32219442Sadrian * The following regulatory domain definitions are 33219442Sadrian * found in the EEPROM. Each regulatory domain 34219442Sadrian * can operate in either a 5GHz or 2.4GHz wireless mode or 35219442Sadrian * both 5GHz and 2.4GHz wireless modes. 36219442Sadrian * In general, the value holds no special 37219442Sadrian * meaning and is used to decode into either specific 38219442Sadrian * 2.4GHz or 5GHz wireless mode for that particular 39219442Sadrian * regulatory domain. 40219442Sadrian */ 41219442Sadrian NO_ENUMRD = 0x00, 42219442Sadrian NULL1_WORLD = 0x03, /* For 11b-only countries (no 11a allowed) */ 43219442Sadrian NULL1_ETSIB = 0x07, /* Israel */ 44219442Sadrian NULL1_ETSIC = 0x08, 45219442Sadrian FCC1_FCCA = 0x10, /* USA */ 46219442Sadrian FCC1_WORLD = 0x11, /* Hong Kong */ 47219442Sadrian FCC4_FCCA = 0x12, /* USA - Public Safety */ 48219442Sadrian FCC5_FCCB = 0x13, /* USA w/ 1/2 and 1/4 width channels */ 49224226Sadrian FCC6_FCCA = 0x14, /* Canada for AP only */ 50219442Sadrian 51219442Sadrian FCC2_FCCA = 0x20, /* Canada */ 52219442Sadrian FCC2_WORLD = 0x21, /* Australia & HK */ 53219442Sadrian FCC2_ETSIC = 0x22, 54219442Sadrian FRANCE_RES = 0x31, /* Legacy France for OEM */ 55219442Sadrian FCC3_FCCA = 0x3A, /* USA & Canada w/5470 band, 11h, DFS enabled */ 56219442Sadrian FCC3_WORLD = 0x3B, /* USA & Canada w/5470 band, 11h, DFS enabled */ 57219442Sadrian 58219442Sadrian ETSI1_WORLD = 0x37, 59219442Sadrian ETSI3_ETSIA = 0x32, /* France (optional) */ 60219442Sadrian ETSI2_WORLD = 0x35, /* Hungary & others */ 61219442Sadrian ETSI3_WORLD = 0x36, /* France & others */ 62219442Sadrian ETSI4_WORLD = 0x30, 63219442Sadrian ETSI4_ETSIC = 0x38, 64219442Sadrian ETSI5_WORLD = 0x39, 65219442Sadrian ETSI6_WORLD = 0x34, /* Bulgaria */ 66224226Sadrian ETSI8_WORLD = 0x3D, /* Russia */ 67224226Sadrian ETSI9_WORLD = 0x3E, /* Ukraine */ 68219442Sadrian ETSI_RESERVED = 0x33, /* Reserved (Do not used) */ 69219442Sadrian 70219442Sadrian MKK1_MKKA = 0x40, /* Japan (JP1) */ 71219442Sadrian MKK1_MKKB = 0x41, /* Japan (JP0) */ 72219442Sadrian APL4_WORLD = 0x42, /* Singapore */ 73219442Sadrian MKK2_MKKA = 0x43, /* Japan with 4.9G channels */ 74219442Sadrian APL_RESERVED = 0x44, /* Reserved (Do not used) */ 75219442Sadrian APL2_WORLD = 0x45, /* Korea */ 76219442Sadrian APL2_APLC = 0x46, 77219442Sadrian APL3_WORLD = 0x47, 78219442Sadrian MKK1_FCCA = 0x48, /* Japan (JP1-1) */ 79219442Sadrian APL2_APLD = 0x49, /* Korea with 2.3G channels */ 80219442Sadrian MKK1_MKKA1 = 0x4A, /* Japan (JE1) */ 81219442Sadrian MKK1_MKKA2 = 0x4B, /* Japan (JE2) */ 82219442Sadrian MKK1_MKKC = 0x4C, /* Japan (MKK1_MKKA,except Ch14) */ 83224226Sadrian APL2_FCCA = 0x4D, /* Mobile customer */ 84219442Sadrian 85224226Sadrian APL3_FCCA = 0x50, 86219442Sadrian APL1_WORLD = 0x52, /* Latin America */ 87219442Sadrian APL1_FCCA = 0x53, 88219442Sadrian APL1_APLA = 0x54, 89219442Sadrian APL1_ETSIC = 0x55, 90219442Sadrian APL2_ETSIC = 0x56, /* Venezuela */ 91219442Sadrian APL5_WORLD = 0x58, /* Chile */ 92219442Sadrian APL6_WORLD = 0x5B, /* Singapore */ 93224226Sadrian APL7_FCCA = 0x5C, /* Taiwan 5.47 Band */ 94224226Sadrian APL8_WORLD = 0x5D, /* Malaysia 5GHz */ 95224226Sadrian APL9_WORLD = 0x5E, /* Korea 5GHz; before 11/2007; now APs only */ 96224226Sadrian APL10_WORLD = 0x5F, /* Korea 5GHz; After 11/2007; STAs only */ 97219442Sadrian 98219442Sadrian /* 99219442Sadrian * World mode SKUs 100219442Sadrian */ 101219442Sadrian WOR0_WORLD = 0x60, /* World0 (WO0 SKU) */ 102219442Sadrian WOR1_WORLD = 0x61, /* World1 (WO1 SKU) */ 103219442Sadrian WOR2_WORLD = 0x62, /* World2 (WO2 SKU) */ 104219442Sadrian WOR3_WORLD = 0x63, /* World3 (WO3 SKU) */ 105224226Sadrian WOR4_WORLD = 0x64, /* World4 (WO4 SKU) */ 106224226Sadrian WOR5_ETSIC = 0x65, /* World5 (WO5 SKU) */ 107219442Sadrian 108219442Sadrian WOR01_WORLD = 0x66, /* World0-1 (WW0-1 SKU) */ 109219442Sadrian WOR02_WORLD = 0x67, /* World0-2 (WW0-2 SKU) */ 110219442Sadrian EU1_WORLD = 0x68, /* Same as World0-2 (WW0-2 SKU), except active scan ch1-13. No ch14 */ 111219442Sadrian 112224226Sadrian WOR9_WORLD = 0x69, /* World9 (WO9 SKU) */ 113224226Sadrian WORA_WORLD = 0x6A, /* WorldA (WOA SKU) */ 114219442Sadrian WORB_WORLD = 0x6B, /* WorldB (WOB SKU) */ 115224226Sadrian WORC_WORLD = 0x6C, /* WorldC (WOC SKU) */ 116219442Sadrian 117219442Sadrian MKK3_MKKB = 0x80, /* Japan UNI-1 even + MKKB */ 118219442Sadrian MKK3_MKKA2 = 0x81, /* Japan UNI-1 even + MKKA2 */ 119219442Sadrian MKK3_MKKC = 0x82, /* Japan UNI-1 even + MKKC */ 120219442Sadrian 121219442Sadrian MKK4_MKKB = 0x83, /* Japan UNI-1 even + UNI-2 + MKKB */ 122219442Sadrian MKK4_MKKA2 = 0x84, /* Japan UNI-1 even + UNI-2 + MKKA2 */ 123219442Sadrian MKK4_MKKC = 0x85, /* Japan UNI-1 even + UNI-2 + MKKC */ 124219442Sadrian 125219442Sadrian MKK5_MKKB = 0x86, /* Japan UNI-1 even + UNI-2 + mid-band + MKKB */ 126219442Sadrian MKK5_MKKA2 = 0x87, /* Japan UNI-1 even + UNI-2 + mid-band + MKKA2 */ 127219442Sadrian MKK5_MKKC = 0x88, /* Japan UNI-1 even + UNI-2 + mid-band + MKKC */ 128219442Sadrian 129219442Sadrian MKK6_MKKB = 0x89, /* Japan UNI-1 even + UNI-1 odd MKKB */ 130219442Sadrian MKK6_MKKA2 = 0x8A, /* Japan UNI-1 even + UNI-1 odd + MKKA2 */ 131219442Sadrian MKK6_MKKC = 0x8B, /* Japan UNI-1 even + UNI-1 odd + MKKC */ 132219442Sadrian 133219442Sadrian MKK7_MKKB = 0x8C, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + MKKB */ 134219442Sadrian MKK7_MKKA2 = 0x8D, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + MKKA2 */ 135219442Sadrian MKK7_MKKC = 0x8E, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + MKKC */ 136219442Sadrian 137219442Sadrian MKK8_MKKB = 0x8F, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + mid-band + MKKB */ 138219442Sadrian MKK8_MKKA2 = 0x90, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + mid-band + MKKA2 */ 139219442Sadrian MKK8_MKKC = 0x91, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + mid-band + MKKC */ 140219442Sadrian 141224226Sadrian MKK14_MKKA1 = 0x92, /* Japan UNI-1 even + UNI-1 odd + 4.9GHz + MKKA1 */ 142224226Sadrian MKK15_MKKA1 = 0x93, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + 4.9GHz + MKKA1 */ 143224226Sadrian 144224226Sadrian MKK10_FCCA = 0xD0, /* Japan UNI-1 even + UNI-2 + 4.9GHz + FCCA */ 145224226Sadrian MKK10_MKKA1 = 0xD1, /* Japan UNI-1 even + UNI-2 + 4.9GHz + MKKA1 */ 146224226Sadrian MKK10_MKKC = 0xD2, /* Japan UNI-1 even + UNI-2 + 4.9GHz + MKKC */ 147224226Sadrian MKK10_MKKA2 = 0xD3, /* Japan UNI-1 even + UNI-2 + 4.9GHz + MKKA2 */ 148224226Sadrian 149224226Sadrian MKK11_MKKA = 0xD4, /* Japan UNI-1 even + UNI-2 + mid-band + 4.9GHz + MKKA */ 150224226Sadrian MKK11_FCCA = 0xD5, /* Japan UNI-1 even + UNI-2 + mid-band + 4.9GHz + FCCA */ 151224226Sadrian MKK11_MKKA1 = 0xD6, /* Japan UNI-1 even + UNI-2 + mid-band + 4.9GHz + MKKA1 */ 152224226Sadrian MKK11_MKKC = 0xD7, /* Japan UNI-1 even + UNI-2 + mid-band + 4.9GHz + MKKC */ 153224226Sadrian MKK11_MKKA2 = 0xD8, /* Japan UNI-1 even + UNI-2 + mid-band + 4.9GHz + MKKA2 */ 154224226Sadrian 155224226Sadrian MKK12_MKKA = 0xD9, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + mid-band + 4.9GHz + MKKA */ 156224226Sadrian MKK12_FCCA = 0xDA, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + mid-band + 4.9GHz + FCCA */ 157224226Sadrian MKK12_MKKA1 = 0xDB, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + mid-band + 4.9GHz + MKKA1 */ 158224226Sadrian MKK12_MKKC = 0xDC, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + mid-band + 4.9GHz + MKKC */ 159224226Sadrian MKK12_MKKA2 = 0xDD, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + mid-band + 4.9GHz + MKKA2 */ 160224226Sadrian 161224226Sadrian MKK13_MKKB = 0xDE, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + mid-band + MKKB + All passive + no adhoc */ 162224226Sadrian 163224226Sadrian /* 164224226Sadrian * Following definitions are used only by s/w to map old 165224226Sadrian * Japan SKUs. 166219442Sadrian */ 167224226Sadrian MKK3_MKKA = 0xF0, /* Japan UNI-1 even + MKKA */ 168224226Sadrian MKK3_MKKA1 = 0xF1, /* Japan UNI-1 even + MKKA1 */ 169224226Sadrian MKK3_FCCA = 0xF2, /* Japan UNI-1 even + FCCA */ 170224226Sadrian MKK4_MKKA = 0xF3, /* Japan UNI-1 even + UNI-2 + MKKA */ 171224226Sadrian MKK4_MKKA1 = 0xF4, /* Japan UNI-1 even + UNI-2 + MKKA1 */ 172224226Sadrian MKK4_FCCA = 0xF5, /* Japan UNI-1 even + UNI-2 + FCCA */ 173224226Sadrian MKK9_MKKA = 0xF6, /* Japan UNI-1 even + 4.9GHz */ 174224226Sadrian MKK10_MKKA = 0xF7, /* Japan UNI-1 even + UNI-2 + 4.9GHz */ 175224226Sadrian MKK6_MKKA1 = 0xF8, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + MKKA1 */ 176224226Sadrian MKK6_FCCA = 0xF9, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + FCCA */ 177224226Sadrian MKK7_MKKA1 = 0xFA, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + MKKA1 */ 178224226Sadrian MKK7_FCCA = 0xFB, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + FCCA */ 179224226Sadrian MKK9_FCCA = 0xFC, /* Japan UNI-1 even + 4.9GHz + FCCA */ 180224226Sadrian MKK9_MKKA1 = 0xFD, /* Japan UNI-1 even + 4.9GHz + MKKA1 */ 181224226Sadrian MKK9_MKKC = 0xFE, /* Japan UNI-1 even + 4.9GHz + MKKC */ 182224226Sadrian MKK9_MKKA2 = 0xFF, /* Japan UNI-1 even + 4.9GHz + MKKA2 */ 183219442Sadrian 184219442Sadrian /* 185219442Sadrian * Regulator domains ending in a number (e.g. APL1, 186219442Sadrian * MK1, ETSI4, etc) apply to 5GHz channel and power 187219442Sadrian * information. Regulator domains ending in a letter 188219442Sadrian * (e.g. APLA, FCCA, etc) apply to 2.4GHz channel and 189219442Sadrian * power information. 190219442Sadrian */ 191219442Sadrian APL1 = 0x0150, /* LAT & Asia */ 192219442Sadrian APL2 = 0x0250, /* LAT & Asia */ 193219442Sadrian APL3 = 0x0350, /* Taiwan */ 194219442Sadrian APL4 = 0x0450, /* Jordan */ 195219442Sadrian APL5 = 0x0550, /* Chile */ 196219442Sadrian APL6 = 0x0650, /* Singapore */ 197224226Sadrian APL7 = 0x0750, /* Taiwan, disable ch52 */ 198219442Sadrian APL8 = 0x0850, /* Malaysia */ 199224226Sadrian APL9 = 0x0950, /* Korea. Before 11/2007. Now used only by APs */ 200224226Sadrian APL10 = 0x1050, /* Korea. After 11/2007. For STAs only */ 201219442Sadrian 202219442Sadrian ETSI1 = 0x0130, /* Europe & others */ 203219442Sadrian ETSI2 = 0x0230, /* Europe & others */ 204219442Sadrian ETSI3 = 0x0330, /* Europe & others */ 205219442Sadrian ETSI4 = 0x0430, /* Europe & others */ 206219442Sadrian ETSI5 = 0x0530, /* Europe & others */ 207219442Sadrian ETSI6 = 0x0630, /* Europe & others */ 208224226Sadrian ETSI8 = 0x0830, /* Russia */ 209224226Sadrian ETSI9 = 0x0930, /* Ukraine */ 210219442Sadrian ETSIA = 0x0A30, /* France */ 211219442Sadrian ETSIB = 0x0B30, /* Israel */ 212219442Sadrian ETSIC = 0x0C30, /* Latin America */ 213219442Sadrian 214219442Sadrian FCC1 = 0x0110, /* US & others */ 215219442Sadrian FCC2 = 0x0120, /* Canada, Australia & New Zealand */ 216224226Sadrian FCC3 = 0x0160, /* US w/new middle band & DFS */ 217224226Sadrian FCC4 = 0x0165, /* US Public Safety */ 218224226Sadrian FCC5 = 0x0166, /* US w/ 1/2 and 1/4 width channels */ 219224226Sadrian FCC6 = 0x0610, /* Canada and Australia */ 220224226Sadrian FCCA = 0x0A10, 221219442Sadrian FCCB = 0x0A11, /* US w/ 1/2 and 1/4 width channels */ 222219442Sadrian 223219442Sadrian APLD = 0x0D50, /* South Korea */ 224219442Sadrian 225219442Sadrian MKK1 = 0x0140, /* Japan (UNI-1 odd)*/ 226219442Sadrian MKK2 = 0x0240, /* Japan (4.9 GHz + UNI-1 odd) */ 227219442Sadrian MKK3 = 0x0340, /* Japan (UNI-1 even) */ 228219442Sadrian MKK4 = 0x0440, /* Japan (UNI-1 even + UNI-2) */ 229219442Sadrian MKK5 = 0x0540, /* Japan (UNI-1 even + UNI-2 + mid-band) */ 230219442Sadrian MKK6 = 0x0640, /* Japan (UNI-1 odd + UNI-1 even) */ 231219442Sadrian MKK7 = 0x0740, /* Japan (UNI-1 odd + UNI-1 even + UNI-2 */ 232219442Sadrian MKK8 = 0x0840, /* Japan (UNI-1 odd + UNI-1 even + UNI-2 + mid-band) */ 233224226Sadrian MKK9 = 0x0940, /* Japan (UNI-1 even + 4.9 GHZ) */ 234224226Sadrian MKK10 = 0x0B40, /* Japan (UNI-1 even + UNI-2 + 4.9 GHZ) */ 235224226Sadrian MKK11 = 0x1140, /* Japan (UNI-1 even + UNI-2 + 4.9 GHZ) */ 236224226Sadrian MKK12 = 0x1240, /* Japan (UNI-1 even + UNI-2 + 4.9 GHZ) */ 237224226Sadrian MKK13 = 0x0C40, /* Same as MKK8 but all passive and no adhoc 11a */ 238224226Sadrian MKK14 = 0x1440, /* Japan UNI-1 even + UNI-1 odd + 4.9GHz */ 239224226Sadrian MKK15 = 0x1540, /* Japan UNI-1 even + UNI-1 odd + UNI-2 + 4.9GHz */ 240224226Sadrian 241219442Sadrian MKKA = 0x0A40, /* Japan */ 242219442Sadrian MKKC = 0x0A50, 243219442Sadrian 244219442Sadrian NULL1 = 0x0198, 245219442Sadrian WORLD = 0x0199, 246219442Sadrian DEBUG_REG_DMN = 0x01ff, 247219442Sadrian}; 248219442Sadrian 249219442Sadrian#endif 250