# SPDX-License-Identifier: GPL-2.0-only
#
# Loongson DMA controllers drivers
#
if MACH_LOONGSON32 || MACH_LOONGSON64 || COMPILE_TEST

config LOONGSON1_APB_DMA
	tristate "Loongson1 APB DMA support"
	depends on MACH_LOONGSON32 || COMPILE_TEST
	select DMA_ENGINE
	select DMA_VIRTUAL_CHANNELS
	help
	  This selects support for the APB DMA controller in Loongson1 SoCs,
	  which is required by Loongson1 NAND and audio support.

config LOONGSON2_APB_DMA
	tristate "Loongson2 APB DMA support"
	depends on MACH_LOONGSON64 || COMPILE_TEST
	select DMA_ENGINE
	select DMA_VIRTUAL_CHANNELS
	help
	  Support for the Loongson2 APB DMA controller driver. The
	  DMA controller is having single DMA channel which can be
	  configured for different peripherals like audio, nand, sdio
	  etc which is in APB bus.

	  This DMA controller transfers data from memory to peripheral fifo.
	  It does not support memory to memory data transfer.

config LOONGSON2_APB_CMC_DMA
	tristate "Loongson2 Chain Multi-Channel DMA support"
	depends on MACH_LOONGSON64 || COMPILE_TEST
	select DMA_ENGINE
	select DMA_VIRTUAL_CHANNELS
	help
	  Support for the Loongson Chain Multi-Channel DMA controller driver.
	  It is discovered on the Loongson-2K chip (Loongson-2K0300/Loongson-2K3000),
	  which has 4/8 channels internally, enabling bidirectional data transfer
	  between devices and memory.

endif
