# SPDX-License-Identifier: GPL-2.0-only
#
# Texas Instruments DMA drivers
#

config TI_CPPI41
	tristate "Texas Instruments CPPI 4.1 DMA support"
	depends on (ARCH_OMAP || ARCH_DAVINCI_DA8XX)
	select DMA_ENGINE
	help
	  The Communications Port Programming Interface (CPPI) 4.1 DMA engine
	  is currently used by the USB driver on AM335x and DA8xx platforms.

config TI_EDMA
	tristate "Texas Instruments EDMA support"
	depends on ARCH_DAVINCI || ARCH_OMAP || ARCH_KEYSTONE || COMPILE_TEST
	select DMA_ENGINE
	select DMA_VIRTUAL_CHANNELS
	select TI_DMA_CROSSBAR if (ARCH_OMAP || COMPILE_TEST)
	default y
	help
	  Enable support for the TI EDMA (Enhanced DMA) controller. This DMA
	  engine is found on TI DaVinci, AM33xx, AM43xx, DRA7xx and Keystone 2
	  parts.

config DMA_OMAP
	tristate "Texas Instruments sDMA (omap-dma) support"
	depends on ARCH_OMAP || COMPILE_TEST
	select DMA_ENGINE
	select DMA_VIRTUAL_CHANNELS
	select TI_DMA_CROSSBAR if (SOC_DRA7XX || COMPILE_TEST)
	default y
	help
	  Enable support for the TI sDMA (System DMA or DMA4) controller. This
	  DMA engine is found on OMAP and DRA7xx parts.

config TI_K3_UDMA
	tristate "Texas Instruments UDMA support"
	depends on ARCH_K3
	depends on TI_SCI_PROTOCOL
	depends on TI_SCI_INTA_IRQCHIP
	select DMA_ENGINE
	select DMA_VIRTUAL_CHANNELS
	select TI_K3_RINGACC
	select TI_K3_PSIL
        help
	  Enable support for the TI UDMA (Unified DMA) controller. This
	  DMA engine is used in AM65x and j721e.

config TI_K3_UDMA_GLUE_LAYER
	tristate "Texas Instruments UDMA Glue layer for non DMAengine users"
	depends on ARCH_K3
	depends on TI_K3_UDMA
	help
	  Say y here to support the K3 NAVSS DMA glue interface
	  If unsure, say N.

config TI_K3_PSIL
       tristate
       default TI_K3_UDMA

config TI_DMA_CROSSBAR
	bool