Re: [PATCH 0/9] drm: replace simple display pipe users with atomic helpers
Thomas Zimmermann <[email protected]> Mon, 6 Jul 2026 09:27:47 +0200
| Newsgroups | org.ozlabs.lists.linux-aspeed,dev.linux.lists.imx,org.freedesktop.lists.dri-devel,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-kernel,org.xenproject.lists.xen-devel |
|---|---|
| Message-ID | <[email protected]> |
Hi Am 04.07.26 um 20:31 schrieb Ze Huang: > struct drm_simple_display_pipe was meant to simplify simple DRM > drivers, but instead adds an extra wrapper around normal DRM atomic > helper setup. As noted in Documentation/gpu/todo.rst, remaining users > should be converted to regular atomic helpers and stop depending on the > simple-KMS interfaces. > > This series converts the following drivers: > > - arcpgu > - aspeed > - imx lcdc > - mcde > - pl111 > - gm12u320 > - repaper > - tve200 > - xen frontend > > Each patch replaces drm_simple_display_pipe_init() with explicit > primary plane, CRTC and encoder setup, and moves the old simple-pipe > callbacks into regular plane and CRTC helper callbacks named according > to local driver conventions. > > The conversions preserve helper behavior that used to be implicit in > drm_simple_kms_helper.c, including plane-state validation, CRTC > primary-plane checks, affected-plane propagation, framebuffer prepare > handling, and existing event/vblank flow where applicable. > > Result is less helper indirection and more explicit driver-side atomic > wiring, with no remaining simple-KMS dependency in these drivers. > > These changes are build-tested only. No hardware testing has been > performed on the affected devices. Thanks a lot for the series. That's quite a nice cleanup. Did you use any AI to create these patches? Best regards Thomas > > This series is based on drm-next-2026-06-27. > > Thanks, > Ze Huang > > Signed-off-by: Ze Huang <[email protected]> > --- > Ze Huang (9): > drm/arcpgu: replace struct drm_simple_display_pipe with regular atomic helpers > drm/aspeed: replace struct drm_simple_display_pipe with regular atomic helpers > drm/imx: replace struct drm_simple_display_pipe with regular atomic helpers > drm/mcde: replace struct drm_simple_display_pipe with regular atomic helpers > drm/pl111: replace struct drm_simple_display_pipe with regular atomic helpers > drm/gm12u320: replace struct drm_simple_display_pipe with regular atomic helpers > drm/repaper: replace struct drm_simple_display_pipe with regular atomic helpers > drm/tve200: replace struct drm_simple_display_pipe with regular atomic helpers > drm/xen: replace struct drm_simple_display_pipe with regular atomic helpers > > drivers/gpu/drm/aspeed/aspeed_gfx.h | 5 +- > drivers/gpu/drm/aspeed/aspeed_gfx_crtc.c | 156 ++++++++++++++++------ > drivers/gpu/drm/aspeed/aspeed_gfx_drv.c | 3 +- > drivers/gpu/drm/imx/lcdc/imx-lcdc.c | 178 ++++++++++++++++++------- > drivers/gpu/drm/mcde/mcde_display.c | 162 ++++++++++++++++------ > drivers/gpu/drm/mcde/mcde_drm.h | 6 +- > drivers/gpu/drm/mcde/mcde_drv.c | 3 +- > drivers/gpu/drm/pl111/pl111_display.c | 174 ++++++++++++++++++------ > drivers/gpu/drm/pl111/pl111_drm.h | 5 +- > drivers/gpu/drm/pl111/pl111_drv.c | 3 +- > drivers/gpu/drm/tiny/arcpgu.c | 165 ++++++++++++++++++----- > drivers/gpu/drm/tiny/gm12u320.c | 128 ++++++++++++++---- > drivers/gpu/drm/tiny/repaper.c | 130 ++++++++++++++---- > drivers/gpu/drm/tve200/tve200_display.c | 221 +++++++++++++++++++++---------- > drivers/gpu/drm/tve200/tve200_drm.h | 6 +- > drivers/gpu/drm/tve200/tve200_drv.c | 17 ++- > drivers/gpu/drm/xen/xen_drm_front.h | 6 +- > drivers/gpu/drm/xen/xen_drm_front_kms.c | 177 +++++++++++++++++++------ > 18 files changed, 1164 insertions(+), 381 deletions(-) > --- > base-commit: 3696d07837d1df13a5603d77f667685e7dfb3c53 > change-id: 20260704-drm-simple-kms-removal-01a031c6a129 > > Best regards, > -- > Ze Huang <[email protected]> > -- -- Thomas Zimmermann Graphics Driver Developer SUSE Software Solutions Germany GmbH Frankenstr. 146, 90461 Nürnberg, Germany, www.suse.com GF: Jochen Jaser, Andrew McDonald, Werner Knoblich, (HRB 36809, AG Nürnberg)