/****************************************************************************** * * 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 * * ******************************************************************************/ #ifndef __RT_CHANNELPLAN_H__ #define __RT_CHANNELPLAN_H__ typedef enum _RT_CHANNEL_DOMAIN_NEW { //===== Add new channel plan above this line ===============// // For new architecture we define different 2G/5G CH area for all country. // 2.4 G only RT_CHANNEL_DOMAIN_2G_WORLD_5G_NULL = 0x20, RT_CHANNEL_DOMAIN_2G_ETSI1_5G_NULL = 0x21, RT_CHANNEL_DOMAIN_2G_FCC1_5G_NULL = 0x22, RT_CHANNEL_DOMAIN_2G_MKK1_5G_NULL = 0x23, RT_CHANNEL_DOMAIN_2G_ETSI2_5G_NULL = 0x24, // 2.4 G + 5G type 1 RT_CHANNEL_DOMAIN_2G_FCC1_5G_FCC1 = 0x25, RT_CHANNEL_DOMAIN_2G_WORLD_5G_ETSI1 = 0x26, //RT_CHANNEL_DOMAIN_2G_WORLD_5G_ETSI1 = 0x27, // ..... RT_CHANNEL_DOMAIN_MAX_NEW, }RT_CHANNEL_DOMAIN_NEW, *PRT_CHANNEL_DOMAIN_NEW; #if 0 #define DOMAIN_CODE_2G_WORLD \ {1,2,3,4,5,6,7,8,9,10,11,12,13}, 13 #define DOMAIN_CODE_2G_ETSI1 \ {1,2,3,4,5,6,7,8,9,10,11,12,13}, 13 #define DOMAIN_CODE_2G_ETSI2 \ {1,2,3,4,5,6,7,8,9,10,11}, 11 #define DOMAIN_CODE_2G_FCC1 \ {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 14 #define DOMAIN_CODE_2G_MKK1 \ {10,11,12,13}, 4 #define DOMAIN_CODE_5G_ETSI1 \ {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140}, 19 #define DOMAIN_CODE_5G_ETSI2 \ {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140,149,153,157,161,165}, 24 #define DOMAIN_CODE_5G_ETSI3 \ {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,149,153,157,161,165}, 22 #define DOMAIN_CODE_5G_FCC1 \ {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140,149,153,157,161,165}, 24 #define DOMAIN_CODE_5G_FCC2 \ {36,40,44,48,149,153,157,161,165}, 9 #define DOMAIN_CODE_5G_FCC3 \ {36,40,44,48,52,56,60,64,149,153,157,161,165}, 13 #define DOMAIN_CODE_5G_FCC4 \ {36,40,44,48,52,56,60,64,149,153,157,161}, 12 #define DOMAIN_CODE_5G_FCC5 \ {149,153,157,161,165}, 5 #define DOMAIN_CODE_5G_FCC6 \ {36,40,44,48,52,56,60,64}, 8 #define DOMAIN_CODE_5G_FCC7 \ {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20 #define DOMAIN_CODE_5G_IC1 \ {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20 #define DOMAIN_CODE_5G_KCC1 \ {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,149,153,157,161,165}, 20 #define DOMAIN_CODE_5G_MKK1 \ {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140}, 19 #define DOMAIN_CODE_5G_MKK2 \ {36,40,44,48,52,56,60,64}, 8 #define DOMAIN_CODE_5G_MKK3 \ {100,104,108,112,116,120,124,128,132,136,140}, 11 #define DOMAIN_CODE_5G_NCC1 \ {56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 24 #define DOMAIN_CODE_5G_NCC2 \ {56,60,64,149,153,157,161,165}, 8 #define UNDEFINED \ {0}, 0 #endif // // // /* Countries "Country Abbreviation" Domain Code SKU's Ch# of 20MHz 2G 5G Ch# of 40MHz "Albania阿爾巴尼亞" AL Local Test "Algeria阿爾及利亞" DZ CE TCF "Antigua & Barbuda安提瓜島&巴布達" AG 2G_WORLD FCC TCF "Argentina阿根廷" AR 2G_WORLD Local Test "Armenia亞美尼亞" AM 2G_WORLD ETSI "Aruba阿魯巴島" AW 2G_WORLD FCC TCF "Australia澳洲" AU 2G_WORLD 5G_ETSI2 "Austria奧地利" AT 2G_WORLD 5G_ETSI1 CE "Azerbaijan阿塞拜彊" AZ 2G_WORLD CE TCF "Bahamas巴哈馬" BS 2G_WORLD "Barbados巴巴多斯" BB 2G_WORLD FCC TCF "Belgium比利時" BE 2G_WORLD 5G_ETSI1 CE "Bermuda百慕達" BM 2G_WORLD FCC TCF "Brazil巴西" BR 2G_WORLD Local Test "Bulgaria保加利亞" BG 2G_WORLD 5G_ETSI1 CE "Canada加拿大" CA 2G_FCC1 5G_FCC7 IC / FCC IC / FCC "Cayman Islands開曼群島" KY 2G_WORLD 5G_ETSI1 CE "Chile智利" CL 2G_WORLD FCC TCF "China中國" CN 2G_WORLD 5G_FCC5 信部?【2002】353? "Columbia哥倫比亞" CO 2G_WORLD Voluntary "Costa Rica哥斯達黎加" CR 2G_WORLD FCC TCF "Cyprus塞浦路斯" CY 2G_WORLD 5G_ETSI1 CE "Czech 捷克" CZ 2G_WORLD 5G_ETSI1 CE "Denmark丹麥" DK 2G_WORLD 5G_ETSI1 CE "Dominican Republic多明尼加共和國" DO 2G_WORLD FCC TCF "Egypt埃及" EG 2G_WORLD CE T CF "El Salvador薩爾瓦多" SV 2G_WORLD Voluntary "Estonia愛沙尼亞" EE 2G_WORLD 5G_ETSI1 CE "Finland芬蘭" FI 2G_WORLD 5G_ETSI1 CE "France法國" FR 5G_E TSI1 CE "Germany德國" DE 2G_WORLD 5G_ETSI1 CE "Greece 希臘" GR 2G_WORLD 5G_ETSI1 CE "Guam關島" GU 2G_WORLD "Guatemala瓜地馬拉" GT 2G_WORLD "Haiti海地" HT 2G_WORLD FCC TCF "Honduras宏都拉斯" HN 2G_WORLD FCC TCF "Hungary匈牙利" HU 2G_WORLD 5G_ETSI1 CE "Iceland冰島" IS 2G_WORLD 5G_ETSI1 CE "India印度" IN 2G_WORLD 5G_FCC3 FCC/CE TCF "Ireland愛爾蘭" IE 2G_WORLD 5G_ETSI1 CE "Israel以色列" IL 5G_F CC6 CE TCF "Italy義大利" IT 2G_WORLD 5G_ETSI1 CE "Japan日本" JP 2G_MKK1 5G_MKK1 MKK MKK "Korea韓國" KR 2G_WORLD 5G_KCC1 KCC KCC "Latvia拉脫維亞" LV 2G_WORLD 5G_ETSI1 CE "Lithuania立陶宛" LT 2G_WORLD 5G_ETSI1 CE "Luxembourg盧森堡" LU 2G_WORLD 5G_ETSI1 CE "Malaysia馬來西亞" MY 2G_WORLD Local Test "Malta馬爾他" MT 2G_WORLD 5G_ETSI1 CE "Mexico墨西哥" MX 2G_WORLD 5G_FCC3 Local Test "Morocco摩洛哥" MA CE TCF "Netherlands荷蘭" NL 2G_WORLD 5G_ETSI1 CE "New Zealand紐西蘭" NZ 2G_WORLD 5G_ETSI2 "Norway挪威" NO 2G_WORLD 5G_ETSI1 CE "Panama巴拿馬 " PA 2G_FCC1 Voluntary "Philippines菲律賓" PH 2G_WORLD FCC TCF "Poland波蘭" PL 2G_WORLD 5G_ETSI1 CE "Portugal葡萄牙" PT 2G_WORLD 5G_ETSI1 CE "Romania羅馬尼亞" RO 2G_WORLD 5G_ETSI1 CE "Russia俄羅斯" RU 2G_WORLD 5G_ETSI3 CE TCF "Saudi Arabia沙地阿拉伯" SA 2G_WORLD CE TCF "Singapore新加坡" SG 2G_WORLD "Slovakia斯洛伐克" SK 2G_WORLD 5G_ETSI1 CE "Slovenia斯洛維尼亞" SI 2G_WORLD 5G_ETSI1 CE "South Africa南非" ZA 2G_WORLD CE TCF "Spain西班牙" ES 5G_ETSI1 CE "Sweden瑞典" SE 2G_WORLD 5G_ETSI1 CE "Switzerland瑞士" CH 2G_WORLD 5G_ETSI1 CE "Taiwan臺灣" TW 2G_FCC1 5G_NCC1 NCC "Thailand泰國" TH 2G_WORLD FCC/CE TCF "Turkey土耳其" TR 2G_WORLD "Ukraine烏克蘭" UA 2G_WORLD Local Test "United Kingdom英國" GB 2G_WORLD 5G_ETSI1 CE ETSI "United States美國" US 2G_FCC1 5G_FCC7 FCC FCC "Venezuela委內瑞拉" VE 2G_WORLD 5G_FCC4 FCC TCF "Vietnam越南" VN 2G_WORLD FCC/CE TCF */ // Counter abbervation. typedef enum _RT_COUNTRY_DEFINE_NUM { RT_CTRY_AL, // "Albania阿爾巴尼亞" RT_CTRY_DZ, // "Algeria阿爾及利亞" RT_CTRY_AG, // "Antigua & Barbuda安提瓜島&巴布達" RT_CTRY_AR, // "Argentina阿根廷" RT_CTRY_AM, // "Armenia亞美尼亞" RT_CTRY_AW, // "Aruba阿魯巴島" RT_CTRY_AU, // "Australia澳洲" RT_CTRY_AT, // "Austria奧地利" RT_CTRY_AZ, // "Azerbaijan阿塞拜彊" RT_CTRY_BS, // "Bahamas巴哈馬" RT_CTRY_BB, // "Barbados巴巴多斯" RT_CTRY_BE, // "Belgium比利時" RT_CTRY_BM, // "Bermuda百慕達" RT_CTRY_BR, // "Brazil巴西" RT_CTRY_BG, // "Bulgaria保加利亞" RT_CTRY_CA, // "Canada加拿大" RT_CTRY_KY, // "Cayman Islands開曼群島" RT_CTRY_CL, // "Chile智利" RT_CTRY_CN, // "China中國" RT_CTRY_CO, // "Columbia哥倫比亞" RT_CTRY_CR, // "Costa Rica哥斯達黎加" RT_CTRY_CY, // "Cyprus塞浦路斯" RT_CTRY_CZ, // "Czech 捷克" RT_CTRY_DK, // "Denmark丹麥" RT_CTRY_DO, // "Dominican Republic多明尼加共和國" RT_CTRY_CE, // "Egypt埃及" EG 2G_WORLD RT_CTRY_SV, // "El Salvador薩爾瓦多" RT_CTRY_EE, // "Estonia愛沙尼亞" RT_CTRY_FI, // "Finland芬蘭" RT_CTRY_FR, // "France法國" RT_CTRY_DE, // "Germany德國" RT_CTRY_GR, // "Greece 希臘" RT_CTRY_GU, // "Guam關島" RT_CTRY_GT, // "Guatemala瓜地馬拉" RT_CTRY_HT, // "Haiti海地" RT_CTRY_HN, // "Honduras宏都拉斯" RT_CTRY_HU, // "Hungary匈牙利" RT_CTRY_IS, // "Iceland冰島" RT_CTRY_IN, // "India印度" RT_CTRY_IE, // "Ireland愛爾蘭" RT_CTRY_IL, // "Israel以色列" RT_CTRY_IT, // "Italy義大利" RT_CTRY_JP, // "Japan日本" RT_CTRY_KR, // "Korea韓國" RT_CTRY_LV, // "Latvia拉脫維亞" RT_CTRY_LT, // "Lithuania立陶宛" RT_CTRY_LU, // "Luxembourg盧森堡" RT_CTRY_MY, // "Malaysia馬來西亞" RT_CTRY_MT, // "Malta馬爾他" RT_CTRY_MX, // "Mexico墨西哥" RT_CTRY_MA, // "Morocco摩洛哥" RT_CTRY_NL, // "Netherlands荷蘭" RT_CTRY_NZ, // "New Zealand紐西蘭" RT_CTRY_NO, // "Norway挪威" RT_CTRY_PA, // "Panama巴拿馬 " RT_CTRY_PH, // "Philippines菲律賓" RT_CTRY_PL, // "Poland波蘭" RT_CTRY_PT, // "Portugal葡萄牙" RT_CTRY_RO, // "Romania羅馬尼亞" RT_CTRY_RU, // "Russia俄羅斯" RT_CTRY_SA, // "Saudi Arabia沙地阿拉伯" RT_CTRY_SG, // "Singapore新加坡" RT_CTRY_SK, // "Slovakia斯洛伐克" RT_CTRY_SI, // "Slovenia斯洛維尼亞" RT_CTRY_ZA, // "South Africa南非" RT_CTRY_ES, // "Spain西班牙" RT_CTRY_SE, // "Sweden瑞典" RT_CTRY_CH, // "Switzerland瑞士" RT_CTRY_TW, // "Taiwan臺灣" RT_CTRY_TH, // "Thailand泰國" RT_CTRY_TR, // "Turkey土耳其" RT_CTRY_UA, // "Ukraine烏克蘭" RT_CTRY_GB, // "United Kingdom英國" RT_CTRY_US, // "United States美國" RT_CTRY_VE, // "Venezuela委內瑞拉" RT_CTRY_VN, // "Vietnam越南" RT_CTRY_MAX, // }RT_COUNTRY_NAME, *PRT_COUNTRY_NAME; // Scan type including active and passive scan. typedef enum _RT_SCAN_TYPE_NEW { SCAN_NULL, SCAN_ACT, SCAN_PAS, SCAN_BOTH, }RT_SCAN_TYPE_NEW, *PRT_SCAN_TYPE_NEW; // Power table sample. typedef struct _RT_CHNL_PLAN_LIMIT { u2Byte Chnl_Start; u2Byte Chnl_end; u2Byte Freq_Start; u2Byte Freq_end; }RT_CHNL_PLAN_LIMIT, *PRT_CHNL_PLAN_LIMIT; // // 2.4G Regulatory Domains // typedef enum _RT_REGULATION_DOMAIN_2G { RT_2G_NULL, RT_2G_WORLD, RT_2G_ETSI1, RT_2G_FCC1, RT_2G_MKK1, RT_2G_ETSI2 }RT_REGULATION_2G, *PRT_REGULATION_2G; //typedef struct _RT_CHANNEL_BEHAVIOR //{ // u1Byte Chnl; // RT_SCAN_TYPE_NEW // //}RT_CHANNEL_BEHAVIOR, *PRT_CHANNEL_BEHAVIOR; //typedef struct _RT_CHANNEL_PLAN_TYPE //{ // RT_CHANNEL_BEHAVIOR // u1Byte Chnl_num; //}RT_CHNL_PLAN_TYPE, *PRT_CHNL_PLAN_TYPE; // // 2.4G Channel Number // Channel definition & number // #define CHNL_RT_2G_NULL \ {0}, 0 #define CHNL_RT_2G_WORLD \ {1,2,3,4,5,6,7,8,9,10,11,12,13}, 13 #define CHNL_RT_2G_WORLD_TEST \ {1,2,3,4,5,6,7,8,9,10,11,12,13}, 13 #define CHNL_RT_2G_EFSI1 \ {1,2,3,4,5,6,7,8,9,10,11,12,13}, 13 #define CHNL_RT_2G_FCC1 \ {1,2,3,4,5,6,7,8,9,10,11}, 11 #define CHNL_RT_2G_MKK1 \ {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 14 #define CHNL_RT_2G_ETSI2 \ {10,11,12,13}, 4 // // 2.4G Channel Active or passive scan. // #define CHNL_RT_2G_NULL_SCAN_TYPE \ {SCAN_NULL} #define CHNL_RT_2G_WORLD_SCAN_TYPE \ {1,1,1,1,1,1,1,1,1,1,1,0,0} #define CHNL_RT_2G_EFSI1_SCAN_TYPE \ {1,1,1,1,1,1,1,1,1,1,1,1,1} #define CHNL_RT_2G_FCC1_SCAN_TYPE \ {1,1,1,1,1,1,1,1,1,1,1} #define CHNL_RT_2G_MKK1_SCAN_TYPE \ {1,1,1,1,1,1,1,1,1,1,1,1,1,1} #define CHNL_RT_2G_ETSI2_SCAN_TYPE \ {1,1,1,1} // // 2.4G Band & Frequency Section // Freqency start & end / band number // #define FREQ_RT_2G_NULL \ {0}, 0 // Passive scan CH 12, 13 #define FREQ_RT_2G_WORLD \ {2412, 2472}, 1 #define FREQ_RT_2G_EFSI1 \ {2412, 2472}, 1 #define FREQ_RT_2G_FCC1 \ {2412, 2462}, 1 #define FREQ_RT_2G_MKK1 \ {2412, 2484}, 1 #define FREQ_RT_2G_ETSI2 \ {2457, 2472}, 1 // // 5G Regulatory Domains // typedef enum _RT_REGULATION_DOMAIN_5G { RT_5G_NULL, RT_5G_WORLD, RT_5G_ETSI1, RT_5G_ETSI2, RT_5G_ETSI3, RT_5G_FCC1, RT_5G_FCC2, RT_5G_FCC3, RT_5G_FCC4, RT_5G_FCC5, RT_5G_FCC6, RT_5G_FCC7, RT_5G_IC1, RT_5G_KCC1, RT_5G_MKK1, RT_5G_MKK2, RT_5G_MKK3, RT_5G_NCC1, }RT_REGULATION_5G, *PRT_REGULATION_5G; // // 5G Channel Number // #define CHNL_RT_5G_NULL \ {0}, 0 #define CHNL_RT_5G_WORLD \ {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140}, 19 #define CHNL_RT_5G_ETSI1 \ {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140,149,153,157,161,165}, 24 #define CHNL_RT_5G_ETSI2 \ {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,149,153,157,161,165}, 22 #define CHNL_RT_5G_ETSI3 \ {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140,149,153,157,161,165}, 24 #define CHNL_RT_5G_FCC1 \ {36,40,44,48,149,153,157,161,165}, 9 #define CHNL_RT_5G_FCC2 \ {36,40,44,48,52,56,60,64,149,153,157,161,165}, 13 #define CHNL_RT_5G_FCC3 \ {36,40,44,48,52,56,60,64,149,153,157,161}, 12 #define CHNL_RT_5G_FCC4 \ {149,153,157,161,165}, 5 #define CHNL_RT_5G_FCC5 \ {36,40,44,48,52,56,60,64}, 8 #define CHNL_RT_5G_FCC6 \ {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20 #define CHNL_RT_5G_FCC7 \ {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20 #define CHNL_RT_5G_IC1 \ {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,149,153,157,161,165}, 20 #define CHNL_RT_5G_KCC1 \ {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140}, 19 #define CHNL_RT_5G_MKK1 \ {36,40,44,48,52,56,60,64}, 8 #define CHNL_RT_5G_MKK2 \ {100,104,108,112,116,120,124,128,132,136,140}, 11 #define CHNL_RT_5G_MKK3 \ {56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 24 #define CHNL_RT_5G_NCC1 \ {56,60,64,149,153,157,161,165}, 8 // // 5G Channel Active or passive scan. // #define CHNL_RT_5G_NULL_SCAN_TYPE \ {SCAN_NULL} #define CHNL_RT_5G_WORLD_SCAN_TYPE \ {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1} #define CHNL_RT_5G_ETSI1_SCAN_TYPE \ {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1} #define CHNL_RT_5G_ETSI2_SCAN_TYPE \ {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,149,153,157,161,165}, 22 #define CHNL_RT_5G_ETSI3_SCAN_TYPE \ {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140,149,153,157,161,165}, 24 #define CHNL_RT_5G_FCC1_SCAN_TYPE \ {36,40,44,48,149,153,157,161,165}, 9 #define CHNL_RT_5G_FCC2_SCAN_TYPE \ {36,40,44,48,52,56,60,64,149,153,157,161,165}, 13 #define CHNL_RT_5G_FCC3_SCAN_TYPE \ {36,40,44,48,52,56,60,64,149,153,157,161}, 12 #define CHNL_RT_5G_FCC4_SCAN_TYPE \ {149,153,157,161,165}, 5 #define CHNL_RT_5G_FCC5_SCAN_TYPE \ {36,40,44,48,52,56,60,64}, 8 #define CHNL_RT_5G_FCC6_SCAN_TYPE \ {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20 #define CHNL_RT_5G_FCC7_SCAN_TYPE \ {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20 #define CHNL_RT_5G_IC1_SCAN_TYPE \ {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,149,153,157,161,165}, 20 #define CHNL_RT_5G_KCC1_SCAN_TYPE \ {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140}, 19 #define CHNL_RT_5G_MKK1_SCAN_TYPE \ {36,40,44,48,52,56,60,64}, 8 #define CHNL_RT_5G_MKK2_SCAN_TYPE \ {100,104,108,112,116,120,124,128,132,136,140}, 11 #define CHNL_RT_5G_MKK3_SCAN_TYPE \ {56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 24 #define CHNL_RT_5G_NCC1_SCAN_TYPE \ {56,60,64,149,153,157,161,165}, 8 // // Global Regulation // typedef enum _RT_REGULATION_COMMON { RT_WORLD, RT_FCC, RT_MKK, RT_ETSI, RT_IC, RT_CE, RT_NCC, }RT_REGULATION_CMN, *PRT_REGULATION_CMN; // // Special requirement for different regulation domain. // For internal test or customerize special request. // typedef enum _RT_CHNLPLAN_SREQ { RT_SREQ_NA = 0x0, RT_SREQ_2G_ADHOC_11N = 0x00000001, RT_SREQ_2G_ADHOC_11B = 0x00000002, RT_SREQ_2G_ALL_PASS = 0x00000004, RT_SREQ_2G_ALL_ACT = 0x00000008, RT_SREQ_5G_ADHOC_11N = 0x00000010, RT_SREQ_5G_ADHOC_11AC = 0x00000020, RT_SREQ_5G_ALL_PASS = 0x00000040, RT_SREQ_5G_ALL_ACT = 0x00000080, RT_SREQ_C1_PLAN = 0x00000100, RT_SREQ_C2_PLAN = 0x00000200, RT_SREQ_C3_PLAN = 0x00000400, RT_SREQ_C4_PLAN = 0x00000800, RT_SREQ_NFC_ON = 0x00001000, RT_SREQ_MASK = 0x0000FFFF, /* Requirements bit mask */ }RT_CHNLPLAN_SREQ, *PRT_CHNLPLAN_SREQ; // // RT_COUNTRY_NAME & RT_REGULATION_2G & RT_REGULATION_5G transfer table // // typedef struct _RT_CHANNEL_PLAN_COUNTRY_TRANSFER_TABLE { // // Define countery domain and corresponding // RT_COUNTRY_NAME Country_Enum; char Country_Name[3]; //char Domain_Name[12]; RT_REGULATION_2G Domain_2G; RT_REGULATION_5G Domain_5G; RT_CHANNEL_DOMAIN RtChDomain; //u1Byte Country_Area; }RT_CHNL_CTRY_TBL, *PRT_CHNL_CTRY_TBL; #define RT_MAX_CHNL_NUM_2G 13 #define RT_MAX_CHNL_NUM_5G 44 // Power table sample. typedef struct _RT_CHNL_PLAN_PWR_LIMIT { u2Byte Chnl_Start; u2Byte Chnl_end; u1Byte dB_Max; u2Byte mW_Max; }RT_CHNL_PWR_LIMIT, *PRT_CHNL_PWR_LIMIT; #define RT_MAX_BAND_NUM 5 typedef struct _RT_CHANNEL_PLAN_MAXPWR { // STRING_T RT_CHNL_PWR_LIMIT Chnl[RT_MAX_BAND_NUM]; u1Byte Band_Useful_Num; }RT_CHANNEL_PLAN_MAXPWR, *PRT_CHANNEL_PLAN_MAXPWR; // // Power By Rate Table. // typedef struct _RT_CHANNEL_PLAN_NEW { // // Define countery domain and corresponding // //char Country_Name[36]; //u1Byte Country_Enum; //char Domain_Name[12]; PRT_CHNL_CTRY_TBL pCtryTransfer; RT_CHANNEL_DOMAIN RtChDomain; RT_REGULATION_2G Domain_2G; RT_REGULATION_5G Domain_5G; RT_REGULATION_CMN Regulator; RT_CHNLPLAN_SREQ ChnlSreq; //RT_CHNL_PLAN_LIMIT RtChnl; u1Byte Chnl2G[MAX_CHANNEL_NUM]; // CHNL_RT_2G_WORLD u1Byte Len2G; u1Byte Chnl2GScanTp[MAX_CHANNEL_NUM]; // CHNL_RT_2G_WORLD_SCAN_TYPE //u1Byte Freq2G[2]; // FREQ_RT_2G_WORLD u1Byte Chnl5G[MAX_CHANNEL_NUM]; u1Byte Len5G; u1Byte Chnl5GScanTp[MAX_CHANNEL_NUM]; //u1Byte Freq2G[2]; // FREQ_RT_2G_WORLD RT_CHANNEL_PLAN_MAXPWR ChnlMaxPwr; }RT_CHANNEL_PLAN_NEW, *PRT_CHANNEL_PLAN_NEW; #endif // __RT_CHANNELPLAN_H__