1*cde9a96eSYoshihiro Shimoda# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*cde9a96eSYoshihiro Shimoda%YAML 1.2 3*cde9a96eSYoshihiro Shimoda--- 4*cde9a96eSYoshihiro Shimoda$id: http://devicetree.org/schemas/dma/renesas,rcar-dmac.yaml# 5*cde9a96eSYoshihiro Shimoda$schema: http://devicetree.org/meta-schemas/core.yaml# 6*cde9a96eSYoshihiro Shimoda 7*cde9a96eSYoshihiro Shimodatitle: Renesas R-Car and RZ/G DMA Controller 8*cde9a96eSYoshihiro Shimoda 9*cde9a96eSYoshihiro Shimodamaintainers: 10*cde9a96eSYoshihiro Shimoda - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> 11*cde9a96eSYoshihiro Shimoda 12*cde9a96eSYoshihiro ShimodaallOf: 13*cde9a96eSYoshihiro Shimoda - $ref: "dma-controller.yaml#" 14*cde9a96eSYoshihiro Shimoda 15*cde9a96eSYoshihiro Shimodaproperties: 16*cde9a96eSYoshihiro Shimoda compatible: 17*cde9a96eSYoshihiro Shimoda items: 18*cde9a96eSYoshihiro Shimoda - enum: 19*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a7743 # RZ/G1M 20*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a7744 # RZ/G1N 21*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a7745 # RZ/G1E 22*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a77470 # RZ/G1C 23*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a774a1 # RZ/G2M 24*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a774b1 # RZ/G2N 25*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a774c0 # RZ/G2E 26*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a7790 # R-Car H2 27*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a7791 # R-Car M2-W 28*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a7792 # R-Car V2H 29*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a7793 # R-Car M2-N 30*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a7794 # R-Car E2 31*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a7795 # R-Car H3 32*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a7796 # R-Car M3-W 33*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a77961 # R-Car M3-W+ 34*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a77965 # R-Car M3-N 35*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a77970 # R-Car V3M 36*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a77980 # R-Car V3H 37*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a77990 # R-Car E3 38*cde9a96eSYoshihiro Shimoda - renesas,dmac-r8a77995 # R-Car D3 39*cde9a96eSYoshihiro Shimoda - const: renesas,rcar-dmac 40*cde9a96eSYoshihiro Shimoda 41*cde9a96eSYoshihiro Shimoda reg: 42*cde9a96eSYoshihiro Shimoda maxItems: 1 43*cde9a96eSYoshihiro Shimoda 44*cde9a96eSYoshihiro Shimoda interrupts: 45*cde9a96eSYoshihiro Shimoda minItems: 9 46*cde9a96eSYoshihiro Shimoda maxItems: 17 47*cde9a96eSYoshihiro Shimoda 48*cde9a96eSYoshihiro Shimoda interrupt-names: 49*cde9a96eSYoshihiro Shimoda minItems: 9 50*cde9a96eSYoshihiro Shimoda maxItems: 17 51*cde9a96eSYoshihiro Shimoda items: 52*cde9a96eSYoshihiro Shimoda - const: error 53*cde9a96eSYoshihiro Shimoda - pattern: "^ch([0-9]|1[0-5])$" 54*cde9a96eSYoshihiro Shimoda - pattern: "^ch([0-9]|1[0-5])$" 55*cde9a96eSYoshihiro Shimoda - pattern: "^ch([0-9]|1[0-5])$" 56*cde9a96eSYoshihiro Shimoda - pattern: "^ch([0-9]|1[0-5])$" 57*cde9a96eSYoshihiro Shimoda - pattern: "^ch([0-9]|1[0-5])$" 58*cde9a96eSYoshihiro Shimoda - pattern: "^ch([0-9]|1[0-5])$" 59*cde9a96eSYoshihiro Shimoda - pattern: "^ch([0-9]|1[0-5])$" 60*cde9a96eSYoshihiro Shimoda - pattern: "^ch([0-9]|1[0-5])$" 61*cde9a96eSYoshihiro Shimoda - pattern: "^ch([0-9]|1[0-5])$" 62*cde9a96eSYoshihiro Shimoda - pattern: "^ch([0-9]|1[0-5])$" 63*cde9a96eSYoshihiro Shimoda - pattern: "^ch([0-9]|1[0-5])$" 64*cde9a96eSYoshihiro Shimoda - pattern: "^ch([0-9]|1[0-5])$" 65*cde9a96eSYoshihiro Shimoda - pattern: "^ch([0-9]|1[0-5])$" 66*cde9a96eSYoshihiro Shimoda - pattern: "^ch([0-9]|1[0-5])$" 67*cde9a96eSYoshihiro Shimoda - pattern: "^ch([0-9]|1[0-5])$" 68*cde9a96eSYoshihiro Shimoda - pattern: "^ch([0-9]|1[0-5])$" 69*cde9a96eSYoshihiro Shimoda 70*cde9a96eSYoshihiro Shimoda clocks: 71*cde9a96eSYoshihiro Shimoda maxItems: 1 72*cde9a96eSYoshihiro Shimoda 73*cde9a96eSYoshihiro Shimoda clock-names: 74*cde9a96eSYoshihiro Shimoda maxItems: 1 75*cde9a96eSYoshihiro Shimoda items: 76*cde9a96eSYoshihiro Shimoda - const: fck 77*cde9a96eSYoshihiro Shimoda 78*cde9a96eSYoshihiro Shimoda '#dma-cells': 79*cde9a96eSYoshihiro Shimoda const: 1 80*cde9a96eSYoshihiro Shimoda description: 81*cde9a96eSYoshihiro Shimoda The cell specifies the MID/RID of the DMAC port connected to 82*cde9a96eSYoshihiro Shimoda the DMA client. 83*cde9a96eSYoshihiro Shimoda 84*cde9a96eSYoshihiro Shimoda dma-channels: 85*cde9a96eSYoshihiro Shimoda minimum: 8 86*cde9a96eSYoshihiro Shimoda maximum: 16 87*cde9a96eSYoshihiro Shimoda 88*cde9a96eSYoshihiro Shimoda dma-channel-mask: true 89*cde9a96eSYoshihiro Shimoda 90*cde9a96eSYoshihiro Shimoda iommus: 91*cde9a96eSYoshihiro Shimoda minItems: 8 92*cde9a96eSYoshihiro Shimoda maxItems: 16 93*cde9a96eSYoshihiro Shimoda 94*cde9a96eSYoshihiro Shimoda power-domains: 95*cde9a96eSYoshihiro Shimoda maxItems: 1 96*cde9a96eSYoshihiro Shimoda 97*cde9a96eSYoshihiro Shimoda resets: 98*cde9a96eSYoshihiro Shimoda maxItems: 1 99*cde9a96eSYoshihiro Shimoda 100*cde9a96eSYoshihiro Shimodarequired: 101*cde9a96eSYoshihiro Shimoda - compatible 102*cde9a96eSYoshihiro Shimoda - reg 103*cde9a96eSYoshihiro Shimoda - interrupts 104*cde9a96eSYoshihiro Shimoda - interrupt-names 105*cde9a96eSYoshihiro Shimoda - clocks 106*cde9a96eSYoshihiro Shimoda - clock-names 107*cde9a96eSYoshihiro Shimoda - '#dma-cells' 108*cde9a96eSYoshihiro Shimoda - dma-channels 109*cde9a96eSYoshihiro Shimoda - power-domains 110*cde9a96eSYoshihiro Shimoda - resets 111*cde9a96eSYoshihiro Shimoda 112*cde9a96eSYoshihiro ShimodaadditionalProperties: false 113*cde9a96eSYoshihiro Shimoda 114*cde9a96eSYoshihiro Shimodaexamples: 115*cde9a96eSYoshihiro Shimoda - | 116*cde9a96eSYoshihiro Shimoda #include <dt-bindings/clock/r8a7790-cpg-mssr.h> 117*cde9a96eSYoshihiro Shimoda #include <dt-bindings/interrupt-controller/arm-gic.h> 118*cde9a96eSYoshihiro Shimoda #include <dt-bindings/power/r8a7790-sysc.h> 119*cde9a96eSYoshihiro Shimoda 120*cde9a96eSYoshihiro Shimoda dmac0: dma-controller@e6700000 { 121*cde9a96eSYoshihiro Shimoda compatible = "renesas,dmac-r8a7790", "renesas,rcar-dmac"; 122*cde9a96eSYoshihiro Shimoda reg = <0xe6700000 0x20000>; 123*cde9a96eSYoshihiro Shimoda interrupts = <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>, 124*cde9a96eSYoshihiro Shimoda <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>, 125*cde9a96eSYoshihiro Shimoda <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>, 126*cde9a96eSYoshihiro Shimoda <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>, 127*cde9a96eSYoshihiro Shimoda <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>, 128*cde9a96eSYoshihiro Shimoda <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>, 129*cde9a96eSYoshihiro Shimoda <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>, 130*cde9a96eSYoshihiro Shimoda <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>, 131*cde9a96eSYoshihiro Shimoda <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>, 132*cde9a96eSYoshihiro Shimoda <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>, 133*cde9a96eSYoshihiro Shimoda <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>, 134*cde9a96eSYoshihiro Shimoda <GIC_SPI 210 IRQ_TYPE_LEVEL_HIGH>, 135*cde9a96eSYoshihiro Shimoda <GIC_SPI 211 IRQ_TYPE_LEVEL_HIGH>, 136*cde9a96eSYoshihiro Shimoda <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>, 137*cde9a96eSYoshihiro Shimoda <GIC_SPI 213 IRQ_TYPE_LEVEL_HIGH>, 138*cde9a96eSYoshihiro Shimoda <GIC_SPI 214 IRQ_TYPE_LEVEL_HIGH>; 139*cde9a96eSYoshihiro Shimoda interrupt-names = "error", 140*cde9a96eSYoshihiro Shimoda "ch0", "ch1", "ch2", "ch3", 141*cde9a96eSYoshihiro Shimoda "ch4", "ch5", "ch6", "ch7", 142*cde9a96eSYoshihiro Shimoda "ch8", "ch9", "ch10", "ch11", 143*cde9a96eSYoshihiro Shimoda "ch12", "ch13", "ch14"; 144*cde9a96eSYoshihiro Shimoda clocks = <&cpg CPG_MOD 219>; 145*cde9a96eSYoshihiro Shimoda clock-names = "fck"; 146*cde9a96eSYoshihiro Shimoda power-domains = <&sysc R8A7790_PD_ALWAYS_ON>; 147*cde9a96eSYoshihiro Shimoda resets = <&cpg 219>; 148*cde9a96eSYoshihiro Shimoda #dma-cells = <1>; 149*cde9a96eSYoshihiro Shimoda dma-channels = <15>; 150*cde9a96eSYoshihiro Shimoda }; 151