# SPDX-License-Identifier: GPL-2.0
#
# DMA engine configuration for sh
#

config RENESAS_DMA
	bool
	select DMA_ENGINE

#
# DMA Engine Helpers
#

config SH_DMAE_BASE
	bool "Renesas SuperH DMA Engine support"
	depends on SUPERH || COMPILE_TEST
	depends on !SUPERH || SH_DMA
	depends on !SH_DMA_API
	default y
	select RENESAS_DMA
	help
	  Enable support for the Renesas SuperH DMA controllers.

#
# DMA Controllers
#

config SH_DMAE
	tristate "Renesas SuperH DMAC support"
	depends on SH_DMAE_BASE
	help
	  Enable support for the Renesas SuperH DMA controllers.

config RCAR_DMAC
	tristate "Renesas R-Car Gen2 DMA Controller"
	depends on ARCH_RENESAS || COMPILE_TEST
	select RENESAS_DMA
	help
	  This driver supports the general purpose DMA controller found in the
	  Renesas R-Car second generation SoCs.

config RENESAS_USB_DMAC
	tristate "Renesas USB-DMA Controller"
	depends on ARCH_RENESAS || COMPILE_TEST
	select RENESAS_DMA
	select DMA_VIRTUAL_CHANNELS
	help
	  This driver supports the USB-DMA controller found in the Renesas
	  SoCs.
