Subject: Re: linux-next: build failure after merge of the pinctrl-intel tree

From: <[email-masked]>
Date: Mon, 11 May 2026 06:09:32 +0000

Hi Thierry,

Apologize for the build-failure introduced
Thank you for the report - I will fix-up the driver in the drm-misc tree.

On 07/05/26 4:17 pm, Thierry Reding wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> Hi all,
> 
> After merging the drm-misc tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
> 
>    drivers/gpu/drm/bridge/microchip-lvds.c:132:44: error: 'struct drm_atomic_state' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
>      132 |                                     struct drm_atomic_state *state)
>          |                                            ^~~~~~~~~~~~~~~~
>    drivers/gpu/drm/bridge/microchip-lvds.c: In function 'mchp_lvds_atomic_enable':
>    drivers/gpu/drm/bridge/microchip-lvds.c:153:62: error: passing argument 1 of 'drm_atomic_get_new_connector_for_encoder' from incompatible pointer type [-Wincompatible-pointer-types]
>      153 |         connector = drm_atomic_get_new_connector_for_encoder(state, bridge->encoder);
>          |                                                              ^~~~~
>          |                                                              |
>          |                                                              struct drm_atomic_state *
>    In file included from include/drm/drm_bridge.h:31,
>                     from drivers/gpu/drm/bridge/microchip-lvds.c:25:
>    include/drm/drm_atomic.h:758:74: note: expected 'const struct drm_atomic_commit *' but argument is of type 'struct drm_atomic_state *'
>      758 | drm_atomic_get_new_connector_for_encoder(const struct drm_atomic_commit *state,
>          |                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
>    drivers/gpu/drm/bridge/microchip-lvds.c: At top level:
>    drivers/gpu/drm/bridge/microchip-lvds.c:161:45: error: 'struct drm_atomic_state' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
>      161 |                                      struct drm_atomic_state *state)
>          |                                             ^~~~~~~~~~~~~~~~
>    drivers/gpu/drm/bridge/microchip-lvds.c:171:26: error: initialization of 'void (*)(struct drm_bridge *, struct drm_atomic_commit *)' from incompatible pointer type 'void (*)(struct drm_bridge *, struct drm_atomic_state *)' [-Wincompatible-pointer-types]
>      171 |         .atomic_enable = mchp_lvds_atomic_enable,
>          |                          ^~~~~~~~~~~~~~~~~~~~~~~
>    drivers/gpu/drm/bridge/microchip-lvds.c:171:26: note: (near initialization for 'mchp_lvds_bridge_funcs.atomic_enable')
>    drivers/gpu/drm/bridge/microchip-lvds.c:172:27: error: initialization of 'void (*)(struct drm_bridge *, struct drm_atomic_commit *)' from incompatible pointer type 'void (*)(struct drm_bridge *, struct drm_atomic_state *)' [-Wincompatible-pointer-types]
>      172 |         .atomic_disable = mchp_lvds_atomic_disable,
>          |                           ^~~~~~~~~~~~~~~~~~~~~~~~
>    drivers/gpu/drm/bridge/microchip-lvds.c:172:27: note: (near initialization for 'mchp_lvds_bridge_funcs.atomic_disable')
> 
> Caused by commit
> 
>    c4cbe5d9e87d ("drm/bridge: microchip-lvds: migrate to atomic bridge ops")
> 
> from the drm-misc tree interacting badly with commit
> 
>    5164f7e7ff8e ("drm: Rename struct drm_atomic_state to drm_atomic_commit")
> 
> from the drm tree.
> 
> I fixed it up (see below) and can carry the fix for now, but please get
> this fixed in the drm-misc tree.
> 
> Thanks,
> Thierry
> 
> diff --git a/drivers/gpu/drm/bridge/microchip-lvds.c b/drivers/gpu/drm/bridge/microchip-lvds.c
> index 12fc442f9867..5fb8633f43c5 100644
> --- a/drivers/gpu/drm/bridge/microchip-lvds.c
> +++ b/drivers/gpu/drm/bridge/microchip-lvds.c
> @@ -129,7 +129,7 @@ static int mchp_lvds_attach(struct drm_bridge *bridge,
>   }
> 
>   static void mchp_lvds_atomic_enable(struct drm_bridge *bridge,
> -                                   struct drm_atomic_state *state)
> +                                   struct drm_atomic_commit *state)
>   {
>          struct mchp_lvds *lvds = bridge_to_lvds(bridge);
>          struct drm_connector *connector;
> @@ -158,7 +158,7 @@ static void mchp_lvds_atomic_enable(struct drm_bridge *bridge,
>   }
> 
>   static void mchp_lvds_atomic_disable(struct drm_bridge *bridge,
> -                                    struct drm_atomic_state *state)
> +                                    struct drm_atomic_commit *state)
>   {
>          struct mchp_lvds *lvds = bridge_to_lvds(bridge);
> 
> --
> 2.52.0

-- 
Thanks and Regards,
Manikandan M.