DMA: Freescale: Add new 8-channel DMA engine device tree nodes
Freescale QorIQ T4 and B4 introduce new 8-channel DMA engines, this patch adds the device tree nodes for them. Signed-off-by: Hongbo Zhang <hongbo.zhang@freescale.com> Acked-by: Mark Rutland <mark.rutland@arm.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
This commit is contained in:
parent
c3d68d8dd4
commit
03aa254f1e
|
@ -128,6 +128,76 @@ Example:
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
** Freescale Elo3 DMA Controller
|
||||||
|
DMA controller which has same function as EloPlus except that Elo3 has 8
|
||||||
|
channels while EloPlus has only 4, it is used in Freescale Txxx and Bxxx
|
||||||
|
series chips, such as t1040, t4240, b4860.
|
||||||
|
|
||||||
|
Required properties:
|
||||||
|
|
||||||
|
- compatible : must include "fsl,elo3-dma"
|
||||||
|
- reg : contains two entries for DMA General Status Registers,
|
||||||
|
i.e. DGSR0 which includes status for channel 1~4, and
|
||||||
|
DGSR1 for channel 5~8
|
||||||
|
- ranges : describes the mapping between the address space of the
|
||||||
|
DMA channels and the address space of the DMA controller
|
||||||
|
|
||||||
|
- DMA channel nodes:
|
||||||
|
- compatible : must include "fsl,eloplus-dma-channel"
|
||||||
|
- reg : DMA channel specific registers
|
||||||
|
- interrupts : interrupt specifier for DMA channel IRQ
|
||||||
|
- interrupt-parent : optional, if needed for interrupt mapping
|
||||||
|
|
||||||
|
Example:
|
||||||
|
dma@100300 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "fsl,elo3-dma";
|
||||||
|
reg = <0x100300 0x4>,
|
||||||
|
<0x100600 0x4>;
|
||||||
|
ranges = <0x0 0x100100 0x500>;
|
||||||
|
dma-channel@0 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x0 0x80>;
|
||||||
|
interrupts = <28 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@80 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x80 0x80>;
|
||||||
|
interrupts = <29 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@100 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x100 0x80>;
|
||||||
|
interrupts = <30 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@180 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x180 0x80>;
|
||||||
|
interrupts = <31 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@300 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x300 0x80>;
|
||||||
|
interrupts = <76 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@380 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x380 0x80>;
|
||||||
|
interrupts = <77 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@400 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x400 0x80>;
|
||||||
|
interrupts = <78 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@480 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x480 0x80>;
|
||||||
|
interrupts = <79 2 0 0>;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
Note on DMA channel compatible properties: The compatible property must say
|
Note on DMA channel compatible properties: The compatible property must say
|
||||||
"fsl,elo-dma-channel" or "fsl,eloplus-dma-channel" to be used by the Elo DMA
|
"fsl,elo-dma-channel" or "fsl,eloplus-dma-channel" to be used by the Elo DMA
|
||||||
driver (fsldma). Any DMA channel used by fsldma cannot be used by another
|
driver (fsldma). Any DMA channel used by fsldma cannot be used by another
|
||||||
|
|
|
@ -223,13 +223,13 @@
|
||||||
reg = <0xe2000 0x1000>;
|
reg = <0xe2000 0x1000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
/include/ "qoriq-dma-0.dtsi"
|
/include/ "elo3-dma-0.dtsi"
|
||||||
dma@100300 {
|
dma@100300 {
|
||||||
fsl,iommu-parent = <&pamu0>;
|
fsl,iommu-parent = <&pamu0>;
|
||||||
fsl,liodn-reg = <&guts 0x580>; /* DMA1LIODNR */
|
fsl,liodn-reg = <&guts 0x580>; /* DMA1LIODNR */
|
||||||
};
|
};
|
||||||
|
|
||||||
/include/ "qoriq-dma-1.dtsi"
|
/include/ "elo3-dma-1.dtsi"
|
||||||
dma@101300 {
|
dma@101300 {
|
||||||
fsl,iommu-parent = <&pamu0>;
|
fsl,iommu-parent = <&pamu0>;
|
||||||
fsl,liodn-reg = <&guts 0x584>; /* DMA2LIODNR */
|
fsl,liodn-reg = <&guts 0x584>; /* DMA2LIODNR */
|
||||||
|
|
|
@ -0,0 +1,82 @@
|
||||||
|
/*
|
||||||
|
* QorIQ Elo3 DMA device tree stub [ controller @ offset 0x100000 ]
|
||||||
|
*
|
||||||
|
* Copyright 2013 Freescale Semiconductor Inc.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted provided that the following conditions are met:
|
||||||
|
* * Redistributions of source code must retain the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer.
|
||||||
|
* * Redistributions in binary form must reproduce the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer in the
|
||||||
|
* documentation and/or other materials provided with the distribution.
|
||||||
|
* * Neither the name of Freescale Semiconductor nor the
|
||||||
|
* names of its contributors may be used to endorse or promote products
|
||||||
|
* derived from this software without specific prior written permission.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* ALTERNATIVELY, this software may be distributed under the terms of the
|
||||||
|
* GNU General Public License ("GPL") as published by the Free Software
|
||||||
|
* Foundation, either version 2 of that License or (at your option) any
|
||||||
|
* later version.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY
|
||||||
|
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
* DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY
|
||||||
|
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||||
|
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||||
|
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
|
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
dma0: dma@100300 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "fsl,elo3-dma";
|
||||||
|
reg = <0x100300 0x4>,
|
||||||
|
<0x100600 0x4>;
|
||||||
|
ranges = <0x0 0x100100 0x500>;
|
||||||
|
dma-channel@0 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x0 0x80>;
|
||||||
|
interrupts = <28 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@80 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x80 0x80>;
|
||||||
|
interrupts = <29 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@100 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x100 0x80>;
|
||||||
|
interrupts = <30 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@180 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x180 0x80>;
|
||||||
|
interrupts = <31 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@300 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x300 0x80>;
|
||||||
|
interrupts = <76 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@380 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x380 0x80>;
|
||||||
|
interrupts = <77 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@400 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x400 0x80>;
|
||||||
|
interrupts = <78 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@480 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x480 0x80>;
|
||||||
|
interrupts = <79 2 0 0>;
|
||||||
|
};
|
||||||
|
};
|
|
@ -0,0 +1,82 @@
|
||||||
|
/*
|
||||||
|
* QorIQ Elo3 DMA device tree stub [ controller @ offset 0x101000 ]
|
||||||
|
*
|
||||||
|
* Copyright 2013 Freescale Semiconductor Inc.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
* modification, are permitted provided that the following conditions are met:
|
||||||
|
* * Redistributions of source code must retain the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer.
|
||||||
|
* * Redistributions in binary form must reproduce the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer in the
|
||||||
|
* documentation and/or other materials provided with the distribution.
|
||||||
|
* * Neither the name of Freescale Semiconductor nor the
|
||||||
|
* names of its contributors may be used to endorse or promote products
|
||||||
|
* derived from this software without specific prior written permission.
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* ALTERNATIVELY, this software may be distributed under the terms of the
|
||||||
|
* GNU General Public License ("GPL") as published by the Free Software
|
||||||
|
* Foundation, either version 2 of that License or (at your option) any
|
||||||
|
* later version.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY Freescale Semiconductor ``AS IS'' AND ANY
|
||||||
|
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
* DISCLAIMED. IN NO EVENT SHALL Freescale Semiconductor BE LIABLE FOR ANY
|
||||||
|
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||||
|
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
||||||
|
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
|
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
dma1: dma@101300 {
|
||||||
|
#address-cells = <1>;
|
||||||
|
#size-cells = <1>;
|
||||||
|
compatible = "fsl,elo3-dma";
|
||||||
|
reg = <0x101300 0x4>,
|
||||||
|
<0x101600 0x4>;
|
||||||
|
ranges = <0x0 0x101100 0x500>;
|
||||||
|
dma-channel@0 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x0 0x80>;
|
||||||
|
interrupts = <32 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@80 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x80 0x80>;
|
||||||
|
interrupts = <33 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@100 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x100 0x80>;
|
||||||
|
interrupts = <34 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@180 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x180 0x80>;
|
||||||
|
interrupts = <35 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@300 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x300 0x80>;
|
||||||
|
interrupts = <80 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@380 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x380 0x80>;
|
||||||
|
interrupts = <81 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@400 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x400 0x80>;
|
||||||
|
interrupts = <82 2 0 0>;
|
||||||
|
};
|
||||||
|
dma-channel@480 {
|
||||||
|
compatible = "fsl,eloplus-dma-channel";
|
||||||
|
reg = <0x480 0x80>;
|
||||||
|
interrupts = <83 2 0 0>;
|
||||||
|
};
|
||||||
|
};
|
|
@ -387,8 +387,8 @@
|
||||||
reg = <0xea000 0x4000>;
|
reg = <0xea000 0x4000>;
|
||||||
};
|
};
|
||||||
|
|
||||||
/include/ "qoriq-dma-0.dtsi"
|
/include/ "elo3-dma-0.dtsi"
|
||||||
/include/ "qoriq-dma-1.dtsi"
|
/include/ "elo3-dma-1.dtsi"
|
||||||
|
|
||||||
/include/ "qoriq-espi-0.dtsi"
|
/include/ "qoriq-espi-0.dtsi"
|
||||||
spi@110000 {
|
spi@110000 {
|
||||||
|
|
Loading…
Reference in New Issue