| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475 |
- /******************************************************************************
- *
- * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved.
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of version 2 of the GNU General Public License as
- * published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
- * more details.
- *
- * You should have received a copy of the GNU General Public License along with
- * this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
- *
- *
- ******************************************************************************/
- /******************************************************************************
- History:
- data Who Remark (Internal History)
- 05/14/2012 MH Collect RTK inernal infromation and generate channel plan draft.
- ******************************************************************************/
- /* ************************************************************
- * include files
- * ************************************************************ */
- #include "mp_precomp.h"
- #include "phydm_precomp.h"
- #include "rtchnlplan.h"
- /*
- * channel Plan Domain Code
- * */
- /*
- channel Plan Contents
- Domain Code EEPROM Countries in Specific Domain
- 2G RD 5G RD Bit[6:0] 2G 5G
- Case Old Define 00h~1Fh Old Define Old Define
- 1 2G_WORLD 5G_NULL 20h Worldwird 13 NA
- 2 2G_ETSI1 5G_NULL 21h Europe 2G NA
- 3 2G_FCC1 5G_NULL 22h US 2G NA
- 4 2G_MKK1 5G_NULL 23h Japan 2G NA
- 5 2G_ETSI2 5G_NULL 24h France 2G NA
- 6 2G_FCC1 5G_FCC1 25h US 2G US 5G 八大國認證
- 7 2G_WORLD 5G_ETSI1 26h Worldwird 13 Europe 八大國認證
- 8 2G_MKK1 5G_MKK1 27h Japan 2G Japan 5G 八大國認證
- 9 2G_WORLD 5G_KCC1 28h Worldwird 13 Korea 八大國認證
- 10 2G_WORLD 5G_FCC2 29h Worldwird 13 US o/w DFS Channels
- 11 2G_WORLD 5G_FCC3 30h Worldwird 13 India, Mexico
- 12 2G_WORLD 5G_FCC4 31h Worldwird 13 Venezuela
- 13 2G_WORLD 5G_FCC5 32h Worldwird 13 China
- 14 2G_WORLD 5G_FCC6 33h Worldwird 13 Israel
- 15 2G_FCC1 5G_FCC7 34h US 2G US/Canada 八大國認證
- 16 2G_WORLD 5G_ETSI2 35h Worldwird 13 Australia, New Zealand 八大國認證
- 17 2G_WORLD 5G_ETSI3 36h Worldwird 13 Russia
- 18 2G_MKK1 5G_MKK2 37h Japan 2G Japan (W52, W53)
- 19 2G_MKK1 5G_MKK3 38h Japan 2G Japan (W56)
- 20 2G_FCC1 5G_NCC1 39h US 2G Taiwan 八大國認證
- NA 2G_WORLD 5G_FCC1 7F FCC FCC DFS Channels Realtek Define
- 2.4G Regulatory Domains
- Case 2G RD regulation Channels Frequencyes Note Countries in Specific Domain
- 1 2G_WORLD ETSI 1~13 2412~2472 Passive scan CH 12, 13 Worldwird 13
- 2 2G_ETSI1 ETSI 1~13 2412~2472 Europe
- 3 2G_FCC1 FCC 1~11 2412~2462 US
- 4 2G_MKK1 MKK 1~13, 14 2412~2472, 2484 Japan
- 5 2G_ETSI2 ETSI 10~13 2457~2472 France
- 5G Regulatory Domains
- Case 5G RD regulation Channels Frequencyes Note Countries in Specific Domain
- 1 5G_NULL NA NA NA Do not support 5GHz
- 2 5G_ETSI1 ETSI "36~48, 52~64,
- 100~140" "5180~5240, 5260~5230
- 5500~5700" Band1, Ban2, Band3 Europe
- 3 5G_ETSI2 ETSI "36~48, 52~64,
- 100~140, 149~165" "5180~5240, 5260~5230
- 5500~5700, 5745~5825" Band1, Ban2, Band3, Band4 Australia, New Zealand
- 4 5G_ETSI3 ETSI "36~48, 52~64,
- 100~132, 149~165"
- "5180~5240, 5260~5230
- 5500~5660, 5745~5825" Band1, Ban2, Band3(except CH 136, 140), Band4" Russia
- 5 5G_FCC1 FCC "36~48, 52~64,
- 100~140, 149~165"
- "5180~5240, 5260~5230
- 5500~5700, 5745~5825" Band1(5150~5250MHz),
- Band2(5250~5350MHz),
- Band3(5470~5725MHz),
- Band4(5725~5850MHz)" US
- 6 5G_FCC2 FCC 36~48, 149~165 5180~5240, 5745~5825 Band1, Band4 FCC o/w DFS Channels
- 7 5G_FCC3 FCC "36~48, 52~64,
- 149~165" "5180~5240, 5260~5230
- 5745~5825" Band1, Ban2, Band4 India, Mexico
- 8 5G_FCC4 FCC "36~48, 52~64,
- 149~161" "5180~5240, 5260~5230
- 5745~5805" Band1, Ban2,
- Band4(except CH 165)" Venezuela
- 9 5G_FCC5 FCC 149~165 5745~5825 Band4 China
- 10 5G_FCC6 FCC 36~48, 52~64 5180~5240, 5260~5230 Band1, Band2 Israel
- 11 5G_FCC7
- 5G_IC1 FCC
- IC" "36~48, 52~64,
- 100~116, 136, 140,
- 149~165" "5180~5240, 5260~5230
- 5500~5580, 5680, 5700,
- 5745~5825" "Band1, Band2,
- Band3(except 5600~5650MHz),
- Band4" "US
- Canada"
- 12 5G_KCC1 KCC "36~48, 52~64,
- 100~124, 149~165" "5180~5240, 5260~5230
- 5500~5620, 5745~5825" "Band1, Ban2,
- Band3(5470~5650MHz),
- Band4" Korea
- 13 5G_MKK1 MKK "36~48, 52~64,
- 100~140" "5180~5240, 5260~5230
- 5500~5700" W52, W53, W56 Japan
- 14 5G_MKK2 MKK 36~48, 52~64 5180~5240, 5260~5230 W52, W53 Japan (W52, W53)
- 15 5G_MKK3 MKK 100~140 5500~5700 W56 Japan (W56)
- 16 5G_NCC1 NCC "56~64,
- 100~116, 136, 140,
- 149~165" "5260~5320
- 5500~5580, 5680, 5700,
- 5745~5825" "Band2(except CH 52),
- Band3(except 5600~5650MHz),
- Band4" Taiwan
- */
- /*
- * 2.4G CHannel
- *
- *
- 2.4G band Regulatory Domains RTL8192D
- channel number channel Frequency US Canada Europe Spain France Japan Japan 20M 40M
- (MHz) (FCC) (IC) (ETSI) (MPHPT)
- 1 2412 v v v v v
- 2 2417 v v v v v
- 3 2422 v v v v v v
- 4 2427 v v v v v v
- 5 2432 v v v v v v
- 6 2437 v v v v v v
- 7 2442 v v v v v v
- 8 2447 v v v v v v
- 9 2452 v v v v v v
- 10 2457 v v v v v v v v
- 11 2462 v v v v v v v v
- 12 2467 v v v v v
- 13 2472 v v v v
- 14 2484 v v
- */
- /*
- * 5G Operating channel
- *
- *
- 5G band RTL8192D RTL8195 (Jaguar) Jaguar 2 Regulatory Domains
- channel number channel Frequency Global Global Global "US
- (FCC 15.407)" "Canada
- (FCC, except 5.6~5.65GHz)" Argentina, Australia, New Zealand, Brazil, S. Africa (FCC/ETSI) "Europe
- (CE 301 893)" China India, Mexico, Singapore Israel, Turkey "Japan
- (MIC Item 19-3, 19-3-2)" Korea Russia, Ukraine "Taiwan
- (NCC)" Venezuela
- (MHz) (20MHz) (20MHz) (40MHz) (80MHz) (160MHz) (20MHz) (20MHz) (20MHz) (20MHz) (20MHz) (20MHz) (20MHz) (20MHz) (20MHz) (20MHz) (20MHz) (20MHz) (20MHz)
- "band 1
- 5.15GHz
- ~
- 5.25GHz" 36 5180 v v v v v Indoor Indoor v Indoor v Indoor Indoor v v v
- 40 5200 v v v Indoor Indoor v Indoor v Indoor Indoor v v v
- 44 5220 v v v v Indoor Indoor v Indoor v Indoor Indoor v v v
- 48 5240 v v v Indoor Indoor v Indoor v Indoor Indoor v v v
- "band 2
- 5.25GHz
- ~
- 5.35GHz
- (DFS)" 52 5260 v v v v v v v v Indoor v Indoor Indoor v v v
- 56 5280 v v v v v v Indoor v Indoor Indoor v v Indoor v
- 60 5300 v v v v v v v Indoor v Indoor Indoor v v Indoor v
- 64 5320 v v v v v v Indoor v Indoor Indoor v v Indoor v
- "band 3
- 5.47GHz
- ~
- 5.725GHz
- (DFS)" 100 5500 v v v v v v v v v v v v v
- 104 5520 v v v v v v v v v v v
- 108 5540 v v v v v v v v v v v v
- 112 5560 v v v v v v v v v v v
- 116 5580 v v v v v v v v v v v v v
- 120 5600 v v v Indoor v Indoor v v v
- 124 5620 v v v v Indoor v Indoor v v v
- 128 5640 v v v Indoor v Indoor v v
- 132 5660 v v v E v Indoor v Indoor v v
- 136 5680 v v v v v v v v v
- 140 5700 v v E v v v v v v v
- 144 5720 E E E
- "band 4
- 5.725GHz
- ~
- 5.85GHz
- (~5.9GHz)" 149 5745 v v v v v v v v v v v v v v
- 153 5765 v v v v v v v v v v v v
- 157 5785 v v v v v v v v v v v v v
- 161 5805 v v v v v v v v v v v v
- 165 5825 v v P P v v v v v v v v v
- 169 5845 P P P
- 173 5865 P P P P
- 177 5885 P P P
- channel count 28 28 14 7 0 28 24 20 24 19 5 13 8 19 20 22 15 12
- E: FCC accepted the ask for CH144 from Accord. PS: 160MHz 用 80MHz+80MHz實現? Argentina Belgium (比利時) India Israel Russia
- P: Customer's requirement from James. Australia The Netherlands (荷蘭) Mexico Turkey Ukraine
- New Zealand UK (英國) Singapore
- Brazil Switzerland (瑞士)
- */
- /*---------------------------Define Local Constant---------------------------*/
- /* define Maximum Power v.s each band for each region
- * ISRAEL
- * Format:
- * RT_CHANNEL_DOMAIN_Region ={{{chnl_start, chnl_end, Pwr_dB_Max}, {Chn2_Start, Chn2_end, Pwr_dB_Max}, {Chn3_Start, Chn3_end, Pwr_dB_Max}, {Chn4_Start, Chn4_end, Pwr_dB_Max}, {Chn5_Start, Chn5_end, Pwr_dB_Max}}, Limit_Num}
- * RT_CHANNEL_DOMAIN_FCC ={{{01,11,30}, {36,48,17}, {52,64,24}, {100,140,24}, {149,165,30}}, 5}
- * "NR" is non-release channle.
- * Issue--- Israel--Russia--New Zealand
- * DOMAIN_01= (2G_WORLD, 5G_NULL)
- * DOMAIN_02= (2G_ETSI1, 5G_NULL)
- * DOMAIN_03= (2G_FCC1, 5G_NULL)
- * DOMAIN_04= (2G_MKK1, 5G_NULL)
- * DOMAIN_05= (2G_ETSI2, 5G_NULL)
- * DOMAIN_06= (2G_FCC1, 5G_FCC1)
- * DOMAIN_07= (2G_WORLD, 5G_ETSI1)
- * DOMAIN_08= (2G_MKK1, 5G_MKK1)
- * DOMAIN_09= (2G_WORLD, 5G_KCC1)
- * DOMAIN_10= (2G_WORLD, 5G_FCC2)
- * DOMAIN_11= (2G_WORLD, 5G_FCC3)----india
- * DOMAIN_12= (2G_WORLD, 5G_FCC4)----Venezuela
- * DOMAIN_13= (2G_WORLD, 5G_FCC5)----China
- * DOMAIN_14= (2G_WORLD, 5G_FCC6)----Israel
- * DOMAIN_15= (2G_FCC1, 5G_FCC7)-----Canada
- * DOMAIN_16= (2G_WORLD, 5G_ETSI2)---Australia
- * DOMAIN_17= (2G_WORLD, 5G_ETSI3)---Russia
- * DOMAIN_18= (2G_MKK1, 5G_MKK2)-----Japan
- * DOMAIN_19= (2G_MKK1, 5G_MKK3)-----Japan
- * DOMAIN_20= (2G_FCC1, 5G_NCC1)-----Taiwan
- * DOMAIN_21= (2G_FCC1, 5G_NCC1)-----Taiwan */
- static struct _RT_CHANNEL_PLAN_MAXPWR chnl_plan_pwr_max_2g[] = {
- /* 2G_WORLD, */
- {{1, 13, 20}, 1},
- /* 2G_ETSI1 */
- {{1, 13, 20}, 1},
- /* RT_CHANNEL_DOMAIN_ETSI */
- {{{1, 11, 17}, {40, 56, 17}, {60, 128, 17}, {0, 0, 0}, {149, 165, 17}}, 4},
- /* RT_CHANNEL_DOMAIN_MKK */
- {{{1, 11, 17}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}}, 1},
- /* Add new channel plan mex power table. */
- /* ...... */
- };
- #if 0
- /* ===========================================1:(2G_WORLD, 5G_NULL) */
- struct _RT_CHANNEL_PLAN_MAXPWR RT_DOMAIN_01 = {{{01, 13, 20}, {NR, NR, 0}, {NR, NR, 0}, {NR, NR, 0}, {NR, NR, 0}}, 1}
- /* ===========================================2:(2G_ETSI1, 5G_NULL) */
- RT_DOMAIN_02 = {{{01, 13, 20}, {NR, NR, 0}, {NR, NR, 0}, {NR, NR, 0}, {NR, NR, 0}}, 1}
- /* ===========================================3:(2G_FCC1, 5G_NULL) */
- RT_DOMAIN_03 = {{{01, 11, 30}, {NR, NR, 0}, {NR, NR, 0}, {NR, NR, 0}, {NR, NR, 0}}, 1}
- /* ===========================================4:(2G_MKK1, 5G_NULL) */
- RT_DOMAIN_04 = {{{01, 14, 23}, {NR, NR, 0}, {NR, NR, 0}, {NR, NR, 0}, {NR, NR, 0}}, 1}
- /* ===========================================5:(2G_ETSI2, 5G_NULL) */
- RT_DOMAIN_05 = {{{10, 13, 20}, {NR, NR, 0}, {NR, NR, 0}, {NR, NR, 0}, {NR, NR, 0}}, 1}
- /* ===========================================6:(2G_FCC1, 5G_FCC1) */
- RT_DOMAIN_06 = {{{01, 13, 30}, {36, 48, 17}, {52, 64, 24}, {100, 140, 24}, {149, 165, 30}}, 5}
- /* ===========================================7:(2G_WORLD, 5G_ETSI1) */
- RT_DOMAIN_07 = {{{01, 13, 20}, {36, 48, 23}, {52, 64, 23}, {100, 140, 30}, {NR, NR, 0}}, 4}
- /* ===========================================8:(2G_MKK1, 5G_MKK1) */
- RT_DOMAIN_08 = {{{01, 14, 23}, {36, 48, 23}, {52, 64, 23}, {100, 140, 23}, {NR, NR, 0}}, 4}
- /* ===========================================9:(2G_WORLD, 5G_KCC1) */
- RT_DOMAIN_09 = {{{01, 13, 20}, {36, 48, 17}, {52, 64, 23}, {100, 124, 23}, {149, 165, 23}}, 5}
- /* ===========================================10:(2G_WORLD, 5G_FCC2) */
- RT_DOMAIN_10 = {{{01, 13, 20}, {36, 48, 17}, {NR, NR, 0}, {NR, NR, 0}, {149, 165, 30}}, 3}
- /* ===========================================11:(2G_WORLD, 5G_FCC3) */
- RT_DOMAIN_11 = {{{01, 13, 20}, {36, 48, 23}, {52, 64, 23}, {NR, NR, 0}, {149, 165, 23}}, 4}
- /* ===========================================12:(2G_WORLD, 5G_FCC4) */
- RT_DOMAIN_12 = {{{01, 13, 20}, {36, 48, 24}, {52, 64, 24}, {NR, NR, 0}, {149, 161, 27}}, 4}
- /* ===========================================13:(2G_WORLD, 5G_FCC5) */
- RT_DOMAIN_13 = {{{01, 13, 20}, {NR, NR, 0}, {NR, NR, 0}, {NR, NR, 0}, {149, 165, 27}}, 2}
- /* ===========================================14:(2G_WORLD, 5G_FCC6) */
- RT_DOMAIN_14 = {{{01, 13, 20}, {36, 48, 17}, {52, 64, 17}, {NR, NR, 0}, {NR, NR, 0}}, 3}
- /* ===========================================15:(2G_FCC1, 5G_FCC7) */
- RT_DOMAIN_15 = {{{01, 11, 30}, {36, 48, 23}, {52, 64, 24}, {100, 140, 24}, {149, 165, 30}}, 5}
- /* ===========================================16:(2G_WORLD, 5G_ETSI2) */
- RT_DOMAIN_16 = {{{01, 13, 20}, {36, 48, 23}, {52, 64, 23}, {100, 140, 30}, {149, 165, 30}}, 5}
- /* ===========================================17:(2G_WORLD, 5G_ETSI3) */
- RT_DOMAIN_17 = {{{01, 13, 20}, {36, 48, 23}, {52, 64, 23}, {100, 132, 30}, {149, 165, 20}}, 5}
- /* ===========================================18:(2G_MKK1, 5G_MKK2) */
- RT_DOMAIN_18 = {{{01, 14, 23}, {36, 48, 23}, {52, 64, 23}, {NR, NR, 0}, {NR, NR, 0}}, 3}
- /* ===========================================19:(2G_MKK1, 5G_MKK3) */
- RT_DOMAIN_19 = {{{01, 14, 23}, {NR, NR, 0}, {NR, NR, 0}, {100, 140, 23}, {NR, NR, 0}}, 2}
- /* ===========================================20:(2G_FCC1, 5G_NCC1) */
- RT_DOMAIN_20 = {{{01, 11, 30}, {NR, NR, 0}, {56, 64, 23}, {100, 140, 24}, {149, 165, 30}}, 4}
- /* ===========================================21:(2G_FCC1, 5G_NCC2) */
- RT_DOMAIN_21 = {{{01, 11, 30}, {NR, NR, 0}, {56, 64, 23}, {NR, NR, 0}, {149, 165, 30}}, 3}
- /* ===========================================22:(2G_WORLD, 5G_FCC3) */
- RT_DOMAIN_22 = {{{01, 13, 24}, {36, 48, 20}, {52, 64, 24}, {NR, NR, 0}, {149, 165, 30}}, 4}
- /* ===========================================23:(2G_WORLD, 5G_ETSI2) */
- RT_DOMAIN_23 = {{{01, 13, 20}, {36, 48, 23}, {52, 64, 23}, {100, 140, 30}, {149, 165, 30}}, 5}
- #endif
- /*
- * counter & Realtek channel plan transfer table.
- * */
- struct _RT_CHANNEL_PLAN_COUNTRY_TRANSFER_TABLE rt_ctry_chnl_tbl[] = {
- {
- RT_CTRY_AL, /* "Albania阿爾巴尼亞" */
- "AL",
- RT_2G_WORLD,
- RT_5G_WORLD,
- RT_CHANNEL_DOMAIN_UNDEFINED /* 2G/5G world. */
- },
- #if 0
- {
- RT_CTRY_BB, /* "Barbados巴巴多斯" */
- "BB",
- RT_2G_WORLD,
- RT_5G_NULL,
- RT_CHANNEL_DOMAIN_EFUSE_0x20 /* 2G world. 5G_NULL */
- },
- {
- RT_CTRY_DE, /* "Germany德國" */
- "DE",
- RT_2G_WORLD,
- RT_5G_ETSI1,
- RT_CHANNEL_DOMAIN_EFUSE_0x26
- },
- {
- RT_CTRY_US, /* "Germany德國" */
- "US",
- RT_2G_FCC1,
- RT_5G_FCC7,
- RT_CHANNEL_DOMAIN_EFUSE_0x34
- },
- {
- RT_CTRY_JP, /* "Germany德國" */
- "JP",
- RT_2G_MKK1,
- RT_5G_MKK1,
- RT_CHANNEL_DOMAIN_EFUSE_0x34
- },
- {
- RT_CTRY_TW, /* "Germany德國" */
- "TW",
- RT_2G_FCC1,
- RT_5G_NCC1,
- RT_CHANNEL_DOMAIN_EFUSE_0x39
- },
- #endif
- }; /* rt_ctry_chnl_tbl */
- /*
- * Realtek Defined channel plan.
- * */
- #if 0
- static struct _RT_CHANNEL_PLAN_NEW rt_chnl_plan[] = {
- /* channel Plan 0x20. */
- {
- &rt_ctry_chnl_tbl[1], /* struct _RT_CHANNEL_PLAN_COUNTRY_TRANSFER_TABLE Country & channel plan transfer table. */
- RT_CHANNEL_DOMAIN_EFUSE_0x20, /* RT_CHANNEL_DOMAIN RT channel Plan Define */
- RT_2G_WORLD, /* enum rt_regulation_2g */
- RT_5G_NULL, /* enum rt_regulation_5g */
- RT_WORLD, /* enum rt_regulation_cmn RT Regulatory domain definition. */
- RT_SREQ_NA, /* RT channel plan special & customerize requirement. */
- CHNL_RT_2G_WORLD,
- CHNL_RT_2G_WORLD_SCAN_TYPE,
- &chnl_plan_pwr_max_2g[0],
- CHNL_RT_5G_NULL,
- CHNL_RT_5G_NULL_SCAN_TYPE,
- },
- /* channel Plan 0x26. */
- {
- &rt_ctry_chnl_tbl[1], /* struct _RT_CHANNEL_PLAN_COUNTRY_TRANSFER_TABLE Country & channel plan transfer table. */
- RT_CHANNEL_DOMAIN_EFUSE_0x26, /* RT_CHANNEL_DOMAIN RT channel Plan Define */
- RT_2G_WORLD, /* enum rt_regulation_2g */
- RT_5G_ETSI1, /* enum rt_regulation_5g */
- RT_WORLD, /* enum rt_regulation_cmn RT Regulatory domain definition. */
- RT_SREQ_NA, /* RT channel plan special & customerize requirement. */
- CHNL_RT_2G_WORLD, /* 2G workd cannel */
- CHNL_RT_2G_WORLD_SCAN_TYPE,
- &chnl_plan_pwr_max_2g[1],
- CHNL_RT_5G_ETSI1,
- CHNL_RT_5G_ETSI1_SCAN_TYPE,
- }
- };
- #endif
|