* [PATCH] drm/panel: select DRM_KMS_HELPER
@ 2026-09-29 11:48 Sasha Levin
2026-09-29 13:55 ` Luca Ceresoli
0 siblings, 1 reply; 2+ messages in thread
From: Sasha Levin @ 2026-09-29 11:48 UTC (permalink / raw)
To: Neil Armstrong, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, David Airlie, Simona Vetter, Luca Ceresoli
Cc: Sasha Levin, kernelci.org bot, Jessica Zhang, dri-devel, linux-kernel
Since the panel_bridge code moved into drm_panel.c, any config with
DRM built in but without the KMS helpers fails to link, for example
arc haps_hs_smp_defconfig with allnoconfig and the kselftest fragment:
arc-elf32-ld: drivers/gpu/drm/drm_panel.o:(.rodata+0x28): undefined
reference to `drm_atomic_helper_bridge_duplicate_state'
arc-elf32-ld: drivers/gpu/drm/drm_panel.o:(.rodata+0x2c): undefined
reference to `drm_atomic_helper_bridge_destroy_state'
...
With DRM=m, modpost fails the same way:
ERROR: modpost: drivers/gpu/drm/drm_panel.ko: symbol
'drm_atomic_helper_bridge_duplicate_state' undefined!
The panel_bridge used to live in bridge/panel.c, which was part of
drm_kms_helper and was therefore only built when DRM_KMS_HELPER was
enabled. drm_panel.c is built for DRM_PANEL instead, which
DRM_PANEL_BRIDGE selects whenever DRM_BRIDGE is set, and DRM_BRIDGE
is enabled for every DRM config. Nothing on that path selects
DRM_KMS_HELPER, so the bridge and connector helpers used by the moved
code can be missing.
The panel_bridge code in drm_panel.c is built unconditionally, so
make DRM_PANEL select DRM_KMS_HELPER.
Reported-by: kernelci.org bot <bot@kernelci.org>
Closes: https://d.kernelci.org/i/maestro:9ed7f4b210fa7c1d3bb109b0fcd62285e98c5b81
Fixes: aa8a8c7e4641 ("drm/bridge: panel: move all code to drm_panel.c")
Assisted-by: LLM
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
drivers/gpu/drm/panel/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig
index 0a79a0558101b..53a1fc2913fee 100644
--- a/drivers/gpu/drm/panel/Kconfig
+++ b/drivers/gpu/drm/panel/Kconfig
@@ -2,6 +2,7 @@
config DRM_PANEL
tristate
depends on DRM
+ select DRM_KMS_HELPER
help
Panel registration and lookup framework.
--
2.53.0
^ permalink raw reply [flat|nested] 2+ messages in thread* Re: [PATCH] drm/panel: select DRM_KMS_HELPER
2026-09-29 11:48 [PATCH] drm/panel: select DRM_KMS_HELPER Sasha Levin
@ 2026-09-29 13:55 ` Luca Ceresoli
0 siblings, 0 replies; 2+ messages in thread
From: Luca Ceresoli @ 2026-09-29 13:55 UTC (permalink / raw)
To: Sasha Levin, Neil Armstrong, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, David Airlie, Simona Vetter, Luca Ceresoli
Cc: kernelci.org bot, Jessica Zhang, dri-devel, linux-kernel
On Tue Sep 29, 2026 at 1:48 PM CEST, Sasha Levin wrote:
> Since the panel_bridge code moved into drm_panel.c, any config with
> DRM built in but without the KMS helpers fails to link, for example
> arc haps_hs_smp_defconfig with allnoconfig and the kselftest fragment:
>
> arc-elf32-ld: drivers/gpu/drm/drm_panel.o:(.rodata+0x28): undefined
> reference to `drm_atomic_helper_bridge_duplicate_state'
> arc-elf32-ld: drivers/gpu/drm/drm_panel.o:(.rodata+0x2c): undefined
> reference to `drm_atomic_helper_bridge_destroy_state'
> ...
>
> With DRM=m, modpost fails the same way:
>
> ERROR: modpost: drivers/gpu/drm/drm_panel.ko: symbol
> 'drm_atomic_helper_bridge_duplicate_state' undefined!
>
> The panel_bridge used to live in bridge/panel.c, which was part of
> drm_kms_helper and was therefore only built when DRM_KMS_HELPER was
> enabled. drm_panel.c is built for DRM_PANEL instead, which
> DRM_PANEL_BRIDGE selects whenever DRM_BRIDGE is set, and DRM_BRIDGE
> is enabled for every DRM config. Nothing on that path selects
> DRM_KMS_HELPER, so the bridge and connector helpers used by the moved
> code can be missing.
>
> The panel_bridge code in drm_panel.c is built unconditionally, so
> make DRM_PANEL select DRM_KMS_HELPER.
>
> Reported-by: kernelci.org bot <bot@kernelci.org>
> Closes: https://d.kernelci.org/i/maestro:9ed7f4b210fa7c1d3bb109b0fcd62285e98c5b81
> Fixes: aa8a8c7e4641 ("drm/bridge: panel: move all code to drm_panel.c")
> Assisted-by: LLM
> Signed-off-by: Sasha Levin <sashal@kernel.org>
Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Tested-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
--
Luca Ceresoli, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-09-29 13:55 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-29 11:48 [PATCH] drm/panel: select DRM_KMS_HELPER Sasha Levin
2026-09-29 13:55 ` Luca Ceresoli
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®