pmaports/main/linux-postmarketos-allwinner/0003-Disable-8723cs-power-saving.patch
Oliver Smith dcc0a8c855
main/linux-postmarketos-allwinner: upgrade to 5.9.1_git20201019 (megi's tree) (MR 1614)
Switch from the 5.8.x kernel with allwinner specific patches to megi's
5.9 based tree. He drives the PinePhone related kernel development
forward like no other, his tree and changes are well documented on
xnux.eu, and he frequently publishes tested "build this one" commits with
the latest improvements. It makes a faster and less time consuming
workflow to simply package these versions (after a smoke test) into
postmarketOS edge, and after some time to catch possible regressions
ship the same version in postmarketOS stable.

This kernel should make HDMI work for most people, and improve call
quality (thanks to smaeul's patches, which are integrated into megi's
tree).

Kernel config changes:
* Enable MODEM_POWER in the kernel config, among other improvements this
  allows us to get rid of the 30s delay on power off.
* Enable CONFIG_DRM_PANEL_ILITEK_ILI9881C (new PineTab panel)
* Enable CONFIG_ZRAM
* Enable CONFIG_HID_MULTITOUCH

Related: https://xnux.eu/devices/feature/modem-pp.html#toc-modem-power-driver
Changelog: https://megous.com/git/linux/tag/?h=orange-pi-5.9-20201019-1553
Co-Authored-By: Martijn Braam <martijn@brixit.nl>
Co-Authored-By: Clayton Craft <clayton@craftyguy.net>
2020-10-20 18:02:17 +02:00

34 lines
1.4 KiB
Diff

From 1864d7b1990cc68c21bd43b5f96760a9e8f04e2c Mon Sep 17 00:00:00 2001
From: Dalton <dalton@ubports.com>
Date: Tue, 23 Jun 2020 20:54:12 -0500
Subject: [PATCH] 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
--
2.25.4