0001 # SPDX-License-Identifier: GPL-2.0-only
0002 config QCOM_ADM
0003 tristate "Qualcomm ADM support"
0004 depends on (ARCH_QCOM || COMPILE_TEST) && !PHYS_ADDR_T_64BIT
0005 select DMA_ENGINE
0006 select DMA_VIRTUAL_CHANNELS
0007 help
0008 Enable support for the Qualcomm Application Data Mover (ADM) DMA
0009 controller, as present on MSM8x60, APQ8064, and IPQ8064 devices.
0010 This controller provides DMA capabilities for both general purpose
0011 and on-chip peripheral devices.
0012
0013 config QCOM_BAM_DMA
0014 tristate "QCOM BAM DMA support"
0015 depends on ARCH_QCOM || (COMPILE_TEST && OF && ARM)
0016 select DMA_ENGINE
0017 select DMA_VIRTUAL_CHANNELS
0018 help
0019 Enable support for the QCOM BAM DMA controller. This controller
0020 provides DMA capabilities for a variety of on-chip devices.
0021
0022 config QCOM_GPI_DMA
0023 tristate "Qualcomm Technologies GPI DMA support"
0024 depends on ARCH_QCOM
0025 select DMA_ENGINE
0026 select DMA_VIRTUAL_CHANNELS
0027 help
0028 Enable support for the QCOM GPI DMA controller. This controller
0029 provides DMA capabilities for a variety of peripheral buses such
0030 as I2C, UART, and SPI. By using GPI dmaengine driver, bus drivers
0031 can use a standardize interface that is protocol independent to
0032 transfer data between DDR and peripheral.
0033
0034 config QCOM_HIDMA_MGMT
0035 tristate "Qualcomm Technologies HIDMA Management support"
0036 depends on HAS_IOMEM
0037 select DMA_ENGINE
0038 help
0039 Enable support for the Qualcomm Technologies HIDMA Management.
0040 Each DMA device requires one management interface driver
0041 for basic initialization before QCOM_HIDMA channel driver can
0042 start managing the channels. In a virtualized environment,
0043 the guest OS would run QCOM_HIDMA channel driver and the
0044 host would run the QCOM_HIDMA_MGMT management driver.
0045
0046 config QCOM_HIDMA
0047 tristate "Qualcomm Technologies HIDMA Channel support"
0048 select DMA_ENGINE
0049 help
0050 Enable support for the Qualcomm Technologies HIDMA controller.
0051 The HIDMA controller supports optimized buffer copies
0052 (user to kernel, kernel to kernel, etc.). It only supports
0053 memcpy interface. The core is not intended for general
0054 purpose slave DMA.