[PATCH v4 00/19] drm: managed encoder/plane/crtc allocation

Philipp Zabel p.zabel at pengutronix.de
Tue Dec 8 15:54:32 UTC 2020


Hi,

this is an update of the drmm_(simple_)encoder_alloc(),
drmm_universal_plane_alloc(), and drmm_crtc_alloc_with_plane()
functions in v3 [1] together with the imx-drm managed allocation
conversion from [2] as an example usage.
a bit.

Changes since v3:
 - Allow encoder_funcs to be NULL and let drmm_encoder_alloc() accept a
   NULL value for the funcs parameter. This allows to
 - drop the now useless drmm_simple_encoder_funcs_empty structure.
 - Reorder and squash the imx-drm managed allocation conversion patches
   to use the new functions directly.
 - Fold functions into bind callbacks where they are the only remaining
   call.

[1] https://lore.kernel.org/dri-devel/20200911135724.25833-1-p.zabel@pengutronix.de/
[2] https://lore.kernel.org/dri-devel/20200911133855.29801-1-p.zabel@pengutronix.de/

regards
Philipp

Philipp Zabel (19):
  drm/encoder: make encoder control functions optional
  drm: add drmm_encoder_alloc()
  drm/simple_kms_helper: add drmm_simple_encoder_alloc()
  drm/plane: add drmm_universal_plane_alloc()
  drm/crtc: add drmm_crtc_alloc_with_planes()
  drm/imx: dw_hdmi-imx: move initialization into probe
  drm/imx: imx-ldb: use local connector variable
  drm/imx: imx-ldb: move initialization into probe
  drm/imx: imx-tve: use local encoder and connector variables
  drm/imx: imx-tve: move initialization into probe
  drm/imx: imx-tve: use devm_clk_register
  drm/imx: parallel-display: use local bridge and connector variables
  drm/imx: parallel-display: move initialization into probe
  drm/imx: dw_hdmi-imx: use drm managed resources
  drm/imx: imx-ldb: use drm managed resources
  drm/imx: imx-tve: use drm managed resources
  drm/imx: parallel-display: use drm managed resources
  drm/imx: ipuv3-plane: use drm managed resources
  drm/imx: ipuv3-crtc: use drm managed resources

 drivers/gpu/drm/drm_crtc.c              | 116 ++++++++++++++++-----
 drivers/gpu/drm/drm_encoder.c           | 105 ++++++++++++++-----
 drivers/gpu/drm/drm_mode_config.c       |   5 +-
 drivers/gpu/drm/drm_plane.c             | 126 +++++++++++++++++------
 drivers/gpu/drm/drm_simple_kms_helper.c |   9 ++
 drivers/gpu/drm/imx/dw_hdmi-imx.c       |  95 ++++++++---------
 drivers/gpu/drm/imx/imx-ldb.c           | 109 +++++++++++---------
 drivers/gpu/drm/imx/imx-tve.c           | 109 ++++++++++----------
 drivers/gpu/drm/imx/ipuv3-crtc.c        | 131 ++++++++----------------
 drivers/gpu/drm/imx/ipuv3-plane.c       |  69 ++++++-------
 drivers/gpu/drm/imx/ipuv3-plane.h       |   3 -
 drivers/gpu/drm/imx/parallel-display.c  |  91 ++++++++--------
 include/drm/drm_crtc.h                  |  33 ++++++
 include/drm/drm_encoder.h               |  32 +++++-
 include/drm/drm_plane.h                 |  42 ++++++++
 include/drm/drm_simple_kms_helper.h     |  24 +++++
 16 files changed, 684 insertions(+), 415 deletions(-)

-- 
2.20.1



More information about the dri-devel mailing list