1999866c9SGeert Uytterhoeven# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2999866c9SGeert Uytterhoeven%YAML 1.2 3999866c9SGeert Uytterhoeven--- 4999866c9SGeert Uytterhoeven$id: http://devicetree.org/schemas/spi/renesas,rspi.yaml# 5999866c9SGeert Uytterhoeven$schema: http://devicetree.org/meta-schemas/core.yaml# 6999866c9SGeert Uytterhoeven 7999866c9SGeert Uytterhoeventitle: Renesas (Quad) Serial Peripheral Interface (RSPI/QSPI) 8999866c9SGeert Uytterhoeven 9999866c9SGeert Uytterhoevenmaintainers: 10999866c9SGeert Uytterhoeven - Geert Uytterhoeven <geert+renesas@glider.be> 11999866c9SGeert Uytterhoeven 12999866c9SGeert Uytterhoevenproperties: 13999866c9SGeert Uytterhoeven compatible: 14999866c9SGeert Uytterhoeven oneOf: 15999866c9SGeert Uytterhoeven - items: 16999866c9SGeert Uytterhoeven - enum: 17999866c9SGeert Uytterhoeven - renesas,rspi-sh7757 # SH7757 18999866c9SGeert Uytterhoeven - const: renesas,rspi # Legacy SH 19999866c9SGeert Uytterhoeven 20999866c9SGeert Uytterhoeven - items: 21999866c9SGeert Uytterhoeven - enum: 22999866c9SGeert Uytterhoeven - renesas,rspi-r7s72100 # RZ/A1H 23999866c9SGeert Uytterhoeven - renesas,rspi-r7s9210 # RZ/A2 24999866c9SGeert Uytterhoeven - const: renesas,rspi-rz # RZ/A 25999866c9SGeert Uytterhoeven 26999866c9SGeert Uytterhoeven - items: 27999866c9SGeert Uytterhoeven - enum: 28*08f9793eSLad Prabhakar - renesas,qspi-r8a7742 # RZ/G1H 29999866c9SGeert Uytterhoeven - renesas,qspi-r8a7743 # RZ/G1M 30999866c9SGeert Uytterhoeven - renesas,qspi-r8a7744 # RZ/G1N 31999866c9SGeert Uytterhoeven - renesas,qspi-r8a7745 # RZ/G1E 32999866c9SGeert Uytterhoeven - renesas,qspi-r8a77470 # RZ/G1C 33999866c9SGeert Uytterhoeven - renesas,qspi-r8a7790 # R-Car H2 34999866c9SGeert Uytterhoeven - renesas,qspi-r8a7791 # R-Car M2-W 35999866c9SGeert Uytterhoeven - renesas,qspi-r8a7792 # R-Car V2H 36999866c9SGeert Uytterhoeven - renesas,qspi-r8a7793 # R-Car M2-N 37999866c9SGeert Uytterhoeven - renesas,qspi-r8a7794 # R-Car E2 38999866c9SGeert Uytterhoeven - const: renesas,qspi # R-Car Gen2 and RZ/G1 39999866c9SGeert Uytterhoeven 40999866c9SGeert Uytterhoeven reg: 41999866c9SGeert Uytterhoeven maxItems: 1 42999866c9SGeert Uytterhoeven 43999866c9SGeert Uytterhoeven interrupts: 44999866c9SGeert Uytterhoeven oneOf: 45999866c9SGeert Uytterhoeven - items: 46999866c9SGeert Uytterhoeven - description: A combined interrupt 47999866c9SGeert Uytterhoeven - items: 48999866c9SGeert Uytterhoeven - description: Error interrupt (SPEI) 49999866c9SGeert Uytterhoeven - description: Receive Interrupt (SPRI) 50999866c9SGeert Uytterhoeven - description: Transmit Interrupt (SPTI) 51999866c9SGeert Uytterhoeven 52999866c9SGeert Uytterhoeven interrupt-names: 53999866c9SGeert Uytterhoeven oneOf: 54999866c9SGeert Uytterhoeven - items: 55999866c9SGeert Uytterhoeven - const: mux 56999866c9SGeert Uytterhoeven - items: 57999866c9SGeert Uytterhoeven - const: error 58999866c9SGeert Uytterhoeven - const: rx 59999866c9SGeert Uytterhoeven - const: tx 60999866c9SGeert Uytterhoeven 61999866c9SGeert Uytterhoeven clocks: 62999866c9SGeert Uytterhoeven maxItems: 1 63999866c9SGeert Uytterhoeven 64999866c9SGeert Uytterhoeven power-domains: 65999866c9SGeert Uytterhoeven maxItems: 1 66999866c9SGeert Uytterhoeven 67999866c9SGeert Uytterhoeven resets: 68999866c9SGeert Uytterhoeven maxItems: 1 69999866c9SGeert Uytterhoeven 70999866c9SGeert Uytterhoeven dmas: 71999866c9SGeert Uytterhoeven description: 72999866c9SGeert Uytterhoeven Must contain a list of pairs of references to DMA specifiers, one for 73999866c9SGeert Uytterhoeven transmission, and one for reception. 74999866c9SGeert Uytterhoeven 75999866c9SGeert Uytterhoeven dma-names: 76999866c9SGeert Uytterhoeven minItems: 2 77999866c9SGeert Uytterhoeven maxItems: 4 78999866c9SGeert Uytterhoeven items: 79999866c9SGeert Uytterhoeven enum: 80999866c9SGeert Uytterhoeven - tx 81999866c9SGeert Uytterhoeven - rx 82999866c9SGeert Uytterhoeven 83999866c9SGeert Uytterhoeven num-cs: 84999866c9SGeert Uytterhoeven description: | 85999866c9SGeert Uytterhoeven Total number of native chip selects. 86999866c9SGeert Uytterhoeven Hardware limitations related to chip selects: 87999866c9SGeert Uytterhoeven - When using GPIO chip selects, at least one native chip select must 88999866c9SGeert Uytterhoeven be left unused, as it will be driven anyway. 89999866c9SGeert Uytterhoeven minimum: 1 90999866c9SGeert Uytterhoeven maximum: 2 91999866c9SGeert Uytterhoeven default: 1 92999866c9SGeert Uytterhoeven 93999866c9SGeert Uytterhoevenrequired: 94999866c9SGeert Uytterhoeven - compatible 95999866c9SGeert Uytterhoeven - reg 96999866c9SGeert Uytterhoeven - interrupts 97999866c9SGeert Uytterhoeven - clocks 98999866c9SGeert Uytterhoeven - power-domains 99999866c9SGeert Uytterhoeven - '#address-cells' 100999866c9SGeert Uytterhoeven - '#size-cells' 101999866c9SGeert Uytterhoeven 102999866c9SGeert UytterhoevenallOf: 103999866c9SGeert Uytterhoeven - $ref: spi-controller.yaml# 104999866c9SGeert Uytterhoeven - if: 105999866c9SGeert Uytterhoeven properties: 106999866c9SGeert Uytterhoeven compatible: 107999866c9SGeert Uytterhoeven contains: 108999866c9SGeert Uytterhoeven enum: 109999866c9SGeert Uytterhoeven - renesas,rspi-rz 110999866c9SGeert Uytterhoeven then: 111999866c9SGeert Uytterhoeven properties: 112999866c9SGeert Uytterhoeven interrupts: 113999866c9SGeert Uytterhoeven minItems: 3 114999866c9SGeert Uytterhoeven required: 115999866c9SGeert Uytterhoeven - interrupt-names 116999866c9SGeert Uytterhoeven 117999866c9SGeert Uytterhoeven - if: 118999866c9SGeert Uytterhoeven properties: 119999866c9SGeert Uytterhoeven compatible: 120999866c9SGeert Uytterhoeven contains: 121999866c9SGeert Uytterhoeven enum: 122999866c9SGeert Uytterhoeven - renesas,qspi 123999866c9SGeert Uytterhoeven then: 124999866c9SGeert Uytterhoeven required: 125999866c9SGeert Uytterhoeven - resets 126999866c9SGeert Uytterhoeven 127999866c9SGeert Uytterhoevenexamples: 128999866c9SGeert Uytterhoeven - | 129999866c9SGeert Uytterhoeven #include <dt-bindings/clock/r8a7791-cpg-mssr.h> 130999866c9SGeert Uytterhoeven #include <dt-bindings/interrupt-controller/arm-gic.h> 131999866c9SGeert Uytterhoeven #include <dt-bindings/power/r8a7791-sysc.h> 132999866c9SGeert Uytterhoeven 133999866c9SGeert Uytterhoeven qspi: spi@e6b10000 { 134999866c9SGeert Uytterhoeven compatible = "renesas,qspi-r8a7791", "renesas,qspi"; 135999866c9SGeert Uytterhoeven reg = <0xe6b10000 0x2c>; 136999866c9SGeert Uytterhoeven interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>; 137999866c9SGeert Uytterhoeven clocks = <&cpg CPG_MOD 917>; 138999866c9SGeert Uytterhoeven dmas = <&dmac0 0x17>, <&dmac0 0x18>, <&dmac1 0x17>, <&dmac1 0x18>; 139999866c9SGeert Uytterhoeven dma-names = "tx", "rx", "tx", "rx"; 140999866c9SGeert Uytterhoeven power-domains = <&sysc R8A7791_PD_ALWAYS_ON>; 141999866c9SGeert Uytterhoeven resets = <&cpg 917>; 142999866c9SGeert Uytterhoeven num-cs = <1>; 143999866c9SGeert Uytterhoeven #address-cells = <1>; 144999866c9SGeert Uytterhoeven #size-cells = <0>; 145999866c9SGeert Uytterhoeven }; 146