18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci/* Copyright(c) 2009-2012 Realtek Corporation.*/ 38c2ecf20Sopenharmony_ci 48c2ecf20Sopenharmony_ci#ifndef __RTL92C_DM_H__ 58c2ecf20Sopenharmony_ci#define __RTL92C_DM_H__ 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_ci#define HAL_DM_DIG_DISABLE BIT(0) 88c2ecf20Sopenharmony_ci#define HAL_DM_HIPWR_DISABLE BIT(1) 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_ci#define OFDM_TABLE_LENGTH 37 118c2ecf20Sopenharmony_ci#define CCK_TABLE_LENGTH 33 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ci#define OFDM_TABLE_SIZE 37 148c2ecf20Sopenharmony_ci#define CCK_TABLE_SIZE 33 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_ci#define BW_AUTO_SWITCH_HIGH_LOW 25 178c2ecf20Sopenharmony_ci#define BW_AUTO_SWITCH_LOW_HIGH 30 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci#define DM_DIG_FA_UPPER 0x32 208c2ecf20Sopenharmony_ci#define DM_DIG_FA_LOWER 0x20 218c2ecf20Sopenharmony_ci#define DM_DIG_FA_TH0 0x20 228c2ecf20Sopenharmony_ci#define DM_DIG_FA_TH1 0x100 238c2ecf20Sopenharmony_ci#define DM_DIG_FA_TH2 0x200 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ci#define RXPATHSELECTION_SS_TH_LOW 30 268c2ecf20Sopenharmony_ci#define RXPATHSELECTION_DIFF_TH 18 278c2ecf20Sopenharmony_ci 288c2ecf20Sopenharmony_ci#define DM_RATR_STA_INIT 0 298c2ecf20Sopenharmony_ci#define DM_RATR_STA_HIGH 1 308c2ecf20Sopenharmony_ci#define DM_RATR_STA_MIDDLE 2 318c2ecf20Sopenharmony_ci#define DM_RATR_STA_LOW 3 328c2ecf20Sopenharmony_ci 338c2ecf20Sopenharmony_ci#define CTS2SELF_THVAL 30 348c2ecf20Sopenharmony_ci#define REGC38_TH 20 358c2ecf20Sopenharmony_ci 368c2ecf20Sopenharmony_ci#define WAIOTTHVAL 25 378c2ecf20Sopenharmony_ci 388c2ecf20Sopenharmony_ci#define TXHIGHPWRLEVEL_NORMAL 0 398c2ecf20Sopenharmony_ci#define TXHIGHPWRLEVEL_LEVEL1 1 408c2ecf20Sopenharmony_ci#define TXHIGHPWRLEVEL_LEVEL2 2 418c2ecf20Sopenharmony_ci#define TXHIGHPWRLEVEL_BT1 3 428c2ecf20Sopenharmony_ci#define TXHIGHPWRLEVEL_BT2 4 438c2ecf20Sopenharmony_ci 448c2ecf20Sopenharmony_ci#define DM_TYPE_BYFW 0 458c2ecf20Sopenharmony_ci#define DM_TYPE_BYDRIVER 1 468c2ecf20Sopenharmony_ci 478c2ecf20Sopenharmony_ci#define TX_POWER_NEAR_FIELD_THRESH_LVL2 74 488c2ecf20Sopenharmony_ci#define TX_POWER_NEAR_FIELD_THRESH_LVL1 67 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_civoid rtl92c_dm_init(struct ieee80211_hw *hw); 518c2ecf20Sopenharmony_civoid rtl92c_dm_watchdog(struct ieee80211_hw *hw); 528c2ecf20Sopenharmony_civoid rtl92c_dm_write_dig(struct ieee80211_hw *hw); 538c2ecf20Sopenharmony_civoid rtl92c_dm_init_edca_turbo(struct ieee80211_hw *hw); 548c2ecf20Sopenharmony_civoid rtl92c_dm_check_txpower_tracking(struct ieee80211_hw *hw); 558c2ecf20Sopenharmony_civoid rtl92c_dm_init_rate_adaptive_mask(struct ieee80211_hw *hw); 568c2ecf20Sopenharmony_civoid rtl92c_dm_rf_saving(struct ieee80211_hw *hw, u8 bforce_in_normal); 578c2ecf20Sopenharmony_civoid rtl92c_dm_bt_coexist(struct ieee80211_hw *hw); 588c2ecf20Sopenharmony_civoid rtl92ce_dm_dynamic_txpower(struct ieee80211_hw *hw); 598c2ecf20Sopenharmony_ci 608c2ecf20Sopenharmony_ci#endif 61