lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260126073652.3293564-1-den@valinux.co.jp>
Date: Mon, 26 Jan 2026 16:36:47 +0900
From: Koichiro Den <den@...inux.co.jp>
To: vkoul@...nel.org,
	mani@...nel.org,
	Frank.Li@....com
Cc: dmaengine@...r.kernel.org,
	linux-kernel@...r.kernel.org
Subject: [PATCH 0/5] dmaengine: dw-edma: Add helpers for remote eDMA use scenarios

This series proposes helpers for remote eDMA use cases (e.g. [1]):

  - Add an optional dma_slave_caps.hw_id field so DMA providers can expose a
    provider-defined hardware channel identifier to clients
  - Report hw_id from dw-edma
  - Introduce per-channel interrupt routing control for DesignWare EP eDMA,
    configurable via dmaengine_slave_config() by passing a small
    dw-edma-specific structure through dma_slave_config.peripheral_config /
    dma_slave_config.peripheral_size (as suggested during RFC review)
  - Add optional completion polling for channels where local IRQ handling is
    disabled
  - Add notify-only channel support for cases where the local side needs
    interrupt notification without cookie-based accounting (i.e. its peer
    perpares and submits the transaction descriptors)

Note: a companion PCI/dwc series ([2]) was posted separately to expose the
integrated eDMA register and LL windows keyed by struct pci_epc. Users can
use dma_get_slave_caps().hw_id to correlate per-channel LL regions.

Note: stm32-dma3 implements .device_caps, but it's untouched in this
series (i.e. no patch adds 'caps->hw_id = chan->id' in stm32_dma3_caps()).
When a concrete need arises, this can be addressed in a separate patch.

[1] [RFC PATCH v4 00/38] NTB transport backed by PCI EP embedded DMA
    https://lore.kernel.org/linux-pci/20260118135440.1958279-1-den@valinux.co.jp/
[2] [PATCH 0/2] PCI: dwc: Expose integrated DesignWare eDMA windows
    https://lore.kernel.org/all/20260126071550.3233631-1-den@valinux.co.jp/

Developed on dmaengine.git next:
  commit: 3c8a86ed002a ("dmaengine: xilinx: xdma: use sg_nents_for_dma()
                         helper")

Kind regards,

Koichiro Den (5):
  dmaengine: Add hw_id to dma_slave_caps
  dmaengine: dw-edma: Report channel hw_id in dma_slave_caps
  dmaengine: dw-edma: Add per-channel interrupt routing control
  dmaengine: dw-edma: Poll completion when local IRQ handling is
    disabled
  dmaengine: dw-edma: Add notify-only channels support

 drivers/dma/dmaengine.c               |   1 +
 drivers/dma/dw-edma/dw-edma-core.c    | 167 +++++++++++++++++++++++---
 drivers/dma/dw-edma/dw-edma-core.h    |  21 ++++
 drivers/dma/dw-edma/dw-edma-v0-core.c |  26 ++--
 include/linux/dma/edma.h              |  57 +++++++++
 include/linux/dmaengine.h             |   2 +
 6 files changed, 249 insertions(+), 25 deletions(-)

-- 
2.51.0


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