1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 #ifndef __HAL_PHY_RF_H__
17 #define __HAL_PHY_RF_H__
18
19typedef enum _SPUR_CAL_METHOD {
20 PLL_RESET,
21 AFE_PHASE_SEL
22} SPUR_CAL_METHOD;
23
24typedef enum _PWRTRACK_CONTROL_METHOD {
25 BBSWING,
26 TXAGC,
27 MIX_MODE
28} PWRTRACK_METHOD;
29
30typedef void (*FuncSetPwr)(PDM_ODM_T, PWRTRACK_METHOD, u8, u8);
31typedef void (*FuncIQK)(PDM_ODM_T, u8, u8, u8);
32typedef void (*FuncLCK)(PDM_ODM_T);
33typedef void (*FuncSwing)(PDM_ODM_T, u8 **, u8 **, u8 **, u8 **);
34
35typedef struct _TXPWRTRACK_CFG {
36 u8 SwingTableSize_CCK;
37 u8 SwingTableSize_OFDM;
38 u8 Threshold_IQK;
39 u8 AverageThermalNum;
40 u8 RfPathCount;
41 u32 ThermalRegAddr;
42 FuncSetPwr ODM_TxPwrTrackSetPwr;
43 FuncIQK DoIQK;
44 FuncLCK PHY_LCCalibrate;
45 FuncSwing GetDeltaSwingTable;
46} TXPWRTRACK_CFG, *PTXPWRTRACK_CFG;
47
48void ConfigureTxpowerTrack(PDM_ODM_T pDM_Odm, PTXPWRTRACK_CFG pConfig);
49
50
51void ODM_ClearTxPowerTrackingState(PDM_ODM_T pDM_Odm);
52
53void ODM_TXPowerTrackingCallback_ThermalMeter(struct adapter *Adapter);
54
55
56
57#define ODM_TARGET_CHNL_NUM_2G_5G 59
58
59
60u8 ODM_GetRightChnlPlaceforIQK(u8 chnl);
61
62
63#endif
64