aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPadmavathi Venna <padma.v@samsung.com>2013-02-13 22:40:08 -0500
committerVinod Koul <vinod.koul@intel.com>2013-02-14 09:34:27 -0500
commit42cf20980cded7e0ecdd6dba74592d059c6a8bda (patch)
treee300eb889bcbb9aac1aa8c052016bfb4cc406569
parent421da89aadd1b24f4a3bc1d60c9de9825ec2debc (diff)
ARM: dts: pl330: Add #dma-cells for generic dma binding support
This patch adds #dma-cells property to PL330 DMA controller nodes for supporting generic dma dt bindings on samsung exynos5250 platform. Signed-off-by: Padmavathi Venna <padma.v@samsung.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
-rw-r--r--Documentation/devicetree/bindings/dma/arm-pl330.txt21
-rw-r--r--arch/arm/boot/dts/exynos5250.dtsi12
2 files changed, 28 insertions, 5 deletions
diff --git a/Documentation/devicetree/bindings/dma/arm-pl330.txt b/Documentation/devicetree/bindings/dma/arm-pl330.txt
index 36e27d54260b..267565894db9 100644
--- a/Documentation/devicetree/bindings/dma/arm-pl330.txt
+++ b/Documentation/devicetree/bindings/dma/arm-pl330.txt
@@ -10,7 +10,11 @@ Required properties:
10 - interrupts: interrupt number to the cpu. 10 - interrupts: interrupt number to the cpu.
11 11
12Optional properties: 12Optional properties:
13- dma-coherent : Present if dma operations are coherent 13 - dma-coherent : Present if dma operations are coherent
14 - #dma-cells: must be <1>. used to represent the number of integer
15 cells in the dmas property of client device.
16 - dma-channels: contains the total number of DMA channels supported by the DMAC
17 - dma-requests: contains the total number of DMA requests supported by the DMAC
14 18
15Example: 19Example:
16 20
@@ -18,16 +22,23 @@ Example:
18 compatible = "arm,pl330", "arm,primecell"; 22 compatible = "arm,pl330", "arm,primecell";
19 reg = <0x12680000 0x1000>; 23 reg = <0x12680000 0x1000>;
20 interrupts = <99>; 24 interrupts = <99>;
25 #dma-cells = <1>;
26 #dma-channels = <8>;
27 #dma-requests = <32>;
21 }; 28 };
22 29
23Client drivers (device nodes requiring dma transfers from dev-to-mem or 30Client drivers (device nodes requiring dma transfers from dev-to-mem or
24mem-to-dev) should specify the DMA channel numbers using a two-value pair 31mem-to-dev) should specify the DMA channel numbers and dma channel names
25as shown below. 32as shown below.
26 33
27 [property name] = <[phandle of the dma controller] [dma request id]>; 34 [property name] = <[phandle of the dma controller] [dma request id]>;
35 [property name] = <[dma channel name]>
28 36
29 where 'dma request id' is the dma request number which is connected 37 where 'dma request id' is the dma request number which is connected
30 to the client controller. The 'property name' is recommended to be 38 to the client controller. The 'property name' 'dmas' and 'dma-names'
31 of the form <name>-dma-channel. 39 as required by the generic dma device tree binding helpers. The dma
40 names correspond 1:1 with the dma request ids in the dmas property.
32 41
33 Example: tx-dma-channel = <&pdma0 12>; 42 Example: dmas = <&pdma0 12
43 &pdma1 11>;
44 dma-names = "tx", "rx";
diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi
index 2e3b6efaf1a2..c774aae3f82d 100644
--- a/arch/arm/boot/dts/exynos5250.dtsi
+++ b/arch/arm/boot/dts/exynos5250.dtsi
@@ -280,24 +280,36 @@
280 compatible = "arm,pl330", "arm,primecell"; 280 compatible = "arm,pl330", "arm,primecell";
281 reg = <0x121A0000 0x1000>; 281 reg = <0x121A0000 0x1000>;
282 interrupts = <0 34 0>; 282 interrupts = <0 34 0>;
283 #dma-cells = <1>;
284 #dma-channels = <8>;
285 #dma-requests = <32>;
283 }; 286 };
284 287
285 pdma1: pdma@121B0000 { 288 pdma1: pdma@121B0000 {
286 compatible = "arm,pl330", "arm,primecell"; 289 compatible = "arm,pl330", "arm,primecell";
287 reg = <0x121B0000 0x1000>; 290 reg = <0x121B0000 0x1000>;
288 interrupts = <0 35 0>; 291 interrupts = <0 35 0>;
292 #dma-cells = <1>;
293 #dma-channels = <8>;
294 #dma-requests = <32>;
289 }; 295 };
290 296
291 mdma0: mdma@10800000 { 297 mdma0: mdma@10800000 {
292 compatible = "arm,pl330", "arm,primecell"; 298 compatible = "arm,pl330", "arm,primecell";
293 reg = <0x10800000 0x1000>; 299 reg = <0x10800000 0x1000>;
294 interrupts = <0 33 0>; 300 interrupts = <0 33 0>;
301 #dma-cells = <1>;
302 #dma-channels = <8>;
303 #dma-requests = <1>;
295 }; 304 };
296 305
297 mdma1: mdma@11C10000 { 306 mdma1: mdma@11C10000 {
298 compatible = "arm,pl330", "arm,primecell"; 307 compatible = "arm,pl330", "arm,primecell";
299 reg = <0x11C10000 0x1000>; 308 reg = <0x11C10000 0x1000>;
300 interrupts = <0 124 0>; 309 interrupts = <0 124 0>;
310 #dma-cells = <1>;
311 #dma-channels = <8>;
312 #dma-requests = <1>;
301 }; 313 };
302 }; 314 };
303 315