Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: memory: Document RZ/G3E support

Document support for the Expanded Serial Peripheral Interface (xSPI)
Controller in the Renesas RZ/G3E (R9A09G047) SoC.

Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Link: https://lore.kernel.org/r/20250424090000.136804-2-biju.das.jz@bp.renesas.com
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

authored by

Biju Das and committed by
Krzysztof Kozlowski
b2d25905 74c35c84

+135
+135
Documentation/devicetree/bindings/memory-controllers/renesas,rzg3e-xspi.yaml
··· 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,rzg3e-xspi.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Renesas Expanded Serial Peripheral Interface (xSPI) 8 + 9 + maintainers: 10 + - Biju Das <biju.das.jz@bp.renesas.com> 11 + 12 + description: | 13 + Renesas xSPI allows a SPI flash connected to the SoC to be accessed via 14 + the memory-mapping or the manual command mode. 15 + 16 + The flash chip itself should be represented by a subnode of the XSPI node. 17 + The flash interface is selected based on the "compatible" property of this 18 + subnode: 19 + - "jedec,spi-nor"; 20 + 21 + allOf: 22 + - $ref: /schemas/spi/spi-controller.yaml# 23 + 24 + properties: 25 + compatible: 26 + const: renesas,r9a09g047-xspi # RZ/G3E 27 + 28 + reg: 29 + items: 30 + - description: xSPI registers 31 + - description: direct mapping area 32 + 33 + reg-names: 34 + items: 35 + - const: regs 36 + - const: dirmap 37 + 38 + interrupts: 39 + items: 40 + - description: Interrupt pulse signal by factors excluding errors 41 + - description: Interrupt pulse signal by error factors 42 + 43 + interrupt-names: 44 + items: 45 + - const: pulse 46 + - const: err_pulse 47 + 48 + clocks: 49 + items: 50 + - description: AHB clock 51 + - description: AXI clock 52 + - description: SPI clock 53 + - description: Double speed SPI clock 54 + 55 + clock-names: 56 + items: 57 + - const: ahb 58 + - const: axi 59 + - const: spi 60 + - const: spix2 61 + 62 + power-domains: 63 + maxItems: 1 64 + 65 + resets: 66 + items: 67 + - description: Hardware reset 68 + - description: AXI reset 69 + 70 + reset-names: 71 + items: 72 + - const: hresetn 73 + - const: aresetn 74 + 75 + renesas,xspi-cs-addr-sys: 76 + $ref: /schemas/types.yaml#/definitions/phandle 77 + description: | 78 + Phandle to the system controller (sys) that allows to configure 79 + xSPI CS0 and CS1 addresses. 80 + 81 + patternProperties: 82 + "flash@[0-9a-f]+$": 83 + type: object 84 + additionalProperties: true 85 + 86 + properties: 87 + compatible: 88 + contains: 89 + const: jedec,spi-nor 90 + 91 + required: 92 + - compatible 93 + - reg 94 + - reg-names 95 + - interrupts 96 + - interrupt-names 97 + - clocks 98 + - clock-names 99 + - power-domains 100 + - resets 101 + - reset-names 102 + - '#address-cells' 103 + - '#size-cells' 104 + 105 + unevaluatedProperties: false 106 + 107 + examples: 108 + - | 109 + #include <dt-bindings/interrupt-controller/arm-gic.h> 110 + #include <dt-bindings/clock/renesas,r9a09g047-cpg.h> 111 + 112 + spi@11030000 { 113 + compatible = "renesas,r9a09g047-xspi"; 114 + reg = <0x11030000 0x10000>, <0x20000000 0x10000000>; 115 + reg-names = "regs", "dirmap"; 116 + interrupts = <GIC_SPI 228 IRQ_TYPE_EDGE_RISING>, 117 + <GIC_SPI 229 IRQ_TYPE_EDGE_RISING>; 118 + interrupt-names = "pulse", "err_pulse"; 119 + clocks = <&cpg CPG_MOD 0x9f>, <&cpg CPG_MOD 0xa0>, 120 + <&cpg CPG_CORE 9>, <&cpg CPG_MOD 0xa1>; 121 + clock-names = "ahb", "axi", "spi", "spix2"; 122 + power-domains = <&cpg>; 123 + resets = <&cpg 0xa3>, <&cpg 0xa4>; 124 + reset-names = "hresetn", "aresetn"; 125 + #address-cells = <1>; 126 + #size-cells = <0>; 127 + 128 + flash@0 { 129 + compatible = "jedec,spi-nor"; 130 + reg = <0>; 131 + spi-max-frequency = <40000000>; 132 + spi-tx-bus-width = <1>; 133 + spi-rx-bus-width = <1>; 134 + }; 135 + };