All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 00/17] dmaengine: ti: Add support for BCDMA v2 and PKTDMA v2
@ 2025-06-23  5:36 Sai Sree Kartheek Adivi
  2025-06-23  5:37 ` [PATCH v3 01/17] dmaengine: ti: k3-udma: move macros to header file Sai Sree Kartheek Adivi
                   ` (16 more replies)
  0 siblings, 17 replies; 20+ messages in thread
From: Sai Sree Kartheek Adivi @ 2025-06-23  5:36 UTC (permalink / raw)
  To: Peter Ujfalusi, Vinod Koul, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Nishanth Menon, Santosh Shilimkar,
	Sai Sree Kartheek Adivi, dmaengine, devicetree, linux-kernel,
	linux-arm-kernel, praneeth, vigneshr, u-kumar1, a-chavda,
	p-mantena

This series adds support for the BCDMA_V2 and PKTDMA_V2 which is
introduced in AM62L.

The key differences between the existing DMA and DMA V2 are:
- Absence of TISCI: Instead of configuring via TISCI calls, direct
  register writes are required.
- Autopair: There is no longer a need for PSIL pair and instead AUTOPAIR
  bit needs to set in the RT_CTL register.
- Static channel mapping: Each channel is mapped to a single peripheral.
- Direct IRQs: There is no INT-A and interrupt lines from DMA are
  directly connected to GIC.
- Remote side configuration handled by DMA. So no need to write to PEER
  registers to START / STOP / PAUSE / TEARDOWN.

Changes from v1 to v2:
- Split refactoring of k3-udma driver into multiple commits
- Fix bcdma v2 and pktdma v2 dt-binding examples
- Fix compatibles in k3-udma-v2.c
- move udma_is_desc_really_done to k3-udma-common.c as the difference
  between k3-udma and k3-udma-v2 implementation is minor.
- remove udma_ prefix to function pointers in udma_dev
- reorder the commits to first refactor the existing code completely and
  then introduce k3-udma-v2 related commits.
- remove redundant includes in k3-udma-common.c
- remove ti_sci_ dependency for k3_ringacc in Kconfig
- refactor setup_resources functions to remove ti_sci_ code from common
  logic.
link to v1:
https://lore.kernel.org/linux-arm-kernel/20250428072032.946008-1-s-adivi@ti.com

Changes from v2 to v3:
- Fix checkpatch errors & spellings.
link to v2:
https://lore.kernel.org/linux-arm-kernel/20250612071521.3116831-1-s-adivi@ti.com

Sai Sree Kartheek Adivi (17):
  dmaengine: ti: k3-udma: move macros to header file
  dmaengine: ti: k3-udma: move structs and enums to header file
  dmaengine: ti: k3-udma: move static inline helper functions to header
    file
  dmaengine: ti: k3-udma: move descriptor management to k3-udma-common.c
  dmaengine: ti: k3-udma: move ring management functions to
    k3-udma-common.c
  dmaengine: ti: k3-udma: Add variant-specific function pointers to
    udma_dev
  dmaengine: ti: k3-udma: move udma utility functions to
    k3-udma-common.c
  dmaengine: ti: k3-udma: move resource management functions to
    k3-udma-common.c
  dmaengine: ti: k3-udma: refactor resource setup functions
  dmaengine: ti: k3-udma: move inclusion of k3-udma-private.c to
    k3-udma-common.c
  drivers: soc: ti: k3-ringacc: handle absence of tisci
  dt-bindings: dma: ti: Add K3 BCDMA V2
  dt-bindings: dma: ti: Add K3 PKTDMA V2
  dmaengine: ti: k3-psil-am62l: Add AM62Lx PSIL and PDMA data
  dmaengine: ti: k3-udma-v2: New driver for K3 BCDMA_V2
  dmaengine: ti: k3-udma-v2: Add support for PKTDMA V2
  dmaengine: ti: k3-udma-v2: Update glue layer to support PKTDMA V2

 .../bindings/dma/ti/k3-bcdma-v2.yaml          |   94 +
 .../bindings/dma/ti/k3-pktdma-v2.yaml         |   72 +
 drivers/dma/ti/Kconfig                        |   14 +-
 drivers/dma/ti/Makefile                       |    6 +-
 drivers/dma/ti/k3-psil-am62l.c                |  132 +
 drivers/dma/ti/k3-psil-priv.h                 |    1 +
 drivers/dma/ti/k3-psil.c                      |    1 +
 drivers/dma/ti/k3-udma-common.c               | 2555 ++++++++++++++
 drivers/dma/ti/k3-udma-glue.c                 |   91 +-
 drivers/dma/ti/k3-udma-private.c              |   48 +-
 drivers/dma/ti/k3-udma-v2.c                   | 1476 ++++++++
 drivers/dma/ti/k3-udma.c                      | 3090 +----------------
 drivers/dma/ti/k3-udma.h                      |  581 ++++
 drivers/soc/ti/Kconfig                        |    1 -
 drivers/soc/ti/k3-ringacc.c                   |  184 +-
 include/linux/soc/ti/k3-ringacc.h             |   20 +
 16 files changed, 5328 insertions(+), 3038 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/dma/ti/k3-bcdma-v2.yaml
 create mode 100644 Documentation/devicetree/bindings/dma/ti/k3-pktdma-v2.yaml
 create mode 100644 drivers/dma/ti/k3-psil-am62l.c
 create mode 100644 drivers/dma/ti/k3-udma-common.c
 create mode 100644 drivers/dma/ti/k3-udma-v2.c


