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. 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]>
