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