1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/memory-controllers/renesas,rpc-if.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Renesas Reduced Pin Count Interface (RPC-IF) 8 9maintainers: 10 - Sergei Shtylyov <sergei.shtylyov@gmail.com> 11 12description: | 13 Renesas RPC-IF allows a SPI flash or HyperFlash connected to the SoC to 14 be accessed via the external address space read mode or the manual mode. 15 16 The flash chip itself should be represented by a subnode of the RPC-IF node. 17 The flash interface is selected based on the "compatible" property of this 18 subnode: 19 - if it contains "jedec,spi-nor", then SPI is used; 20 - if it contains "cfi-flash", then HyperFlash is used. 21 22allOf: 23 - $ref: "/schemas/spi/spi-controller.yaml#" 24 25properties: 26 compatible: 27 oneOf: 28 - items: 29 - enum: 30 - renesas,r8a774a1-rpc-if # RZ/G2M 31 - renesas,r8a774b1-rpc-if # RZ/G2N 32 - renesas,r8a774c0-rpc-if # RZ/G2E 33 - renesas,r8a774e1-rpc-if # RZ/G2H 34 - renesas,r8a77970-rpc-if # R-Car V3M 35 - renesas,r8a77980-rpc-if # R-Car V3H 36 - renesas,r8a77995-rpc-if # R-Car D3 37 - renesas,r8a779a0-rpc-if # R-Car V3U 38 - const: renesas,rcar-gen3-rpc-if # a generic R-Car gen3 or RZ/G2{E,H,M,N} device 39 40 - items: 41 - enum: 42 - renesas,r9a07g044-rpc-if # RZ/G2{L,LC} 43 - const: renesas,rzg2l-rpc-if # RZ/G2L family 44 45 reg: 46 items: 47 - description: RPC-IF registers 48 - description: direct mapping read mode area 49 - description: write buffer area 50 51 reg-names: 52 items: 53 - const: regs 54 - const: dirmap 55 - const: wbuf 56 57 clocks: true 58 59 interrupts: 60 maxItems: 1 61 62 power-domains: 63 maxItems: 1 64 65 resets: 66 maxItems: 1 67 68patternProperties: 69 "flash@[0-9a-f]+$": 70 type: object 71 properties: 72 compatible: 73 contains: 74 enum: 75 - cfi-flash 76 - jedec,spi-nor 77 78required: 79 - compatible 80 - reg 81 - reg-names 82 - clocks 83 - power-domains 84 - resets 85 - '#address-cells' 86 - '#size-cells' 87 88if: 89 properties: 90 compatible: 91 contains: 92 enum: 93 - renesas,rzg2l-rpc-if 94then: 95 properties: 96 clocks: 97 items: 98 - description: SPI Multi IO Register access clock (SPI_CLK2) 99 - description: SPI Multi IO Main clock (SPI_CLK). 100 101else: 102 properties: 103 clocks: 104 maxItems: 1 105 106unevaluatedProperties: false 107 108examples: 109 - | 110 #include <dt-bindings/clock/renesas-cpg-mssr.h> 111 #include <dt-bindings/power/r8a77995-sysc.h> 112 113 spi@ee200000 { 114 compatible = "renesas,r8a77995-rpc-if", "renesas,rcar-gen3-rpc-if"; 115 reg = <0xee200000 0x200>, 116 <0x08000000 0x4000000>, 117 <0xee208000 0x100>; 118 reg-names = "regs", "dirmap", "wbuf"; 119 clocks = <&cpg CPG_MOD 917>; 120 power-domains = <&sysc R8A77995_PD_ALWAYS_ON>; 121 resets = <&cpg 917>; 122 #address-cells = <1>; 123 #size-cells = <0>; 124 125 flash@0 { 126 compatible = "jedec,spi-nor"; 127 reg = <0>; 128 spi-max-frequency = <40000000>; 129 spi-tx-bus-width = <1>; 130 spi-rx-bus-width = <1>; 131 }; 132 }; 133