armbian-build/patch/kernel/archive/sunxi-5.15/megous/drm-panel-st7703-Fix-power-off-sequence.patch
The-going 33c413c679
Patches megous 5.15.5 (#3295)
* Rework patches for sunxi 5.15.4

* Rework patches sunxi for 5.15.5

* Kernel switch tag=v5.15.5 for sunxi EDGE

* Temporarily disabled, requires rework.

drivers/clk/sunxi-ng/sun8i-de33.c: In function ‘sunxi_de33_clk_probe’:
drivers/clk/sunxi-ng/sun8i-de33.c:155:8:
 error: implicit declaration of function ‘sunxi_ccu_probe’;
 did you mean ‘of_sunxi_ccu_probe’? [-Werror=implicit-function-declarati>
  ret = sunxi_ccu_probe(pdev->dev.of_node, reg, ccu_desc);
        ^~~~~~~~~~~~~~~
        of_sunxi_ccu_probe
cc1: some warnings being treated as errors
make[3]: *** [scripts/Makefile.build:277:
         drivers/clk/sunxi-ng/sun8i-de33.o] Error 1
make[2]: *** [scripts/Makefile.build:540: drivers/clk/sunxi-ng] Error 2

* Correct the comment.
2021-11-28 16:48:47 +01:00

41 lines
1.3 KiB
Diff

From 9fb5bef8ed96e433c9a9282f0c64e84bd8f5f206 Mon Sep 17 00:00:00 2001
From: Ondrej Jirman <megous@megous.com>
Date: Tue, 23 Nov 2021 18:45:28 +0100
Subject: [PATCH 476/476] drm: panel: st7703: Fix power off sequence
After issuing SLEEP IN, it's necessary to let the controller complete
the blanking sequence and drain the charge from the panel. (According
to the datasheet.)
Signed-off-by: Ondrej Jirman <megous@megous.com>
---
drivers/gpu/drm/panel/panel-sitronix-st7703.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/panel/panel-sitronix-st7703.c b/drivers/gpu/drm/panel/panel-sitronix-st7703.c
index b463e4c5f238..af5f91ab997b 100644
--- a/drivers/gpu/drm/panel/panel-sitronix-st7703.c
+++ b/drivers/gpu/drm/panel/panel-sitronix-st7703.c
@@ -378,7 +378,7 @@ static int st7703_enable(struct drm_panel *panel)
return ret;
}
- /* Dsiplay on can be issued 120 msec after sleep out */
+ /* Display on can be issued 120 msec after sleep out */
msleep(120);
ret = mipi_dsi_dcs_set_display_on(dsi);
@@ -404,6 +404,9 @@ static int st7703_disable(struct drm_panel *panel)
if (ret < 0)
dev_err(ctx->dev, "Failed to enter sleep mode: %d\n", ret);
+ /* Display needs to be drained of charge, in order to work correctly on next power on. */
+ msleep(120);
+
return 0;
}
--
2.34.0