ef07bba0119f4c1e99f89c3b0741ce8403524cac
[firefly-linux-kernel-4.4.55.git] / drivers / net / wireless / rockchip_wlan / rtl8723bs / hal / OUTSRC / phydm_RXHP.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 #ifndef __PHYDMRXHP_H__\r
21 #define    __PHYDMRXHP_H__\r
22 \r
23 #define RXHP_VERSION    "1.0"\r
24 \r
25 #if (DM_ODM_SUPPORT_TYPE == ODM_WIN)\r
26 \r
27 #define AFH_PSD         1       //0:normal PSD scan, 1: only do 20 pts PSD\r
28 #define MODE_40M                0       //0:20M, 1:40M\r
29 #define PSD_TH2         3  \r
30 #define PSD_CHMIN               20   // Minimum channel number for BT AFH\r
31 #define SIR_STEP_SIZE   3\r
32 #define   Smooth_Size_1         5\r
33 #define Smooth_TH_1     3\r
34 #define   Smooth_Size_2         10\r
35 #define Smooth_TH_2     4\r
36 #define   Smooth_Size_3         20\r
37 #define Smooth_TH_3     4\r
38 #define   Smooth_Step_Size 5\r
39 #define Adaptive_SIR    1\r
40 #define PSD_RESCAN              4\r
41 #define PSD_SCAN_INTERVAL       700 //ms\r
42 \r
43 typedef struct _RX_High_Power_\r
44 {\r
45         u1Byte          RXHP_flag;\r
46         u1Byte          PSD_func_trigger;\r
47         u1Byte          PSD_bitmap_RXHP[80];\r
48         u1Byte          Pre_IGI;\r
49         u1Byte          Cur_IGI;\r
50         u1Byte          Pre_pw_th;\r
51         u1Byte          Cur_pw_th;\r
52         BOOLEAN         First_time_enter;\r
53         BOOLEAN         RXHP_enable;\r
54         u1Byte          TP_Mode;\r
55         RT_TIMER        PSDTimer;\r
56         #if USE_WORKITEM\r
57         RT_WORK_ITEM            PSDTimeWorkitem;\r
58         #endif\r
59 }RXHP_T, *pRXHP_T;\r
60 \r
61 #define dm_PSDMonitorCallback   odm_PSDMonitorCallback\r
62 VOID    odm_PSDMonitorCallback(PRT_TIMER                pTimer);\r
63 \r
64 VOID
65 odm_PSDMonitorInit(
66         IN              PVOID                   pDM_VOID\r
67         );\r
68 \r
69 void    odm_RXHPInit(
70         IN              PVOID                   pDM_VOID);\r
71 \r
72 void odm_RXHP(
73         IN              PVOID                   pDM_VOID);\r
74 \r
75 VOID
76 odm_PSD_RXHPCallback(
77         PRT_TIMER               pTimer
78 );\r
79 \r
80  VOID\r
81 ODM_PSDDbgControl(
82         IN      PADAPTER        Adapter,
83         IN      u4Byte          mode,
84         IN      u4Byte          btRssi
85         );\r
86 \r
87  VOID\r
88 odm_PSD_RXHPCallback(
89         PRT_TIMER               pTimer
90 );\r
91 \r
92 VOID
93 odm_PSD_RXHPWorkitemCallback(
94     IN PVOID            pContext
95     );\r
96 \r
97 VOID
98 odm_PSDMonitorWorkItemCallback(
99     IN PVOID            pContext
100     );\r
101 \r
102  #endif\r
103 \r
104  #endif\r
105