difos/target/linux/bcm27xx/patches-6.12/950-0940-drm-panel-Added-waveshare-7.0inch-h-dsi-screen-suppo.patch
Álvaro Fernández Rojas 8f9e91ad03 bcm27xx: add 6.12 patches from RPi repo
These patches were generated from:
https://github.com/raspberrypi/linux/commits/rpi-6.12.y
With the following command:
git format-patch -N v6.12.27..HEAD
(HEAD -> 8d3206ee456a5ecdf9ddbfd8e5e231e4f0cd716e)

Exceptions:
- (def)configs patches
- github workflows patches
- applied & reverted patches
- readme patches
- wireless patches

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-05-21 11:32:18 +02:00

50 lines
1.6 KiB
Diff

From ce9e4c59477bbf5b5ccae164e44c3d96ab4be4c3 Mon Sep 17 00:00:00 2001
From: Waveshare_Team <support@waveshare.com>
Date: Tue, 1 Apr 2025 18:02:00 +0800
Subject: [PATCH] drm: panel: Added waveshare 7.0inch h dsi screen support
Signed-off-by: Waveshare_Team <support@waveshare.com>
---
drivers/gpu/drm/panel/panel-waveshare-dsi.c | 24 +++++++++++++++++++++
1 file changed, 24 insertions(+)
--- a/drivers/gpu/drm/panel/panel-waveshare-dsi.c
+++ b/drivers/gpu/drm/panel/panel-waveshare-dsi.c
@@ -303,6 +303,27 @@ static const struct ws_panel_data ws_pan
.mode_flags = MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_LPM,
};
+/* 7.0inch 1280x720
+ * https://www.waveshare.com/7inch-dsi-lcd-h.htm
+ */
+static const struct drm_display_mode ws_panel_7_0_h_mode = {
+ .clock = 83333,
+ .hdisplay = 1280,
+ .hsync_start = 1280 + 64,
+ .hsync_end = 1280 + 64 + 64,
+ .htotal = 1280 + 64 + 64 + 64,
+ .vdisplay = 720,
+ .vsync_start = 720 + 64,
+ .vsync_end = 720 + 64 + 64,
+ .vtotal = 720 + 64 + 64 + 64,
+};
+
+static const struct ws_panel_data ws_panel_7_0_h_data = {
+ .mode = &ws_panel_7_0_h_mode,
+ .lanes = 2,
+ .mode_flags = MIPI_DSI_MODE_VIDEO_HSE | MIPI_DSI_MODE_VIDEO | MIPI_DSI_CLOCK_NON_CONTINUOUS,
+};
+
static struct ws_panel *panel_to_ts(struct drm_panel *panel)
{
return container_of(panel, struct ws_panel, base);
@@ -588,6 +609,9 @@ static const struct of_device_id ws_pane
.compatible = "waveshare,13.3inch-2lane-panel",
.data = &ws_panel_13_3_2lane_data,
}, {
+ .compatible = "waveshare,7.0inch-h-panel",
+ .data = &ws_panel_7_0_h_data,
+ }, {
/* sentinel */
}
};