[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260126071550.3233631-1-den@valinux.co.jp>
Date: Mon, 26 Jan 2026 16:15:48 +0900
From: Koichiro Den <den@...inux.co.jp>
To: jingoohan1@...il.com,
mani@...nel.org,
lpieralisi@...nel.org,
kwilczynski@...nel.org,
robh@...nel.org,
bhelgaas@...gle.com,
Frank.Li@....com
Cc: linux-pci@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: [PATCH 0/2] PCI: dwc: Expose integrated DesignWare eDMA windows
This series adds small, query-only helper APIs to the DesignWare PCIe
endpoint controller driver to expose resources of an integrated
DesignWare eDMA instance. Specifically, it allows querying:
- the physical base address and size of the integrated eDMA register
aperture, and
- the per-channel linked-list (LL) region base and size, keyed by
transfer direction and hardware channel identifier.
The motivation is that some DesignWare PCIe endpoint platforms integrate
an eDMA engine that can be driven either locally by the endpoint or
remotely by the host. Remote eDMA use cases (e.g. [1]) need to expose
the eDMA register block and LL regions to the host through PCIe BARs,
while still allowing the endpoint to boot with a standard EP settings,
without DT changes to hide the eDMA instance from the endpoint itself.
The hardware channel identifier used by the LL-region helper can be
obtained via dma_get_slave_caps().hw_id, introduced by a dmaengine
series posted separately.
[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/
Developed on PCI controller/dwc:
commit 0ecd890e3cf5 ("PCI: dwc: Rename dw_pcie_rp::has_msi_ctrl to
dw_pcie_rp::use_imsi_rx for clarity")
Kind regards,
Koichiro Den (2):
PCI: dwc: Add helper to query integrated dw-edma register window
PCI: dwc: Add helper to query integrated dw-edma linked-list region
MAINTAINERS | 2 +-
drivers/pci/controller/dwc/pcie-designware.c | 74 ++++++++++++++++++++
drivers/pci/controller/dwc/pcie-designware.h | 2 +
include/linux/pcie-dwc-edma.h | 72 +++++++++++++++++++
4 files changed, 149 insertions(+), 1 deletion(-)
create mode 100644 include/linux/pcie-dwc-edma.h
--
2.51.0
Powered by blists - more mailing lists