net: wireless: rockchip: add rtl8822be pcie wifi driver
[firefly-linux-kernel-4.4.55.git] / drivers / net / wireless / rockchip_wlan / rtl8822be / hal / phydm / rtchnlplan.h
diff --git a/drivers/net/wireless/rockchip_wlan/rtl8822be/hal/phydm/rtchnlplan.h b/drivers/net/wireless/rockchip_wlan/rtl8822be/hal/phydm/rtchnlplan.h
new file mode 100644 (file)
index 0000000..37786cf
--- /dev/null
@@ -0,0 +1,699 @@
+/******************************************************************************\r
+ *\r
+ * Copyright(c) 2007 - 2012 Realtek Corporation. All rights reserved.\r
+ *                                        \r
+ * This program is free software; you can redistribute it and/or modify it\r
+ * under the terms of version 2 of the GNU General Public License as\r
+ * published by the Free Software Foundation.\r
+ *\r
+ * This program is distributed in the hope that it will be useful, but WITHOUT\r
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or\r
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for\r
+ * more details.\r
+ *\r
+ * You should have received a copy of the GNU General Public License along with\r
+ * this program; if not, write to the Free Software Foundation, Inc.,\r
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA\r
+ *\r
+ *\r
+ ******************************************************************************/\r
+\r
+\r
+#ifndef        __RT_CHANNELPLAN_H__\r
+#define __RT_CHANNELPLAN_H__\r
+\r
+typedef enum _RT_CHANNEL_DOMAIN_NEW\r
+{\r
+\r
+       //===== Add new channel plan above this line ===============//\r
+\r
+       // For new architecture we define different 2G/5G CH area for all country.\r
+       // 2.4 G only\r
+       RT_CHANNEL_DOMAIN_2G_WORLD_5G_NULL                              = 0x20,\r
+       RT_CHANNEL_DOMAIN_2G_ETSI1_5G_NULL                              = 0x21,\r
+       RT_CHANNEL_DOMAIN_2G_FCC1_5G_NULL                               = 0x22,\r
+       RT_CHANNEL_DOMAIN_2G_MKK1_5G_NULL                               = 0x23,\r
+       RT_CHANNEL_DOMAIN_2G_ETSI2_5G_NULL                              = 0x24,\r
+       // 2.4 G + 5G type 1\r
+       RT_CHANNEL_DOMAIN_2G_FCC1_5G_FCC1                               = 0x25,\r
+       RT_CHANNEL_DOMAIN_2G_WORLD_5G_ETSI1                             = 0x26,\r
+       //RT_CHANNEL_DOMAIN_2G_WORLD_5G_ETSI1                           = 0x27,\r
+       // .....\r
+\r
+       RT_CHANNEL_DOMAIN_MAX_NEW,\r
+       \r
+}RT_CHANNEL_DOMAIN_NEW, *PRT_CHANNEL_DOMAIN_NEW;\r
+\r
+\r
+#if 0\r
+#define DOMAIN_CODE_2G_WORLD \\r
+        {1,2,3,4,5,6,7,8,9,10,11,12,13}, 13\r
+#define DOMAIN_CODE_2G_ETSI1 \\r
+        {1,2,3,4,5,6,7,8,9,10,11,12,13}, 13\r
+#define DOMAIN_CODE_2G_ETSI2 \\r
+        {1,2,3,4,5,6,7,8,9,10,11}, 11\r
+#define DOMAIN_CODE_2G_FCC1 \\r
+        {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 14\r
+#define DOMAIN_CODE_2G_MKK1 \\r
+        {10,11,12,13}, 4\r
+\r
+#define DOMAIN_CODE_5G_ETSI1 \\r
+        {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140}, 19\r
+#define DOMAIN_CODE_5G_ETSI2 \\r
+        {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
+#define DOMAIN_CODE_5G_ETSI3 \\r
+        {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,149,153,157,161,165}, 22\r
+#define DOMAIN_CODE_5G_FCC1 \\r
+        {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
+#define DOMAIN_CODE_5G_FCC2 \\r
+        {36,40,44,48,149,153,157,161,165}, 9\r
+#define DOMAIN_CODE_5G_FCC3 \\r
+        {36,40,44,48,52,56,60,64,149,153,157,161,165}, 13\r
+#define DOMAIN_CODE_5G_FCC4 \\r
+        {36,40,44,48,52,56,60,64,149,153,157,161}, 12\r
+#define DOMAIN_CODE_5G_FCC5 \\r
+        {149,153,157,161,165}, 5\r
+#define DOMAIN_CODE_5G_FCC6 \\r
+        {36,40,44,48,52,56,60,64}, 8\r
+#define DOMAIN_CODE_5G_FCC7 \\r
+        {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20\r
+#define DOMAIN_CODE_5G_IC1 \\r
+        {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20\r
+#define DOMAIN_CODE_5G_KCC1 \\r
+        {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,149,153,157,161,165}, 20\r
+#define DOMAIN_CODE_5G_MKK1 \\r
+        {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140}, 19\r
+#define DOMAIN_CODE_5G_MKK2 \\r
+        {36,40,44,48,52,56,60,64}, 8\r
+#define DOMAIN_CODE_5G_MKK3 \\r
+        {100,104,108,112,116,120,124,128,132,136,140}, 11\r
+#define DOMAIN_CODE_5G_NCC1 \\r
+        {56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 24\r
+#define DOMAIN_CODE_5G_NCC2 \\r
+        {56,60,64,149,153,157,161,165}, 8                      \r
+#define UNDEFINED \\r
+        {0}, 0\r
+#endif\r
+\r
+//\r
+//\r
+//\r
+/*\r
+\r
+Countries                                                      "Country Abbreviation"  Domain Code                                     SKU's   Ch# of 20MHz\r
+                                                                                                                       2G                      5G                                              Ch# of 40MHz\r
+"Albaniaªüº¸¤Ú¥§¨È"                                    AL                                                                                                      Local Test      \r
+                                                                                                                                               \r
+"Algeriaªüº¸¤Î§Q¨È"                                    DZ                                                                      CE TCF          \r
+                                                                                                                               \r
+"Antigua & Barbuda¦w´£¥Ê®q&¤Ú¥¬¹F"     AG                                              2G_WORLD                                        FCC TCF \r
+                                                                                                                                       \r
+"Argentinaªü®Ú§Ê"                                      AR                                              2G_WORLD                                        Local Test      \r
+                                                                                                                                                       \r
+"Armenia¨È¬ü¥§¨È"                                      AM                                              2G_WORLD                                        ETSI    \r
+                                                                                                                                                       \r
+"Arubaªü¾|¤Ú®q"                                                AW                                              2G_WORLD                                        FCC TCF \r
+                                                                                                                                       \r
+"Australia¿D¬w"                                                AU                                              2G_WORLD                5G_ETSI2                \r
+                                                                                                                                       \r
+"Austria¶ø¦a§Q"                                                AT                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                       \r
+"Azerbaijanªü¶ë«ô¾Ê"                           AZ                                              2G_WORLD                                        CE TCF  \r
+                                                                                                               \r
+"Bahamas¤Ú«¢°¨"                                                BS                                              2G_WORLD                                \r
+                                                                                                                               \r
+"Barbados¤Ú¤Ú¦h´µ"                                     BB                                              2G_WORLD                                        FCC TCF \r
+                                                                                                                               \r
+"Belgium¤ñ§Q®É"                                                BE                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                                       \r
+"Bermuda¦Ê¼}¹F"                                                BM                                              2G_WORLD                                        FCC TCF \r
+                                                                                                                                                               \r
+"Brazil¤Ú¦è"                                           BR                                              2G_WORLD                                        Local Test      \r
+                                                                                                                               \r
+"Bulgaria«O¥[§Q¨È"                                     BG                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                               \r
+"Canada¥[®³¤j"                                         CA                                              2G_FCC1                 5G_FCC7         IC / FCC        IC / FCC\r
+                                                                                                               \r
+"Cayman Islands¶}°Ò¸s®q"                       KY                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                               \r
+"Chile´¼§Q"                                                    CL                                              2G_WORLD                                        FCC TCF \r
+                                                                                                                                       \r
+"China¤¤°ê"                                                    CN                                              2G_WORLD                5G_FCC5         «H³¡?¡i2002¡j353?       \r
+                                                                                                               \r
+"Columbia­ô­Û¤ñ¨È"                                     CO                                              2G_WORLD                                        Voluntary       \r
+                                                                                                                       \r
+"Costa Rica­ô´µ¹F¾¤¥["                         CR                                              2G_WORLD                                        FCC TCF \r
+                                                                                                                       \r
+"Cyprus¶ë®ú¸ô´µ"                                       CY                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                               \r
+"Czech ±¶§J"                                           CZ                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                                       \r
+"Denmark¤¦³Á"                                          DK                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                               \r
+"Dominican Republic¦h©ú¥§¥[¦@©M°ê"     DO                                              2G_WORLD                                        FCC TCF \r
+                                                                                                               \r
+"Egypt®J¤Î"    EG      2G_WORLD                        CE T                                                                                            CF              \r
+                                                                                                               \r
+"El SalvadorÂĺ¸¥Ë¦h"                          SV                                              2G_WORLD                                        Voluntary       \r
+                                                                                                                       \r
+"Estonia·R¨F¥§¨È"                                      EE                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                               \r
+"FinlandªâÄõ"                                          FI                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                                       \r
+"Franceªk°ê"                                           FR                                                                              5G_E            TSI1    CE      \r
+                                                                                                                                       \r
+"Germany¼w°ê"                                          DE                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                                       \r
+"Greece §Æþ"                                          GR                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                               \r
+"GuamÃö®q"                                                     GU                                              2G_WORLD                                \r
+                                                                                                                               \r
+"Guatemala¥Ê¦a°¨©Ô"                                    GT                                              2G_WORLD                                \r
+                                                                                                                               \r
+"Haiti®ü¦a"                                                    HT                                              2G_WORLD                                        FCC TCF \r
+                                                                                                                               \r
+"Honduras§»³£©Ô´µ"                                     HN                                              2G_WORLD                                        FCC TCF \r
+                                                                                                                               \r
+"Hungary¦I¤ú§Q"                                                HU                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                                       \r
+"Iceland¦B®q"                                          IS                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                               \r
+"India¦L«×"                                                    IN                                              2G_WORLD                5G_FCC3         FCC/CE TCF      \r
+                                                                                                                                       \r
+"Ireland·Rº¸Äõ"                                                IE                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                                       \r
+"Israel¥H¦â¦C"                                         IL                                                                              5G_F            CC6     CE TCF  \r
+                                                                                                                                       \r
+"Italy¸q¤j§Q"                                          IT                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                               \r
+"Japan¤é¥»"                                                    JP                                              2G_MKK1                 5G_MKK1         MKK     MKK\r
+                                                                                                                                       \r
+"KoreaÁú°ê"                                                    KR                                              2G_WORLD                5G_KCC1         KCC     KCC\r
+                                                                                                                               \r
+"Latvia©Ô²æºû¨È"                                       LV                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                               \r
+"Lithuania¥ß³³©{"                                      LT                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                               \r
+"Luxembourg¿c´Ë³ù"                                     LU                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                               \r
+"Malaysia°¨¨Ó¦è¨È"                                     MY                                              2G_WORLD                                        Local Test      \r
+                                                                                                                               \r
+"Malta°¨º¸¥L"                                          MT                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                                       \r
+"Mexico¾¥¦è­ô"                                         MX                                              2G_WORLD                5G_FCC3         Local Test      \r
+                                                                                                                                       \r
+"Morocco¼¯¬¥­ô"                                                MA                                                                                                      CE TCF  \r
+                                                                                                                               \r
+"Netherlands²üÄõ"                                      NL                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                               \r
+"New Zealand¯Ã¦èÄõ"                                    NZ                                              2G_WORLD                5G_ETSI2                \r
+                                                                                                                               \r
+"Norway®¿«Â"                                           NO                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                                       \r
+"Panama¤Ú®³°¨ "                                                PA                                              2G_FCC1                                         Voluntary       \r
+                                                                                                                               \r
+"Philippinesµá«ß»«"                                    PH                                              2G_WORLD                                        FCC TCF \r
+                                                                                                                               \r
+"PolandªiÄõ"                                           PL                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                               \r
+"Portugal¸²µå¤ú"                                       PT                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                               \r
+"Romaniaù°¨¥§¨È"                                      RO                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                       \r
+"Russia«Xù´µ"                                         RU                                              2G_WORLD                5G_ETSI3        CE TCF  \r
+                                                                                                                       \r
+"Saudi Arabia¨F¦aªü©Ô§B"                       SA                                              2G_WORLD                                        CE TCF  \r
+                                                                                                                       \r
+"Singapore·s¥[©Y"                                      SG                                              2G_WORLD                                \r
+                                                                                                                               \r
+"Slovakia´µ¬¥¥ï§J"                                     SK                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                       \r
+"Slovenia´µ¬¥ºû¥§¨È"                           SI                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                       \r
+"South Africa«n«D"                                     ZA                                              2G_WORLD                                        CE TCF  \r
+                                                                                                                       \r
+"Spain¦è¯Z¤ú"                                          ES                                                                              5G_ETSI1        CE      \r
+                                                                                                                                       \r
+"Sweden·ç¨å"                                           SE                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                       \r
+"Switzerland·ç¤h"                                      CH                                              2G_WORLD                5G_ETSI1        CE      \r
+                                                                                                                       \r
+"Taiwan»OÆW"                                           TW                                              2G_FCC1                 5G_NCC1 NCC     \r
+                                                                                                                                       \r
+"Thailand®õ°ê"                                         TH                                              2G_WORLD                                        FCC/CE TCF      \r
+                                                                                                                                       \r
+"Turkey¤g¦Õ¨ä"                                         TR                                              2G_WORLD                                \r
+                                                                                                                                       \r
+"Ukraine¯Q§JÄõ"                                                UA                                              2G_WORLD                                        Local Test      \r
+                                                                                                                       \r
+"United Kingdom­^°ê"                           GB                                              2G_WORLD                5G_ETSI1        CE      ETSI\r
+                                                                                                                       \r
+"United States¬ü°ê"                                    US                                              2G_FCC1                 5G_FCC7         FCC     FCC\r
+                                                                                                                       \r
+"Venezuela©e¤º·ç©Ô"                                    VE                                              2G_WORLD                5G_FCC4         FCC TCF \r
+                                                                                                                       \r
+"Vietnam¶V«n"                                          VN                                              2G_WORLD                                        FCC/CE TCF      \r
+                                       \r
+\r
+\r
+*/\r
+\r
+// Counter abbervation.\r
+typedef enum _RT_COUNTRY_DEFINE_NUM\r
+{\r
+       RT_CTRY_AL,                             //      "Albaniaªüº¸¤Ú¥§¨È"                                     \r
+       RT_CTRY_DZ,             //  "Algeriaªüº¸¤Î§Q¨È"                                 \r
+       RT_CTRY_AG,             //  "Antigua & Barbuda¦w´£¥Ê®q&¤Ú¥¬¹F"  \r
+       RT_CTRY_AR,             //  "Argentinaªü®Ú§Ê"                                   \r
+       RT_CTRY_AM,             //  "Armenia¨È¬ü¥§¨È"                                   \r
+       RT_CTRY_AW,             //  "Arubaªü¾|¤Ú®q"                                             \r
+       RT_CTRY_AU,             //  "Australia¿D¬w"                                             \r
+       RT_CTRY_AT,             //  "Austria¶ø¦a§Q"                                             \r
+       RT_CTRY_AZ,             //  "Azerbaijanªü¶ë«ô¾Ê"                                \r
+       RT_CTRY_BS,             //  "Bahamas¤Ú«¢°¨"                                     \r
+       RT_CTRY_BB,             //  "Barbados¤Ú¤Ú¦h´µ"                          \r
+       RT_CTRY_BE,             //  "Belgium¤ñ§Q®É"                                     \r
+       RT_CTRY_BM,             //  "Bermuda¦Ê¼}¹F"                                     \r
+       RT_CTRY_BR,             //  "Brazil¤Ú¦è"                                                \r
+       RT_CTRY_BG,             //  "Bulgaria«O¥[§Q¨È"                          \r
+       RT_CTRY_CA,             //  "Canada¥[®³¤j"                                      \r
+       RT_CTRY_KY,             //  "Cayman Islands¶}°Ò¸s®q"                    \r
+       RT_CTRY_CL,             //  "Chile´¼§Q"                                         \r
+       RT_CTRY_CN,             //  "China¤¤°ê"                                         \r
+       RT_CTRY_CO,             //  "Columbia­ô­Û¤ñ¨È"                          \r
+       RT_CTRY_CR,             //  "Costa Rica­ô´µ¹F¾¤¥["                      \r
+       RT_CTRY_CY,             //  "Cyprus¶ë®ú¸ô´µ"                                    \r
+       RT_CTRY_CZ,             //  "Czech ±¶§J"                                                \r
+       RT_CTRY_DK,             //  "Denmark¤¦³Á"                                       \r
+       RT_CTRY_DO,             //  "Dominican Republic¦h©ú¥§¥[¦@©M°ê"  \r
+       RT_CTRY_CE,             //  "Egypt®J¤Î" EG      2G_WORLD                        \r
+       RT_CTRY_SV,             //  "El SalvadorÂĺ¸¥Ë¦h"                               \r
+       RT_CTRY_EE,             //  "Estonia·R¨F¥§¨È"                                   \r
+       RT_CTRY_FI,             //  "FinlandªâÄõ"                                               \r
+       RT_CTRY_FR,             //  "Franceªk°ê"                                                \r
+       RT_CTRY_DE,             //  "Germany¼w°ê"                                       \r
+       RT_CTRY_GR,             //  "Greece §Æþ"                                       \r
+       RT_CTRY_GU,             //  "GuamÃö®q"                                          \r
+       RT_CTRY_GT,             //  "Guatemala¥Ê¦a°¨©Ô"                         \r
+       RT_CTRY_HT,             //  "Haiti®ü¦a"                                         \r
+       RT_CTRY_HN,             //  "Honduras§»³£©Ô´µ"                          \r
+       RT_CTRY_HU,             //  "Hungary¦I¤ú§Q"                                     \r
+       RT_CTRY_IS,             //  "Iceland¦B®q"                                       \r
+       RT_CTRY_IN,             //  "India¦L«×"                                         \r
+       RT_CTRY_IE,             //  "Ireland·Rº¸Äõ"                                     \r
+       RT_CTRY_IL,             //  "Israel¥H¦â¦C"                                      \r
+       RT_CTRY_IT,             //  "Italy¸q¤j§Q"                                       \r
+       RT_CTRY_JP,             //  "Japan¤é¥»"                                         \r
+       RT_CTRY_KR,             //  "KoreaÁú°ê"                                         \r
+       RT_CTRY_LV,             //  "Latvia©Ô²æºû¨È"                                    \r
+       RT_CTRY_LT,             //  "Lithuania¥ß³³©{"                           \r
+       RT_CTRY_LU,             //  "Luxembourg¿c´Ë³ù"                          \r
+       RT_CTRY_MY,             //  "Malaysia°¨¨Ó¦è¨È"                          \r
+       RT_CTRY_MT,             //  "Malta°¨º¸¥L"                                       \r
+       RT_CTRY_MX,             //  "Mexico¾¥¦è­ô"                                      \r
+       RT_CTRY_MA,             //  "Morocco¼¯¬¥­ô"                                     \r
+       RT_CTRY_NL,             //  "Netherlands²üÄõ"                           \r
+       RT_CTRY_NZ,             //  "New Zealand¯Ã¦èÄõ"                         \r
+       RT_CTRY_NO,             //  "Norway®¿«Â"                                                \r
+       RT_CTRY_PA,             //  "Panama¤Ú®³°¨ "                                     \r
+       RT_CTRY_PH,             //  "Philippinesµá«ß»«"                         \r
+       RT_CTRY_PL,             //  "PolandªiÄõ"                                                \r
+       RT_CTRY_PT,             //  "Portugal¸²µå¤ú"                                    \r
+       RT_CTRY_RO,             //  "Romaniaù°¨¥§¨È"                           \r
+       RT_CTRY_RU,             //  "Russia«Xù´µ"                                      \r
+       RT_CTRY_SA,             //  "Saudi Arabia¨F¦aªü©Ô§B"                    \r
+       RT_CTRY_SG,             //  "Singapore·s¥[©Y"                           \r
+       RT_CTRY_SK,             //  "Slovakia´µ¬¥¥ï§J"                          \r
+       RT_CTRY_SI,             //  "Slovenia´µ¬¥ºû¥§¨È"                                \r
+       RT_CTRY_ZA,             //  "South Africa«n«D"                          \r
+       RT_CTRY_ES,             //  "Spain¦è¯Z¤ú"                                       \r
+       RT_CTRY_SE,             //  "Sweden·ç¨å"                                                \r
+       RT_CTRY_CH,             //  "Switzerland·ç¤h"                           \r
+       RT_CTRY_TW,             //  "Taiwan»OÆW"                                                \r
+       RT_CTRY_TH,             //  "Thailand®õ°ê"                                      \r
+       RT_CTRY_TR,             //  "Turkey¤g¦Õ¨ä"                                      \r
+       RT_CTRY_UA,             //  "Ukraine¯Q§JÄõ"                                     \r
+       RT_CTRY_GB,             //  "United Kingdom­^°ê"                                \r
+       RT_CTRY_US,             //  "United States¬ü°ê"                         \r
+       RT_CTRY_VE,             //  "Venezuela©e¤º·ç©Ô"                         \r
+       RT_CTRY_VN,             //  "Vietnam¶V«n"                                       \r
+       RT_CTRY_MAX,            //  \r
+       \r
+}RT_COUNTRY_NAME, *PRT_COUNTRY_NAME;\r
+    \r
+// Scan type including active and passive scan.\r
+typedef enum _RT_SCAN_TYPE_NEW\r
+{\r
+       SCAN_NULL,\r
+       SCAN_ACT,\r
+       SCAN_PAS,\r
+       SCAN_BOTH,\r
+}RT_SCAN_TYPE_NEW, *PRT_SCAN_TYPE_NEW;\r
+    \r
+\r
+// Power table sample.\r
+\r
+typedef struct _RT_CHNL_PLAN_LIMIT\r
+{\r
+       u2Byte  Chnl_Start;\r
+       u2Byte  Chnl_end;       \r
+       \r
+       u2Byte  Freq_Start;\r
+       u2Byte  Freq_end;       \r
+}RT_CHNL_PLAN_LIMIT, *PRT_CHNL_PLAN_LIMIT;\r
+\r
+    \r
+//    \r
+// 2.4G Regulatory Domains\r
+//\r
+typedef enum _RT_REGULATION_DOMAIN_2G\r
+{\r
+       RT_2G_NULL,   \r
+       RT_2G_WORLD,\r
+       RT_2G_ETSI1,\r
+       RT_2G_FCC1,\r
+       RT_2G_MKK1,\r
+       RT_2G_ETSI2     \r
+       \r
+}RT_REGULATION_2G, *PRT_REGULATION_2G;\r
+\r
+\r
+//typedef struct _RT_CHANNEL_BEHAVIOR\r
+//{\r
+//     u1Byte  Chnl;\r
+//     RT_SCAN_TYPE_NEW\r
+//     \r
+//}RT_CHANNEL_BEHAVIOR, *PRT_CHANNEL_BEHAVIOR;\r
+\r
+//typedef struct _RT_CHANNEL_PLAN_TYPE\r
+//{\r
+//     RT_CHANNEL_BEHAVIOR             \r
+//     u1Byte                                  Chnl_num;\r
+//}RT_CHNL_PLAN_TYPE, *PRT_CHNL_PLAN_TYPE;\r
+\r
+//\r
+// 2.4G Channel Number\r
+// Channel definition & number\r
+//\r
+#define CHNL_RT_2G_NULL \\r
+        {0}, 0\r
+#define CHNL_RT_2G_WORLD \\r
+        {1,2,3,4,5,6,7,8,9,10,11,12,13}, 13\r
+#define CHNL_RT_2G_WORLD_TEST \\r
+        {1,2,3,4,5,6,7,8,9,10,11,12,13}, 13\r
+\r
+#define CHNL_RT_2G_EFSI1 \\r
+        {1,2,3,4,5,6,7,8,9,10,11,12,13}, 13\r
+#define CHNL_RT_2G_FCC1 \\r
+        {1,2,3,4,5,6,7,8,9,10,11}, 11\r
+#define CHNL_RT_2G_MKK1 \\r
+        {1,2,3,4,5,6,7,8,9,10,11,12,13,14}, 14\r
+#define CHNL_RT_2G_ETSI2 \\r
+        {10,11,12,13}, 4\r
+\r
+//\r
+// 2.4G Channel Active or passive scan.\r
+//\r
+#define CHNL_RT_2G_NULL_SCAN_TYPE \\r
+        {SCAN_NULL}\r
+#define CHNL_RT_2G_WORLD_SCAN_TYPE \\r
+        {1,1,1,1,1,1,1,1,1,1,1,0,0}\r
+#define CHNL_RT_2G_EFSI1_SCAN_TYPE \\r
+        {1,1,1,1,1,1,1,1,1,1,1,1,1}\r
+#define CHNL_RT_2G_FCC1_SCAN_TYPE \\r
+        {1,1,1,1,1,1,1,1,1,1,1}\r
+#define CHNL_RT_2G_MKK1_SCAN_TYPE \\r
+        {1,1,1,1,1,1,1,1,1,1,1,1,1,1}\r
+#define CHNL_RT_2G_ETSI2_SCAN_TYPE \\r
+        {1,1,1,1}\r
+\r
+\r
+//\r
+// 2.4G Band & Frequency Section\r
+// Freqency start & end / band number\r
+//\r
+#define FREQ_RT_2G_NULL \\r
+        {0}, 0\r
+        // Passive scan CH 12, 13\r
+#define FREQ_RT_2G_WORLD \\r
+        {2412, 2472}, 1\r
+#define FREQ_RT_2G_EFSI1 \\r
+        {2412, 2472}, 1\r
+#define FREQ_RT_2G_FCC1 \\r
+        {2412, 2462}, 1\r
+#define FREQ_RT_2G_MKK1 \\r
+        {2412, 2484}, 1\r
+#define FREQ_RT_2G_ETSI2 \\r
+        {2457, 2472}, 1\r
+\r
+\r
+//    \r
+// 5G Regulatory Domains\r
+//\r
+typedef enum _RT_REGULATION_DOMAIN_5G\r
+{   \r
+       RT_5G_NULL,\r
+       RT_5G_WORLD,\r
+       RT_5G_ETSI1,\r
+       RT_5G_ETSI2,\r
+       RT_5G_ETSI3,\r
+       RT_5G_FCC1,     \r
+       RT_5G_FCC2,\r
+       RT_5G_FCC3,\r
+       RT_5G_FCC4,\r
+       RT_5G_FCC5,\r
+       RT_5G_FCC6,\r
+       RT_5G_FCC7,\r
+       RT_5G_IC1,\r
+       RT_5G_KCC1,\r
+       RT_5G_MKK1,\r
+       RT_5G_MKK2,\r
+       RT_5G_MKK3,\r
+       RT_5G_NCC1,\r
+       \r
+}RT_REGULATION_5G, *PRT_REGULATION_5G;\r
+\r
+//\r
+// 5G Channel Number\r
+//\r
+#define CHNL_RT_5G_NULL \\r
+        {0}, 0\r
+#define CHNL_RT_5G_WORLD \\r
+        {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140}, 19\r
+#define CHNL_RT_5G_ETSI1 \\r
+        {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
+#define CHNL_RT_5G_ETSI2 \\r
+        {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,149,153,157,161,165}, 22\r
+#define CHNL_RT_5G_ETSI3 \\r
+        {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
+#define CHNL_RT_5G_FCC1 \\r
+        {36,40,44,48,149,153,157,161,165}, 9\r
+#define CHNL_RT_5G_FCC2 \\r
+        {36,40,44,48,52,56,60,64,149,153,157,161,165}, 13\r
+#define CHNL_RT_5G_FCC3 \\r
+        {36,40,44,48,52,56,60,64,149,153,157,161}, 12\r
+#define CHNL_RT_5G_FCC4 \\r
+        {149,153,157,161,165}, 5\r
+#define CHNL_RT_5G_FCC5 \\r
+        {36,40,44,48,52,56,60,64}, 8\r
+#define CHNL_RT_5G_FCC6 \\r
+        {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20\r
+#define CHNL_RT_5G_FCC7 \\r
+        {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20\r
+#define CHNL_RT_5G_IC1 \\r
+        {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,149,153,157,161,165}, 20\r
+#define CHNL_RT_5G_KCC1 \\r
+        {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140}, 19\r
+#define CHNL_RT_5G_MKK1 \\r
+        {36,40,44,48,52,56,60,64}, 8\r
+#define CHNL_RT_5G_MKK2 \\r
+        {100,104,108,112,116,120,124,128,132,136,140}, 11\r
+#define CHNL_RT_5G_MKK3 \\r
+        {56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 24\r
+#define CHNL_RT_5G_NCC1 \\r
+        {56,60,64,149,153,157,161,165}, 8      \r
+\r
+//\r
+// 5G Channel Active or passive scan.\r
+//\r
+#define CHNL_RT_5G_NULL_SCAN_TYPE \\r
+        {SCAN_NULL}\r
+#define CHNL_RT_5G_WORLD_SCAN_TYPE \\r
+        {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}\r
+#define CHNL_RT_5G_ETSI1_SCAN_TYPE \\r
+        {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
+#define CHNL_RT_5G_ETSI2_SCAN_TYPE \\r
+        {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,149,153,157,161,165}, 22\r
+#define CHNL_RT_5G_ETSI3_SCAN_TYPE \\r
+        {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
+#define CHNL_RT_5G_FCC1_SCAN_TYPE \\r
+        {36,40,44,48,149,153,157,161,165}, 9\r
+#define CHNL_RT_5G_FCC2_SCAN_TYPE \\r
+        {36,40,44,48,52,56,60,64,149,153,157,161,165}, 13\r
+#define CHNL_RT_5G_FCC3_SCAN_TYPE \\r
+        {36,40,44,48,52,56,60,64,149,153,157,161}, 12\r
+#define CHNL_RT_5G_FCC4_SCAN_TYPE \\r
+        {149,153,157,161,165}, 5\r
+#define CHNL_RT_5G_FCC5_SCAN_TYPE \\r
+        {36,40,44,48,52,56,60,64}, 8\r
+#define CHNL_RT_5G_FCC6_SCAN_TYPE \\r
+        {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20\r
+#define CHNL_RT_5G_FCC7_SCAN_TYPE \\r
+        {36,40,44,48,52,56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 20\r
+#define CHNL_RT_5G_IC1_SCAN_TYPE \\r
+        {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,149,153,157,161,165}, 20\r
+#define CHNL_RT_5G_KCC1_SCAN_TYPE \\r
+        {36,40,44,48,52,56,60,64,100,104,108,112,116,120,124,128,132,136,140}, 19\r
+#define CHNL_RT_5G_MKK1_SCAN_TYPE \\r
+        {36,40,44,48,52,56,60,64}, 8\r
+#define CHNL_RT_5G_MKK2_SCAN_TYPE \\r
+        {100,104,108,112,116,120,124,128,132,136,140}, 11\r
+#define CHNL_RT_5G_MKK3_SCAN_TYPE \\r
+        {56,60,64,100,104,108,112,116,136,140,149,153,157,161,165}, 24\r
+#define CHNL_RT_5G_NCC1_SCAN_TYPE \\r
+        {56,60,64,149,153,157,161,165}, 8      \r
+\r
+//    \r
+// Global Regulation\r
+//\r
+typedef enum _RT_REGULATION_COMMON\r
+{\r
+       RT_WORLD,   \r
+       RT_FCC,   \r
+       RT_MKK,\r
+       RT_ETSI,\r
+       RT_IC,\r
+       RT_CE,\r
+       RT_NCC,\r
+       \r
+}RT_REGULATION_CMN, *PRT_REGULATION_CMN;\r
+\r
+\r
+\r
+//    \r
+// Special requirement for different regulation domain.\r
+// For internal test or customerize special request.\r
+//\r
+typedef enum _RT_CHNLPLAN_SREQ\r
+{\r
+       RT_SREQ_NA                                              = 0x0,\r
+       RT_SREQ_2G_ADHOC_11N                    = 0x00000001,\r
+       RT_SREQ_2G_ADHOC_11B                    = 0x00000002,\r
+       RT_SREQ_2G_ALL_PASS                             = 0x00000004,\r
+       RT_SREQ_2G_ALL_ACT                              = 0x00000008,   \r
+       RT_SREQ_5G_ADHOC_11N                    = 0x00000010,\r
+       RT_SREQ_5G_ADHOC_11AC                   = 0x00000020,\r
+       RT_SREQ_5G_ALL_PASS                             = 0x00000040,\r
+       RT_SREQ_5G_ALL_ACT                              = 0x00000080,\r
+       RT_SREQ_C1_PLAN                                 = 0x00000100,   \r
+       RT_SREQ_C2_PLAN                                 = 0x00000200,   \r
+       RT_SREQ_C3_PLAN                                 = 0x00000400,   \r
+       RT_SREQ_C4_PLAN                                 = 0x00000800,   \r
+       RT_SREQ_NFC_ON                                  = 0x00001000,   \r
+       RT_SREQ_MASK                                    = 0x0000FFFF,   /* Requirements bit mask */\r
+       \r
+}RT_CHNLPLAN_SREQ, *PRT_CHNLPLAN_SREQ;\r
+\r
+\r
+//\r
+// RT_COUNTRY_NAME & RT_REGULATION_2G & RT_REGULATION_5G transfer table\r
+// \r
+//\r
+typedef struct _RT_CHANNEL_PLAN_COUNTRY_TRANSFER_TABLE\r
+{   \r
+       //\r
+       // Define countery domain and corresponding \r
+       //      \r
+       RT_COUNTRY_NAME         Country_Enum;\r
+       char                            Country_Name[3];\r
+       \r
+       //char          Domain_Name[12];\r
+       RT_REGULATION_2G        Domain_2G;      \r
+\r
+       RT_REGULATION_5G        Domain_5G;      \r
+\r
+       RT_CHANNEL_DOMAIN       RtChDomain;\r
+       //u1Byte                Country_Area;\r
+    \r
+}RT_CHNL_CTRY_TBL, *PRT_CHNL_CTRY_TBL;\r
+    \r
+\r
+#define                RT_MAX_CHNL_NUM_2G              13\r
+#define                RT_MAX_CHNL_NUM_5G              44      \r
+\r
+// Power table sample.\r
+\r
+typedef struct _RT_CHNL_PLAN_PWR_LIMIT\r
+{\r
+       u2Byte  Chnl_Start;\r
+       u2Byte  Chnl_end;\r
+       u1Byte  dB_Max;\r
+       u2Byte  mW_Max;\r
+}RT_CHNL_PWR_LIMIT, *PRT_CHNL_PWR_LIMIT;\r
+\r
+\r
+#define                RT_MAX_BAND_NUM                 5\r
+\r
+typedef struct _RT_CHANNEL_PLAN_MAXPWR\r
+{\r
+//     STRING_T\r
+       RT_CHNL_PWR_LIMIT       Chnl[RT_MAX_BAND_NUM];\r
+       u1Byte                          Band_Useful_Num;\r
+\r
+       \r
+}RT_CHANNEL_PLAN_MAXPWR, *PRT_CHANNEL_PLAN_MAXPWR;\r
+\r
+\r
+//\r
+// Power By Rate Table.\r
+//\r
+\r
+\r
+\r
+typedef struct _RT_CHANNEL_PLAN_NEW\r
+{   \r
+       //\r
+       // Define countery domain and corresponding \r
+       //\r
+       //char          Country_Name[36];\r
+       //u1Byte                Country_Enum;\r
+       \r
+       //char          Domain_Name[12];\r
+\r
+       \r
+       PRT_CHNL_CTRY_TBL               pCtryTransfer;\r
+       \r
+       RT_CHANNEL_DOMAIN               RtChDomain;     \r
+\r
+       RT_REGULATION_2G                Domain_2G;\r
+\r
+       RT_REGULATION_5G                Domain_5G;      \r
+\r
+       RT_REGULATION_CMN               Regulator;\r
+\r
+       RT_CHNLPLAN_SREQ                ChnlSreq;\r
+       \r
+       //RT_CHNL_PLAN_LIMIT            RtChnl;\r
+               \r
+       u1Byte  Chnl2G[MAX_CHANNEL_NUM];                                // CHNL_RT_2G_WORLD\r
+       u1Byte  Len2G;\r
+       u1Byte  Chnl2GScanTp[MAX_CHANNEL_NUM];                  // CHNL_RT_2G_WORLD_SCAN_TYPE\r
+       //u1Byte        Freq2G[2];                                                              // FREQ_RT_2G_WORLD\r
+\r
+       u1Byte  Chnl5G[MAX_CHANNEL_NUM];                                \r
+       u1Byte  Len5G;\r
+       u1Byte  Chnl5GScanTp[MAX_CHANNEL_NUM];\r
+       //u1Byte        Freq2G[2];                                                              // FREQ_RT_2G_WORLD\r
+\r
+       RT_CHANNEL_PLAN_MAXPWR  ChnlMaxPwr;\r
+       \r
+    \r
+}RT_CHANNEL_PLAN_NEW, *PRT_CHANNEL_PLAN_NEW;\r
+    \r
+    \r
+#endif // __RT_CHANNELPLAN_H__\r
+    \r
+    \r
+    \r
+    \r
\r