From 62b516401f008d166b93ad2ea6f3012989b0cccb Mon Sep 17 00:00:00 2001
From: Dalton <dalton@ubports.com>
Date: Tue, 23 Jun 2020 20:54:12 -0500
Subject: [PATCH] UBPORTS SAUCE: Disable 8723cs power saving

The runtime power management features in the 8723cs firmware on the
PinePhone don't seem to work correctly. While we expect the chipset to
leave a low power state when it's time to send or receive data, instead
we get a delay of 10-20 seconds before any packets are sent.
---
 drivers/staging/rtl8723cs-new/os_dep/linux/os_intfs.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/staging/rtl8723cs-new/os_dep/linux/os_intfs.c b/drivers/staging/rtl8723cs-new/os_dep/linux/os_intfs.c
index 3e6ba0a0fd17..5bb850a4caf0 100644
--- a/drivers/staging/rtl8723cs-new/os_dep/linux/os_intfs.c
+++ b/drivers/staging/rtl8723cs-new/os_dep/linux/os_intfs.c
@@ -54,7 +54,12 @@ int rtw_adhoc_tx_pwr = 1;
 int rtw_soft_ap = 0;
 /* int smart_ps = 1; */
 #ifdef CONFIG_POWER_SAVING
-	int rtw_power_mgnt = PS_MODE_MAX;
+	// Setting PS_MODE_ACTIVE by default keeps the power saving code in the
+	// driver but works around an issue where the 8723cs won't leave Leisure
+	// Power Saving mode without long delays. Allows for testing different
+	// firmwares.
+	// int rtw_power_mgnt = PS_MODE_MAX;
+	int rtw_power_mgnt = PS_MODE_ACTIVE;
 	#ifdef CONFIG_IPS_LEVEL_2
 		int rtw_ips_mode = IPS_LEVEL_2;
 	#else
-- 
GitLab

