Skip to content

Commit 8d78614

Browse files
Thippeswamy Havaligekwilczynski
authored andcommitted
PCI: xilinx-xdma: Add Xilinx XDMA Root Port driver
Add support for Xilinx XDMA Soft IP core as Root Port. The Zynq UltraScale+ MPSoCs devices support XDMA soft IP module in programmable logic. The integrated XDMA Soft IP block has integrated bridge function that can act as PCIe Root Port. [kwilczynski: correct indentation and whitespaces, Kconfig help update] Link: https://lore.kernel.org/linux-pci/[email protected] Signed-off-by: Thippeswamy Havalige <[email protected]> Signed-off-by: Bharat Kumar Gogada <[email protected]> Signed-off-by: Krzysztof Wilczyński <[email protected]>
1 parent 4ae1cd7 commit 8d78614

File tree

4 files changed

+827
-0
lines changed

4 files changed

+827
-0
lines changed

drivers/pci/controller/Kconfig

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -324,6 +324,17 @@ config PCIE_XILINX
324324
Say 'Y' here if you want kernel to support the Xilinx AXI PCIe
325325
Host Bridge driver.
326326

327+
config PCIE_XILINX_DMA_PL
328+
bool "Xilinx DMA PL PCIe host bridge support"
329+
depends on ARCH_ZYNQMP || COMPILE_TEST
330+
depends on PCI_MSI
331+
select PCI_HOST_COMMON
332+
help
333+
Say 'Y' here if you want kernel support for the Xilinx PL DMA
334+
PCIe host bridge. The controller is a Soft IP which can act as
335+
Root Port. If your system provides Xilinx PCIe host controller
336+
bridge DMA as Soft IP say 'Y'; if you are not sure, say 'N'.
337+
327338
config PCIE_XILINX_NWL
328339
bool "Xilinx NWL PCIe controller"
329340
depends on ARCH_ZYNQMP || COMPILE_TEST

drivers/pci/controller/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ obj-$(CONFIG_PCI_HOST_THUNDER_PEM) += pci-thunder-pem.o
1717
obj-$(CONFIG_PCIE_XILINX) += pcie-xilinx.o
1818
obj-$(CONFIG_PCIE_XILINX_NWL) += pcie-xilinx-nwl.o
1919
obj-$(CONFIG_PCIE_XILINX_CPM) += pcie-xilinx-cpm.o
20+
obj-$(CONFIG_PCIE_XILINX_DMA_PL) += pcie-xilinx-dma-pl.o
2021
obj-$(CONFIG_PCI_V3_SEMI) += pci-v3-semi.o
2122
obj-$(CONFIG_PCI_XGENE) += pci-xgene.o
2223
obj-$(CONFIG_PCI_XGENE_MSI) += pci-xgene-msi.o

drivers/pci/controller/pcie-xilinx-common.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
#define XILINX_PCIE_INTR_PME_TO_ACK_RCVD 15
2020
#define XILINX_PCIE_INTR_INTX 16
2121
#define XILINX_PCIE_INTR_PM_PME_RCVD 17
22+
#define XILINX_PCIE_INTR_MSI 17
2223
#define XILINX_PCIE_INTR_SLV_UNSUPP 20
2324
#define XILINX_PCIE_INTR_SLV_UNEXP 21
2425
#define XILINX_PCIE_INTR_SLV_COMPL 22

0 commit comments

Comments
 (0)