rtl8188eu: update driver to v4.3.0.8_13968.20150417
[firefly-linux-kernel-4.4.55.git] / drivers / net / wireless / rockchip_wlan / rtl8188eu / hal / OUTSRC / PhyDM_Adaptivity.h
1 /******************************************************************************\r
2  *\r
3  * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.\r
4  *                                        \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
8  *\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
12  * more details.\r
13  *\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
17  *\r
18  *\r
19  ******************************************************************************/\r
20  \r
21 #ifndef __PHYDMADAPTIVITY_H__\r
22 #define    __PHYDMADAPTIVITY_H__\r
23 \r
24 #define ADAPTIVITY_VERSION      "8.5.1"\r
25 \r
26 #if (DM_ODM_SUPPORT_TYPE & (ODM_WIN))\r
27 typedef enum _tag_PhyDM_REGULATION_Type {\r
28         REGULATION_FCC = 0,\r
29         REGULATION_MKK = 1,\r
30         REGULATION_ETSI = 2,\r
31         REGULATION_WW = 3,      \r
32         \r
33         MAX_REGULATION_NUM = 4\r
34 } PhyDM_REGULATION_TYPE;\r
35 #endif\r
36 \r
37 \r
38 typedef enum tag_PhyDM_TRx_MUX_Type\r
39 {\r
40         PhyDM_SHUTDOWN                  = 0,\r
41         PhyDM_STANDBY_MODE              = 1,\r
42         PhyDM_TX_MODE                   = 2,\r
43         PhyDM_RX_MODE                   = 3\r
44 }PhyDM_Trx_MUX_Type;\r
45 \r
46 typedef enum tag_PhyDM_MACEDCCA_Type\r
47 {\r
48         PhyDM_IGNORE_EDCCA                      = 0,\r
49         PhyDM_DONT_IGNORE_EDCCA = 1\r
50 }PhyDM_MACEDCCA_Type;\r
51 \r
52 typedef struct _ADAPTIVITY_STATISTICS {\r
53         s1Byte                  TH_L2H_ini_mode2;\r
54         s1Byte                  TH_EDCCA_HL_diff_mode2;\r
55         s1Byte                  TH_EDCCA_HL_diff_backup;\r
56         s1Byte                  IGI_Base;\r
57         u1Byte                  IGI_target;\r
58         u1Byte                  NHMWait;\r
59         s1Byte                  H2L_lb;\r
60         s1Byte                  L2H_lb;\r
61         BOOLEAN                 bFirstLink;\r
62         BOOLEAN                 bCheck;\r
63         BOOLEAN                 DynamicLinkAdaptivity;\r
64         u1Byte                  APNumTH;\r
65 } ADAPTIVITY_STATISTICS, *PADAPTIVITY_STATISTICS;\r
66 \r
67 VOID\r
68 Phydm_CheckAdaptivity(\r
69         IN              PVOID                   pDM_VOID\r
70         );\r
71 \r
72 VOID\r
73 Phydm_CheckEnvironment(\r
74         IN              PVOID                                   pDM_VOID\r
75         );\r
76 \r
77 VOID\r
78 Phydm_NHMCounterStatisticsInit(\r
79         IN              PVOID                                   pDM_VOID\r
80         );\r
81 \r
82 VOID\r
83 Phydm_NHMCounterStatistics(\r
84         IN              PVOID                                   pDM_VOID\r
85         );\r
86 \r
87 VOID\r
88 Phydm_NHMCounterStatisticsReset(\r
89         IN              PVOID                   pDM_VOID\r
90 );\r
91 \r
92 VOID\r
93 Phydm_GetNHMCounterStatistics(\r
94         IN              PVOID                   pDM_VOID\r
95 );\r
96 \r
97 VOID\r
98 Phydm_MACEDCCAState(\r
99         IN      PVOID                                   pDM_VOID,\r
100         IN      PhyDM_MACEDCCA_Type             State\r
101 );\r
102 \r
103 VOID\r
104 Phydm_SetEDCCAThreshold(\r
105         IN              PVOID           pDM_VOID,\r
106         IN              s1Byte          H2L,\r
107         IN              s1Byte          L2H\r
108 );\r
109 \r
110 VOID\r
111 Phydm_SetTRxMux(\r
112         IN              PVOID                   pDM_VOID,\r
113         IN              PhyDM_Trx_MUX_Type                      txMode,\r
114         IN              PhyDM_Trx_MUX_Type                      rxMode\r
115 );      \r
116 \r
117 BOOLEAN\r
118 Phydm_CalNHMcnt(\r
119         IN              PVOID           pDM_VOID\r
120 );\r
121 \r
122 VOID\r
123 Phydm_SearchPwdBLowerBound(\r
124         IN              PVOID                                   pDM_VOID\r
125 );\r
126 \r
127 VOID \r
128 Phydm_AdaptivityInit(\r
129         IN              PVOID                                   pDM_VOID\r
130         );\r
131 \r
132 VOID\r
133 Phydm_Adaptivity(\r
134         IN              PVOID                                   pDM_VOID,\r
135         IN              u1Byte                                  IGI\r
136         );\r
137 \r
138 #if (DM_ODM_SUPPORT_TYPE == ODM_WIN)\r
139 VOID\r
140 Phydm_DisableEDCCA(\r
141         IN              PVOID                                   pDM_VOID\r
142 );\r
143 \r
144 VOID\r
145 Phydm_DynamicEDCCA(\r
146         IN              PVOID                                   pDM_VOID\r
147 );\r
148 \r
149 VOID\r
150 Phydm_AdaptivityBSOD(\r
151         IN              PVOID                                   pDM_VOID\r
152 );\r
153 \r
154 #endif\r
155 \r
156 \r
157 #endif\r