Linux-libre 5.3.12-gnu
[librecmc/linux-libre.git] / drivers / staging / rtl8723bs / hal / HalPhyRf.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /******************************************************************************
3  *
4  * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.
5  *
6  ******************************************************************************/
7
8  #ifndef __HAL_PHY_RF_H__
9  #define __HAL_PHY_RF_H__
10
11 typedef enum _SPUR_CAL_METHOD {
12         PLL_RESET,
13         AFE_PHASE_SEL
14 } SPUR_CAL_METHOD;
15
16 typedef enum _PWRTRACK_CONTROL_METHOD {
17         BBSWING,
18         TXAGC,
19         MIX_MODE
20 } PWRTRACK_METHOD;
21
22 typedef void (*FuncSetPwr)(PDM_ODM_T, PWRTRACK_METHOD, u8, u8);
23 typedef void (*FuncIQK)(PDM_ODM_T, u8, u8, u8);
24 typedef void (*FuncLCK)(PDM_ODM_T);
25 typedef void (*FuncSwing)(PDM_ODM_T, u8 **, u8 **, u8 **, u8 **);
26
27 typedef struct _TXPWRTRACK_CFG {
28         u8 SwingTableSize_CCK;
29         u8 SwingTableSize_OFDM;
30         u8 Threshold_IQK;
31         u8 AverageThermalNum;
32         u8 RfPathCount;
33         u32 ThermalRegAddr;
34         FuncSetPwr ODM_TxPwrTrackSetPwr;
35         FuncIQK DoIQK;
36         FuncLCK PHY_LCCalibrate;
37         FuncSwing GetDeltaSwingTable;
38 } TXPWRTRACK_CFG, *PTXPWRTRACK_CFG;
39
40 void ConfigureTxpowerTrack(PDM_ODM_T pDM_Odm, PTXPWRTRACK_CFG pConfig);
41
42
43 void ODM_ClearTxPowerTrackingState(PDM_ODM_T pDM_Odm);
44
45 void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter);
46
47
48
49 #define ODM_TARGET_CHNL_NUM_2G_5G 59
50
51
52 u8 ODM_GetRightChnlPlaceforIQK(u8 chnl);
53
54
55 #endif  /*  #ifndef __HAL_PHY_RF_H__ */