mirror of
https://github.com/torvalds/linux.git
synced 2024-12-30 14:52:05 +00:00
b1e5bbd61e
The bindings for the BSC extend the bindings for "simple-pm-bus". Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Reviewed-by: Kevin Hilman <khilman@linaro.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
47 lines
1.7 KiB
Plaintext
47 lines
1.7 KiB
Plaintext
Renesas Bus State Controller (BSC)
|
|
==================================
|
|
|
|
The Renesas Bus State Controller (BSC, sometimes called "LBSC within Bus
|
|
Bridge", or "External Bus Interface") can be found in several Renesas ARM SoCs.
|
|
It provides an external bus for connecting multiple external devices to the
|
|
SoC, driving several chip select lines, for e.g. NOR FLASH, Ethernet and USB.
|
|
|
|
While the BSC is a fairly simple memory-mapped bus, it may be part of a PM
|
|
domain, and may have a gateable functional clock.
|
|
Before a device connected to the BSC can be accessed, the PM domain
|
|
containing the BSC must be powered on, and the functional clock
|
|
driving the BSC must be enabled.
|
|
|
|
The bindings for the BSC extend the bindings for "simple-pm-bus".
|
|
|
|
|
|
Required properties
|
|
- compatible: Must contain an SoC-specific value, and "renesas,bsc" and
|
|
"simple-pm-bus" as fallbacks.
|
|
SoC-specific values can be:
|
|
"renesas,bsc-r8a73a4" for R-Mobile APE6 (r8a73a4)
|
|
"renesas,bsc-sh73a0" for SH-Mobile AG5 (sh73a0)
|
|
- #address-cells, #size-cells, ranges: Must describe the mapping between
|
|
parent address and child address spaces.
|
|
- reg: Must contain the base address and length to access the bus controller.
|
|
|
|
Optional properties:
|
|
- interrupts: Must contain a reference to the BSC interrupt, if available.
|
|
- clocks: Must contain a reference to the functional clock, if available.
|
|
- power-domains: Must contain a reference to the PM domain, if available.
|
|
|
|
|
|
Example:
|
|
|
|
bsc: bus@fec10000 {
|
|
compatible = "renesas,bsc-sh73a0", "renesas,bsc",
|
|
"simple-pm-bus";
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
ranges = <0 0 0x20000000>;
|
|
reg = <0xfec10000 0x400>;
|
|
interrupts = <0 39 IRQ_TYPE_LEVEL_HIGH>;
|
|
clocks = <&zb_clk>;
|
|
power-domains = <&pd_a4s>;
|
|
};
|