mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v3 00/16] drm: sprd: Make the Unisoc DRM driver usable on UMS9230
@ 2025-07-31 15:51 Otto Pflüger
  2025-07-31 15:51 ` [PATCH v3 01/16] dt-bindings: display: sprd: adapt for UMS9230 support Otto Pflüger
                   ` (15 more replies)
  0 siblings, 16 replies; 21+ messages in thread
From: Otto Pflüger @ 2025-07-31 15:51 UTC (permalink / raw)
  To: David Airlie, Simona Vetter, Maarten Lankhorst, Maxime Ripard,
	Thomas Zimmermann, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Orson Zhai, Baolin Wang, Chunyan Zhang, Kevin Tang,
	Liviu Dudau, Russell King, Eric Anholt, Kevin Tang
  Cc: dri-devel, devicetree, linux-kernel, Otto Pflüger,
	Krzysztof Kozlowski

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@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@abscue.de>

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2025-08-06  8:02 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-07-31 15:51 [PATCH v3 00/16] drm: sprd: Make the Unisoc DRM driver usable on UMS9230 Otto Pflüger
2025-07-31 15:51 ` [PATCH v3 01/16] dt-bindings: display: sprd: adapt for UMS9230 support Otto Pflüger
2025-08-03 16:53   ` Rob Herring (Arm)
2025-08-06  8:01     ` Cixi Geng
2025-07-31 15:51 ` [PATCH v3 02/16] dt-bindings: display: sprd: use more descriptive clock names Otto Pflüger
2025-08-03 16:54   ` Rob Herring (Arm)
2025-08-06  8:01     ` Cixi Geng
2025-07-31 15:51 ` [PATCH v3 03/16] dt-bindings: display: sprd: add memory-region property Otto Pflüger
2025-07-31 15:51 ` [PATCH v3 04/16] dt-bindings: display: sprd: allow attaching a DSI panel Otto Pflüger
2025-07-31 15:51 ` [PATCH v3 05/16] drm: of: try binding port parent node instead of the port itself Otto Pflüger
2025-07-31 15:51 ` [PATCH v3 06/16] drm: sprd: remove plane and CRTC destroy callbacks Otto Pflüger
2025-07-31 15:51 ` [PATCH v3 07/16] drm: sprd: register a DSI bridge and initialize in pre_enable Otto Pflüger
2025-07-31 15:51 ` [PATCH v3 08/16] drm: sprd: add support for UMS9230 DSI PLL Otto Pflüger
2025-07-31 15:51 ` [PATCH v3 09/16] drm: sprd: fix DSI rate and PLL setup code Otto Pflüger
2025-07-31 15:51 ` [PATCH v3 10/16] drm: sprd: select REGMAP in Kconfig Otto Pflüger
2025-07-31 15:51 ` [PATCH v3 11/16] drm: sprd: add clock gating support Otto Pflüger
2025-07-31 15:51 ` [PATCH v3 12/16] drm: sprd: add support for newer DPU versions Otto Pflüger
2025-07-31 15:51 ` [PATCH v3 13/16] drm: sprd: always initialize DPU registers Otto Pflüger
2025-07-31 15:51 ` [PATCH v3 14/16] drm: sprd: do not access IOMMU registers Otto Pflüger
2025-07-31 15:51 ` [PATCH v3 15/16] drm: sprd: implement IOMMU-based buffer management Otto Pflüger
2025-07-31 15:51 ` [PATCH v3 16/16] drm: sprd: add fbdev support Otto Pflüger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®