projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
78af3cc
)
rtw89: ps: fine tune polling interval while changing low power mode
author
Ping-Ke Shih
<pkshih@realtek.com>
Tue, 3 May 2022 11:59:57 +0000
(19:59 +0800)
committer
Kalle Valo
<kvalo@kernel.org>
Wed, 4 May 2022 05:32:04 +0000
(08:32 +0300)
By experiments, it spends ~45/1090~2480us to enter/leave low power mode,
so the old polling interval 1000us can waste time. Use smaller polling
interval depends on experimental results to reduce the time to transition
state.
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link:
https://lore.kernel.org/r/20220503120001.79272-5-pkshih@realtek.com
drivers/net/wireless/realtek/rtw89/mac.c
patch
|
blob
|
history
diff --git
a/drivers/net/wireless/realtek/rtw89/mac.c
b/drivers/net/wireless/realtek/rtw89/mac.c
index 05b94842fe6621fdf8263b3cc5fedbf9d1e54f7d..07f6634d56a013dd8e008a1030f47ddf169c14c5 100644
(file)
--- a/
drivers/net/wireless/realtek/rtw89/mac.c
+++ b/
drivers/net/wireless/realtek/rtw89/mac.c
@@
-1050,6
+1050,7
@@
static int rtw89_mac_check_cpwm_state(struct rtw89_dev *rtwdev,
void rtw89_mac_power_mode_change(struct rtw89_dev *rtwdev, bool enter)
{
enum rtw89_rpwm_req_pwr_state state;
+ unsigned long delay = enter ? 10 : 150;
int ret;
if (enter)
@@
-1059,7
+1060,7
@@
void rtw89_mac_power_mode_change(struct rtw89_dev *rtwdev, bool enter)
rtw89_mac_send_rpwm(rtwdev, state, false);
ret = read_poll_timeout_atomic(rtw89_mac_check_cpwm_state, ret, !ret,
-
1000
, 15000, false, rtwdev, state);
+
delay
, 15000, false, rtwdev, state);
if (ret)
rtw89_err(rtwdev, "firmware failed to ack for %s ps mode\n",
enter ? "entering" : "leaving");