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

From: Thierry Reding

Date: Thu May 07 2026 - 06:49:11 EST


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