Loading Documentation/devicetree/bindings/dma/renesas,rcar-dmac.txt +3 −1 Original line number Diff line number Diff line * Renesas R-Car (RZ/G) DMA Controller Device Tree bindings Renesas R-Car Generation 2 SoCs have multiple multi-channel DMA Renesas R-Car (Gen 2/3) and RZ/G SoCs have multiple multi-channel DMA controller instances named DMAC capable of serving multiple clients. Channels can be dedicated to specific clients or shared between a large number of clients. Loading @@ -20,6 +20,8 @@ Required Properties: - "renesas,dmac-r8a7744" (RZ/G1N) - "renesas,dmac-r8a7745" (RZ/G1E) - "renesas,dmac-r8a77470" (RZ/G1C) - "renesas,dmac-r8a774a1" (RZ/G2M) - "renesas,dmac-r8a774c0" (RZ/G2E) - "renesas,dmac-r8a7790" (R-Car H2) - "renesas,dmac-r8a7791" (R-Car M2-W) - "renesas,dmac-r8a7792" (R-Car V2H) Loading Documentation/devicetree/bindings/dma/renesas,usb-dmac.txt +3 −0 Original line number Diff line number Diff line Loading @@ -6,6 +6,9 @@ Required Properties: - "renesas,r8a7743-usb-dmac" (RZ/G1M) - "renesas,r8a7744-usb-dmac" (RZ/G1N) - "renesas,r8a7745-usb-dmac" (RZ/G1E) - "renesas,r8a77470-usb-dmac" (RZ/G1C) - "renesas,r8a774a1-usb-dmac" (RZ/G2M) - "renesas,r8a774c0-usb-dmac" (RZ/G2E) - "renesas,r8a7790-usb-dmac" (R-Car H2) - "renesas,r8a7791-usb-dmac" (R-Car M2-W) - "renesas,r8a7793-usb-dmac" (R-Car M2-N) Loading drivers/dma/sh/Kconfig +2 −10 Original line number Diff line number Diff line # SPDX-License-Identifier: GPL-2.0 # # DMA engine configuration for sh # Loading @@ -12,7 +13,7 @@ config RENESAS_DMA config SH_DMAE_BASE bool "Renesas SuperH DMA Engine support" depends on SUPERH || ARCH_RENESAS || COMPILE_TEST depends on SUPERH || COMPILE_TEST depends on !SUPERH || SH_DMA depends on !SH_DMA_API default y Loading @@ -30,15 +31,6 @@ config SH_DMAE help Enable support for the Renesas SuperH DMA controllers. if SH_DMAE config SH_DMAE_R8A73A4 def_bool y depends on ARCH_R8A73A4 depends on OF endif config RCAR_DMAC tristate "Renesas R-Car Gen2 DMA Controller" depends on ARCH_RENESAS || COMPILE_TEST Loading drivers/dma/sh/Makefile +0 −1 Original line number Diff line number Diff line Loading @@ -10,7 +10,6 @@ obj-$(CONFIG_SH_DMAE_BASE) += shdma-base.o shdma-of.o # shdma-y := shdmac.o shdma-$(CONFIG_SH_DMAE_R8A73A4) += shdma-r8a73a4.o shdma-objs := $(shdma-y) obj-$(CONFIG_SH_DMAE) += shdma.o Loading drivers/dma/sh/shdma-r8a73a4.cdeleted 100644 → 0 +0 −74 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0 /* * Renesas SuperH DMA Engine support for r8a73a4 (APE6) SoCs * * Copyright (C) 2013 Renesas Electronics, Inc. */ #include <linux/sh_dma.h> #include "shdma-arm.h" static const unsigned int dma_ts_shift[] = SH_DMAE_TS_SHIFT; static const struct sh_dmae_slave_config dma_slaves[] = { { .chcr = CHCR_TX(XMIT_SZ_32BIT), .mid_rid = 0xd1, /* MMC0 Tx */ }, { .chcr = CHCR_RX(XMIT_SZ_32BIT), .mid_rid = 0xd2, /* MMC0 Rx */ }, { .chcr = CHCR_TX(XMIT_SZ_32BIT), .mid_rid = 0xe1, /* MMC1 Tx */ }, { .chcr = CHCR_RX(XMIT_SZ_32BIT), .mid_rid = 0xe2, /* MMC1 Rx */ }, }; #define DMAE_CHANNEL(a, b) \ { \ .offset = (a) - 0x20, \ .dmars = (a) - 0x20 + 0x40, \ .chclr_bit = (b), \ .chclr_offset = 0x80 - 0x20, \ } static const struct sh_dmae_channel dma_channels[] = { DMAE_CHANNEL(0x8000, 0), DMAE_CHANNEL(0x8080, 1), DMAE_CHANNEL(0x8100, 2), DMAE_CHANNEL(0x8180, 3), DMAE_CHANNEL(0x8200, 4), DMAE_CHANNEL(0x8280, 5), DMAE_CHANNEL(0x8300, 6), DMAE_CHANNEL(0x8380, 7), DMAE_CHANNEL(0x8400, 8), DMAE_CHANNEL(0x8480, 9), DMAE_CHANNEL(0x8500, 10), DMAE_CHANNEL(0x8580, 11), DMAE_CHANNEL(0x8600, 12), DMAE_CHANNEL(0x8680, 13), DMAE_CHANNEL(0x8700, 14), DMAE_CHANNEL(0x8780, 15), DMAE_CHANNEL(0x8800, 16), DMAE_CHANNEL(0x8880, 17), DMAE_CHANNEL(0x8900, 18), DMAE_CHANNEL(0x8980, 19), }; const struct sh_dmae_pdata r8a73a4_dma_pdata = { .slave = dma_slaves, .slave_num = ARRAY_SIZE(dma_slaves), .channel = dma_channels, .channel_num = ARRAY_SIZE(dma_channels), .ts_low_shift = TS_LOW_SHIFT, .ts_low_mask = TS_LOW_BIT << TS_LOW_SHIFT, .ts_high_shift = TS_HI_SHIFT, .ts_high_mask = TS_HI_BIT << TS_HI_SHIFT, .ts_shift = dma_ts_shift, .ts_shift_num = ARRAY_SIZE(dma_ts_shift), .dmaor_init = DMAOR_DME, .chclr_present = 1, .chclr_bitwise = 1, }; Loading
Documentation/devicetree/bindings/dma/renesas,rcar-dmac.txt +3 −1 Original line number Diff line number Diff line * Renesas R-Car (RZ/G) DMA Controller Device Tree bindings Renesas R-Car Generation 2 SoCs have multiple multi-channel DMA Renesas R-Car (Gen 2/3) and RZ/G SoCs have multiple multi-channel DMA controller instances named DMAC capable of serving multiple clients. Channels can be dedicated to specific clients or shared between a large number of clients. Loading @@ -20,6 +20,8 @@ Required Properties: - "renesas,dmac-r8a7744" (RZ/G1N) - "renesas,dmac-r8a7745" (RZ/G1E) - "renesas,dmac-r8a77470" (RZ/G1C) - "renesas,dmac-r8a774a1" (RZ/G2M) - "renesas,dmac-r8a774c0" (RZ/G2E) - "renesas,dmac-r8a7790" (R-Car H2) - "renesas,dmac-r8a7791" (R-Car M2-W) - "renesas,dmac-r8a7792" (R-Car V2H) Loading
Documentation/devicetree/bindings/dma/renesas,usb-dmac.txt +3 −0 Original line number Diff line number Diff line Loading @@ -6,6 +6,9 @@ Required Properties: - "renesas,r8a7743-usb-dmac" (RZ/G1M) - "renesas,r8a7744-usb-dmac" (RZ/G1N) - "renesas,r8a7745-usb-dmac" (RZ/G1E) - "renesas,r8a77470-usb-dmac" (RZ/G1C) - "renesas,r8a774a1-usb-dmac" (RZ/G2M) - "renesas,r8a774c0-usb-dmac" (RZ/G2E) - "renesas,r8a7790-usb-dmac" (R-Car H2) - "renesas,r8a7791-usb-dmac" (R-Car M2-W) - "renesas,r8a7793-usb-dmac" (R-Car M2-N) Loading
drivers/dma/sh/Kconfig +2 −10 Original line number Diff line number Diff line # SPDX-License-Identifier: GPL-2.0 # # DMA engine configuration for sh # Loading @@ -12,7 +13,7 @@ config RENESAS_DMA config SH_DMAE_BASE bool "Renesas SuperH DMA Engine support" depends on SUPERH || ARCH_RENESAS || COMPILE_TEST depends on SUPERH || COMPILE_TEST depends on !SUPERH || SH_DMA depends on !SH_DMA_API default y Loading @@ -30,15 +31,6 @@ config SH_DMAE help Enable support for the Renesas SuperH DMA controllers. if SH_DMAE config SH_DMAE_R8A73A4 def_bool y depends on ARCH_R8A73A4 depends on OF endif config RCAR_DMAC tristate "Renesas R-Car Gen2 DMA Controller" depends on ARCH_RENESAS || COMPILE_TEST Loading
drivers/dma/sh/Makefile +0 −1 Original line number Diff line number Diff line Loading @@ -10,7 +10,6 @@ obj-$(CONFIG_SH_DMAE_BASE) += shdma-base.o shdma-of.o # shdma-y := shdmac.o shdma-$(CONFIG_SH_DMAE_R8A73A4) += shdma-r8a73a4.o shdma-objs := $(shdma-y) obj-$(CONFIG_SH_DMAE) += shdma.o Loading
drivers/dma/sh/shdma-r8a73a4.cdeleted 100644 → 0 +0 −74 Original line number Diff line number Diff line // SPDX-License-Identifier: GPL-2.0 /* * Renesas SuperH DMA Engine support for r8a73a4 (APE6) SoCs * * Copyright (C) 2013 Renesas Electronics, Inc. */ #include <linux/sh_dma.h> #include "shdma-arm.h" static const unsigned int dma_ts_shift[] = SH_DMAE_TS_SHIFT; static const struct sh_dmae_slave_config dma_slaves[] = { { .chcr = CHCR_TX(XMIT_SZ_32BIT), .mid_rid = 0xd1, /* MMC0 Tx */ }, { .chcr = CHCR_RX(XMIT_SZ_32BIT), .mid_rid = 0xd2, /* MMC0 Rx */ }, { .chcr = CHCR_TX(XMIT_SZ_32BIT), .mid_rid = 0xe1, /* MMC1 Tx */ }, { .chcr = CHCR_RX(XMIT_SZ_32BIT), .mid_rid = 0xe2, /* MMC1 Rx */ }, }; #define DMAE_CHANNEL(a, b) \ { \ .offset = (a) - 0x20, \ .dmars = (a) - 0x20 + 0x40, \ .chclr_bit = (b), \ .chclr_offset = 0x80 - 0x20, \ } static const struct sh_dmae_channel dma_channels[] = { DMAE_CHANNEL(0x8000, 0), DMAE_CHANNEL(0x8080, 1), DMAE_CHANNEL(0x8100, 2), DMAE_CHANNEL(0x8180, 3), DMAE_CHANNEL(0x8200, 4), DMAE_CHANNEL(0x8280, 5), DMAE_CHANNEL(0x8300, 6), DMAE_CHANNEL(0x8380, 7), DMAE_CHANNEL(0x8400, 8), DMAE_CHANNEL(0x8480, 9), DMAE_CHANNEL(0x8500, 10), DMAE_CHANNEL(0x8580, 11), DMAE_CHANNEL(0x8600, 12), DMAE_CHANNEL(0x8680, 13), DMAE_CHANNEL(0x8700, 14), DMAE_CHANNEL(0x8780, 15), DMAE_CHANNEL(0x8800, 16), DMAE_CHANNEL(0x8880, 17), DMAE_CHANNEL(0x8900, 18), DMAE_CHANNEL(0x8980, 19), }; const struct sh_dmae_pdata r8a73a4_dma_pdata = { .slave = dma_slaves, .slave_num = ARRAY_SIZE(dma_slaves), .channel = dma_channels, .channel_num = ARRAY_SIZE(dma_channels), .ts_low_shift = TS_LOW_SHIFT, .ts_low_mask = TS_LOW_BIT << TS_LOW_SHIFT, .ts_high_shift = TS_HI_SHIFT, .ts_high_mask = TS_HI_BIT << TS_HI_SHIFT, .ts_shift = dma_ts_shift, .ts_shift_num = ARRAY_SIZE(dma_ts_shift), .dmaor_init = DMAOR_DME, .chclr_present = 1, .chclr_bitwise = 1, };