On 24.01.2026 18:20, Kaustabh Chakraborty wrote:
> Since commit c9b1150a68d9 ("drm/atomic-helper: Re-order bridge chain
> pre-enable and post-disable"), pre-enable sequence is called before the
> CRTC is enabled.
>
> This causes unintended side-effects (abberation among potentially other
> things) in the display when samsung_dsim_init() is called in the
> pre-enable part of the sequence. Call it in samsung_dsim_atomic_enable()
> instead.
>
> Cc: [email protected] # v6.17 and later
> Signed-off-by: Kaustabh Chakraborty <[email protected]>I'm not sure if this will be needed: https://lore.kernel.org/all/[email protected]/ > --- > drivers/gpu/drm/bridge/samsung-dsim.c | 13 +++++++------ > 1 file changed, 7 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/samsung-dsim.c > b/drivers/gpu/drm/bridge/samsung-dsim.c > index 1d85e706c74b9..975f8b50ae660 100644 > --- a/drivers/gpu/drm/bridge/samsung-dsim.c > +++ b/drivers/gpu/drm/bridge/samsung-dsim.c > @@ -1655,6 +1655,13 @@ static void samsung_dsim_atomic_pre_enable(struct > drm_bridge *bridge, > } > > dsi->state |= DSIM_STATE_ENABLED; > +} > + > +static void samsung_dsim_atomic_enable(struct drm_bridge *bridge, > + struct drm_atomic_state *state) > +{ > + struct samsung_dsim *dsi = bridge_to_dsi(bridge); > + int ret; > > /* > * For Exynos-DSIM the downstream bridge, or panel are expecting > @@ -1665,12 +1672,6 @@ static void samsung_dsim_atomic_pre_enable(struct > drm_bridge *bridge, > if (ret) > return; > } > -} > - > -static void samsung_dsim_atomic_enable(struct drm_bridge *bridge, > - struct drm_atomic_state *state) > -{ > - struct samsung_dsim *dsi = bridge_to_dsi(bridge); > > samsung_dsim_set_display_mode(dsi); > samsung_dsim_set_display_enable(dsi, true); > Best regards -- Marek Szyprowski, PhD Samsung R&D Institute Poland
