drm/bridge: tc358768: always enable HS video mode
authorFrancesco Dolcini <francesco.dolcini@toradex.com>
Thu, 27 Apr 2023 14:29:26 +0000 (16:29 +0200)
committerRobert Foss <rfoss@kernel.org>
Fri, 5 May 2023 18:11:19 +0000 (20:11 +0200)
Always enable HS video mode setting the TXMD bit, without this change no
video output is present with DSI sinks that are setting
MIPI_DSI_MODE_LPM flag (tested with LT8912B DSI-HDMI bridge).

Previously the driver was enabling HS mode only when the DSI sink was
not explicitly setting the MIPI_DSI_MODE_LPM, however this is not
correct.

The MIPI_DSI_MODE_LPM is supposed to indicate that the sink is willing
to receive data in low power mode, however clearing the
TC358768_DSI_CONTROL_TXMD bit will make the TC358768 send video in
LP mode that is not the intended behavior.

Fixes: ff1ca6397b1d ("drm/bridge: Add tc358768 driver")
Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
Reviewed-by: Robert Foss <rfoss@kernel.org>
Signed-off-by: Robert Foss <rfoss@kernel.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20230427142934.55435-2-francesco@dolcini.it
drivers/gpu/drm/bridge/tc358768.c

index a4ba93a..2484b5a 100644 (file)
@@ -867,8 +867,7 @@ static void tc358768_bridge_pre_enable(struct drm_bridge *bridge)
        val = TC358768_DSI_CONFW_MODE_SET | TC358768_DSI_CONFW_ADDR_DSI_CONTROL;
        val |= (dsi_dev->lanes - 1) << 1;
 
-       if (!(dsi_dev->mode_flags & MIPI_DSI_MODE_LPM))
-               val |= TC358768_DSI_CONTROL_TXMD;
+       val |= TC358768_DSI_CONTROL_TXMD;
 
        if (!(mode_flags & MIPI_DSI_CLOCK_NON_CONTINUOUS))
                val |= TC358768_DSI_CONTROL_HSCKMD;