From c7cf33911d477fe55a91a9e4d84dad857b244ae3 Mon Sep 17 00:00:00 2001
From: Dave Stevenson <dave.stevenson@raspberrypi.com>
Date: Fri, 28 Jul 2023 18:10:53 +0100
Subject: [PATCH] drm/panel: waveshare: Fix up timings for 10.1" panel

The 10.1" panel doesn't work with the timings defined. vc4
will always have been fixing up the timing due to the limited
integer divider, so compute the fixed up mode and use it
directly.

Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
---
 drivers/gpu/drm/panel/panel-waveshare-dsi.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

--- a/drivers/gpu/drm/panel/panel-waveshare-dsi.c
+++ b/drivers/gpu/drm/panel/panel-waveshare-dsi.c
@@ -112,11 +112,11 @@ static const struct drm_display_mode ws_
  * https://www.waveshare.com/product/raspberry-pi/displays/10.1inch-dsi-lcd-c.htm
  */
 static const struct drm_display_mode ws_panel_10_1_mode = {
-	.clock = 76800,
+	.clock = 83333,
 	.hdisplay = 1280,
-	.hsync_start = 1280 + 40,
-	.hsync_end = 1280 + 40 + 20,
-	.htotal = 1280 + 40 + 20 + 40,
+	.hsync_start = 1280 + 156,
+	.hsync_end = 1280 + 156 + 20,
+	.htotal = 1280 + 156 + 20 + 40,
 	.vdisplay = 800,
 	.vsync_start = 800 + 40,
 	.vsync_end = 800 + 40 + 48,
