[PATCH v2 00/16] Use drm_panel_get/put() in of_drm_find_panel() and its callers

Anusha Srivatsa asrivats at redhat.com
Thu Jun 19 12:15:52 PDT 2025


of_drm_find_panel() returns a pointer to a panel which the caller
holds to either do panel setup with the prepare(), enable() like
panel helpers or for APIs like devm_drm_panel_bridge_add(),
devm_drm_panel_bridge_add_typed() which expect a panel.
Either way, once the driver no longer needs the panel,
put it down with a drm_panel_put()

Signed-off-by: Anusha Srivatsa <asrivats at redhat.com>
---
Changes in v2:
- Get the missing reference in of_drm_find_panel()
- Add changes to all drivers that call of_drm_find_panel() 
- Link to v1: https://lore.kernel.org/r/20250604-of_drm_find_panel_part1-v1-0-c632e12e131d@redhat.com

---
Anusha Srivatsa (16):
      drm/panel: get/put panel reference in drm_panel_add/remove()
      drm/panel: get the panel returned by of_drm_find_panel()
      drm/panel/samsung-dsicm: Keep up with refcounting
      drm/panel/sun4i: Keep up with refcounting
      drm/panel/exynos: Keep up with refcounting
      drm/panel/rcar_du_encoder: Keep up with refcounting
      drm/panel/rz-du: Keep up with refcounting
      drm/bridge/lvds-codec: Keep up with refcounting
      drm/bridge/fsl-ldb: Keep up with refcounting.
      drm/panel/omapdrm: Keep up with refcounting
      drm/panel/sti: Keep up with refcounting
      drm/drm_of: Keep up with refcounting
      drm/fsl-dcu: Keep up with refcounting
      drm/mcde: Keep up with refcounting
      drm/bridge/analogix: Keep up with refcounting
      drm/tegra: Keep up with refcounting

 drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 1 +
 drivers/gpu/drm/bridge/fsl-ldb.c                   | 3 +++
 drivers/gpu/drm/bridge/lvds-codec.c                | 1 +
 drivers/gpu/drm/bridge/samsung-dsim.c              | 1 +
 drivers/gpu/drm/drm_of.c                           | 2 ++
 drivers/gpu/drm/drm_panel.c                        | 6 ++++++
 drivers/gpu/drm/exynos/exynos_drm_dpi.c            | 1 +
 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c          | 1 +
 drivers/gpu/drm/mcde/mcde_dsi.c                    | 5 ++++-
 drivers/gpu/drm/omapdrm/dss/output.c               | 6 ++++--
 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c  | 2 ++
 drivers/gpu/drm/renesas/rz-du/rzg2l_du_encoder.c   | 1 +
 drivers/gpu/drm/sti/sti_dvo.c                      | 2 ++
 drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c             | 2 ++
 drivers/gpu/drm/tegra/dsi.c                        | 1 +
 15 files changed, 32 insertions(+), 3 deletions(-)
---
base-commit: 60ba94338047bb5410a3626ced3380afe9285ed8
change-id: 20250613-b4-of_drm_find_panel_part1-ad57c4f88a0c

Best regards,
-- 
Anusha Srivatsa <asrivats at redhat.com>




More information about the linux-arm-kernel mailing list