diff options
| -rw-r--r-- | Documentation/devicetree/bindings/dma/arm-pl330.txt | 21 | ||||
| -rw-r--r-- | arch/arm/boot/dts/exynos5250.dtsi | 12 |
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 | ||
| 12 | Optional properties: | 12 | Optional 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 | ||
| 15 | Example: | 19 | Example: |
| 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 | ||
| 23 | Client drivers (device nodes requiring dma transfers from dev-to-mem or | 30 | Client drivers (device nodes requiring dma transfers from dev-to-mem or |
| 24 | mem-to-dev) should specify the DMA channel numbers using a two-value pair | 31 | mem-to-dev) should specify the DMA channel numbers and dma channel names |
| 25 | as shown below. | 32 | as 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 | ||
