xref: /freebsd/sys/contrib/device-tree/Bindings/power/renesas,sysc-rmobile.yaml (revision a0ca4af9455b844c5e094fc1b09b1390ffa979fc)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/power/renesas,sysc-rmobile.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Renesas R-Mobile System Controller
8
9maintainers:
10  - Geert Uytterhoeven <geert+renesas@glider.be>
11  - Magnus Damm <magnus.damm@gmail.com>
12
13description: |
14  The R-Mobile System Controller provides the following functions:
15    - Boot mode management,
16    - Reset generation,
17    - Power management.
18
19properties:
20  compatible:
21    items:
22      - enum:
23          - renesas,sysc-r8a73a4    # R-Mobile APE6
24          - renesas,sysc-r8a7740    # R-Mobile A1
25          - renesas,sysc-sh73a0     # SH-Mobile AG5
26      - const: renesas,sysc-rmobile # Generic SH/R-Mobile
27
28  reg:
29    items:
30      - description: Normally accessible register block
31      - description: Register block protected by the HPB semaphore
32
33  pm-domains:
34    type: object
35    description: |
36      This node contains a hierarchy of PM domain nodes, which should match the
37      Power Area Hierarchy in the Power Domain Specifications section of the
38      device's datasheet.
39
40    properties:
41      '#address-cells':
42        const: 1
43
44      '#size-cells':
45        const: 0
46
47    additionalProperties:
48      $ref: "#/$defs/pd-node"
49
50required:
51  - compatible
52  - reg
53  - pm-domains
54
55additionalProperties: false
56
57$defs:
58  pd-node:
59    type: object
60    description:
61      PM domain node representing a PM domain.  This node should be named by
62      the real power area name, and thus its name should be unique.
63
64    properties:
65      reg:
66        maxItems: 1
67        description:
68          If the PM domain is not always-on, this property must contain the
69          bit index number for the corresponding power area in the various
70          Power Control and Status Registers.
71          If the PM domain is always-on, this property must be omitted.
72
73      '#address-cells':
74        const: 1
75
76      '#size-cells':
77        const: 0
78
79      '#power-domain-cells':
80        const: 0
81
82    required:
83      - '#power-domain-cells'
84
85    additionalProperties:
86      $ref: "#/$defs/pd-node"
87
88examples:
89  - |
90    // This shows a subset of the r8a7740 PM domain hierarchy, containing the
91    // C5 "always-on" domain, 2 of its subdomains (A4S and A4SU), and the A3SP
92    // domain, which is a subdomain of A4S.
93    sysc: system-controller@e6180000 {
94            compatible = "renesas,sysc-r8a7740", "renesas,sysc-rmobile";
95            reg = <0xe6180000 0x8000>, <0xe6188000 0x8000>;
96
97            pm-domains {
98                    pd_c5: c5 {
99                            #address-cells = <1>;
100                            #size-cells = <0>;
101                            #power-domain-cells = <0>;
102
103                            pd_a4s: a4s@10 {
104                                    reg = <10>;
105                                    #address-cells = <1>;
106                                    #size-cells = <0>;
107                                    #power-domain-cells = <0>;
108
109                                    pd_a3sp: a3sp@11 {
110                                            reg = <11>;
111                                            #power-domain-cells = <0>;
112                                    };
113                            };
114
115                            pd_a4su: a4su@20 {
116                                    reg = <20>;
117                                    #power-domain-cells = <0>;
118                            };
119                    };
120            };
121    };
122