156 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/spi/renesas,rspi.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Renesas (Quad) Serial Peripheral Interface (RSPI/QSPI)8 9maintainers:10 - Geert Uytterhoeven <geert+renesas@glider.be>11 12properties:13 compatible:14 oneOf:15 - items:16 - enum:17 - renesas,rspi-sh7757 # SH775718 - const: renesas,rspi # Legacy SH19 20 - items:21 - enum:22 - renesas,rspi-r7s72100 # RZ/A1H23 - renesas,rspi-r7s9210 # RZ/A224 - renesas,r9a07g043-rspi # RZ/G2UL and RZ/Five25 - renesas,r9a07g044-rspi # RZ/G2{L,LC}26 - renesas,r9a07g054-rspi # RZ/V2L27 - const: renesas,rspi-rz28 29 - items:30 - enum:31 - renesas,qspi-r8a7742 # RZ/G1H32 - renesas,qspi-r8a7743 # RZ/G1M33 - renesas,qspi-r8a7744 # RZ/G1N34 - renesas,qspi-r8a7745 # RZ/G1E35 - renesas,qspi-r8a77470 # RZ/G1C36 - renesas,qspi-r8a7790 # R-Car H237 - renesas,qspi-r8a7791 # R-Car M2-W38 - renesas,qspi-r8a7792 # R-Car V2H39 - renesas,qspi-r8a7793 # R-Car M2-N40 - renesas,qspi-r8a7794 # R-Car E241 - const: renesas,qspi # R-Car Gen2 and RZ/G142 43 reg:44 maxItems: 145 46 interrupts:47 oneOf:48 - items:49 - description: A combined interrupt50 - items:51 - description: Error interrupt (SPEI)52 - description: Receive Interrupt (SPRI)53 - description: Transmit Interrupt (SPTI)54 55 interrupt-names:56 oneOf:57 - items:58 - const: mux59 - items:60 - const: error61 - const: rx62 - const: tx63 64 clocks:65 maxItems: 166 67 power-domains:68 maxItems: 169 70 resets:71 maxItems: 172 73 dmas:74 minItems: 275 maxItems: 476 description:77 Must contain a list of pairs of references to DMA specifiers, one for78 transmission, and one for reception.79 80 dma-names:81 minItems: 282 maxItems: 483 items:84 enum:85 - tx86 - rx87 88 num-cs:89 description: |90 Total number of native chip selects.91 Hardware limitations related to chip selects:92 - When using GPIO chip selects, at least one native chip select must93 be left unused, as it will be driven anyway.94 minimum: 195 maximum: 296 default: 197 98required:99 - compatible100 - reg101 - interrupts102 - clocks103 - power-domains104 - '#address-cells'105 - '#size-cells'106 107allOf:108 - $ref: spi-controller.yaml#109 - if:110 properties:111 compatible:112 contains:113 enum:114 - renesas,rspi-rz115 then:116 properties:117 interrupts:118 minItems: 3119 required:120 - interrupt-names121 122 - if:123 properties:124 compatible:125 contains:126 enum:127 - renesas,qspi128 - renesas,r9a07g043-rspi129 - renesas,r9a07g044-rspi130 - renesas,r9a07g054-rspi131 then:132 required:133 - resets134 135unevaluatedProperties: false136 137examples:138 - |139 #include <dt-bindings/clock/r8a7791-cpg-mssr.h>140 #include <dt-bindings/interrupt-controller/arm-gic.h>141 #include <dt-bindings/power/r8a7791-sysc.h>142 143 qspi: spi@e6b10000 {144 compatible = "renesas,qspi-r8a7791", "renesas,qspi";145 reg = <0xe6b10000 0x2c>;146 interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;147 clocks = <&cpg CPG_MOD 917>;148 dmas = <&dmac0 0x17>, <&dmac0 0x18>, <&dmac1 0x17>, <&dmac1 0x18>;149 dma-names = "tx", "rx", "tx", "rx";150 power-domains = <&sysc R8A7791_PD_ALWAYS_ON>;151 resets = <&cpg 917>;152 num-cs = <1>;153 #address-cells = <1>;154 #size-cells = <0>;155 };156