From: Nathan Lynch <nathan.lynch@xxxxxxx> Add SDXI Kconfig that includes debug and unit test options in addition to the usual tristate. SDXI_DEBUG seems necessary because DMADEVICES_DEBUG makes dmatest too verbose. One goal is to keep the bus-agnostic portions of the driver buildable without PCI(_MSI), in case non-PCI SDXI implementations come along later. Co-developed-by: Wei Huang <wei.huang2@xxxxxxx> Signed-off-by: Wei Huang <wei.huang2@xxxxxxx> Signed-off-by: Nathan Lynch <nathan.lynch@xxxxxxx> --- drivers/dma/Kconfig | 2 ++ drivers/dma/Makefile | 1 + drivers/dma/sdxi/Kconfig | 23 +++++++++++++++++++++++ drivers/dma/sdxi/Makefile | 17 +++++++++++++++++ 4 files changed, 43 insertions(+) diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig index 05c7c7d9e5a4e52a8ad7ada8c8b9b1a6f9d875f6..cccf00b73e025944681b03cffe441c372526d3f3 100644 --- a/drivers/dma/Kconfig +++ b/drivers/dma/Kconfig @@ -774,6 +774,8 @@ source "drivers/dma/fsl-dpaa2-qdma/Kconfig" source "drivers/dma/lgm/Kconfig" +source "drivers/dma/sdxi/Kconfig" + source "drivers/dma/stm32/Kconfig" # clients diff --git a/drivers/dma/Makefile b/drivers/dma/Makefile index a54d7688392b1a0e956fa5d23633507f52f017d9..ae4154595e1a6250b441a90078e9df3607d3d1dd 100644 --- a/drivers/dma/Makefile +++ b/drivers/dma/Makefile @@ -85,6 +85,7 @@ obj-$(CONFIG_XGENE_DMA) += xgene-dma.o obj-$(CONFIG_ST_FDMA) += st_fdma.o obj-$(CONFIG_FSL_DPAA2_QDMA) += fsl-dpaa2-qdma/ obj-$(CONFIG_INTEL_LDMA) += lgm/ +obj-$(CONFIG_SDXI) += sdxi/ obj-y += amd/ obj-y += mediatek/ diff --git a/drivers/dma/sdxi/Kconfig b/drivers/dma/sdxi/Kconfig new file mode 100644 index 0000000000000000000000000000000000000000..c9757cffb5f64fbc175ded8d0c9d751f0a22b6df --- /dev/null +++ b/drivers/dma/sdxi/Kconfig @@ -0,0 +1,23 @@ +config SDXI + tristate "SDXI support" + select DMA_ENGINE + select DMA_VIRTUAL_CHANNELS + select PACKING + help + Enable support for Smart Data Accelerator Interface (SDXI) + Platform Data Mover devices. SDXI is a vendor-neutral + standard for a memory-to-memory data mover and acceleration + interface. + +config SDXI_DEBUG + bool "SDXI driver debug" + default DMADEVICES_DEBUG + depends on SDXI != n + help + Enable debug output from the SDXI driver. This is an option + for use by developers and most users should say N here. + +config SDXI_KUNIT_TEST + tristate "SDXI unit tests" if !KUNIT_ALL_TESTS + depends on SDXI && KUNIT + default KUNIT_ALL_TESTS diff --git a/drivers/dma/sdxi/Makefile b/drivers/dma/sdxi/Makefile new file mode 100644 index 0000000000000000000000000000000000000000..c67e475689b45d6260fe970fb4afcc25f8f9ebc1 --- /dev/null +++ b/drivers/dma/sdxi/Makefile @@ -0,0 +1,17 @@ +# SPDX-License-Identifier: GPL-2.0 + +ccflags-$(CONFIG_SDXI_DEBUG) += -DDEBUG + +obj-$(CONFIG_SDXI) += sdxi.o + +sdxi-objs += \ + context.o \ + descriptor.o \ + device.o \ + dma.o \ + enqueue.o \ + error.o + +sdxi-$(CONFIG_PCI_MSI) += pci.o + +obj-$(CONFIG_SDXI_KUNIT_TEST) += descriptor_kunit.o -- 2.39.5