1 /******************************************************************************
\r
3 * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved.
\r
5 * This program is free software; you can redistribute it and/or modify it
\r
6 * under the terms of version 2 of the GNU General Public License as
\r
7 * published by the Free Software Foundation.
\r
9 * This program is distributed in the hope that it will be useful, but WITHOUT
\r
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
\r
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
\r
14 * You should have received a copy of the GNU General Public License along with
\r
15 * this program; if not, write to the Free Software Foundation, Inc.,
\r
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
\r
19 ******************************************************************************/
\r
22 #ifndef __RT_CHANNELPLAN_H__
\r
23 #define __RT_CHANNELPLAN_H__
\r
25 typedef enum _RT_CHANNEL_DOMAIN_NEW
\r
28 //===== Add new channel plan above this line ===============//
\r
30 // For new architecture we define different 2G/5G CH area for all country.
\r
32 RT_CHANNEL_DOMAIN_2G_WORLD_5G_NULL = 0x20,
\r
33 RT_CHANNEL_DOMAIN_2G_ETSI1_5G_NULL = 0x21,
\r
34 RT_CHANNEL_DOMAIN_2G_FCC1_5G_NULL = 0x22,
\r
35 RT_CHANNEL_DOMAIN_2G_MKK1_5G_NULL = 0x23,
\r
36 RT_CHANNEL_DOMAIN_2G_ETSI2_5G_NULL = 0x24,
\r
37 // 2.4 G + 5G type 1
\r
38 RT_CHANNEL_DOMAIN_2G_FCC1_5G_FCC1 = 0x25,
\r
39 RT_CHANNEL_DOMAIN_2G_WORLD_5G_ETSI1 = 0x26,
\r
40 //RT_CHANNEL_DOMAIN_2G_WORLD_5G_ETSI1 = 0x27,
\r
43 RT_CHANNEL_DOMAIN_MAX_NEW,
\r
45 }RT_CHANNEL_DOMAIN_NEW, *PRT_CHANNEL_DOMAIN_NEW;
\r
49 #define DOMAIN_CODE_2G_WORLD \
\r
50 {1,2,3,4,5,6,7,8,9,10,11,12,13}, 13
\r
51 #define DOMAIN_CODE_2G_ETSI1 \
\r
52 {1,2,3,4,5,6,7,8,9,10,11,12,13}, 13
\r
53 #define DOMAIN_CODE_2G_ETSI2 \
\r
54 {1,2,3,4,5,6,7,8,9,10,11}, 11
\r
55 #define DOMAIN_CODE_2G_FCC1 \
\r
56 {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 14
\r
57 #define DOMAIN_CODE_2G_MKK1 \
\r
60 #define DOMAIN_CODE_5G_ETSI1 \
\r
61 {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140}, 19
\r
62 #define DOMAIN_CODE_5G_ETSI2 \
\r
63 {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
\r
64 #define DOMAIN_CODE_5G_ETSI3 \
\r
65 {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,149,153,157,161,165}, 22
\r
66 #define DOMAIN_CODE_5G_FCC1 \
\r
67 {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
\r
68 #define DOMAIN_CODE_5G_FCC2 \
\r
69 {36,40,44,48,149,153,157,161,165}, 9
\r
70 #define DOMAIN_CODE_5G_FCC3 \
\r
71 {36,40,44,48,52,56,60,64,149,153,157,161,165}, 13
\r
72 #define DOMAIN_CODE_5G_FCC4 \
\r
73 {36,40,44,48,52,56,60,64,149,153,157,161}, 12
\r
74 #define DOMAIN_CODE_5G_FCC5 \
\r
75 {149,153,157,161,165}, 5
\r
76 #define DOMAIN_CODE_5G_FCC6 \
\r
77 {36,40,44,48,52,56,60,64}, 8
\r
78 #define DOMAIN_CODE_5G_FCC7 \
\r
79 {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20
\r
80 #define DOMAIN_CODE_5G_IC1 \
\r
81 {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20
\r
82 #define DOMAIN_CODE_5G_KCC1 \
\r
83 {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,149,153,157,161,165}, 20
\r
84 #define DOMAIN_CODE_5G_MKK1 \
\r
85 {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140}, 19
\r
86 #define DOMAIN_CODE_5G_MKK2 \
\r
87 {36,40,44,48,52,56,60,64}, 8
\r
88 #define DOMAIN_CODE_5G_MKK3 \
\r
89 {100,104,108,112,116,120,124,128,132,136,140}, 11
\r
90 #define DOMAIN_CODE_5G_NCC1 \
\r
91 {56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 24
\r
92 #define DOMAIN_CODE_5G_NCC2 \
\r
93 {56,60,64,149,153,157,161,165}, 8
\r
103 Countries "Country Abbreviation" Domain Code SKU's Ch# of 20MHz
\r
105 "Albaniaªüº¸¤Ú¥§¨È" AL Local Test
\r
107 "Algeriaªüº¸¤Î§Q¨È" DZ CE TCF
\r
109 "Antigua & Barbuda¦w´£¥Ê®q&¤Ú¥¬¹F" AG 2G_WORLD FCC TCF
\r
111 "Argentinaªü®Ú§Ê" AR 2G_WORLD Local Test
\r
113 "Armenia¨È¬ü¥§¨È" AM 2G_WORLD ETSI
\r
115 "Arubaªü¾|¤Ú®q" AW 2G_WORLD FCC TCF
\r
117 "Australia¿D¬w" AU 2G_WORLD 5G_ETSI2
\r
119 "Austria¶ø¦a§Q" AT 2G_WORLD 5G_ETSI1 CE
\r
121 "Azerbaijanªü¶ë«ô¾Ê" AZ 2G_WORLD CE TCF
\r
123 "Bahamas¤Ú«¢°¨" BS 2G_WORLD
\r
125 "Barbados¤Ú¤Ú¦h´µ" BB 2G_WORLD FCC TCF
\r
127 "Belgium¤ñ§Q®É" BE 2G_WORLD 5G_ETSI1 CE
\r
129 "Bermuda¦Ê¼}¹F" BM 2G_WORLD FCC TCF
\r
131 "Brazil¤Ú¦è" BR 2G_WORLD Local Test
\r
133 "Bulgaria«O¥[§Q¨È" BG 2G_WORLD 5G_ETSI1 CE
\r
135 "Canada¥[®³¤j" CA 2G_FCC1 5G_FCC7 IC / FCC IC / FCC
\r
137 "Cayman Islands¶}°Ò¸s®q" KY 2G_WORLD 5G_ETSI1 CE
\r
139 "Chile´¼§Q" CL 2G_WORLD FCC TCF
\r
141 "China¤¤°ê" CN 2G_WORLD 5G_FCC5 «H³¡?¡i2002¡j353?
\r
143 "ColumbiaôÛ¤ñ¨È" CO 2G_WORLD Voluntary
\r
145 "Costa Ricaô´µ¹F¾¤¥[" CR 2G_WORLD FCC TCF
\r
147 "Cyprus¶ë®ú¸ô´µ" CY 2G_WORLD 5G_ETSI1 CE
\r
149 "Czech ±¶§J" CZ 2G_WORLD 5G_ETSI1 CE
\r
151 "Denmark¤¦³Á" DK 2G_WORLD 5G_ETSI1 CE
\r
153 "Dominican Republic¦h©ú¥§¥[¦@©M°ê" DO 2G_WORLD FCC TCF
\r
155 "Egypt®J¤Î" EG 2G_WORLD CE T CF
\r
157 "El SalvadorÂĺ¸¥Ë¦h" SV 2G_WORLD Voluntary
\r
159 "Estonia·R¨F¥§¨È" EE 2G_WORLD 5G_ETSI1 CE
\r
161 "FinlandªâÄõ" FI 2G_WORLD 5G_ETSI1 CE
\r
163 "Franceªk°ê" FR 5G_E TSI1 CE
\r
165 "Germany¼w°ê" DE 2G_WORLD 5G_ETSI1 CE
\r
167 "Greece §Æþ" GR 2G_WORLD 5G_ETSI1 CE
\r
169 "GuamÃö®q" GU 2G_WORLD
\r
171 "Guatemala¥Ê¦a°¨©Ô" GT 2G_WORLD
\r
173 "Haiti®ü¦a" HT 2G_WORLD FCC TCF
\r
175 "Honduras§»³£©Ô´µ" HN 2G_WORLD FCC TCF
\r
177 "Hungary¦I¤ú§Q" HU 2G_WORLD 5G_ETSI1 CE
\r
179 "Iceland¦B®q" IS 2G_WORLD 5G_ETSI1 CE
\r
181 "India¦L«×" IN 2G_WORLD 5G_FCC3 FCC/CE TCF
\r
183 "Ireland·Rº¸Äõ" IE 2G_WORLD 5G_ETSI1 CE
\r
185 "Israel¥H¦â¦C" IL 5G_F CC6 CE TCF
\r
187 "Italy¸q¤j§Q" IT 2G_WORLD 5G_ETSI1 CE
\r
189 "Japan¤é¥»" JP 2G_MKK1 5G_MKK1 MKK MKK
\r
191 "KoreaÁú°ê" KR 2G_WORLD 5G_KCC1 KCC KCC
\r
193 "Latvia©Ô²æºû¨È" LV 2G_WORLD 5G_ETSI1 CE
\r
195 "Lithuania¥ß³³©{" LT 2G_WORLD 5G_ETSI1 CE
\r
197 "Luxembourg¿c´Ë³ù" LU 2G_WORLD 5G_ETSI1 CE
\r
199 "Malaysia°¨¨Ó¦è¨È" MY 2G_WORLD Local Test
\r
201 "Malta°¨º¸¥L" MT 2G_WORLD 5G_ETSI1 CE
\r
203 "Mexico¾¥¦èô" MX 2G_WORLD 5G_FCC3 Local Test
\r
205 "Morocco¼¯¬¥ô" MA CE TCF
\r
207 "Netherlands²üÄõ" NL 2G_WORLD 5G_ETSI1 CE
\r
209 "New Zealand¯Ã¦èÄõ" NZ 2G_WORLD 5G_ETSI2
\r
211 "Norway®¿«Â" NO 2G_WORLD 5G_ETSI1 CE
\r
213 "Panama¤Ú®³°¨ " PA 2G_FCC1 Voluntary
\r
215 "Philippines栮ᯮ" PH 2G_WORLD FCC TCF
\r
217 "PolandªiÄõ" PL 2G_WORLD 5G_ETSI1 CE
\r
219 "Portugal¸²µå¤ú" PT 2G_WORLD 5G_ETSI1 CE
\r
221 "Romaniaù°¨¥§¨È" RO 2G_WORLD 5G_ETSI1 CE
\r
223 "Russia«Xù´µ" RU 2G_WORLD 5G_ETSI3 CE TCF
\r
225 "Saudi Arabia¨F¦aªü©Ô§B" SA 2G_WORLD CE TCF
\r
227 "Singapore·s¥[©Y" SG 2G_WORLD
\r
229 "Slovakia´µ¬¥¥ï§J" SK 2G_WORLD 5G_ETSI1 CE
\r
231 "Slovenia´µ¬¥ºû¥§¨È" SI 2G_WORLD 5G_ETSI1 CE
\r
233 "South Africa«n«D" ZA 2G_WORLD CE TCF
\r
235 "Spain¦è¯Z¤ú" ES 5G_ETSI1 CE
\r
237 "Sweden·ç¨å" SE 2G_WORLD 5G_ETSI1 CE
\r
239 "Switzerland·ç¤h" CH 2G_WORLD 5G_ETSI1 CE
\r
241 "Taiwan»OÆW" TW 2G_FCC1 5G_NCC1 NCC
\r
243 "Thailand®õ°ê" TH 2G_WORLD FCC/CE TCF
\r
245 "Turkey¤g¦Õ¨ä" TR 2G_WORLD
\r
247 "Ukraine¯Q§JÄõ" UA 2G_WORLD Local Test
\r
249 "United Kingdom^°ê" GB 2G_WORLD 5G_ETSI1 CE ETSI
\r
251 "United States¬ü°ê" US 2G_FCC1 5G_FCC7 FCC FCC
\r
253 "Venezuela©e¤º·ç©Ô" VE 2G_WORLD 5G_FCC4 FCC TCF
\r
255 "Vietnam¶V«n" VN 2G_WORLD FCC/CE TCF
\r
261 // Counter abbervation.
\r
262 typedef enum _RT_COUNTRY_DEFINE_NUM
\r
264 RT_CTRY_AL, // "Albaniaªüº¸¤Ú¥§¨È"
\r
265 RT_CTRY_DZ, // "Algeriaªüº¸¤Î§Q¨È"
\r
266 RT_CTRY_AG, // "Antigua & Barbuda¦w´£¥Ê®q&¤Ú¥¬¹F"
\r
267 RT_CTRY_AR, // "Argentinaªü®Ú§Ê"
\r
268 RT_CTRY_AM, // "Armenia¨È¬ü¥§¨È"
\r
269 RT_CTRY_AW, // "Arubaªü¾|¤Ú®q"
\r
270 RT_CTRY_AU, // "Australia¿D¬w"
\r
271 RT_CTRY_AT, // "Austria¶ø¦a§Q"
\r
272 RT_CTRY_AZ, // "Azerbaijanªü¶ë«ô¾Ê"
\r
273 RT_CTRY_BS, // "Bahamas¤Ú«¢°¨"
\r
274 RT_CTRY_BB, // "Barbados¤Ú¤Ú¦h´µ"
\r
275 RT_CTRY_BE, // "Belgium¤ñ§Q®É"
\r
276 RT_CTRY_BM, // "Bermuda¦Ê¼}¹F"
\r
277 RT_CTRY_BR, // "Brazil¤Ú¦è"
\r
278 RT_CTRY_BG, // "Bulgaria«O¥[§Q¨È"
\r
279 RT_CTRY_CA, // "Canada¥[®³¤j"
\r
280 RT_CTRY_KY, // "Cayman Islands¶}°Ò¸s®q"
\r
281 RT_CTRY_CL, // "Chile´¼§Q"
\r
282 RT_CTRY_CN, // "China¤¤°ê"
\r
283 RT_CTRY_CO, // "ColumbiaôÛ¤ñ¨È"
\r
284 RT_CTRY_CR, // "Costa Ricaô´µ¹F¾¤¥["
\r
285 RT_CTRY_CY, // "Cyprus¶ë®ú¸ô´µ"
\r
286 RT_CTRY_CZ, // "Czech ±¶§J"
\r
287 RT_CTRY_DK, // "Denmark¤¦³Á"
\r
288 RT_CTRY_DO, // "Dominican Republic¦h©ú¥§¥[¦@©M°ê"
\r
289 RT_CTRY_CE, // "Egypt®J¤Î" EG 2G_WORLD
\r
290 RT_CTRY_SV, // "El SalvadorÂĺ¸¥Ë¦h"
\r
291 RT_CTRY_EE, // "Estonia·R¨F¥§¨È"
\r
292 RT_CTRY_FI, // "FinlandªâÄõ"
\r
293 RT_CTRY_FR, // "Franceªk°ê"
\r
294 RT_CTRY_DE, // "Germany¼w°ê"
\r
295 RT_CTRY_GR, // "Greece §Æþ"
\r
296 RT_CTRY_GU, // "GuamÃö®q"
\r
297 RT_CTRY_GT, // "Guatemala¥Ê¦a°¨©Ô"
\r
298 RT_CTRY_HT, // "Haiti®ü¦a"
\r
299 RT_CTRY_HN, // "Honduras§»³£©Ô´µ"
\r
300 RT_CTRY_HU, // "Hungary¦I¤ú§Q"
\r
301 RT_CTRY_IS, // "Iceland¦B®q"
\r
302 RT_CTRY_IN, // "India¦L«×"
\r
303 RT_CTRY_IE, // "Ireland·Rº¸Äõ"
\r
304 RT_CTRY_IL, // "Israel¥H¦â¦C"
\r
305 RT_CTRY_IT, // "Italy¸q¤j§Q"
\r
306 RT_CTRY_JP, // "Japan¤é¥»"
\r
307 RT_CTRY_KR, // "KoreaÁú°ê"
\r
308 RT_CTRY_LV, // "Latvia©Ô²æºû¨È"
\r
309 RT_CTRY_LT, // "Lithuania¥ß³³©{"
\r
310 RT_CTRY_LU, // "Luxembourg¿c´Ë³ù"
\r
311 RT_CTRY_MY, // "Malaysia°¨¨Ó¦è¨È"
\r
312 RT_CTRY_MT, // "Malta°¨º¸¥L"
\r
313 RT_CTRY_MX, // "Mexico¾¥¦èô"
\r
314 RT_CTRY_MA, // "Morocco¼¯¬¥ô"
\r
315 RT_CTRY_NL, // "Netherlands²üÄõ"
\r
316 RT_CTRY_NZ, // "New Zealand¯Ã¦èÄõ"
\r
317 RT_CTRY_NO, // "Norway®¿«Â"
\r
318 RT_CTRY_PA, // "Panama¤Ú®³°¨ "
\r
319 RT_CTRY_PH, // "Philippines栮ᯮ"
\r
320 RT_CTRY_PL, // "PolandªiÄõ"
\r
321 RT_CTRY_PT, // "Portugal¸²µå¤ú"
\r
322 RT_CTRY_RO, // "Romaniaù°¨¥§¨È"
\r
323 RT_CTRY_RU, // "Russia«Xù´µ"
\r
324 RT_CTRY_SA, // "Saudi Arabia¨F¦aªü©Ô§B"
\r
325 RT_CTRY_SG, // "Singapore·s¥[©Y"
\r
326 RT_CTRY_SK, // "Slovakia´µ¬¥¥ï§J"
\r
327 RT_CTRY_SI, // "Slovenia´µ¬¥ºû¥§¨È"
\r
328 RT_CTRY_ZA, // "South Africa«n«D"
\r
329 RT_CTRY_ES, // "Spain¦è¯Z¤ú"
\r
330 RT_CTRY_SE, // "Sweden·ç¨å"
\r
331 RT_CTRY_CH, // "Switzerland·ç¤h"
\r
332 RT_CTRY_TW, // "Taiwan»OÆW"
\r
333 RT_CTRY_TH, // "Thailand®õ°ê"
\r
334 RT_CTRY_TR, // "Turkey¤g¦Õ¨ä"
\r
335 RT_CTRY_UA, // "Ukraine¯Q§JÄõ"
\r
336 RT_CTRY_GB, // "United Kingdom^°ê"
\r
337 RT_CTRY_US, // "United States¬ü°ê"
\r
338 RT_CTRY_VE, // "Venezuela©e¤º·ç©Ô"
\r
339 RT_CTRY_VN, // "Vietnam¶V«n"
\r
342 }RT_COUNTRY_NAME, *PRT_COUNTRY_NAME;
\r
344 // Scan type including active and passive scan.
\r
345 typedef enum _RT_SCAN_TYPE_NEW
\r
351 }RT_SCAN_TYPE_NEW, *PRT_SCAN_TYPE_NEW;
\r
354 // Power table sample.
\r
356 typedef struct _RT_CHNL_PLAN_LIMIT
\r
363 }RT_CHNL_PLAN_LIMIT, *PRT_CHNL_PLAN_LIMIT;
\r
367 // 2.4G Regulatory Domains
\r
369 typedef enum _RT_REGULATION_DOMAIN_2G
\r
378 }RT_REGULATION_2G, *PRT_REGULATION_2G;
\r
381 //typedef struct _RT_CHANNEL_BEHAVIOR
\r
384 // RT_SCAN_TYPE_NEW
\r
386 //}RT_CHANNEL_BEHAVIOR, *PRT_CHANNEL_BEHAVIOR;
\r
388 //typedef struct _RT_CHANNEL_PLAN_TYPE
\r
390 // RT_CHANNEL_BEHAVIOR
\r
391 // u1Byte Chnl_num;
\r
392 //}RT_CHNL_PLAN_TYPE, *PRT_CHNL_PLAN_TYPE;
\r
395 // 2.4G Channel Number
\r
396 // Channel definition & number
\r
398 #define CHNL_RT_2G_NULL \
\r
400 #define CHNL_RT_2G_WORLD \
\r
401 {1,2,3,4,5,6,7,8,9,10,11,12,13}, 13
\r
402 #define CHNL_RT_2G_WORLD_TEST \
\r
403 {1,2,3,4,5,6,7,8,9,10,11,12,13}, 13
\r
405 #define CHNL_RT_2G_EFSI1 \
\r
406 {1,2,3,4,5,6,7,8,9,10,11,12,13}, 13
\r
407 #define CHNL_RT_2G_FCC1 \
\r
408 {1,2,3,4,5,6,7,8,9,10,11}, 11
\r
409 #define CHNL_RT_2G_MKK1 \
\r
410 {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 14
\r
411 #define CHNL_RT_2G_ETSI2 \
\r
415 // 2.4G Channel Active or passive scan.
\r
417 #define CHNL_RT_2G_NULL_SCAN_TYPE \
\r
419 #define CHNL_RT_2G_WORLD_SCAN_TYPE \
\r
420 {1,1,1,1,1,1,1,1,1,1,1,0,0}
\r
421 #define CHNL_RT_2G_EFSI1_SCAN_TYPE \
\r
422 {1,1,1,1,1,1,1,1,1,1,1,1,1}
\r
423 #define CHNL_RT_2G_FCC1_SCAN_TYPE \
\r
424 {1,1,1,1,1,1,1,1,1,1,1}
\r
425 #define CHNL_RT_2G_MKK1_SCAN_TYPE \
\r
426 {1,1,1,1,1,1,1,1,1,1,1,1,1,1}
\r
427 #define CHNL_RT_2G_ETSI2_SCAN_TYPE \
\r
432 // 2.4G Band & Frequency Section
\r
433 // Freqency start & end / band number
\r
435 #define FREQ_RT_2G_NULL \
\r
437 // Passive scan CH 12, 13
\r
438 #define FREQ_RT_2G_WORLD \
\r
440 #define FREQ_RT_2G_EFSI1 \
\r
442 #define FREQ_RT_2G_FCC1 \
\r
444 #define FREQ_RT_2G_MKK1 \
\r
446 #define FREQ_RT_2G_ETSI2 \
\r
451 // 5G Regulatory Domains
\r
453 typedef enum _RT_REGULATION_DOMAIN_5G
\r
474 }RT_REGULATION_5G, *PRT_REGULATION_5G;
\r
477 // 5G Channel Number
\r
479 #define CHNL_RT_5G_NULL \
\r
481 #define CHNL_RT_5G_WORLD \
\r
482 {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140}, 19
\r
483 #define CHNL_RT_5G_ETSI1 \
\r
484 {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
\r
485 #define CHNL_RT_5G_ETSI2 \
\r
486 {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,149,153,157,161,165}, 22
\r
487 #define CHNL_RT_5G_ETSI3 \
\r
488 {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
\r
489 #define CHNL_RT_5G_FCC1 \
\r
490 {36,40,44,48,149,153,157,161,165}, 9
\r
491 #define CHNL_RT_5G_FCC2 \
\r
492 {36,40,44,48,52,56,60,64,149,153,157,161,165}, 13
\r
493 #define CHNL_RT_5G_FCC3 \
\r
494 {36,40,44,48,52,56,60,64,149,153,157,161}, 12
\r
495 #define CHNL_RT_5G_FCC4 \
\r
496 {149,153,157,161,165}, 5
\r
497 #define CHNL_RT_5G_FCC5 \
\r
498 {36,40,44,48,52,56,60,64}, 8
\r
499 #define CHNL_RT_5G_FCC6 \
\r
500 {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20
\r
501 #define CHNL_RT_5G_FCC7 \
\r
502 {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20
\r
503 #define CHNL_RT_5G_IC1 \
\r
504 {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,149,153,157,161,165}, 20
\r
505 #define CHNL_RT_5G_KCC1 \
\r
506 {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140}, 19
\r
507 #define CHNL_RT_5G_MKK1 \
\r
508 {36,40,44,48,52,56,60,64}, 8
\r
509 #define CHNL_RT_5G_MKK2 \
\r
510 {100,104,108,112,116,120,124,128,132,136,140}, 11
\r
511 #define CHNL_RT_5G_MKK3 \
\r
512 {56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 24
\r
513 #define CHNL_RT_5G_NCC1 \
\r
514 {56,60,64,149,153,157,161,165}, 8
\r
517 // 5G Channel Active or passive scan.
\r
519 #define CHNL_RT_5G_NULL_SCAN_TYPE \
\r
521 #define CHNL_RT_5G_WORLD_SCAN_TYPE \
\r
522 {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}
\r
523 #define CHNL_RT_5G_ETSI1_SCAN_TYPE \
\r
524 {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}
\r
525 #define CHNL_RT_5G_ETSI2_SCAN_TYPE \
\r
526 {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,149,153,157,161,165}, 22
\r
527 #define CHNL_RT_5G_ETSI3_SCAN_TYPE \
\r
528 {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
\r
529 #define CHNL_RT_5G_FCC1_SCAN_TYPE \
\r
530 {36,40,44,48,149,153,157,161,165}, 9
\r
531 #define CHNL_RT_5G_FCC2_SCAN_TYPE \
\r
532 {36,40,44,48,52,56,60,64,149,153,157,161,165}, 13
\r
533 #define CHNL_RT_5G_FCC3_SCAN_TYPE \
\r
534 {36,40,44,48,52,56,60,64,149,153,157,161}, 12
\r
535 #define CHNL_RT_5G_FCC4_SCAN_TYPE \
\r
536 {149,153,157,161,165}, 5
\r
537 #define CHNL_RT_5G_FCC5_SCAN_TYPE \
\r
538 {36,40,44,48,52,56,60,64}, 8
\r
539 #define CHNL_RT_5G_FCC6_SCAN_TYPE \
\r
540 {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20
\r
541 #define CHNL_RT_5G_FCC7_SCAN_TYPE \
\r
542 {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20
\r
543 #define CHNL_RT_5G_IC1_SCAN_TYPE \
\r
544 {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,149,153,157,161,165}, 20
\r
545 #define CHNL_RT_5G_KCC1_SCAN_TYPE \
\r
546 {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140}, 19
\r
547 #define CHNL_RT_5G_MKK1_SCAN_TYPE \
\r
548 {36,40,44,48,52,56,60,64}, 8
\r
549 #define CHNL_RT_5G_MKK2_SCAN_TYPE \
\r
550 {100,104,108,112,116,120,124,128,132,136,140}, 11
\r
551 #define CHNL_RT_5G_MKK3_SCAN_TYPE \
\r
552 {56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 24
\r
553 #define CHNL_RT_5G_NCC1_SCAN_TYPE \
\r
554 {56,60,64,149,153,157,161,165}, 8
\r
557 // Global Regulation
\r
559 typedef enum _RT_REGULATION_COMMON
\r
569 }RT_REGULATION_CMN, *PRT_REGULATION_CMN;
\r
574 // Special requirement for different regulation domain.
\r
575 // For internal test or customerize special request.
\r
577 typedef enum _RT_CHNLPLAN_SREQ
\r
580 RT_SREQ_2G_ADHOC_11N = 0x00000001,
\r
581 RT_SREQ_2G_ADHOC_11B = 0x00000002,
\r
582 RT_SREQ_2G_ALL_PASS = 0x00000004,
\r
583 RT_SREQ_2G_ALL_ACT = 0x00000008,
\r
584 RT_SREQ_5G_ADHOC_11N = 0x00000010,
\r
585 RT_SREQ_5G_ADHOC_11AC = 0x00000020,
\r
586 RT_SREQ_5G_ALL_PASS = 0x00000040,
\r
587 RT_SREQ_5G_ALL_ACT = 0x00000080,
\r
588 RT_SREQ_C1_PLAN = 0x00000100,
\r
589 RT_SREQ_C2_PLAN = 0x00000200,
\r
590 RT_SREQ_C3_PLAN = 0x00000400,
\r
591 RT_SREQ_C4_PLAN = 0x00000800,
\r
592 RT_SREQ_NFC_ON = 0x00001000,
\r
593 RT_SREQ_MASK = 0x0000FFFF, /* Requirements bit mask */
\r
595 }RT_CHNLPLAN_SREQ, *PRT_CHNLPLAN_SREQ;
\r
599 // RT_COUNTRY_NAME & RT_REGULATION_2G & RT_REGULATION_5G transfer table
\r
602 typedef struct _RT_CHANNEL_PLAN_COUNTRY_TRANSFER_TABLE
\r
605 // Define countery domain and corresponding
\r
607 RT_COUNTRY_NAME Country_Enum;
\r
608 char Country_Name[3];
\r
610 //char Domain_Name[12];
\r
611 RT_REGULATION_2G Domain_2G;
\r
613 RT_REGULATION_5G Domain_5G;
\r
615 RT_CHANNEL_DOMAIN RtChDomain;
\r
616 //u1Byte Country_Area;
\r
618 }RT_CHNL_CTRY_TBL, *PRT_CHNL_CTRY_TBL;
\r
621 #define RT_MAX_CHNL_NUM_2G 13
\r
622 #define RT_MAX_CHNL_NUM_5G 44
\r
624 // Power table sample.
\r
626 typedef struct _RT_CHNL_PLAN_PWR_LIMIT
\r
632 }RT_CHNL_PWR_LIMIT, *PRT_CHNL_PWR_LIMIT;
\r
635 #define RT_MAX_BAND_NUM 5
\r
637 typedef struct _RT_CHANNEL_PLAN_MAXPWR
\r
640 RT_CHNL_PWR_LIMIT Chnl[RT_MAX_BAND_NUM];
\r
641 u1Byte Band_Useful_Num;
\r
644 }RT_CHANNEL_PLAN_MAXPWR, *PRT_CHANNEL_PLAN_MAXPWR;
\r
648 // Power By Rate Table.
\r
653 typedef struct _RT_CHANNEL_PLAN_NEW
\r
656 // Define countery domain and corresponding
\r
658 //char Country_Name[36];
\r
659 //u1Byte Country_Enum;
\r
661 //char Domain_Name[12];
\r
664 PRT_CHNL_CTRY_TBL pCtryTransfer;
\r
666 RT_CHANNEL_DOMAIN RtChDomain;
\r
668 RT_REGULATION_2G Domain_2G;
\r
670 RT_REGULATION_5G Domain_5G;
\r
672 RT_REGULATION_CMN Regulator;
\r
674 RT_CHNLPLAN_SREQ ChnlSreq;
\r
676 //RT_CHNL_PLAN_LIMIT RtChnl;
\r
678 u1Byte Chnl2G[MAX_CHANNEL_NUM]; // CHNL_RT_2G_WORLD
\r
680 u1Byte Chnl2GScanTp[MAX_CHANNEL_NUM]; // CHNL_RT_2G_WORLD_SCAN_TYPE
\r
681 //u1Byte Freq2G[2]; // FREQ_RT_2G_WORLD
\r
683 u1Byte Chnl5G[MAX_CHANNEL_NUM];
\r
685 u1Byte Chnl5GScanTp[MAX_CHANNEL_NUM];
\r
686 //u1Byte Freq2G[2]; // FREQ_RT_2G_WORLD
\r
688 RT_CHANNEL_PLAN_MAXPWR ChnlMaxPwr;
\r
691 }RT_CHANNEL_PLAN_NEW, *PRT_CHANNEL_PLAN_NEW;
\r
694 #endif // __RT_CHANNELPLAN_H__
\r