Skip to content

Commit d6afd8f

Browse files
committed
panel-raspberrypi-touchscreen: Round up clk rate to fix DSI panel.
Commit 488f9bc 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 <[email protected]>
1 parent 6834348 commit d6afd8f

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,12 @@ static const struct drm_display_mode rpi_touchscreen_modes[] = {
220220
#define HBP 46
221221
#define HFP ((PIXEL_CLOCK / (VTOTAL * VREFRESH)) - (HACT + HSW + HBP))
222222

223-
.clock = PIXEL_CLOCK / 1000,
223+
/* Round up the pixel clock a bit (10khz), so that the
224+
* "don't run things faster than the requested clock
225+
* rate" rule of the clk driver doesn't reject the
226+
* divide-by-3 mode due to rounding error.
227+
*/
228+
.clock = PIXEL_CLOCK / 1000 + 10,
224229
.hdisplay = HACT,
225230
.hsync_start = HACT + HFP,
226231
.hsync_end = HACT + HFP + HSW,

0 commit comments

Comments
 (0)