On 6/17/26 3:44 PM, Maxime Ripard wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the 
> content is safe
> 
> The microchip-lvds bridge still uses the deprecated non-atomic bridge
> callbacks.
> 
> Switch to their atomic counterparts, adding the bridge state
> handlers if not already present.
> 
> Generated by the following Coccinelle script:
> 
> @ is_bridge @
> identifier funcs;
> @@
> 
>   struct drm_bridge_funcs funcs = {
>          ...,
>   };
> 
> @ has_create_state depends on is_bridge @
> identifier funcs, f;
> @@
> 
> struct drm_bridge_funcs funcs = {
>    ...,
>    .atomic_create_state = f,
>    ...,
> };
> 
> @ update_struct depends on (is_bridge && !has_create_state) @
> identifier is_bridge.funcs;
> identifier f;
> @@
> 
>   struct drm_bridge_funcs funcs = {
> +       .atomic_create_state = drm_atomic_helper_bridge_create_state,
> +       .atomic_destroy_state = drm_atomic_helper_bridge_destroy_state,
> +       .atomic_duplicate_state = drm_atomic_helper_bridge_duplicate_state,
>          ...,
>   };
> 
> @ update_pre_enable_struct depends on (is_bridge && !has_create_state) @
> identifier is_bridge.funcs;
> identifier f;
> @@
> 
>   struct drm_bridge_funcs funcs = {
>          ...,
> -       .pre_enable = f,
> +       .atomic_pre_enable = f,
>          ...,
>   };
> 
> @ update_pre_enable_impl depends on update_pre_enable_struct @
> identifier update_pre_enable_struct.f;
> identifier b;
> @@
> 
> -void f(struct drm_bridge *b)
> +void f(struct drm_bridge *b, struct drm_atomic_commit *commit)
>   {
>          ...
>   }
> 
> @ update_enable_struct depends on (is_bridge && !has_create_state) @
> identifier is_bridge.funcs;
> identifier f;
> @@
> 
>   struct drm_bridge_funcs funcs = {
>          ...,
> -       .enable = f,
> +       .atomic_enable = f,
>          ...,
>   };
> 
> @ update_enable_impl depends on update_enable_struct @
> identifier update_enable_struct.f;
> identifier b;
> @@
> 
> -void f(struct drm_bridge *b)
> +void f(struct drm_bridge *b, struct drm_atomic_commit *commit)
>   {
>          ...
>   }
> 
> @ update_disable_struct depends on (is_bridge && !has_create_state) @
> identifier is_bridge.funcs;
> identifier f;
> @@
> 
>   struct drm_bridge_funcs funcs = {
>          ...,
> -       .disable = f,
> +       .atomic_disable = f,
>          ...,
>   };
> 
> @ update_disable_impl depends on update_disable_struct @
> identifier update_disable_struct.f;
> identifier b;
> @@
> 
> -void f(struct drm_bridge *b)
> +void f(struct drm_bridge *b, struct drm_atomic_commit *commit)
>   {
>          ...
>   }
> 
> @ update_post_disable_struct depends on (is_bridge && !has_create_state) @
> identifier is_bridge.funcs;
> identifier f;
> @@
> 
>   struct drm_bridge_funcs funcs = {
>          ...,
> -       .post_disable = f,
> +       .atomic_post_disable = f,
>          ...,
>   };
> 
> @ update_post_disable_impl depends on update_post_disable_struct @
> identifier update_post_disable_struct.f;
> identifier b;
> @@
> 
> -void f(struct drm_bridge *b)
> +void f(struct drm_bridge *b, struct drm_atomic_commit *commit)
>   {
>          ...
>   }
> 
> Signed-off-by: Maxime Ripard <[email protected]>
> 
Reviewed-by: Manikandan Muralidharan <[email protected]>

Thank you.
> ---
> To: Manikandan Muralidharan <[email protected]>
> To: Dharma Balasubiramani <[email protected]>
> ---
>   drivers/gpu/drm/bridge/microchip-lvds.c | 3 +++
>   1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/gpu/drm/bridge/microchip-lvds.c 
> b/drivers/gpu/drm/bridge/microchip-lvds.c
> index 5fb8633f43c5..dd4ffc9f4df3 100644
> --- a/drivers/gpu/drm/bridge/microchip-lvds.c
> +++ b/drivers/gpu/drm/bridge/microchip-lvds.c
> @@ -165,10 +165,13 @@ static void mchp_lvds_atomic_disable(struct drm_bridge 
> *bridge,
>          pm_runtime_put(lvds->dev);
>          clk_disable_unprepare(lvds->pclk);
>   }
> 
>   static const struct drm_bridge_funcs mchp_lvds_bridge_funcs = {
> +       .atomic_create_state = drm_atomic_helper_bridge_create_state,
> +       .atomic_destroy_state = drm_atomic_helper_bridge_destroy_state,
> +       .atomic_duplicate_state = drm_atomic_helper_bridge_duplicate_state,
>          .attach = mchp_lvds_attach,
>          .atomic_enable = mchp_lvds_atomic_enable,
>          .atomic_disable = mchp_lvds_atomic_disable,
>   };
> 
> 
> --
> 2.54.0
> 


-- 
Thanks and Regards,
Manikandan M.

Reply via email to