[PATCH 0/4] drm/plane: Remove drm_plane_init(), plus other cleanups
Thomas Zimmermann
tzimmermann at suse.de
Fri Sep 9 10:59:43 UTC 2022
This patchset does cleanups to the plane code, most noteably it removes
drm_plane_init(). The function is a small wrapper, which can easily be
inlined into the few callers. Patch #1 fixes this.
The other clean-up patches #2 to #4 affect plane creation. Modesetting
helpers and nouveau share some plane-allocation code that can be shared as
helper function. While the function is already outdated, it's now at least
well documented. As suggested by Daniel, patch #3 adds a warning to
non-atomic plane helpers when they are being called from atomic drivers.
Patch #4 adds an initializer macro for non-atomic plane functions. It
should not be used in new drivers, but at least documents the current
practice.
Tested with nouveau on Nvidia G72 hardware.
A possible next step would be the inlining of drm_crtc_init() and the
removal of drm_plane.format_default.
Thomas Zimmermann (4):
drm/plane: Remove drm_plane_init()
drm/plane: Allocate planes with drm_universal_plane_alloc()
drm/plane-helper: Warn if atomic drivers call non-atomic helpers
drm/plane-helper: Provide DRM_PLANE_NON_ATOMIC_FUNCS initializer macro
drivers/gpu/drm/drm_modeset_helper.c | 68 +++++++++------------
drivers/gpu/drm/drm_plane.c | 70 ++++++++++++----------
drivers/gpu/drm/drm_plane_helper.c | 10 ++++
drivers/gpu/drm/nouveau/dispnv04/crtc.c | 45 +++++---------
drivers/gpu/drm/nouveau/dispnv04/overlay.c | 13 ++--
drivers/gpu/drm/shmobile/shmob_drm_plane.c | 7 ++-
drivers/gpu/drm/tilcdc/tilcdc_plane.c | 9 ++-
include/drm/drm_plane.h | 52 +++++++++++++---
include/drm/drm_plane_helper.h | 12 ++++
9 files changed, 162 insertions(+), 124 deletions(-)
base-commit: f2c3a05d33693ad51996fa7d12d3b2d4b0f372eb
prerequisite-patch-id: c2b2f08f0eccc9f5df0c0da49fa1d36267deb11d
prerequisite-patch-id: c67e5d886a47b7d0266d81100837557fda34cb24
prerequisite-patch-id: 3f204510fcbf9530d6540bd8e6128cce598988b6
--
2.37.2
More information about the dri-devel
mailing list