The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* [PATCH 0/2] drm/rockchip: Add missing DRM_BRIDGE_CONNECTOR selects
@ 2026-08-13 14:40 Igor Paunovic
  2026-08-13 14:40 ` [PATCH 1/2] drm/rockchip: dw_dp: Select DRM_BRIDGE_CONNECTOR Igor Paunovic
  2026-08-13 14:40 ` [PATCH 2/2] drm/rockchip: rk3066_hdmi: Add missing Kconfig selects Igor Paunovic
  0 siblings, 2 replies; 3+ messages in thread
From: Igor Paunovic @ 2026-08-13 14:40 UTC (permalink / raw)
  To: Sandy Huang, Heiko Stübner, Andy Yan
  Cc: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
	Simona Vetter, Dmitry Baryshkov, Sebastian Reichel, Marius Dinu,
	dri-devel, linux-rockchip, linux-arm-kernel, linux-kernel,
	Igor Paunovic

While testing the dw-dp v11 series I noticed that ROCKCHIP_DW_DP does
not select DRM_BRIDGE_CONNECTOR although dw_dp-rockchip.c calls
drm_bridge_connector_init(), and Sebastian suggested handling this
independently of that series [1].

The ROCKCHIP_DW_DP gap was in fact found before: Marius Dinu posted
the same one-liner in March [2] and dropped it when the failure
stopped reproducing in his build. The failure is
configuration-dependent - any other enabled option that selects
DRM_BRIDGE_CONNECTOR masks it - so it can come and go with unrelated
config changes. It still reproduces on current drm-misc-next.

A sweep over drivers/gpu/drm/rockchip found eight callers of
drm_bridge_connector_init(). Five options already select it,
ROCKCHIP_INNO_HDMI gets it through its DRM_INNO_HDMI core option, and
two are left with a latent link failure: ROCKCHIP_DW_DP and
ROCKCHIP_RK3066_HDMI. The rk3066 case additionally needs
DRM_DISPLAY_HELPER, whose module carries the bridge-connector code.

Both failures were reproduced on drm-misc-next (d85a5e9dfb42) with an
arm64 allnoconfig-based configuration enabling only DRM_ROCKCHIP plus
the option in question; with the fixes applied both configurations
link cleanly, and an arm64 defconfig re-run shows no new Kconfig
warnings. Both issues are present in released kernels: the rk3066 one
since v6.16, the dw_dp one since v6.18.

[1] https://lore.kernel.org/r/aneNCDU12OzG99UX@venus
[2] https://lore.kernel.org/r/20260319155051.1944-1-m95d+git@psihoexpert.ro

Igor Paunovic (2):
  drm/rockchip: dw_dp: Select DRM_BRIDGE_CONNECTOR
  drm/rockchip: rk3066_hdmi: Add missing Kconfig selects

 drivers/gpu/drm/rockchip/Kconfig | 3 +++
 1 file changed, 3 insertions(+)

-- 
2.43.0


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH 1/2] drm/rockchip: dw_dp: Select DRM_BRIDGE_CONNECTOR
  2026-08-13 14:40 [PATCH 0/2] drm/rockchip: Add missing DRM_BRIDGE_CONNECTOR selects Igor Paunovic
@ 2026-08-13 14:40 ` Igor Paunovic
  2026-08-13 14:40 ` [PATCH 2/2] drm/rockchip: rk3066_hdmi: Add missing Kconfig selects Igor Paunovic
  1 sibling, 0 replies; 3+ messages in thread
From: Igor Paunovic @ 2026-08-13 14:40 UTC (permalink / raw)
  To: Sandy Huang, Heiko Stübner, Andy Yan
  Cc: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
	Simona Vetter, Dmitry Baryshkov, Sebastian Reichel, Marius Dinu,
	dri-devel, linux-rockchip, linux-arm-kernel, linux-kernel,
	Igor Paunovic

dw_dp-rockchip.c calls drm_bridge_connector_init(), but ROCKCHIP_DW_DP
does not select DRM_BRIDGE_CONNECTOR. A configuration with
ROCKCHIP_DW_DP as the only enabled Rockchip output option fails to
link:

  aarch64-linux-gnu-ld: drivers/gpu/drm/rockchip/dw_dp-rockchip.o: in function `dw_dp_rockchip_bind':
  dw_dp-rockchip.c:(.text+0x1d4): undefined reference to `drm_bridge_connector_init'

Five other Rockchip encoder options that call
drm_bridge_connector_init() (ROCKCHIP_ANALOGIX_DP, ROCKCHIP_CDN_DP,
ROCKCHIP_DW_HDMI_QP, ROCKCHIP_LVDS, ROCKCHIP_RGB) already select it,
which masks the gap in any configuration that enables one of them.
ROCKCHIP_INNO_HDMI is covered through its DRM_INNO_HDMI core option.

The same change was posted by Marius Dinu in March and dropped when
the failure stopped reproducing in his build. The failure is
configuration-dependent - any other enabled option that selects
DRM_BRIDGE_CONNECTOR hides it - and it still reproduces on current
drm-misc-next with the configuration described above.

