net: wireless: rockchip: add rtl8822be pcie wifi driver
[firefly-linux-kernel-4.4.55.git] / drivers / net / wireless / rockchip_wlan / rtl8822be / hal / phydm / phydm_ccx.h
1 #ifndef __PHYDMCCX_H__\r
2 #define    __PHYDMCCX_H__\r
3 \r
4 #define CCX_EN 1\r
5 \r
6 #define SET_NHM_SETTING                 0\r
7 #define STORE_NHM_SETTING               1\r
8 #define RESTORE_NHM_SETTING     2\r
9 \r
10 /*\r
11 #define NHM_EXCLUDE_CCA                         0\r
12 #define NHM_INCLUDE_CCA                         1\r
13 #define NHM_EXCLUDE_TXON                        0\r
14 #define NHM_INCLUDE_TXON                        1\r
15 */\r
16 \r
17 typedef enum NHM_inexclude_cca {\r
18         NHM_EXCLUDE_CCA,\r
19         NHM_INCLUDE_CCA\r
20 }NHM_INEXCLUDE_CCA;\r
21 \r
22 typedef enum NHM_inexclude_txon {\r
23         NHM_EXCLUDE_TXON,\r
24         NHM_INCLUDE_TXON\r
25 }NHM_INEXCLUDE_TXON;\r
26 \r
27 \r
28 typedef struct _CCX_INFO{\r
29 \r
30         /*Settings*/\r
31         u1Byte                                  NHM_th[11];\r
32         u2Byte                                  NHM_period;                             /* 4us per unit */\r
33         u2Byte                                  CLM_period;                             /* 4us per unit */\r
34         NHM_INEXCLUDE_TXON              NHM_inexclude_txon;\r
35         NHM_INEXCLUDE_CCA               NHM_inexclude_cca;\r
36 \r
37         /*Previous Settings*/\r
38         u1Byte                                  NHM_th_restore[11];\r
39         u2Byte                                  NHM_period_restore;                             /* 4us per unit */\r
40         u2Byte                                  CLM_period_restore;                             /* 4us per unit */\r
41         NHM_INEXCLUDE_TXON              NHM_inexclude_txon_restore;\r
42         NHM_INEXCLUDE_CCA               NHM_inexclude_cca_restore;\r
43         \r
44         /*Report*/\r
45         u1Byte          NHM_result[12];\r
46         u2Byte          NHM_duration;\r
47         u2Byte          CLM_result;\r
48 \r
49 \r
50         BOOLEAN         echo_NHM_en;\r
51         BOOLEAN         echo_CLM_en;\r
52         u1Byte          echo_IGI;\r
53         \r
54 }CCX_INFO, *PCCX_INFO;\r
55 \r
56 /*NHM*/\r
57 \r
58 VOID\r
59 phydm_NHMsetting(\r
60         IN              PVOID           pDM_VOID,\r
61         u1Byte  NHMsetting\r
62 );\r
63 \r
64 VOID\r
65 phydm_NHMtrigger(\r
66         IN              PVOID           pDM_VOID\r
67 );\r
68 \r
69 VOID\r
70 phydm_getNHMresult(\r
71         IN              PVOID           pDM_VOID\r
72 );\r
73 \r
74 BOOLEAN\r
75 phydm_checkNHMready(\r
76         IN              PVOID           pDM_VOID\r
77 );\r
78 \r
79 /*CLM*/\r
80 \r
81 VOID\r
82 phydm_CLMsetting(\r
83         IN              PVOID                   pDM_VOID\r
84 );\r
85 \r
86 VOID\r
87 phydm_CLMtrigger(\r
88         IN              PVOID                   pDM_VOID\r
89 );\r
90 \r
91 BOOLEAN\r
92 phydm_checkCLMready(\r
93         IN              PVOID                   pDM_VOID\r
94 );\r
95 \r
96 VOID\r
97 phydm_getCLMresult(\r
98         IN              PVOID                   pDM_VOID\r
99 );\r
100 \r
101 \r
102 #endif\r