On Tue, Feb 04, 2025 at 03:58:02PM +0100, Maxime Ripard wrote: > The tc358768 driver follows the drm_encoder->crtc pointer that is > deprecated and shouldn't be used by atomic drivers. > > This was due to the fact that we did't have any other alternative to > retrieve the CRTC pointer. Fortunately, the crtc pointer is now provided > in the bridge state, so we can move to atomic callbacks and drop that > deprecated pointer usage. > > Signed-off-by: Maxime Ripard <mripard@xxxxxxxxxx> > --- > drivers/gpu/drm/bridge/tc358768.c | 30 +++++++++++++++++++++++------- > 1 file changed, 23 insertions(+), 7 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/tc358768.c b/drivers/gpu/drm/bridge/tc358768.c > index 6db18d1e8824dd7d387211d6d1e668645cf88bbe..6ff6b29e8075d7c6fa0b74b4fec83c5230512d96 100644 > --- a/drivers/gpu/drm/bridge/tc358768.c > +++ b/drivers/gpu/drm/bridge/tc358768.c > @@ -601,17 +601,29 @@ static void tc358768_bridge_disable(struct drm_bridge *bridge) > ret = tc358768_clear_error(priv); > if (ret) > dev_warn(priv->dev, "Software disable failed: %d\n", ret); > } > > +static void tc358768_bridge_atomic_disable(struct drm_bridge *bridge, > + struct drm_atomic_state *state) > +{ > + tc358768_bridge_disable(bridge); > +} > + Please change corresponding functions into atomic_disable() and atomic_post_disable(). Calling sites have access to the atomic state, so there is no need to have yet another wrapper. > static void tc358768_bridge_post_disable(struct drm_bridge *bridge) > { > struct tc358768_priv *priv = bridge_to_tc358768(bridge); > > tc358768_hw_disable(priv); > } > > +static void tc358768_bridge_atomic_post_disable(struct drm_bridge *bridge, > + struct drm_atomic_state *state) > +{ > + tc358768_bridge_post_disable(bridge); > +} > + -- With best wishes Dmitry