"Fossies" - the Fresh Open Source Software Archive

Member "linux-5.3.1/Documentation/devicetree/bindings/bus/simple-pm-bus.txt" (21 Sep 2019, 1550 Bytes) of package /linux/kernel/v5.3/linux-5.3.1.tar.xz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 Simple Power-Managed Bus
    2 ========================
    3 
    4 A Simple Power-Managed Bus is a transparent bus that doesn't need a real
    5 driver, as it's typically initialized by the boot loader.
    6 
    7 However, its bus controller is part of a PM domain, or under the control of a
    8 functional clock.  Hence, the bus controller's PM domain and/or clock must be
    9 enabled for child devices connected to the bus (either on-SoC or externally)
   10 to function.
   11 
   12 While "simple-pm-bus" follows the "simple-bus" set of properties, as specified
   13 in the Devicetree Specification, it is not an extension of "simple-bus".
   14 
   15 
   16 Required properties:
   17   - compatible: Must contain at least "simple-pm-bus".
   18 		Must not contain "simple-bus".
   19 		It's recommended to let this be preceded by one or more
   20 		vendor-specific compatible values.
   21   - #address-cells, #size-cells, ranges: Must describe the mapping between
   22 		parent address and child address spaces.
   23 
   24 Optional platform-specific properties for clock or PM domain control (at least
   25 one of them is required):
   26   - clocks: Must contain a reference to the functional clock(s),
   27   - power-domains: Must contain a reference to the PM domain.
   28 Please refer to the binding documentation for the clock and/or PM domain
   29 providers for more details.
   30 
   31 
   32 Example:
   33 
   34 	bsc: bus@fec10000 {
   35 		compatible = "renesas,bsc-sh73a0", "renesas,bsc",
   36 			     "simple-pm-bus";
   37 		#address-cells = <1>;
   38 		#size-cells = <1>;
   39 		ranges = <0 0 0x20000000>;
   40 		reg = <0xfec10000 0x400>;
   41 		interrupts = <0 39 IRQ_TYPE_LEVEL_HIGH>;
   42 		clocks = <&zb_clk>;
   43 		power-domains = <&pd_a4s>;
   44 	};