1/* SPDX-License-Identifier: GPL-2.0 */ 2/* Copyright(c) 2009-2012 Realtek Corporation.*/ 3 4#ifndef __RTL92C_DM_H__ 5#define __RTL92C_DM_H__ 6 7#define HAL_DM_DIG_DISABLE BIT(0) 8#define HAL_DM_HIPWR_DISABLE BIT(1) 9 10#define OFDM_TABLE_LENGTH 37 11#define CCK_TABLE_LENGTH 33 12 13#define OFDM_TABLE_SIZE 37 14#define CCK_TABLE_SIZE 33 15 16#define BW_AUTO_SWITCH_HIGH_LOW 25 17#define BW_AUTO_SWITCH_LOW_HIGH 30 18 19#define DM_DIG_FA_UPPER 0x32 20#define DM_DIG_FA_LOWER 0x20 21#define DM_DIG_FA_TH0 0x20 22#define DM_DIG_FA_TH1 0x100 23#define DM_DIG_FA_TH2 0x200 24 25#define RXPATHSELECTION_SS_TH_LOW 30 26#define RXPATHSELECTION_DIFF_TH 18 27 28#define DM_RATR_STA_INIT 0 29#define DM_RATR_STA_HIGH 1 30#define DM_RATR_STA_MIDDLE 2 31#define DM_RATR_STA_LOW 3 32 33#define CTS2SELF_THVAL 30 34#define REGC38_TH 20 35 36#define WAIOTTHVAL 25 37 38#define TXHIGHPWRLEVEL_NORMAL 0 39#define TXHIGHPWRLEVEL_LEVEL1 1 40#define TXHIGHPWRLEVEL_LEVEL2 2 41#define TXHIGHPWRLEVEL_BT1 3 42#define TXHIGHPWRLEVEL_BT2 4 43 44#define DM_TYPE_BYFW 0 45#define DM_TYPE_BYDRIVER 1 46 47#define TX_POWER_NEAR_FIELD_THRESH_LVL2 74 48#define TX_POWER_NEAR_FIELD_THRESH_LVL1 67 49 50void rtl92c_dm_init(struct ieee80211_hw *hw); 51void rtl92c_dm_watchdog(struct ieee80211_hw *hw); 52void rtl92c_dm_write_dig(struct ieee80211_hw *hw); 53void rtl92c_dm_init_edca_turbo(struct ieee80211_hw *hw); 54void rtl92c_dm_check_txpower_tracking(struct ieee80211_hw *hw); 55void rtl92c_dm_init_rate_adaptive_mask(struct ieee80211_hw *hw); 56void rtl92c_dm_rf_saving(struct ieee80211_hw *hw, u8 bforce_in_normal); 57void rtl92c_dm_bt_coexist(struct ieee80211_hw *hw); 58void rtl92ce_dm_dynamic_txpower(struct ieee80211_hw *hw); 59 60#endif 61