linux/drivers/dma
Linus Torvalds ae3690eb2a dmaengine updates for v7.4
Core:
   - Better document descriptor flags and clarify ordering rules around
     cookie completion
   - New APIs to start hiding dmaengine guts so that we can start making
     them internal
 
  New Support:
   - Nord and Maili GPI DMAengine support
   - DW axi dma updates and support for UltraRISC DP1000 controller
   - Apple M3 generation ADMACs support
   - Amlogic A9 SoC DMA controller driver
   - Sun6i refactoring and support for Allwinner A733 DMA controller
 
  Updates:
   - Freescale device_prep_peripheral_dma_vec support and dynamic
     scatter/gather chaining
   - TI crossbar and cppi DT schema conversion
   - zynqmp driver updates for error patch handling
   - Link list handling improvements for DW edma driver
   - ST dma40 improvements and corner case handling
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEE+vs47OPLdNbVcHzyfBQHDyUjg0cFAmriBLYACgkQfBQHDyUj
 g0edThAApa2lWUowEsgkLYAEX+ufHWqlBlNtXTpBwSL6XKJ3yPupvaq1aR3lquud
 NZ8TS5VnVpnYWtcog04f/murYh9NEX/YHJm9n/FrS+y0caq/P6xpCi4Uozb8hSCS
 JlLW8nQFYTBugx/YJ7EZ0YsWB4QPY6q6KOkOQnJYLvpuTliTxu71lPSe4izk4tMD
 zz7t2vUXpKz2L+oD0LpJ37gqYMxz6wSeRFbBP+YiEc/x0GLVK2xkdoKvagHSC0tb
 QVc8pztUviwBWlqmWIeoHUikoboKKift61TLBHU5cMNEv3+M8I3hORHsWSlhQWBo
 d3pJbCdLPjt8CAX2jeWpI97hKjSxrhtpox8p7hzCZX9FLvr0SPwaYsapHPJzjfLc
 09BQOgRi6KGuWt/4GWpBLZtFSR8y6wOOqrdVNRT0QS1sqqiBd7LWYPFboWo+WZFx
 Rc2DPhmWnmZyRO391xUNXjxBDxdERKUHi57VCX1R5946NH8Ve+ga1y9hR2hQMKu+
 TqrwVUc+JgHqze4C4JjLEkgAgVfX8A1vRdTRA9Xa3f2kvuSmdB6gq/v2057hJz3H
 uH6pMDhX0PH8QxB0Tx/YTWeJOWztvmqBl3XeuqmVSUzLHZiXgUEKHbROYIyIvu1k
 5/uZtlDcV4Tl51r2Adl6aPqZlvsljHtcS9pJeP4aHs5rFA00xY0=
 =2PH5
 -----END PGP SIGNATURE-----

Merge tag 'dmaengine-7.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine

Pull dmaengine updates from Vinod Koul:
 "This consists of start of work for hiding dmaengine internals and
  adding new APIs for dmaengine calls. Also couple of drivers and device
  and lot of updates esp AI-assisted improvements to drivers.

  Core:
   - Better document descriptor flags and clarify ordering rules around
     cookie completion
   - New APIs to start hiding dmaengine guts so that we can start making
     them internal

  New Support:
   - Nord and Maili GPI DMAengine support
   - DW axi dma updates and support for UltraRISC DP1000 controller
   - Apple M3 generation ADMACs support
   - Amlogic A9 SoC DMA controller driver
   - Sun6i refactoring and support for Allwinner A733 DMA controller

  Updates:
   - Freescale device_prep_peripheral_dma_vec support and dynamic
     scatter/gather chaining
   - TI crossbar and cppi DT schema conversion
   - zynqmp driver updates for error patch handling
   - Link list handling improvements for DW edma driver
   - ST dma40 improvements and corner case handling"

* tag 'dmaengine-7.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine: (149 commits)
  dmaengine: amlogic: Fix regmap error check issue
  dmaengine: ste_dma40: Preserve the LCPA I/O address space
  docs: dmaengine: clarify ordering rules around cookie completion
  dmaengine: move driver-private helpers out of include/linux/dmaengine.h
  dmaengine: add dmaengine_desc_set_callback() helper
  dmaengine: add dmaengine_get_provider_device() API
  dmaengine: add dmaengine_get_max_xor() helper
  dmaengine: add dmaengine_get_cap_mask() and dmaengine_has_cap() helpers
  dmaengine: add dmaengine_get_copy_align() and related alignment getter helpers
  dmaengine: add dmaengine_is_*_aligned() helpers for DMA consumers
  dmaengine: add dmaengine_prep_dma_(pq|pq_val|interrupt|xor)() API
  dmaengine: sh: rcar-dmac: Add support for R-Car Gen5 SoCs
  dt-bindings: renesas,rcar-dmac: Add support for R-Car X5H SoC
  dmaengine: sh: rcar-dmac: SMMU doesn't need IPMMU workaround
  dmaengine: sh: rcar-dmac: fix style in struct initialization
  dmaengine: qcom: bam_dma: free interrupt before the clock in error path
  dmaengine: ppc4xx: fix typo "contoller" in comment
  dmaengine: ste_dma40: Search all blocks for fixed logical channels
  dt-bindings: dma: dma40: Restore disabled-channels
  dmaengine: ste_dma40: Validate memcpy configuration
  ...
