net: wireless: rockchip_wlan: add rtl8723bs support
[firefly-linux-kernel-4.4.55.git] / drivers / net / wireless / rockchip_wlan / rtl8723bs / hal / phydm / halphyrf_ce.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 __HAL_PHY_RF_H__\r
22  #define __HAL_PHY_RF_H__\r
23  \r
24 /*#include "phydm_kfree.h"*/\r
25 #if (RTL8814A_SUPPORT == 1)\r
26 #include "rtl8814a/phydm_iqk_8814a.h"\r
27 #endif\r
28 \r
29 #if (RTL8822B_SUPPORT == 1)\r
30 #include "rtl8822b/phydm_iqk_8822b.h"\r
31 #endif\r
32 #include "phydm_powertracking_ce.h"\r
33 \r
34 \r
35 typedef enum _SPUR_CAL_METHOD {\r
36         PLL_RESET,\r
37         AFE_PHASE_SEL\r
38 } SPUR_CAL_METHOD;\r
39 \r
40 typedef enum _PWRTRACK_CONTROL_METHOD {\r
41         BBSWING,\r
42         TXAGC,\r
43         MIX_MODE,\r
44         TSSI_MODE\r
45 } PWRTRACK_METHOD;\r
46 \r
47 typedef VOID    (*FuncSetPwr)(PVOID, PWRTRACK_METHOD, u1Byte, u1Byte);\r
48 typedef VOID(*FuncIQK)(PVOID, u1Byte, u1Byte, u1Byte);\r
49 typedef VOID    (*FuncLCK)(PVOID);\r
50 typedef VOID    (*FuncSwing)(PVOID, pu1Byte*, pu1Byte*, pu1Byte*, pu1Byte*);\r
51 typedef VOID    (*FuncSwing8814only)(PVOID, pu1Byte*, pu1Byte*, pu1Byte*, pu1Byte*);\r
52 \r
53 typedef struct _TXPWRTRACK_CFG {\r
54         u1Byte          SwingTableSize_CCK;     \r
55         u1Byte          SwingTableSize_OFDM;\r
56         u1Byte          Threshold_IQK;  \r
57         u1Byte          Threshold_DPK;\r
58         u1Byte          AverageThermalNum;\r
59         u1Byte          RfPathCount;\r
60         u4Byte          ThermalRegAddr; \r
61         FuncSetPwr      ODM_TxPwrTrackSetPwr;\r
62         FuncIQK         DoIQK;\r
63         FuncLCK         PHY_LCCalibrate;\r
64         FuncSwing       GetDeltaSwingTable;\r
65         FuncSwing8814only       GetDeltaSwingTable8814only;\r
66 } TXPWRTRACK_CFG, *PTXPWRTRACK_CFG;\r
67 \r
68 void ConfigureTxpowerTrack(\r
69         IN              PVOID                                   pDM_VOID,\r
70         OUT     PTXPWRTRACK_CFG pConfig\r
71         );\r
72 \r
73 \r
74 VOID\r
75 ODM_ClearTxPowerTrackingState(\r
76         IN              PVOID                                   pDM_VOID\r
77         );\r
78 \r
79 VOID\r
80 ODM_TXPowerTrackingCallback_ThermalMeter(\r
81 #if (DM_ODM_SUPPORT_TYPE & ODM_AP)\r
82         IN              PVOID                                   pDM_VOID\r
83 #else\r
84         IN PADAPTER     Adapter\r
85 #endif\r
86         );\r
87 \r
88 \r
89 \r
90 #define ODM_TARGET_CHNL_NUM_2G_5G       59\r
91 \r
92 \r
93 VOID\r
94 ODM_ResetIQKResult(\r
95         IN              PVOID                                   pDM_VOID\r
96 );\r
97 u1Byte \r
98 ODM_GetRightChnlPlaceforIQK(\r
99     IN u1Byte chnl\r
100 );\r
101 \r
102 void phydm_rf_init(     IN              PVOID                                   pDM_VOID);\r
103 void phydm_rf_watchdog( IN              PVOID                                   pDM_VOID);\r
104                                                                 \r
105 #endif  // #ifndef __HAL_PHY_RF_H__\r
106 \r