Re: [PATCH 04/11] drm/panel: merge the drm_kms_helper module into the drm module
Maxime Ripard <[email protected]>
| Newsgroups | gmane.linux.kernel,gmane.comp.video.dri.devel |
|---|---|
| Message-ID | <20260817-lumpy-wooden-bird-4bdfb4@houat> |
On Fri, Aug 14, 2026 at 04:05:52PM +0200, Luca Ceresoli wrote: > Work is in progress to make every drm_panel automatically create a > panel_bridge [0][1]. > > This requires the panel code to call the drm_panel_bridge APIs. However > this would create a circular dependency loop on modular builds: > > __devm_drm_panel_alloc() [drm] > -> drm_panel_bridge_add() [drm_kms_helper] > -> drm_bridge.c APIs [drm] > > Moving just the panel_brige.o file from [drm_kms_helper] to [drm] does not > work because the panel bridge code uses the drm_atomic_helper and > drm_probe_helper which add further dependencies on symbols in the > [drm_kms_helper] module. > > So take a simple approach, and move the entire drm_kms_helper into the > [drm] module. > > Link: https://lore.kernel.org/all/emuj2innmp6zmzd7pyakqzjqpdzhly6qfhakya3ydwmd63pl26@5jwxaidpikjw/ [0] > Link: https://lore.kernel.org/lkml/[email protected]/ [1] > Signed-off-by: Luca Ceresoli <[email protected]> So, that's not an option. However, why do we need drm_panel_bridge_add() after this work is done? If we want to create a bridge for every panel, then the bridge implementation can live in drm_panel.c, which is part of the drm module. And we'd essentially move drm_panel_bridge into drm_panel.c, and make it private. Maxime
signature.asc
(application/pgp-signature, 273 B)
-----BEGIN PGP SIGNATURE----- iJUEABMJAB0WIQTkHFbLp4ejekA/qfgnX84Zoj2+dgUCaoLG+wAKCRAnX84Zoj2+ dutBAX0T7wF4IXEZg8CkFyzW4tBIz9tMu/FMHfXQc7tpKZYnKkZV7lXA//AIl7vk 0odgEEABgOFBtDMl9SoXyhqJFzh7YNbWgX2xm5TZ7YU3k3ncEWyI3o0hAye6MYH9 bsliHhEkbw== =4hMm -----END PGP SIGNATURE-----