Loading Documentation/devicetree/bindings/dma/atmel-xdma.txt 0 → 100644 +54 −0 Original line number Diff line number Diff line * Atmel Extensible Direct Memory Access Controller (XDMAC) * XDMA Controller Required properties: - compatible: Should be "atmel,<chip>-dma". <chip> compatible description: - sama5d4: first SoC adding the XDMAC - reg: Should contain DMA registers location and length. - interrupts: Should contain DMA interrupt. - #dma-cells: Must be <1>, used to represent the number of integer cells in the dmas property of client devices. - The 1st cell specifies the channel configuration register: - bit 13: SIF, source interface identifier, used to get the memory interface identifier, - bit 14: DIF, destination interface identifier, used to get the peripheral interface identifier, - bit 30-24: PERID, peripheral identifier. Example: dma1: dma-controller@f0004000 { compatible = "atmel,sama5d4-dma"; reg = <0xf0004000 0x200>; interrupts = <50 4 0>; #dma-cells = <1>; }; * DMA clients DMA clients connected to the Atmel XDMA controller must use the format described in the dma.txt file, using a one-cell specifier for each channel. The two cells in order are: 1. A phandle pointing to the DMA controller. 2. Channel configuration register. Configurable fields are: - bit 13: SIF, source interface identifier, used to get the memory interface identifier, - bit 14: DIF, destination interface identifier, used to get the peripheral interface identifier, - bit 30-24: PERID, peripheral identifier. Example: i2c2: i2c@f8024000 { compatible = "atmel,at91sam9x5-i2c"; reg = <0xf8024000 0x4000>; interrupts = <34 4 6>; dmas = <&dma1 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | AT91_XDMAC_DT_PERID(6))>, <&dma1 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | AT91_XDMAC_DT_PERID(7))>; dma-names = "tx", "rx"; }; MAINTAINERS +7 −0 Original line number Diff line number Diff line Loading @@ -1713,6 +1713,13 @@ F: drivers/dma/at_hdmac.c F: drivers/dma/at_hdmac_regs.h F: include/linux/platform_data/dma-atmel.h ATMEL XDMA DRIVER M: Ludovic Desroches <ludovic.desroches@atmel.com> L: linux-arm-kernel@lists.infradead.org L: dmaengine@vger.kernel.org S: Supported F: drivers/dma/at_xdmac.c ATMEL I2C DRIVER M: Ludovic Desroches <ludovic.desroches@atmel.com> L: linux-i2c@vger.kernel.org Loading drivers/dma/Kconfig +7 −0 Original line number Diff line number Diff line Loading @@ -107,6 +107,13 @@ config AT_HDMAC help Support the Atmel AHB DMA controller. config AT_XDMAC tristate "Atmel XDMA support" depends on ARCH_AT91 select DMA_ENGINE help Support the Atmel XDMA controller. config FSL_DMA tristate "Freescale Elo series DMA support" depends on FSL_SOC Loading drivers/dma/Makefile +1 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ obj-$(CONFIG_PPC_BESTCOMM) += bestcomm/ obj-$(CONFIG_MV_XOR) += mv_xor.o obj-$(CONFIG_DW_DMAC_CORE) += dw/ obj-$(CONFIG_AT_HDMAC) += at_hdmac.o obj-$(CONFIG_AT_XDMAC) += at_xdmac.o obj-$(CONFIG_MX3_IPU) += ipu/ obj-$(CONFIG_TXX9_DMAC) += txx9dmac.o obj-$(CONFIG_SH_DMAE_BASE) += sh/ Loading Loading
Documentation/devicetree/bindings/dma/atmel-xdma.txt 0 → 100644 +54 −0 Original line number Diff line number Diff line * Atmel Extensible Direct Memory Access Controller (XDMAC) * XDMA Controller Required properties: - compatible: Should be "atmel,<chip>-dma". <chip> compatible description: - sama5d4: first SoC adding the XDMAC - reg: Should contain DMA registers location and length. - interrupts: Should contain DMA interrupt. - #dma-cells: Must be <1>, used to represent the number of integer cells in the dmas property of client devices. - The 1st cell specifies the channel configuration register: - bit 13: SIF, source interface identifier, used to get the memory interface identifier, - bit 14: DIF, destination interface identifier, used to get the peripheral interface identifier, - bit 30-24: PERID, peripheral identifier. Example: dma1: dma-controller@f0004000 { compatible = "atmel,sama5d4-dma"; reg = <0xf0004000 0x200>; interrupts = <50 4 0>; #dma-cells = <1>; }; * DMA clients DMA clients connected to the Atmel XDMA controller must use the format described in the dma.txt file, using a one-cell specifier for each channel. The two cells in order are: 1. A phandle pointing to the DMA controller. 2. Channel configuration register. Configurable fields are: - bit 13: SIF, source interface identifier, used to get the memory interface identifier, - bit 14: DIF, destination interface identifier, used to get the peripheral interface identifier, - bit 30-24: PERID, peripheral identifier. Example: i2c2: i2c@f8024000 { compatible = "atmel,at91sam9x5-i2c"; reg = <0xf8024000 0x4000>; interrupts = <34 4 6>; dmas = <&dma1 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | AT91_XDMAC_DT_PERID(6))>, <&dma1 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | AT91_XDMAC_DT_PERID(7))>; dma-names = "tx", "rx"; };
MAINTAINERS +7 −0 Original line number Diff line number Diff line Loading @@ -1713,6 +1713,13 @@ F: drivers/dma/at_hdmac.c F: drivers/dma/at_hdmac_regs.h F: include/linux/platform_data/dma-atmel.h ATMEL XDMA DRIVER M: Ludovic Desroches <ludovic.desroches@atmel.com> L: linux-arm-kernel@lists.infradead.org L: dmaengine@vger.kernel.org S: Supported F: drivers/dma/at_xdmac.c ATMEL I2C DRIVER M: Ludovic Desroches <ludovic.desroches@atmel.com> L: linux-i2c@vger.kernel.org Loading
drivers/dma/Kconfig +7 −0 Original line number Diff line number Diff line Loading @@ -107,6 +107,13 @@ config AT_HDMAC help Support the Atmel AHB DMA controller. config AT_XDMAC tristate "Atmel XDMA support" depends on ARCH_AT91 select DMA_ENGINE help Support the Atmel XDMA controller. config FSL_DMA tristate "Freescale Elo series DMA support" depends on FSL_SOC Loading
drivers/dma/Makefile +1 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ obj-$(CONFIG_PPC_BESTCOMM) += bestcomm/ obj-$(CONFIG_MV_XOR) += mv_xor.o obj-$(CONFIG_DW_DMAC_CORE) += dw/ obj-$(CONFIG_AT_HDMAC) += at_hdmac.o obj-$(CONFIG_AT_XDMAC) += at_xdmac.o obj-$(CONFIG_MX3_IPU) += ipu/ obj-$(CONFIG_TXX9_DMAC) += txx9dmac.o obj-$(CONFIG_SH_DMAE_BASE) += sh/ Loading