base-commit: 4325743c7e209ae7845293679a4de94b969f2bef
-- 
2.34.1


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

end of thread, other threads:[~2025-06-23  6:38 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-23  5:36 [PATCH v3 00/17] dmaengine: ti: Add support for BCDMA v2 and PKTDMA v2 Sai Sree Kartheek Adivi
2025-06-23  5:37 ` [PATCH v3 01/17] dmaengine: ti: k3-udma: move macros to header file Sai Sree Kartheek Adivi
2025-06-23  5:37 ` [PATCH v3 02/17] dmaengine: ti: k3-udma: move structs and enums " Sai Sree Kartheek Adivi
2025-06-23  5:37 ` [PATCH v3 03/17] dmaengine: ti: k3-udma: move static inline helper functions " Sai Sree Kartheek Adivi
2025-06-23  5:37 ` [PATCH v3 04/17] dmaengine: ti: k3-udma: move descriptor management to k3-udma-common.c Sai Sree Kartheek Adivi
2025-06-23  5:37 ` [PATCH v3 05/17] dmaengine: ti: k3-udma: move ring management functions " Sai Sree Kartheek Adivi
2025-06-23  5:37 ` [PATCH v3 06/17] dmaengine: ti: k3-udma: Add variant-specific function pointers to udma_dev Sai Sree Kartheek Adivi
2025-06-23  5:37 ` [PATCH v3 07/17] dmaengine: ti: k3-udma: move udma utility functions to k3-udma-common.c Sai Sree Kartheek Adivi
2025-06-23  5:37 ` [PATCH v3 08/17] dmaengine: ti: k3-udma: move resource management " Sai Sree Kartheek Adivi
2025-06-23  5:37 ` [PATCH v3 09/17] dmaengine: ti: k3-udma: refactor resource setup functions Sai Sree Kartheek Adivi
2025-06-23  5:37 ` [PATCH v3 10/17] dmaengine: ti: k3-udma: move inclusion of k3-udma-private.c to k3-udma-common.c Sai Sree Kartheek Adivi
2025-06-23  5:37 ` [PATCH v3 11/17] drivers: soc: ti: k3-ringacc: handle absence of tisci Sai Sree Kartheek Adivi
2025-06-23  5:37 ` [PATCH v3 12/17] dt-bindings: dma: ti: Add K3 BCDMA V2 Sai Sree Kartheek Adivi
2025-06-23  6:37   ` Krzysztof Kozlowski
2025-06-23  5:37 ` [PATCH v3 13/17] dt-bindings: dma: ti: Add K3 PKTDMA V2 Sai Sree Kartheek Adivi
2025-06-23  6:38   ` Krzysztof Kozlowski
2025-06-23  5:37 ` [PATCH v3 14/17] dmaengine: ti: k3-psil-am62l: Add AM62Lx PSIL and PDMA data Sai Sree Kartheek Adivi
2025-06-23  5:37 ` [PATCH v3 15/17] dmaengine: ti: k3-udma-v2: New driver for K3 BCDMA_V2 Sai Sree Kartheek Adivi
2025-06-23  5:37 ` [PATCH v3 16/17] dmaengine: ti: k3-udma-v2: Add support for PKTDMA V2 Sai Sree Kartheek Adivi
2025-06-23  5:37 ` [PATCH v3 17/17] dmaengine: ti: k3-udma-v2: Update glue layer to support " Sai Sree Kartheek Adivi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.