1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 25c9f8c2dSJonathan McDowellconfig QCOM_ADM 35c9f8c2dSJonathan McDowell tristate "Qualcomm ADM support" 45c9f8c2dSJonathan McDowell depends on (ARCH_QCOM || COMPILE_TEST) && !PHYS_ADDR_T_64BIT 55c9f8c2dSJonathan McDowell select DMA_ENGINE 65c9f8c2dSJonathan McDowell select DMA_VIRTUAL_CHANNELS 75c9f8c2dSJonathan McDowell help 85c9f8c2dSJonathan McDowell Enable support for the Qualcomm Application Data Mover (ADM) DMA 95c9f8c2dSJonathan McDowell controller, as present on MSM8x60, APQ8064, and IPQ8064 devices. 105c9f8c2dSJonathan McDowell This controller provides DMA capabilities for both general purpose 115c9f8c2dSJonathan McDowell and on-chip peripheral devices. 125c9f8c2dSJonathan McDowell 13d9b31efcSSinan Kayaconfig QCOM_BAM_DMA 14d9b31efcSSinan Kaya tristate "QCOM BAM DMA support" 15d9b31efcSSinan Kaya depends on ARCH_QCOM || (COMPILE_TEST && OF && ARM) 16d9b31efcSSinan Kaya select DMA_ENGINE 17d9b31efcSSinan Kaya select DMA_VIRTUAL_CHANNELS 18a7f7f624SMasahiro Yamada help 19d9b31efcSSinan Kaya Enable support for the QCOM BAM DMA controller. This controller 20d9b31efcSSinan Kaya provides DMA capabilities for a variety of on-chip devices. 217f8f209fSSinan Kaya 225d0c3533SVinod Koulconfig QCOM_GPI_DMA 235d0c3533SVinod Koul tristate "Qualcomm Technologies GPI DMA support" 245d0c3533SVinod Koul depends on ARCH_QCOM 255d0c3533SVinod Koul select DMA_ENGINE 265d0c3533SVinod Koul select DMA_VIRTUAL_CHANNELS 275d0c3533SVinod Koul help 285d0c3533SVinod Koul Enable support for the QCOM GPI DMA controller. This controller 295d0c3533SVinod Koul provides DMA capabilities for a variety of peripheral buses such 305d0c3533SVinod Koul as I2C, UART, and SPI. By using GPI dmaengine driver, bus drivers 315d0c3533SVinod Koul can use a standardize interface that is protocol independent to 325d0c3533SVinod Koul transfer data between DDR and peripheral. 335d0c3533SVinod Koul 347f8f209fSSinan Kayaconfig QCOM_HIDMA_MGMT 357f8f209fSSinan Kaya tristate "Qualcomm Technologies HIDMA Management support" 360cfbb589SRandy Dunlap depends on HAS_IOMEM 377f8f209fSSinan Kaya select DMA_ENGINE 387f8f209fSSinan Kaya help 397f8f209fSSinan Kaya Enable support for the Qualcomm Technologies HIDMA Management. 407f8f209fSSinan Kaya Each DMA device requires one management interface driver 417f8f209fSSinan Kaya for basic initialization before QCOM_HIDMA channel driver can 427f8f209fSSinan Kaya start managing the channels. In a virtualized environment, 437f8f209fSSinan Kaya the guest OS would run QCOM_HIDMA channel driver and the 447f8f209fSSinan Kaya host would run the QCOM_HIDMA_MGMT management driver. 4567a2003eSSinan Kaya 4667a2003eSSinan Kayaconfig QCOM_HIDMA 4767a2003eSSinan Kaya tristate "Qualcomm Technologies HIDMA Channel support" 48*2437d5eaSBaoquan He depends on HAS_IOMEM 4967a2003eSSinan Kaya select DMA_ENGINE 5067a2003eSSinan Kaya help 5167a2003eSSinan Kaya Enable support for the Qualcomm Technologies HIDMA controller. 5267a2003eSSinan Kaya The HIDMA controller supports optimized buffer copies 5367a2003eSSinan Kaya (user to kernel, kernel to kernel, etc.). It only supports 5467a2003eSSinan Kaya memcpy interface. The core is not intended for general 5567a2003eSSinan Kaya purpose slave DMA. 56