Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost
[cris-mirror.git] / Documentation / devicetree / bindings / power / renesas,sysc-rmobile.txt
blobbeda7d2efc304350aa7dc48f2cc6212bfc6ee795
1 DT bindings for the Renesas R-Mobile System Controller
3 == System Controller Node ==
5 The R-Mobile System Controller provides the following functions:
6   - Boot mode management,
7   - Reset generation,
8   - Power management.
10 Required properties:
11 - compatible: Should be "renesas,sysc-<soctype>", "renesas,sysc-rmobile" as
12               fallback.
13               Examples with soctypes are:
14                 - "renesas,sysc-r8a73a4" (R-Mobile APE6)
15                 - "renesas,sysc-r8a7740" (R-Mobile A1)
16                 - "renesas,sysc-sh73a0" (SH-Mobile AG5)
17 - reg: Two address start and address range blocks for the device:
18          - The first block refers to the normally accessible registers,
19          - the second block refers to the registers protected by the HPB
20            semaphore.
22 Optional nodes:
23 - pm-domains: This node contains a hierarchy of PM domain nodes, which should
24   match the Power Area Hierarchy in the Power Domain Specifications section of
25   the device's datasheet.
28 == PM Domain Nodes ==
30 Each of the PM domain nodes represents a PM domain, as documented by the
31 generic PM domain bindings in
32 Documentation/devicetree/bindings/power/power_domain.txt.
34 The nodes should be named by the real power area names, and thus their names
35 should be unique.
37 Required properties:
38   - #power-domain-cells: Must be 0.
40 Optional properties:
41 - reg: If the PM domain is not always-on, this property must contain the bit
42        index number for the corresponding power area in the various Power
43        Control and Status Registers. The parent's node must contain the
44        following two properties:
45          - #address-cells: Must be 1,
46          - #size-cells: Must be 0.
47        If the PM domain is always-on, this property must be omitted.
50 Example:
52 This shows a subset of the r8a7740 PM domain hierarchy, containing the
53 C5 "always-on" domain, 2 of its subdomains (A4S and A4SU), and the A3SP domain,
54 which is a subdomain of A4S.
56         sysc: system-controller@e6180000 {
57                 compatible = "renesas,sysc-r8a7740", "renesas,sysc-rmobile";
58                 reg = <0xe6180000 0x8000>, <0xe6188000 0x8000>;
60                 pm-domains {
61                         pd_c5: c5 {
62                                 #address-cells = <1>;
63                                 #size-cells = <0>;
64                                 #power-domain-cells = <0>;
66                                 pd_a4s: a4s@10 {
67                                         reg = <10>;
68                                         #address-cells = <1>;
69                                         #size-cells = <0>;
70                                         #power-domain-cells = <0>;
72                                         pd_a3sp: a3sp@11 {
73                                                 reg = <11>;
74                                                 #power-domain-cells = <0>;
75                                         };
76                                 };
78                                 pd_a4su: a4su@20 {
79                                         reg = <20>;
80                                         #power-domain-cells = <0>;
81                                 };
82                         };
83                 };
84         };
87 == PM Domain Consumers ==
89 Hardware blocks belonging to a PM domain should contain a "power-domains"
90 property that is a phandle pointing to the corresponding PM domain node.
92 Example:
94         tpu: pwm@e6600000 {
95                 compatible = "renesas,tpu-r8a7740", "renesas,tpu";
96                 reg = <0xe6600000 0x100>;
97                 clocks = <&mstp3_clks R8A7740_CLK_TPU0>;
98                 power-domains = <&pd_a3sp>;
99                 #pwm-cells = <3>;
100         };