2026-10-28 07:27:09 -10:00
..
amd Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
bestcomm dmaengine: bestcomm: Enable compile testing 2026-10-05 16:22:30 +02:00
dw dmaengine: move driver-private helpers out of include/linux/dmaengine.h 2026-10-09 11:53:04 +02:00
dw-axi-dmac dmaengine: add (dmaengine|vchan)_chan_dev() helper 2026-09-15 21:54:16 +05:30
dw-edma dmaengine: dw-edma: Account for the MSI vector offset 2026-10-05 16:10:26 +02:00
fsl-dpaa2-qdma Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
hsu treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
idxd dmaengine updates for v7.3 2026-08-24 12:21:15 -07:00
ioat dmaengine: ioat: use sysfs_emit() in per-channel sysfs show() 2026-10-05 15:44:12 +02:00
lgm treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
loongson dmaengine: loongson: use named initializers for acpi_device_id 2026-10-05 16:16:52 +02:00
mediatek dmaengine: mediatek: hsdma: fix runtime PM leak on init failure 2026-09-09 19:06:49 +05:30
ppc4xx dmaengine: ppc4xx: fix typo "contoller" in comment 2026-10-07 12:57:58 +02:00
qcom dmaengine: qcom: bam_dma: free interrupt before the clock in error path 2026-10-08 14:39:42 +02:00
sf-pdma Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
sh dmaengine: sh: rcar-dmac: Add support for R-Car Gen5 SoCs 2026-10-08 21:40:02 +02:00
stm32 dmaengine: add (dmaengine|vchan)_chan_dev() helper 2026-09-15 21:54:16 +05:30
ti dmaengine updates for v7.4 2026-10-28 07:27:09 -10:00
xilinx dmaengine updates for v7.4 2026-10-28 07:27:09 -10:00
acpi-dma.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
altera-msgdma.c dmaengine: altera-msgdma: initialize state before requesting IRQ 2026-09-09 19:06:52 +05:30
amba-pl08x.c dmaengine: pl08x: Create debugfs stats file under device folder 2026-09-03 19:29:50 +05:30
amlogic-dma.c dmaengine: amlogic: Fix regmap error check issue 2026-10-17 10:46:26 +01:00
apple-admac.c dmaengine: apple-admac: Add M3 generation ADMACs 2026-09-09 19:06:50 +05:30
arm-dma350.c dmaengine: vchan: add vchan_chan_name() to get channel device name 2026-09-15 21:54:15 +05:30
at_hdmac.c dmaengine: add (dmaengine|vchan)_chan_dev() helper 2026-09-15 21:54:16 +05:30
at_xdmac.c dmaengine: add (dmaengine|vchan)_chan_dev() helper 2026-09-15 21:54:16 +05:30
bcm-sba-raid.c raid6: hide internals 2026-05-28 21:24:54 -07:00
bcm2835-dma.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
cv1800b-dmamux.c dmaengine: cv1800b-dmamux: fix device leak on route allocation 2025-12-14 14:47:24 +05:30
dma-axi-dmac.c dmaengine: dma-axi-dmac: use DMA pool to manange DMA descriptor 2026-06-08 17:37:06 +05:30
dma-jz4780.c dmaengine: add (dmaengine|vchan)_chan_dev() helper 2026-09-15 21:54:16 +05:30
dmaengine.c dmaengine updates for v7.4 2026-10-28 07:27:09 -10:00
dmaengine.h dmaengine: move driver-private helpers out of include/linux/dmaengine.h 2026-10-09 11:53:04 +02:00
dmatest.c dmaengine: dmatest: split struct dmatest_info from variable declaration 2026-06-08 17:02:21 +05:30
ep93xx_dma.c dmaengine: add (dmaengine|vchan)_chan_dev() helper 2026-09-15 21:54:16 +05:30
fsl_raid.c dmaengine: fsl_raid: byte-swap cdb32 when programming CDBs 2026-09-15 21:59:50 +05:30
fsl_raid.h dma: fsl_raid: keep MMIO bases as void __iomem and cast at access 2026-07-17 17:50:19 +05:30
fsl-edma-common.c dmaengine: fsl-edma: Support dynamic scatter/gather chaining 2026-10-05 16:13:08 +02:00
fsl-edma-common.h dmaengine: fsl-edma: Support dynamic scatter/gather chaining 2026-10-05 16:13:08 +02:00
fsl-edma-main.c dmaengine: fsl-edma: Implement device_prep_peripheral_dma_vec 2026-10-05 16:13:08 +02:00
fsl-edma-trace.c
fsl-edma-trace.h dmaengine: fsl-edma: Support dynamic scatter/gather chaining 2026-10-05 16:13:08 +02:00
fsl-qdma.c dmaengine: fsl-qdma: Use dev_err_probe() to simplify code 2026-03-09 12:20:48 +01:00
fsldma.c dmaengine: fsldma: convert to platform_get_irq_optional() 2026-09-15 22:59:28 +05:30
fsldma.h fsldma: Set correct dma_mask based on hw capability 2025-05-14 15:25:15 +01:00
hisi_dma.c dmaengine: hisilicon: Return -ENOMEM on dynamic memory allocation in probe 2026-07-02 21:12:29 +05:30
idma64.c dmaengine: add (dmaengine|vchan)_chan_dev() helper 2026-09-15 21:54:16 +05:30
idma64.h
img-mdc-dma.c dmaengine: img-mdc: Fix runtime PM usage counter leak 2026-09-09 19:06:49 +05:30
imx-dma.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
imx-sdma.c dmaengine: imx-sdma: Refine spba bus searching in probe 2026-06-04 12:17:48 +05:30
k3dma.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
Kconfig dmaengine: amlogic: Add general DMA driver for A9 2026-10-05 15:56:23 +02:00
lpc18xx-dmamux.c dmaengine: lpc18xx-dmamux: fix device leak on route allocation 2025-12-14 14:47:24 +05:30
lpc32xx-dmamux.c dmaengine: lpc32xx-dmamux: fix device leak on route allocation 2025-12-14 14:47:24 +05:30
Makefile dmaengine: amlogic: Add general DMA driver for A9 2026-10-05 15:56:23 +02:00
mcf-edma-main.c
milbeaut-hdmac.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
milbeaut-xdmac.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
mmp_pdma.c dmaengine updates for v7.4 2026-10-28 07:27:09 -10:00
mmp_tdma.c dmaengine: mmp_tdma: drop unnecessary OF node check in remove 2025-11-21 17:42:51 +05:30
moxart-dma.c dmaengine: add (dmaengine|vchan)_chan_dev() helper 2026-09-15 21:54:16 +05:30
mpc512x_dma.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
mv_xor_v2.c
mv_xor.c dmaengine: mv_xor: kill tasklet on channel add error path 2026-09-15 21:55:12 +05:30
mv_xor.h
mxs-dma.c dmaengine: mxs-dma: Add module license and description 2026-03-09 12:20:47 +01:00
nbpfaxi.c dmaengine: add (dmaengine|vchan)_chan_dev() helper 2026-09-15 21:54:16 +05:30
of-dma.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
owl-dma.c dmaengine: add (dmaengine|vchan)_chan_dev() helper 2026-09-15 21:54:16 +05:30
pch_dma.c dmaengine: add (dmaengine|vchan)_chan_dev() helper 2026-09-15 21:54:16 +05:30
pl330.c dmaengine: pl330: Move device specific debugfs file to its directory 2026-09-03 22:24:39 +05:30
plx_dma.c dmaengine: plx_dma: fix NULL pointer deref in plx_dma_isr() 2026-10-05 15:44:12 +02:00
pxa_dma.c dmaengine updates for v7.4 2026-10-28 07:27:09 -10:00
sa11x0-dma.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
sprd-dma.c dmaengine updates for v7.4 2026-10-28 07:27:09 -10:00
st_fdma.c dmaengine: use dma_chan_name() helper to get per-channel device name 2026-09-15 21:54:16 +05:30
st_fdma.h dmaengine: st_fdma: change dreg_line to long 2025-12-23 16:35:27 +05:30
ste_dma40_ll.c dmaengine: ste_dma40: Preserve the LCPA I/O address space 2026-10-11 21:33:36 +01:00
ste_dma40_ll.h dmaengine: ste_dma40: Preserve the LCPA I/O address space 2026-10-11 21:33:36 +01:00
ste_dma40.c dmaengine: ste_dma40: Preserve the LCPA I/O address space 2026-10-11 21:33:36 +01:00
ste_dma40.h
sun4i-dma.c dmaengine: add (dmaengine|vchan)_chan_dev() helper 2026-09-15 21:54:16 +05:30
sun6i-dma.c dmaengine updates for v7.4 2026-10-28 07:27:09 -10:00
switchtec_dma.c dmaengine updates for v7.4 2026-10-28 07:27:09 -10:00
tegra20-apb-dma.c dmaengine: add (dmaengine|vchan)_chan_dev() helper 2026-09-15 21:54:16 +05:30
tegra186-gpc-dma.c dmaengine: add union chan_dev for dma_chan::dev for clarity 2026-09-15 21:54:16 +05:30
tegra210-adma.c dmaengine: tegra210-adma: use platform to ioremap 2026-07-02 20:42:02 +05:30
timb_dma.c dmaengine: add (dmaengine|vchan)_chan_dev() helper 2026-09-15 21:54:16 +05:30
TODO
txx9dmac.c dmaengine: add (dmaengine|vchan)_chan_dev() helper 2026-09-15 21:54:16 +05:30
txx9dmac.h
uniphier-mdmac.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
uniphier-xdmac.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
virt-dma.c
virt-dma.h dmaengine: add (dmaengine|vchan)_chan_dev() helper 2026-09-15 21:54:16 +05:30
xgene-dma.c dmaengine: xgene-dma: use named initializers for acpi_device_id 2026-10-05 16:16:52 +02:00