]> www.infradead.org Git - users/jedix/linux-maple.git/commit
drm/bridge: tc358767: Enable FRMSYNC timing generator
authorMarek Vasut <marex@denx.de>
Mon, 13 May 2024 02:16:04 +0000 (04:16 +0200)
committerRobert Foss <rfoss@kernel.org>
Tue, 21 May 2024 12:23:19 +0000 (14:23 +0200)
commitd9ca4b760ef6d93766b9d87df8cf5a33c807ea51
tree6fb68a1f0124d4721c35e583cb308d8391bf01c7
parenta2ab7cb169da38757323929f7b3b4cf396ec53b5
drm/bridge: tc358767: Enable FRMSYNC timing generator

TC9595 datasheet Video Path0 Control (VPCTRL0) Register bit FRMSYNC description
says "This bit should be disabled only in video mode transmission where Host
transmits video timing together with video data and where pixel clock source
is from DSI clock." . This driver always sources pixel clock from external xtal,
therefore the FRMSYNC bit must always be enabled, enable it.

This fixes an actual issue with DSI-to-DPI mode, where the display would
randomly show subtle pixel flickering, or wobble, or shimmering. This is
visible on solid gray color, but the degree of the shimmering differs
between boots, which makes it hard to debug.

There is a caveat to the FRMSYNC and this bridge pixel PLL, which can only
generate pixel clock with limited accuracy, it may therefore be necessary
to reduce the HFP to fit into line length of input pixel data, to avoid any
possible overflows, which make the output video look striped horizontally.

Signed-off-by: Marek Vasut <marex@denx.de>
Reviewed-by: Robert Foss <rfoss@kernel.org>
Signed-off-by: Robert Foss <rfoss@kernel.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20240513021607.129111-1-marex@denx.de
drivers/gpu/drm/bridge/tc358767.c