1 /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
2 /* Copyright(c) 2007 - 2011 Realtek Corporation. */
3 
4 #ifndef __RTL8188E_DM_H__
5 #define __RTL8188E_DM_H__
6 
7 enum{
8 	UP_LINK,
9 	DOWN_LINK,
10 };
11 /*  duplicate code,will move to ODM ######### */
12 #define IQK_MAC_REG_NUM		4
13 #define IQK_ADDA_REG_NUM		16
14 #define IQK_BB_REG_NUM			9
15 #define HP_THERMAL_NUM		8
16 /*  duplicate code,will move to ODM ######### */
17 struct	dm_priv {
18 	u8	DM_Type;
19 	u8	DMFlag;
20 	u8	InitDMFlag;
21 	u32	InitODMFlag;
22 
23 	/*  Upper and Lower Signal threshold for Rate Adaptive*/
24 	int	UndecoratedSmoothedPWDB;
25 	int	UndecoratedSmoothedCCK;
26 	int	EntryMinUndecoratedSmoothedPWDB;
27 	int	EntryMaxUndecoratedSmoothedPWDB;
28 	int	MinUndecoratedPWDBForDM;
29 	int	LastMinUndecoratedPWDBForDM;
30 
31 	/* for High Power */
32 	u8 bDynamicTxPowerEnable;
33 	u8 LastDTPLvl;
34 	u8 DynamicTxHighPowerLvl;/* Tx Power Control for Near/Far Range */
35 	u8	PowerIndex_backup[6];
36 };
37 
38 void rtl8188e_init_dm_priv(struct adapter *adapt);
39 void rtl8188e_deinit_dm_priv(struct adapter *adapt);
40 void rtl8188e_InitHalDm(struct adapter *adapt);
41 void rtl8188e_HalDmWatchDog(struct adapter *adapt);
42 
43 void AntDivCompare8188E(struct adapter *adapt, struct wlan_bssid_ex *dst,
44 			struct wlan_bssid_ex *src);
45 u8 AntDivBeforeLink8188E(struct adapter *adapt);
46 
47 #endif
48