[PATCH v3 00/16] drm: sprd: Make the Unisoc DRM driver usable on UMS9230
Otto Pflüger
otto.pflueger at abscue.de
Thu Jul 31 15:51:13 UTC 2025
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 at abscue.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 at abscue.de>
More information about the dri-devel
mailing list