[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250731-ums9230-drm-v3-0-06d4f57c4b08@abscue.de>
Date: Thu, 31 Jul 2025 17:51:13 +0200
From: Otto Pflüger <otto.pflueger@...cue.de>
To: David Airlie <airlied@...il.com>, Simona Vetter <simona@...ll.ch>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Maxime Ripard <mripard@...nel.org>, Thomas Zimmermann <tzimmermann@...e.de>,
Rob Herring <robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>, Orson Zhai <orsonzhai@...il.com>,
Baolin Wang <baolin.wang@...ux.alibaba.com>,
Chunyan Zhang <zhang.lyra@...il.com>, Kevin Tang <kevin.tang@...soc.com>,
Liviu Dudau <Liviu.Dudau@....com>,
Russell King <rmk+kernel@....linux.org.uk>, Eric Anholt <eric@...olt.net>,
Kevin Tang <kevin3.tang@...il.com>
Cc: dri-devel@...ts.freedesktop.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org,
Otto Pflüger <otto.pflueger@...cue.de>,
Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
Subject: [PATCH v3 00/16] drm: sprd: Make the Unisoc DRM driver usable on
UMS9230
Fix some existing bugs that prevent the driver from working properly
and adapt the platform-specific code to support the UMS9230 SoC.
Signed-off-by: Otto Pflüger <otto.pflueger@...cue.de>
---
Changes in v3:
- Split the device tree clock name change into a separate patch
- Add Fixes tags for all patches that fix something
- Open-code drm_simple_encoder_init()
- Use devm_drm_bridge_alloc for bridge allocation
- To account for the new atomic commit order, do not rely on the DPU
being initialized during pre_enable
- Correct remaining uses of drm_gem_dma/drm_fb_dma to use the custom
buffer object type
- Return the sgtable instead of 0 in sprd_gem_object_get_sgtable when
the IOMMU is not in use
- Reword some commit messages
- Link to v2: https://lore.kernel.org/r/20250722-ums9230-drm-v2-0-054276ec213d@abscue.de
Changes in v2:
- Fix device tree binding syntax
- Use more descriptive clock names
- Keep IOMMU handle in DPU node and make the driver handle this instead
(otherwise the binding turns out to be incorrect for newer hardware)
- Remove all accesses to IOMMU registers from the DPU driver (after
observing that sharkl3 can also use sprd_iommu, I concluded that they
should not be needed at all)
- Fix container_of macros in sprd_dsi.h
- Link to v1: https://lore.kernel.org/r/20250719-ums9230-drm-v1-0-e4344a05eb3d@abscue.de
---
Otto Pflüger (16):
dt-bindings: display: sprd: adapt for UMS9230 support
dt-bindings: display: sprd: use more descriptive clock names
dt-bindings: display: sprd: add memory-region property
dt-bindings: display: sprd: allow attaching a DSI panel
drm: of: try binding port parent node instead of the port itself
drm: sprd: remove plane and CRTC destroy callbacks
drm: sprd: register a DSI bridge and initialize in pre_enable
drm: sprd: add support for UMS9230 DSI PLL
drm: sprd: fix DSI rate and PLL setup code
drm: sprd: select REGMAP in Kconfig
drm: sprd: add clock gating support
drm: sprd: add support for newer DPU versions
drm: sprd: always initialize DPU registers
drm: sprd: do not access IOMMU registers
drm: sprd: implement IOMMU-based buffer management
drm: sprd: add fbdev support
.../bindings/display/sprd/sprd,sharkl3-dpu.yaml | 32 +-
.../display/sprd/sprd,sharkl3-dsi-host.yaml | 42 ++-
drivers/gpu/drm/drm_of.c | 2 +-
drivers/gpu/drm/sprd/Kconfig | 3 +
drivers/gpu/drm/sprd/Makefile | 3 +-
drivers/gpu/drm/sprd/megacores_pll.c | 28 +-
drivers/gpu/drm/sprd/sprd_dpu.c | 72 +++--
drivers/gpu/drm/sprd/sprd_dpu.h | 1 +
drivers/gpu/drm/sprd/sprd_drm.c | 57 +++-
drivers/gpu/drm/sprd/sprd_drm.h | 10 +
drivers/gpu/drm/sprd/sprd_dsi.c | 221 ++++++++-----
drivers/gpu/drm/sprd/sprd_dsi.h | 20 +-
drivers/gpu/drm/sprd/sprd_gem.c | 343 +++++++++++++++++++++
drivers/gpu/drm/sprd/sprd_gem.h | 34 ++
14 files changed, 727 insertions(+), 141 deletions(-)
---
base-commit: 84b92a499e7eca54ba1df6f6c6e01766025943f1
change-id: 20250719-ums9230-drm-eb271289bfcd
Best regards,
--
Otto Pflüger <otto.pflueger@...cue.de>
Powered by blists - more mailing lists