1 /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */ 2 /* Copyright(c) 2018-2019 Realtek Corporation 3 */ 4 5 #ifndef __RTW_PS_H_ 6 #define __RTW_PS_H_ 7 8 #define RTW_LPS_THRESHOLD 50 9 10 #define POWER_MODE_ACK BIT(6) 11 #define POWER_MODE_PG BIT(4) 12 #define POWER_TX_WAKE BIT(1) 13 #define POWER_MODE_LCLK BIT(0) 14 15 #define LEAVE_LPS_TRY_CNT 5 16 #define LEAVE_LPS_TIMEOUT msecs_to_jiffies(100) 17 18 int rtw_enter_ips(struct rtw_dev *rtwdev); 19 int rtw_leave_ips(struct rtw_dev *rtwdev); 20 21 void rtw_power_mode_change(struct rtw_dev *rtwdev, bool enter); 22 void rtw_enter_lps(struct rtw_dev *rtwdev, u8 port_id); 23 void rtw_leave_lps(struct rtw_dev *rtwdev); 24 void rtw_leave_lps_deep(struct rtw_dev *rtwdev); 25 enum rtw_lps_deep_mode rtw_get_lps_deep_mode(struct rtw_dev *rtwdev); 26 void rtw_recalc_lps(struct rtw_dev *rtwdev, struct ieee80211_vif *new_vif); 27 28 #endif 29