aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2013-09-10 16:37:36 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2013-09-10 16:37:36 -0400
commitec5b103ecfde929004b691f29183255aeeadecd5 (patch)
tree3b16d0654c074b5b36d06e56110c7218a8685655 /Documentation/devicetree
parentd0048f0b91ee35ab940ec6cbdfdd238c55b12a14 (diff)
parent5622ff1a4dd7dcb1c09953d8066a4e7c4c350b2d (diff)
Merge branch 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma
Pull slave-dmaengine updates from Vinod Koul: "This pull brings: - Andy's DW driver updates - Guennadi's sh driver updates - Pl08x driver fixes from Tomasz & Alban - Improvements to mmp_pdma by Daniel - TI EDMA fixes by Joel - New drivers: - Hisilicon k3dma driver - Renesas rcar dma driver - New API for publishing slave driver capablities - Various fixes across the subsystem by Andy, Jingoo, Sachin etc..." * 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma: (94 commits) dma: edma: Remove limits on number of slots dma: edma: Leave linked to Null slot instead of DUMMY slot dma: edma: Find missed events and issue them ARM: edma: Add function to manually trigger an EDMA channel dma: edma: Write out and handle MAX_NR_SG at a given time dma: edma: Setup parameters to DMA MAX_NR_SG at a time dmaengine: pl330: use dma_set_max_seg_size to set the sg limit dmaengine: dma_slave_caps: remove sg entries dma: replace devm_request_and_ioremap by devm_ioremap_resource dma: ste_dma40: Fix potential null pointer dereference dma: ste_dma40: Remove duplicate const dma: imx-dma: Remove redundant NULL check dma: dmagengine: fix function names in comments dma: add driver for R-Car HPB-DMAC dma: k3dma: use devm_ioremap_resource() instead of devm_request_and_ioremap() dma: imx-sdma: Staticize sdma_driver_data structures pch_dma: Add MODULE_DEVICE_TABLE dmaengine: PL08x: Add cyclic transfer support dmaengine: PL08x: Fix reading the byte count in cctl dmaengine: PL08x: Add support for different maximum transfer size ...
Diffstat (limited to 'Documentation/devicetree')
-rw-r--r--Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt7
-rw-r--r--Documentation/devicetree/bindings/dma/k3dma.txt46
-rw-r--r--Documentation/devicetree/bindings/dma/shdma.txt61
3 files changed, 87 insertions, 27 deletions
diff --git a/Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt b/Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt
index 68cee4f5539f..4fa814d38321 100644
--- a/Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt
+++ b/Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt
@@ -1,7 +1,12 @@
1* Freescale Smart Direct Memory Access (SDMA) Controller for i.MX 1* Freescale Smart Direct Memory Access (SDMA) Controller for i.MX
2 2
3Required properties: 3Required properties:
4- compatible : Should be "fsl,<chip>-sdma" 4- compatible : Should be "fsl,imx31-sdma", "fsl,imx31-to1-sdma",
5 "fsl,imx31-to2-sdma", "fsl,imx35-sdma", "fsl,imx35-to1-sdma",
6 "fsl,imx35-to2-sdma", "fsl,imx51-sdma", "fsl,imx53-sdma" or
7 "fsl,imx6q-sdma". The -to variants should be preferred since they
8 allow to determnine the correct ROM script addresses needed for
9 the driver to work without additional firmware.
5- reg : Should contain SDMA registers location and length 10- reg : Should contain SDMA registers location and length
6- interrupts : Should contain SDMA interrupt 11- interrupts : Should contain SDMA interrupt
7- #dma-cells : Must be <3>. 12- #dma-cells : Must be <3>.
diff --git a/Documentation/devicetree/bindings/dma/k3dma.txt b/Documentation/devicetree/bindings/dma/k3dma.txt
new file mode 100644
index 000000000000..23f8d712c3ce
--- /dev/null
+++ b/Documentation/devicetree/bindings/dma/k3dma.txt
@@ -0,0 +1,46 @@
1* Hisilicon K3 DMA controller
2
3See dma.txt first
4
5Required properties:
6- compatible: Should be "hisilicon,k3-dma-1.0"
7- reg: Should contain DMA registers location and length.
8- interrupts: Should contain one interrupt shared by all channel
9- #dma-cells: see dma.txt, should be 1, para number
10- dma-channels: physical channels supported
11- dma-requests: virtual channels supported, each virtual channel
12 have specific request line
13- clocks: clock required
14
15Example:
16
17Controller:
18 dma0: dma@fcd02000 {
19 compatible = "hisilicon,k3-dma-1.0";
20 reg = <0xfcd02000 0x1000>;
21 #dma-cells = <1>;
22 dma-channels = <16>;
23 dma-requests = <27>;
24 interrupts = <0 12 4>;
25 clocks = <&pclk>;
26 status = "disable";
27 };
28
29Client:
30Use specific request line passing from dmax
31For example, i2c0 read channel request line is 18, while write channel use 19
32
33 i2c0: i2c@fcb08000 {
34 compatible = "snps,designware-i2c";
35 dmas = <&dma0 18 /* read channel */
36 &dma0 19>; /* write channel */
37 dma-names = "rx", "tx";
38 };
39
40 i2c1: i2c@fcb09000 {
41 compatible = "snps,designware-i2c";
42 dmas = <&dma0 20 /* read channel */
43 &dma0 21>; /* write channel */
44 dma-names = "rx", "tx";
45 };
46
diff --git a/Documentation/devicetree/bindings/dma/shdma.txt b/Documentation/devicetree/bindings/dma/shdma.txt
index c15994aa1939..2a3f3b8946b9 100644
--- a/Documentation/devicetree/bindings/dma/shdma.txt
+++ b/Documentation/devicetree/bindings/dma/shdma.txt
@@ -22,42 +22,51 @@ Optional properties (currently unused):
22* DMA controller 22* DMA controller
23 23
24Required properties: 24Required properties:
25- compatible: should be "renesas,shdma" 25- compatible: should be of the form "renesas,shdma-<soc>", where <soc> should
26 be replaced with the desired SoC model, e.g.
27 "renesas,shdma-r8a73a4" for the system DMAC on r8a73a4 SoC
26 28
27Example: 29Example:
28 dmac: dma-mux0 { 30 dmac: dma-multiplexer@0 {
29 compatible = "renesas,shdma-mux"; 31 compatible = "renesas,shdma-mux";
30 #dma-cells = <1>; 32 #dma-cells = <1>;
31 dma-channels = <6>; 33 dma-channels = <20>;
32 dma-requests = <256>; 34 dma-requests = <256>;
33 reg = <0 0>; /* Needed for AUXDATA */ 35 #address-cells = <2>;
34 #address-cells = <1>; 36 #size-cells = <2>;
35 #size-cells = <1>;
36 ranges; 37 ranges;
37 38
38 dma0: shdma@fe008020 { 39 dma0: dma-controller@e6700020 {
39 compatible = "renesas,shdma"; 40 compatible = "renesas,shdma-r8a73a4";
40 reg = <0xfe008020 0x270>, 41 reg = <0 0xe6700020 0 0x89e0>;
41 <0xfe009000 0xc>;
42 interrupt-parent = <&gic>; 42 interrupt-parent = <&gic>;
43 interrupts = <0 34 4 43 interrupts = <0 220 4
44 0 28 4 44 0 200 4
45 0 29 4 45 0 201 4
46 0 30 4 46 0 202 4
47 0 31 4 47 0 203 4
48 0 32 4 48 0 204 4
49 0 33 4>; 49 0 205 4
50 0 206 4
51 0 207 4
52 0 208 4
53 0 209 4
54 0 210 4
55 0 211 4
56 0 212 4
57 0 213 4
58 0 214 4
59 0 215 4
60 0 216 4
61 0 217 4
62 0 218 4
63 0 219 4>;
50 interrupt-names = "error", 64 interrupt-names = "error",
51 "ch0", "ch1", "ch2", "ch3", 65 "ch0", "ch1", "ch2", "ch3",
52 "ch4", "ch5"; 66 "ch4", "ch5", "ch6", "ch7",
53 }; 67 "ch8", "ch9", "ch10", "ch11",
54 68 "ch12", "ch13", "ch14", "ch15",
55 dma1: shdma@fe018020 { 69 "ch16", "ch17", "ch18", "ch19";
56 ...
57 };
58
59 dma2: shdma@fe028020 {
60 ...
61 }; 70 };
62 }; 71 };
63 72