Skip to content

Commit ee17028

Browse files
Akhil Rvinodkoul
authored andcommitted
dmaengine: tegra: Add tegra gpcdma driver
Adding GPC DMA controller driver for Tegra. The driver supports dma transfers between memory to memory, IO peripheral to memory and memory to IO peripheral. Co-developed-by: Pavan Kunapuli <pkunapuli@nvidia.com> Signed-off-by: Pavan Kunapuli <pkunapuli@nvidia.com> Co-developed-by: Rajesh Gumasta <rgumasta@nvidia.com> Signed-off-by: Rajesh Gumasta <rgumasta@nvidia.com> Signed-off-by: Akhil R <akhilrajeev@nvidia.com> Reviewed-by: Jon Hunter <jonathanh@nvidia.com> Reviewed-by: Dmitry Osipenko <digetx@gmail.com> Acked-by: Thierry Reding <treding@nvidia.com> Link: https://lore.kernel.org/r/20220225132044.14478-3-akhilrajeev@nvidia.com Signed-off-by: Vinod Koul <vkoul@kernel.org>
1 parent 7291062 commit ee17028

File tree

3 files changed

+1519
-0
lines changed

3 files changed

+1519
-0
lines changed

drivers/dma/Kconfig

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -629,6 +629,17 @@ config TXX9_DMAC
629629
Support the TXx9 SoC internal DMA controller. This can be
630630
integrated in chips such as the Toshiba TX4927/38/39.
631631

632+
config TEGRA186_GPC_DMA
633+
tristate "NVIDIA Tegra GPC DMA support"
634+
depends on (ARCH_TEGRA || COMPILE_TEST) && ARCH_DMA_ADDR_T_64BIT
635+
select DMA_ENGINE
636+
help
637+
Support for the NVIDIA Tegra General Purpose Central DMA controller.
638+
The DMA controller has multiple DMA channels which can be configured
639+
for different peripherals like UART, SPI, etc which are on APB bus.
640+
This DMA controller transfers data from memory to peripheral FIFO
641+
or vice versa. It also supports memory to memory data transfer.
642+
632643
config TEGRA20_APB_DMA
633644
tristate "NVIDIA Tegra20 APB DMA support"
634645
depends on ARCH_TEGRA || COMPILE_TEST

drivers/dma/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ obj-$(CONFIG_STM32_MDMA) += stm32-mdma.o
7272
obj-$(CONFIG_SPRD_DMA) += sprd-dma.o
7373
obj-$(CONFIG_S3C24XX_DMAC) += s3c24xx-dma.o
7474
obj-$(CONFIG_TXX9_DMAC) += txx9dmac.o
75+
obj-$(CONFIG_TEGRA186_GPC_DMA) += tegra186-gpc-dma.o
7576
obj-$(CONFIG_TEGRA20_APB_DMA) += tegra20-apb-dma.o
7677
obj-$(CONFIG_TEGRA210_ADMA) += tegra210-adma.o
7778
obj-$(CONFIG_TIMB_DMA) += timb_dma.o

0 commit comments

Comments
 (0)