mirror of https://github.com/hak5/openwrt.git
36 lines
1.4 KiB
Diff
36 lines
1.4 KiB
Diff
From 7f98947db09ad419ca73082230ade1f29f18bd82 Mon Sep 17 00:00:00 2001
|
|
From: Eric Anholt <eric@anholt.net>
|
|
Date: Mon, 6 Mar 2017 12:17:16 -0800
|
|
Subject: [PATCH 128/454] panel-raspberrypi-touchscreen: Round up clk rate to
|
|
fix DSI panel.
|
|
|
|
Commit 488f9bc8e3def93e0baef53cee2026c2cb0d8956 slightly increased the
|
|
reported rate of PLLD, so the clk driver decided that PLLD/3/8 was now
|
|
higher than our requested pixel clock rate and rejected it in favor of
|
|
PLLD/4/8, which then ran the pixel clock way out of spec.
|
|
|
|
By bumping the requested clock rate just slightly, we get back to
|
|
PLLD/3/8 like we wanted and the panel displays content again.
|
|
|
|
Signed-off-by: Eric Anholt <eric@anholt.net>
|
|
---
|
|
drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c | 7 ++++++-
|
|
1 file changed, 6 insertions(+), 1 deletion(-)
|
|
|
|
--- a/drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c
|
|
+++ b/drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c
|
|
@@ -220,7 +220,12 @@ static const struct drm_display_mode rpi
|
|
#define HBP 46
|
|
#define HFP ((PIXEL_CLOCK / (VTOTAL * VREFRESH)) - (HACT + HSW + HBP))
|
|
|
|
- .clock = PIXEL_CLOCK / 1000,
|
|
+ /* Round up the pixel clock a bit (10khz), so that the
|
|
+ * "don't run things faster than the requested clock
|
|
+ * rate" rule of the clk driver doesn't reject the
|
|
+ * divide-by-3 mode due to rounding error.
|
|
+ */
|
|
+ .clock = PIXEL_CLOCK / 1000 + 10,
|
|
.hdisplay = HACT,
|
|
.hsync_start = HACT + HFP,
|
|
.hsync_end = HACT + HFP + HSW,
|