Select DRM_BRIDGE_CONNECTOR like the other users do.

Fixes: d68ba7bac955 ("drm/rockchip: Add RK3588 DPTX output support")
Link: https://lore.kernel.org/r/aneNCDU12OzG99UX@venus # ack to handle this apart from the dw-dp series
Link: https://lore.kernel.org/r/20260319155051.1944-1-m95d+git@psihoexpert.ro # earlier submission by Marius Dinu
Signed-off-by: Igor Paunovic <royalnet026@gmail.com>
---
 drivers/gpu/drm/rockchip/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/rockchip/Kconfig b/drivers/gpu/drm/rockchip/Kconfig
index e7f49fe845ea..697c0748eeca 100644
--- a/drivers/gpu/drm/rockchip/Kconfig
+++ b/drivers/gpu/drm/rockchip/Kconfig
@@ -68,6 +68,7 @@ config ROCKCHIP_CDN_DP
 
 config ROCKCHIP_DW_DP
 	bool "Rockchip specific extensions for Synopsys DW DP"
+	select DRM_BRIDGE_CONNECTOR
 	help
 	  This selects support for Rockchip SoC specific extensions
 	  to enable Synopsys DesignWare Cores based DisplayPort transmit
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH 2/2] drm/rockchip: rk3066_hdmi: Add missing Kconfig selects
  2026-08-13 14:40 [PATCH 0/2] drm/rockchip: Add missing DRM_BRIDGE_CONNECTOR selects Igor Paunovic
  2026-08-13 14:40 ` [PATCH 1/2] drm/rockchip: dw_dp: Select DRM_BRIDGE_CONNECTOR Igor Paunovic
@ 2026-08-13 14:40 ` Igor Paunovic
  1 sibling, 0 replies; 3+ messages in thread
From: Igor Paunovic @ 2026-08-13 14:40 UTC (permalink / raw)
  To: Sandy Huang, Heiko Stübner, Andy Yan
  Cc: Maarten Lankhorst, Maxime Ripard, Thomas Zimmermann, David Airlie,
	Simona Vetter, Dmitry Baryshkov, Sebastian Reichel, Marius Dinu,
	dri-devel, linux-rockchip, linux-arm-kernel, linux-kernel,
	Igor Paunovic

rk3066_hdmi.c calls drm_bridge_connector_init(), but
ROCKCHIP_RK3066_HDMI selects neither DRM_BRIDGE_CONNECTOR nor
DRM_DISPLAY_HELPER, whose module carries the bridge-connector code. A
configuration with ROCKCHIP_RK3066_HDMI as the only enabled Rockchip
output option fails to link:

  aarch64-linux-gnu-ld: drivers/gpu/drm/rockchip/rk3066_hdmi.o: in function `rk3066_hdmi_bind':
  rk3066_hdmi.c:(.text+0x7a4): undefined reference to `drm_bridge_connector_init'
  aarch64-linux-gnu-ld: drivers/gpu/drm/rockchip/rk3066_hdmi.o: in function `rk3066_hdmi_bridge_atomic_enable':
  rk3066_hdmi.c:(.text+0xe74): undefined reference to `drm_atomic_helper_connector_hdmi_update_infoframes'

Select both, like ROCKCHIP_CDN_DP, ROCKCHIP_LVDS and ROCKCHIP_RGB do.
DRM_BRIDGE_CONNECTOR in turn selects DRM_DISPLAY_HDMI_STATE_HELPER,
which resolves the second symbol.

Fixes: 57d6811e8a6d ("drm/rockchip: rk3066_hdmi: switch to drm bridge")
Signed-off-by: Igor Paunovic <royalnet026@gmail.com>
---
 drivers/gpu/drm/rockchip/Kconfig | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/gpu/drm/rockchip/Kconfig b/drivers/gpu/drm/rockchip/Kconfig
index 697c0748eeca..4e58685f58ff 100644
--- a/drivers/gpu/drm/rockchip/Kconfig
+++ b/drivers/gpu/drm/rockchip/Kconfig
@@ -146,6 +146,8 @@ config ROCKCHIP_RGB
 config ROCKCHIP_RK3066_HDMI
 	bool "Rockchip specific extensions for RK3066 HDMI"
 	depends on DRM_ROCKCHIP
+	select DRM_DISPLAY_HELPER
+	select DRM_BRIDGE_CONNECTOR
 	help
 	  This selects support for Rockchip SoC specific extensions
 	  for the RK3066 HDMI driver. If you want to enable
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-08-13 14:40 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-13 14:40 [PATCH 0/2] drm/rockchip: Add missing DRM_BRIDGE_CONNECTOR selects Igor Paunovic
2026-08-13 14:40 ` [PATCH 1/2] drm/rockchip: dw_dp: Select DRM_BRIDGE_CONNECTOR Igor Paunovic
2026-08-13 14:40 ` [PATCH 2/2] drm/rockchip: rk3066_hdmi: Add missing Kconfig selects Igor Paunovic

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox