openwrt/target/linux/bcm27xx/patches-6.1/950-1216-drivers-gpu-drm-panel-fix-waveshare-panel-software-r.patch
Marty Jones 2e715fb4fc bcm27xx: update 6.1 patches to latest version
Add support for BCM2712 (Raspberry Pi 5).
3bb5880ab3
Patches were generated from the diff between linux kernel branch linux-6.1.y
and rpi-6.1.y from raspberry pi kernel source:
- git format-patch linux-6.1.y...rpi-6.1.y

Build system: x86_64
Build-tested: bcm2708, bcm2709, bcm2710, bcm2711
Run-tested: bcm2710/RPi3B, bcm2711/RPi4B

Signed-off-by: Marty Jones <mj8263788@gmail.com>
[Remove applied and reverted patches, squash patches and config commits]
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-01-25 17:46:45 +01:00

42 lines
1.2 KiB
Diff

From a6872b25f18fe46ef9979f9d4a3635a9c3966afd Mon Sep 17 00:00:00 2001
From: eng33 <eng33@waveshare.com>
Date: Mon, 11 Dec 2023 15:06:45 +0800
Subject: [PATCH] drivers/gpu/drm/panel:fix waveshare panel software
restart/shutdown display is abnormal Fixed the screen stays white when the
user restarts or shuts down
Signed-off-by: eng33 <eng33@waveshare.com>
---
drivers/gpu/drm/panel/panel-waveshare-dsi.c | 10 ++++++++++
1 file changed, 10 insertions(+)
--- a/drivers/gpu/drm/panel/panel-waveshare-dsi.c
+++ b/drivers/gpu/drm/panel/panel-waveshare-dsi.c
@@ -362,9 +362,18 @@ static void ws_panel_remove(struct i2c_c
{
struct ws_panel *ts = i2c_get_clientdata(i2c);
+ ws_panel_disable(&ts->base);
+
drm_panel_remove(&ts->base);
}
+static void ws_panel_shutdown(struct i2c_client *i2c)
+{
+ struct ws_panel *ts = i2c_get_clientdata(i2c);
+
+ ws_panel_disable(&ts->base);
+}
+
static const struct of_device_id ws_panel_of_ids[] = {
{
.compatible = "waveshare,2.8inch-panel",
@@ -403,6 +412,7 @@ static struct i2c_driver ws_panel_driver
},
.probe = ws_panel_probe,
.remove = ws_panel_remove,
+ .shutdown = ws_panel_shutdown,
};
module_i2c_driver(ws_panel_driver);