| # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/dma/cirrus,ep9301-dma-m2m.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Cirrus Logic ep93xx SoC DMA controller |
| |
| maintainers: |
| - Alexander Sverdlin <alexander.sverdlin@gmail.com> |
| - Nikita Shubin <nikita.shubin@maquefel.me> |
| |
| allOf: |
| - $ref: dma-controller.yaml# |
| |
| properties: |
| compatible: |
| oneOf: |
| - const: cirrus,ep9301-dma-m2m |
| - items: |
| - enum: |
| - cirrus,ep9302-dma-m2m |
| - cirrus,ep9307-dma-m2m |
| - cirrus,ep9312-dma-m2m |
| - cirrus,ep9315-dma-m2m |
| - const: cirrus,ep9301-dma-m2m |
| |
| reg: |
| items: |
| - description: m2m0 channel registers |
| - description: m2m1 channel registers |
| |
| clocks: |
| items: |
| - description: m2m0 channel gate clock |
| - description: m2m1 channel gate clock |
| |
| clock-names: |
| items: |
| - const: m2m0 |
| - const: m2m1 |
| |
| interrupts: |
| items: |
| - description: m2m0 channel interrupt |
| - description: m2m1 channel interrupt |
| |
| '#dma-cells': |
| const: 2 |
| description: | |
| The first cell is the unique device channel number as indicated by this |
| table for ep93xx: |
| |
| 10: SPI controller |
| 11: IDE controller |
| |
| The second cell is the DMA direction line number: |
| |
| 1: Memory to device |
| 2: Device to memory |
| |
| required: |
| - compatible |
| - reg |
| - clocks |
| - clock-names |
| - interrupts |
| |
| additionalProperties: false |
| |
| examples: |
| - | |
| #include <dt-bindings/clock/cirrus,ep9301-syscon.h> |
| dma-controller@80000100 { |
| compatible = "cirrus,ep9301-dma-m2m"; |
| reg = <0x80000100 0x0040>, |
| <0x80000140 0x0040>; |
| clocks = <&syscon EP93XX_CLK_M2M0>, |
| <&syscon EP93XX_CLK_M2M1>; |
| clock-names = "m2m0", "m2m1"; |
| interrupt-parent = <&vic0>; |
| interrupts = <17>, <18>; |
| #dma-cells = <2>; |
| }; |