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

dt-bindings: memory-controllers: renesas,dbsc: Convert to json-schema

Convert the Renesas DDR Bus Controller Device Tree binding documentation
to json-schema.

Drop referrals to driver behavior.
Make power-domains required, as it is present for all current users.
Update the example to match reality.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Rob Herring <robh@kernel.org>

authored by

Geert Uytterhoeven and committed by
Rob Herring
8d6c65bd c95d5e13

+56 -44
-44
Documentation/devicetree/bindings/memory-controllers/renesas,dbsc.txt
··· 1 - DT bindings for Renesas R-Mobile and SH-Mobile memory controllers 2 - ================================================================= 3 - 4 - Renesas R-Mobile and SH-Mobile SoCs contain one or more memory controllers. 5 - These memory controllers differ from one SoC variant to another, and are called 6 - by different names ("DDR Bus Controller (DBSC)", "DDR3 Bus State Controller 7 - (DBSC3)", "SDRAM Bus State Controller (SBSC)"). 8 - 9 - Currently memory controller device nodes are used only to reference PM 10 - domains, and prevent these PM domains from being powered down, which would 11 - crash the system. 12 - 13 - As there exist no actual drivers for these controllers yet, these bindings 14 - should be considered EXPERIMENTAL for now. 15 - 16 - Required properties: 17 - - compatible: Must be one of the following SoC-specific values: 18 - - "renesas,dbsc-r8a73a4" (R-Mobile APE6) 19 - - "renesas,dbsc3-r8a7740" (R-Mobile A1) 20 - - "renesas,sbsc-sh73a0" (SH-Mobile AG5) 21 - - reg: Must contain the base address and length of the memory controller's 22 - registers. 23 - 24 - Optional properties: 25 - - interrupts: Must contain a list of interrupt specifiers for memory 26 - controller interrupts, if available. 27 - - interrupt-names: Must contain a list of interrupt names corresponding to 28 - the interrupts in the interrupts property, if available. 29 - Valid interrupt names are: 30 - - "sec" (secure interrupt) 31 - - "temp" (normal (temperature) interrupt) 32 - - power-domains: Must contain a reference to the PM domain that the memory 33 - controller belongs to, if available. 34 - 35 - Example: 36 - 37 - sbsc1: memory-controller@fe400000 { 38 - compatible = "renesas,sbsc-sh73a0"; 39 - reg = <0xfe400000 0x400>; 40 - interrupts = <0 35 IRQ_TYPE_LEVEL_HIGH>, 41 - <0 36 IRQ_TYPE_LEVEL_HIGH>; 42 - interrupt-names = "sec", "temp"; 43 - power-domains = <&pd_a4bc0>; 44 - };
+56
Documentation/devicetree/bindings/memory-controllers/renesas,dbsc.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,dbsc.yaml#" 5 + $schema: "http://devicetree.org/meta-schemas/core.yaml#" 6 + 7 + title: Renesas DDR Bus Controllers 8 + 9 + maintainers: 10 + - Geert Uytterhoeven <geert+renesas@glider.be> 11 + 12 + description: | 13 + Renesas SoCs contain one or more memory controllers. These memory 14 + controllers differ from one SoC variant to another, and are called by 15 + different names, e.g. "DDR Bus Controller (DBSC)", "DDR3 Bus State Controller 16 + (DBSC3)", or "SDRAM Bus State Controller (SBSC)"). 17 + 18 + properties: 19 + compatible: 20 + enum: 21 + - renesas,dbsc-r8a73a4 # R-Mobile APE6 22 + - renesas,dbsc3-r8a7740 # R-Mobile A1 23 + - renesas,sbsc-sh73a0 # SH-Mobile AG5 24 + 25 + reg: 26 + maxItems: 1 27 + 28 + interrupts: 29 + maxItems: 2 30 + 31 + interrupt-names: 32 + items: 33 + - const: sec # secure interrupt 34 + - const: temp # normal (temperature) interrupt 35 + 36 + power-domains: 37 + maxItems: 1 38 + 39 + required: 40 + - compatible 41 + - reg 42 + - power-domains 43 + 44 + additionalProperties: false 45 + 46 + examples: 47 + - | 48 + #include <dt-bindings/interrupt-controller/arm-gic.h> 49 + sbsc1: memory-controller@fe400000 { 50 + compatible = "renesas,sbsc-sh73a0"; 51 + reg = <0xfe400000 0x400>; 52 + interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>, 53 + <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>; 54 + interrupt-names = "sec", "temp"; 55 + power-domains = <&pd_a4bc0>; 56 + };