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

dt-bindings: bus: renesas-bsc: convert bindings to json-schema

Convert Renesas Bus State Controller (BSC) bindings documentation to
json-schema.

Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Signed-off-by: Rob Herring <robh@kernel.org>

authored by

Simon Horman and committed by
Rob Herring
bce3cff3 785ae742

+60 -46
-46
Documentation/devicetree/bindings/bus/renesas,bsc.txt
··· 1 - Renesas Bus State Controller (BSC) 2 - ================================== 3 - 4 - The Renesas Bus State Controller (BSC, sometimes called "LBSC within Bus 5 - Bridge", or "External Bus Interface") can be found in several Renesas ARM SoCs. 6 - It provides an external bus for connecting multiple external devices to the 7 - SoC, driving several chip select lines, for e.g. NOR FLASH, Ethernet and USB. 8 - 9 - While the BSC is a fairly simple memory-mapped bus, it may be part of a PM 10 - domain, and may have a gateable functional clock. 11 - Before a device connected to the BSC can be accessed, the PM domain 12 - containing the BSC must be powered on, and the functional clock 13 - driving the BSC must be enabled. 14 - 15 - The bindings for the BSC extend the bindings for "simple-pm-bus". 16 - 17 - 18 - Required properties 19 - - compatible: Must contain an SoC-specific value, and "renesas,bsc" and 20 - "simple-pm-bus" as fallbacks. 21 - SoC-specific values can be: 22 - "renesas,bsc-r8a73a4" for R-Mobile APE6 (r8a73a4) 23 - "renesas,bsc-sh73a0" for SH-Mobile AG5 (sh73a0) 24 - - #address-cells, #size-cells, ranges: Must describe the mapping between 25 - parent address and child address spaces. 26 - - reg: Must contain the base address and length to access the bus controller. 27 - 28 - Optional properties: 29 - - interrupts: Must contain a reference to the BSC interrupt, if available. 30 - - clocks: Must contain a reference to the functional clock, if available. 31 - - power-domains: Must contain a reference to the PM domain, if available. 32 - 33 - 34 - Example: 35 - 36 - bsc: bus@fec10000 { 37 - compatible = "renesas,bsc-sh73a0", "renesas,bsc", 38 - "simple-pm-bus"; 39 - #address-cells = <1>; 40 - #size-cells = <1>; 41 - ranges = <0 0 0x20000000>; 42 - reg = <0xfec10000 0x400>; 43 - interrupts = <0 39 IRQ_TYPE_LEVEL_HIGH>; 44 - clocks = <&zb_clk>; 45 - power-domains = <&pd_a4s>; 46 - };
+60
Documentation/devicetree/bindings/bus/renesas,bsc.yaml
··· 1 + %YAML 1.2 2 + --- 3 + $id: http://devicetree.org/schemas/bus/renesas,bsc.yaml# 4 + $schema: http://devicetree.org/meta-schemas/core.yaml# 5 + 6 + title: Renesas Bus State Controller (BSC) 7 + 8 + maintainers: 9 + - Geert Uytterhoeven <geert+renesas@glider.be> 10 + 11 + description: | 12 + The Renesas Bus State Controller (BSC, sometimes called "LBSC within Bus 13 + Bridge", or "External Bus Interface") can be found in several Renesas ARM 14 + SoCs. It provides an external bus for connecting multiple external 15 + devices to the SoC, driving several chip select lines, for e.g. NOR 16 + FLASH, Ethernet and USB. 17 + 18 + While the BSC is a fairly simple memory-mapped bus, it may be part of a 19 + PM domain, and may have a gateable functional clock. Before a device 20 + connected to the BSC can be accessed, the PM domain containing the BSC 21 + must be powered on, and the functional clock driving the BSC must be 22 + enabled. 23 + 24 + The bindings for the BSC extend the bindings for "simple-pm-bus". 25 + 26 + allOf: 27 + - $ref: simple-pm-bus.yaml# 28 + 29 + properties: 30 + compatible: 31 + items: 32 + - enum: 33 + - renesas,bsc-r8a73a4 # R-Mobile APE6 (r8a73a4) 34 + - renesas,bsc-sh73a0 # SH-Mobile AG5 (sh73a0) 35 + - const: renesas,bsc 36 + - {} # simple-pm-bus, but not listed here to avoid false select 37 + 38 + reg: 39 + maxItems: 1 40 + 41 + interrupts: 42 + maxItems: 1 43 + 44 + required: 45 + - reg 46 + 47 + examples: 48 + - | 49 + #include <dt-bindings/interrupt-controller/irq.h> 50 + 51 + bsc: bus@fec10000 { 52 + compatible = "renesas,bsc-sh73a0", "renesas,bsc", "simple-pm-bus"; 53 + #address-cells = <1>; 54 + #size-cells = <1>; 55 + ranges = <0 0 0x20000000>; 56 + reg = <0xfec10000 0x400>; 57 + interrupts = <0 39 IRQ_TYPE_LEVEL_HIGH>; 58 + clocks = <&zb_clk>; 59 + power-domains = <&pd_a4s>; 60 + };