net: wireless: rockchip: add rtl8822be pcie wifi driver
[firefly-linux-kernel-4.4.55.git] / drivers / net / wireless / rockchip_wlan / rtl8822be / hal / phydm / phydm_acs.h
diff --git a/drivers/net/wireless/rockchip_wlan/rtl8822be/hal/phydm/phydm_acs.h b/drivers/net/wireless/rockchip_wlan/rtl8822be/hal/phydm/phydm_acs.h
new file mode 100644 (file)
index 0000000..92efdf3
--- /dev/null
@@ -0,0 +1,106 @@
+/******************************************************************************\r
+ *\r
+ * Copyright(c) 2007 - 2011 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
+#ifndef        __PHYDMACS_H__\r
+#define    __PHYDMACS_H__\r
+\r
+#define ACS_VERSION    "1.1"   /*20150729 by YuChen*/\r
+#define CLM_VERSION "1.0"\r
+\r
+#define ODM_MAX_CHANNEL_2G                     14\r
+#define ODM_MAX_CHANNEL_5G                     24\r
+\r
+// For phydm_AutoChannelSelectSettingAP()\r
+#define STORE_DEFAULT_NHM_SETTING               0\r
+#define RESTORE_DEFAULT_NHM_SETTING             1\r
+#define ACS_NHM_SETTING                         2\r
+\r
+typedef struct _ACS_\r
+{\r
+       BOOLEAN         bForceACSResult;\r
+       u1Byte          CleanChannel_2G;\r
+       u1Byte          CleanChannel_5G;\r
+       u2Byte          Channel_Info_2G[2][ODM_MAX_CHANNEL_2G];         //Channel_Info[1]: Channel Score, Channel_Info[2]:Channel_Scan_Times\r
+       u2Byte          Channel_Info_5G[2][ODM_MAX_CHANNEL_5G]; \r
+\r
+#if ( DM_ODM_SUPPORT_TYPE & ODM_AP )    \r
+    u1Byte              ACS_Step;\r
+    // NHM Count 0-11\r
+    u1Byte              NHM_Cnt[14][11];\r
+\r
+    // AC-Series, for storing previous setting\r
+    u4Byte              Reg0x990; \r
+    u4Byte              Reg0x994;\r
+    u4Byte              Reg0x998;\r
+    u4Byte              Reg0x99C;\r
+    u1Byte              Reg0x9A0;   // u1Byte\r
+\r
+    // N-Series, for storing previous setting\r
+    u4Byte              Reg0x890; \r
+    u4Byte              Reg0x894;\r
+    u4Byte              Reg0x898;\r
+    u4Byte              Reg0x89C;\r
+    u1Byte              Reg0xE28;   // u1Byte\r
+#endif\r
+\r
+}ACS, *PACS;\r
+\r
+\r
+VOID\r
+odm_AutoChannelSelectInit(\r
+       IN              PVOID                   pDM_VOID\r
+);\r
+\r
+VOID\r
+odm_AutoChannelSelectReset(\r
+       IN              PVOID                   pDM_VOID\r
+);\r
+\r
+VOID\r
+odm_AutoChannelSelect(\r
+       IN              PVOID                   pDM_VOID,\r
+       IN              u1Byte                  Channel\r
+);\r
+\r
+u1Byte\r
+ODM_GetAutoChannelSelectResult(\r
+       IN              PVOID                   pDM_VOID,\r
+       IN              u1Byte                  Band\r
+);\r
+\r
+#if ( DM_ODM_SUPPORT_TYPE & ODM_AP )\r
+\r
+VOID\r
+phydm_AutoChannelSelectSettingAP(\r
+    IN  PVOID   pDM_VOID,\r
+    IN  u4Byte  Setting,             // 0: STORE_DEFAULT_NHM_SETTING; 1: RESTORE_DEFAULT_NHM_SETTING, 2: ACS_NHM_SETTING\r
+    IN  u4Byte  acs_step        \r
+);\r
+\r
+VOID\r
+phydm_GetNHMStatisticsAP(\r
+    IN  PVOID       pDM_VOID,\r
+    IN  u4Byte      idx,                // @ 2G, Real channel number = idx+1\r
+    IN  u4Byte      acs_step\r
+);\r
+\r
+#endif  //#if ( DM_ODM_SUPPORT_TYPE & ODM_AP )\r
+\r
+#endif  //#ifndef      __PHYDMACS_H__
\ No newline at end of file