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