lkml.org 
[lkml]   [2022]   [Aug]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 198/545] drm/vc4: dsi: Add correct stop condition to vc4_dsi_encoder_disable iteration
    Date
    From: Dave Stevenson <dave.stevenson@raspberrypi.com>

    [ Upstream commit 7bcb9c8d0bc9f3cab8ac2634b056c2e6b63945ca ]

    vc4_dsi_encoder_disable is partially an open coded version of
    drm_bridge_chain_disable, but it missed a termination condition
    in the loop for ->disable which meant that no post_disable
    calls were made.

    Add in the termination clause.

    Fixes: 033bfe7538a1 ("drm/vc4: dsi: Fix bridge chain handling")
    Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
    Link: https://lore.kernel.org/r/20220613144800.326124-17-maxime@cerno.tech
    Signed-off-by: Maxime Ripard <maxime@cerno.tech>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/gpu/drm/vc4/vc4_dsi.c | 3 +++
    1 file changed, 3 insertions(+)

    diff --git a/drivers/gpu/drm/vc4/vc4_dsi.c b/drivers/gpu/drm/vc4/vc4_dsi.c
    index 43e86f0b5541..0bda40c2d787 100644
    --- a/drivers/gpu/drm/vc4/vc4_dsi.c
    +++ b/drivers/gpu/drm/vc4/vc4_dsi.c
    @@ -803,6 +803,9 @@ static void vc4_dsi_encoder_disable(struct drm_encoder *encoder)
    list_for_each_entry_reverse(iter, &dsi->bridge_chain, chain_node) {
    if (iter->funcs->disable)
    iter->funcs->disable(iter);
    +
    + if (iter == dsi->bridge)
    + break;
    }

    vc4_dsi_ulps(dsi, true);
    --
    2.35.1


    \
     
     \ /
      Last update: 2022-08-19 18:09    [W:2.101 / U:0.128 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site