From: Thomas Zimmermann <tzimmermann@suse.de>
To: david@lechnology.com, javierm@redhat.com, lanzano.alex@gmail.com,
kamlesh.gurudasani@gmail.com, architanant5@gmail.com,
wens@kernel.org, mripard@kernel.org,
maarten.lankhorst@linux.intel.com, simona@ffwll.ch,
airlied@gmail.com
Cc: dri-devel@lists.freedesktop.org, Thomas Zimmermann <tzimmermann@suse.de>
Subject: [PATCH v3 00/16] drm/mipi-dbi: Replace simple-display helpers with regular atomic helpers
Date: Thu, 19 Mar 2026 16:59:36 +0100 [thread overview]
Message-ID: <20260319160110.109610-1-tzimmermann@suse.de> (raw)
We keep getting new drivers based on the obsolete simple-display pipeline,
such as the recent driver for st7789v panels. [1] But submitters cannot
know, as the simple-display helpers are fully documented and still used
in several places.
Hence, convert all the mipi-dbi drivers over to regular atomic helpers
and remove simple-display support from mipi-dbi in this series. Then
undocument the helpers and add TODO items for final their removal.
Patch 1 changes the mode-setting logic to get CRTC and panel updates into
the correct order. This patch is probably the most fragile change in the
series.
Patches 2 and 3 prepare mipi-dbi to allow for atomic helpers to be used.
Patches 5 to 14 update mipi-dbi drivers one by one. The st7735r driver
requires some additional minor preparation. Overall, the refactoring is
always the same.
Patches 15 and 16 clean up mipi-dbi and the simple-display helpers.
These patches need some testing, as I can only compile them. At least
one of the drivers should be tried on hardware. Regressions should be
easy to fix, as these changes are mostly refactoring jobs.
[1] https://lore.kernel.org/dri-devel/20260221071351.22772-1-architanant5@gmail.com/
v3:
- fix uninitialized variables (David)
- improve documentation (David)
- clean up
v2:
- fix connector initialization (David)
- remove unused variables (David)
- clean up
Thomas Zimmermann (16):
drm/mipi-dbi: Only modify planes on enabled CRTCs
drm/mipi-dbi: Support custom pipelines with drm_mipi_dbi_dev_init()
drm/mipi-dbi: Provide callbacks for atomic interfaces
drm/hx8357d: Use regular atomic helpers; drop simple-display helpers
drm/ili9163: Use regular atomic helpers; drop simple-display helpers
drm/ili9225: Use regular atomic helpers; drop simple-display helpers
drm/ili9341: Use regular atomic helpers; drop simple-display helpers
drm/ili9486: Use regular atomic helpers; drop simple-display helpers
drm/mi0283qt: Use regular atomic helpers; drop simple-display helpers
drm/panel-mipi-dbi: Use regular atomic helpers; drop simple-display
helpers
drm/st7586: Use regular atomic helpers; drop simple-display helpers
drm/st7735r: Rename struct st7735r_priv to struct st7735r_device
drm/st7735r: Rename priv variable to st7735r
drm/st7735r: Use regular atomic helpers; drop simple-display helpers
drm/mipi-dbi: Remove simple-display helpers from mipi-dbi
drm/simple-kms: Deprecate simple-kms helpers
Documentation/gpu/drm-kms-helpers.rst | 12 -
Documentation/gpu/introduction.rst | 6 -
Documentation/gpu/todo.rst | 32 ++
drivers/gpu/drm/drm_crtc.c | 6 +-
drivers/gpu/drm/drm_gem_atomic_helper.c | 22 --
drivers/gpu/drm/drm_mipi_dbi.c | 376 ++++++++----------------
drivers/gpu/drm/drm_modeset_helper.c | 3 -
drivers/gpu/drm/drm_simple_kms_helper.c | 83 ------
drivers/gpu/drm/sitronix/st7586.c | 185 +++++++++---
drivers/gpu/drm/sitronix/st7735r.c | 142 +++++++--
drivers/gpu/drm/tiny/hx8357d.c | 138 ++++++++-
drivers/gpu/drm/tiny/ili9163.c | 138 ++++++++-
drivers/gpu/drm/tiny/ili9225.c | 192 +++++++++---
drivers/gpu/drm/tiny/ili9341.c | 138 ++++++++-
drivers/gpu/drm/tiny/ili9486.c | 139 ++++++++-
drivers/gpu/drm/tiny/mi0283qt.c | 138 ++++++++-
drivers/gpu/drm/tiny/panel-mipi-dbi.c | 141 +++++++--
include/drm/drm_mipi_dbi.h | 145 +++++----
include/drm/drm_simple_kms_helper.h | 216 +-------------
19 files changed, 1397 insertions(+), 855 deletions(-)
base-commit: 0009f17b2480f65a0f569c87c8a99f95d7aefd0e
prerequisite-patch-id: c67e5d886a47b7d0266d81100837557fda34cb24
prerequisite-patch-id: a5a973e527c88a5b47053d7a72aefe0b550197cb
prerequisite-patch-id: 719d09751d38f5da743beed6266585ee063e1e29
prerequisite-patch-id: 5030de433a01c2e99056cadb676a8e2ba35f055a
prerequisite-patch-id: f7831e8fe81681bbe7fcd7b8455753f5ab4ada2d
--
2.53.0
next reply other threads:[~2026-03-19 16:02 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-19 15:59 Thomas Zimmermann [this message]
2026-03-19 15:59 ` [PATCH v3 01/16] drm/mipi-dbi: Only modify planes on enabled CRTCs Thomas Zimmermann
2026-03-21 18:15 ` Claude review: " Claude Code Review Bot
2026-03-19 15:59 ` [PATCH v3 02/16] drm/mipi-dbi: Support custom pipelines with drm_mipi_dbi_dev_init() Thomas Zimmermann
2026-03-21 18:15 ` Claude review: " Claude Code Review Bot
2026-03-19 15:59 ` [PATCH v3 03/16] drm/mipi-dbi: Provide callbacks for atomic interfaces Thomas Zimmermann
2026-03-21 18:15 ` Claude review: " Claude Code Review Bot
2026-03-19 15:59 ` [PATCH v3 04/16] drm/hx8357d: Use regular atomic helpers; drop simple-display helpers Thomas Zimmermann
2026-03-21 18:15 ` Claude review: " Claude Code Review Bot
2026-03-19 15:59 ` [PATCH v3 05/16] drm/ili9163: " Thomas Zimmermann
2026-03-21 18:15 ` Claude review: " Claude Code Review Bot
2026-03-19 15:59 ` [PATCH v3 06/16] drm/ili9225: " Thomas Zimmermann
2026-03-21 18:15 ` Claude review: " Claude Code Review Bot
2026-03-19 15:59 ` [PATCH v3 07/16] drm/ili9341: " Thomas Zimmermann
2026-03-21 18:15 ` Claude review: " Claude Code Review Bot
2026-03-19 15:59 ` [PATCH v3 08/16] drm/ili9486: " Thomas Zimmermann
2026-03-21 18:15 ` Claude review: " Claude Code Review Bot
2026-03-19 15:59 ` [PATCH v3 09/16] drm/mi0283qt: " Thomas Zimmermann
2026-03-21 18:15 ` Claude review: " Claude Code Review Bot
2026-03-19 15:59 ` [PATCH v3 10/16] drm/panel-mipi-dbi: " Thomas Zimmermann
2026-03-21 18:15 ` Claude review: " Claude Code Review Bot
2026-03-19 15:59 ` [PATCH v3 11/16] drm/st7586: " Thomas Zimmermann
2026-03-21 18:15 ` Claude review: " Claude Code Review Bot
2026-03-19 15:59 ` [PATCH v3 12/16] drm/st7735r: Rename struct st7735r_priv to struct st7735r_device Thomas Zimmermann
2026-03-21 18:15 ` Claude review: " Claude Code Review Bot
2026-03-19 15:59 ` [PATCH v3 13/16] drm/st7735r: Rename priv variable to st7735r Thomas Zimmermann
2026-03-21 18:15 ` Claude review: " Claude Code Review Bot
2026-03-19 15:59 ` [PATCH v3 14/16] drm/st7735r: Use regular atomic helpers; drop simple-display helpers Thomas Zimmermann
2026-03-21 18:15 ` Claude review: " Claude Code Review Bot
2026-03-19 15:59 ` [PATCH v3 15/16] drm/mipi-dbi: Remove simple-display helpers from mipi-dbi Thomas Zimmermann
2026-03-21 18:15 ` Claude review: " Claude Code Review Bot
2026-03-19 15:59 ` [PATCH v3 16/16] drm/simple-kms: Deprecate simple-kms helpers Thomas Zimmermann
2026-03-21 18:15 ` Claude review: " Claude Code Review Bot
2026-03-21 18:15 ` Claude review: drm/mipi-dbi: Replace simple-display helpers with regular atomic helpers Claude Code Review Bot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260319160110.109610-1-tzimmermann@suse.de \
--to=tzimmermann@suse.de \
--cc=airlied@gmail.com \
--cc=architanant5@gmail.com \
--cc=david@lechnology.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=javierm@redhat.com \
--cc=kamlesh.gurudasani@gmail.com \
--cc=lanzano.alex@gmail.com \
--cc=maarten.lankhorst@linux.intel.com \
--cc=mripard@kernel.org \
--cc=simona@ffwll.ch \
--cc=wens@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox