On Tue, Feb 04, 2025 at 03:57:56PM +0100, Maxime Ripard wrote: > The current bridge state is accessible from the drm_bridge structure, > but since it's fairly indirect it's not easy to figure out. > > Provide a helper to retrieve it. > > Signed-off-by: Maxime Ripard <mripard@xxxxxxxxxx> > --- > include/drm/drm_bridge.h | 21 +++++++++++++++++++++ > 1 file changed, 21 insertions(+) > > diff --git a/include/drm/drm_bridge.h b/include/drm/drm_bridge.h > index cf7ab89e652a982510ae9df1f5972b9c6eb13cf2..7a3664770c3ab8634a69e953b37a30ac467139b3 100644 > --- a/include/drm/drm_bridge.h > +++ b/include/drm/drm_bridge.h > @@ -955,10 +955,31 @@ static inline struct drm_bridge *of_drm_find_bridge(struct device_node *np) > { > return NULL; > } > #endif > > +/** > + * @drm_bridge_get_current_state() - Get the current bridge state > + * @bridge: bridge object > + * > + * This function must be called with the modeset lock held. > + * > + * RETURNS: > + * > + * The current bridge state, or NULL if there is none. > + */ > +static inline struct drm_bridge_state * > +drm_bridge_get_current_state(struct drm_bridge *bridge) > +{ > + lockdep_assert_held(&bridge->base.lock.mutex.base); Please use drm_modeset_lock_assert_held() instead. > + > + if (!bridge) > + return NULL; > + > + return drm_priv_to_bridge_state(bridge->base.state); > +} > + > /** > * drm_bridge_get_next_bridge() - Get the next bridge in the chain > * @bridge: bridge object > * > * RETURNS: > > -- > 2.48.0 > -- With best wishes Dmitry