[PATCH v6 0/4] drm: Fix bug in panel driver, update MIPI support macros
Doug Anderson
dianders at chromium.org
Tue Jul 29 15:42:58 UTC 2025
Hi,
On Mon, Jul 21, 2025 at 6:53 PM Brigham Campbell <me at brighamcampbell.com> wrote:
>
> This series removes the unintuitive mipi_dsi_generic_write_seq() macro
> and related mipi_dsi_generic_write_chatty() method from the drm
> subsystem. This is in accordance with a TODO item from Douglas Anderson
> in the drm subsystem documentation. Tejas Vipin (among others) has
> largely spearheaded this effort up until now, converting MIPI panel
> drivers one at a time.
>
> The second patch of the series removes the last remaining references to
> mipi_dsi_generic_write_seq() in the jdi-lpm102a188a driver and updates
> the driver to use the undeprecated _multi variants of MIPI functions. It
> fixes a bug in the driver's unprepare function and cleans up duplicated
> code using the new mipi_dsi_dual* macros introduced in the first patch.
>
> changes to v6:
> - Fix various style and kerneldoc issues in patch 1/4
> - Fix typo mpi_dsi_dual... -> mipi_dsi_dual...
> - Fix incorrectly named "data" and "len" variables
> - Make _seq argument of mipi_dsi_dual_dcs_write_seq_multi macro
> variadic
> - Remove duplicate definition of mipi_dsi_dual_dcs_write_seq_multi
> macro from novatek display driver
>
> changes to v5:
> - Rework mipi_dsi_dual to explicitly not support passing macros into
> _func and add "dual" variants of the generic and dcs write macros.
> - Make jdi-lpm102a188a use the new
> mipi_dsi_dual_generic_write_seq_multi macro.
> - Make local struct variable in jdi-lpm102a188a conform to reverse
> christmas tree order.
>
> changes to v4:
> - Fix whitespace (I forgot to run checkpatch. Thanks for your patience
> as I familiarize myself with the kernel development process)
> - Initialize mipi_dsi_multi_context struct
>
> changes to v3:
> - Define new mipi_dsi_dual macro in drm_mipi_dsi.h to reduce code
> duplication.
> - Fix bug in lpm102a188a panel driver's unprepare function which causes
> it to return a nonsensical value.
> - Make lpm102a188a panel driver's unprepare function send "display off"
> and "enter sleep mode" commands to both serial interfaces regardless
> of whether an error occurred when sending the last command.
>
> changes to v2:
> - Remove all usages of deprecated MIPI functions from jdi-lpm102a188a
> driver instead of just mipi_dsi_generic_write_seq().
> - Update TODO item in drm documentation instead of removing it
> entirely.
>
> Brigham Campbell (4):
> drm: Create mipi_dsi_dual* macros
> drm/panel: jdi-lpm102a188a: Fix bug and clean up driver
> drm: Remove unused MIPI write seq and chatty functions
> drm: docs: Update task from drm TODO list
>
> Documentation/gpu/todo.rst | 22 +-
> drivers/gpu/drm/drm_mipi_dsi.c | 82 +-
> drivers/gpu/drm/panel/panel-jdi-lpm102a188a.c | 196 ++---
> drivers/gpu/drm/panel/panel-novatek-nt36523.c | 804 +++++++++---------
> include/drm/drm_mipi_dsi.h | 118 ++-
> 5 files changed, 614 insertions(+), 608 deletions(-)
Pushed all 4 to drm-misc-next. Technically one of them has a minor
bugfix as mentioned in the commit message, but it's VERY minor (I
didn't even think it needed a Fixes tag) so I didn't worry about
trying to get it into drm-misc-fixes...
[1/4] drm: Create mipi_dsi_dual* macros
commit: d94a2a00d2b8878678607c2969fee3b4e59126cb
[2/4] drm/panel: jdi-lpm102a188a: Fix bug and clean up driver
commit: a6adf47d30cccaf3c1936ac9de94948c140e17dd
[3/4] drm: Remove unused MIPI write seq and chatty functions
commit: 79b6bb18f849818140dd351f6e76a097efe99e9f
[4/4] drm: docs: Update task from drm TODO list
commit: 85c23f28905cf20a86ceec3cfd7a0a5572c9eb13
-Doug
More information about the dri-devel
mailing list