]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
drm/bridge: ti-sn65dsi83: halve horizontal syncs for dual LVDS output
authorLuca Ceresoli <luca.ceresoli@bootlin.com>
Thu, 26 Feb 2026 16:16:45 +0000 (17:16 +0100)
committerLuca Ceresoli <luca.ceresoli@bootlin.com>
Mon, 9 Mar 2026 21:32:22 +0000 (22:32 +0100)
commitd0d727746944096a6681dc6adb5f123fc5aa018d
treee99d1074e265b54bf601d4e89c93967ee90760e6
parent2f22702dc0fee06a240404e0f7ead5b789b253d8
drm/bridge: ti-sn65dsi83: halve horizontal syncs for dual LVDS output

Dual LVDS output (available on the SN65DSI84) requires HSYNC_PULSE_WIDTH
and HORIZONTAL_BACK_PORCH to be divided by two with respect to the values
used for single LVDS output.

While not clearly stated in the datasheet, this is needed according to the
DSI Tuner [0] output. It also makes sense intuitively because in dual LVDS
output two pixels at a time are output and so the output clock is half of
the pixel clock.

Some dual-LVDS panels refuse to show any picture without this fix.

Divide by two HORIZONTAL_FRONT_PORCH too, even though this register is used
only for test pattern generation which is not currently implemented by this
driver.

[0] https://www.ti.com/tool/DSI-TUNER

Fixes: ceb515ba29ba ("drm/bridge: ti-sn65dsi83: Add TI SN65DSI83 and SN65DSI84 driver")
Cc: stable@vger.kernel.org
Reviewed-by: Marek Vasut <marek.vasut@mailbox.org>
Link: https://patch.msgid.link/20260226-ti-sn65dsi83-dual-lvds-fixes-and-test-pattern-v1-2-2e15f5a9a6a0@bootlin.com
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
drivers/gpu/drm/bridge/ti-sn65dsi83.c