xref: /linux/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml (revision e7e86d7697c6ed1dbbde18d7185c35b6967945ed)
1# SPDX-License-Identifier: GPL-2.0+
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/sram/allwinner,sun4i-a10-system-control.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Allwinner A10 System Control
8
9maintainers:
10  - Chen-Yu Tsai <wens@csie.org>
11  - Maxime Ripard <mripard@kernel.org>
12
13description:
14  The SRAM controller found on most Allwinner devices is represented
15  by a regular node for the SRAM controller itself, with sub-nodes
16  representing the SRAM handled by the SRAM controller.
17
18properties:
19  "#address-cells":
20    const: 1
21
22  "#size-cells":
23    const: 1
24
25  compatible:
26    oneOf:
27      - enum:
28          - allwinner,sun4i-a10-sram-controller
29          - allwinner,sun50i-a64-sram-controller
30        deprecated: true
31      - enum:
32          - allwinner,sun4i-a10-system-control
33          - allwinner,sun5i-a13-system-control
34          - allwinner,sun8i-a23-system-control
35          - allwinner,sun8i-h3-system-control
36          - allwinner,sun20i-d1-system-control
37          - allwinner,sun50i-a64-system-control
38          - allwinner,sun50i-h5-system-control
39          - allwinner,sun50i-h616-system-control
40      - items:
41          - enum:
42              - allwinner,suniv-f1c100s-system-control
43              - allwinner,sun7i-a20-system-control
44              - allwinner,sun8i-r40-system-control
45          - const: allwinner,sun4i-a10-system-control
46      - items:
47          - const: allwinner,sun8i-v3s-system-control
48          - const: allwinner,sun8i-h3-system-control
49      - items:
50          - enum:
51              - allwinner,sun50i-a100-system-control
52              - allwinner,sun50i-h6-system-control
53              - allwinner,sun55i-a523-system-control
54          - const: allwinner,sun50i-a64-system-control
55
56  reg:
57    maxItems: 1
58
59  ranges: true
60
61patternProperties:
62  "^regulators@[0-9a-f]+$":
63    $ref: /schemas/regulator/allwinner,sun20i-d1-system-ldos.yaml#
64
65  "^sram@[a-f0-9]+":
66    $ref: /schemas/sram/sram.yaml#
67    unevaluatedProperties: false
68
69    patternProperties:
70      "^sram-section?@[a-f0-9]+$":
71        type: object
72        additionalProperties: false
73
74        properties:
75          reg: true
76
77          compatible:
78            oneOf:
79              - const: allwinner,sun4i-a10-sram-a3-a4
80              - const: allwinner,sun4i-a10-sram-c1
81              - const: allwinner,sun4i-a10-sram-d
82              - const: allwinner,sun50i-a64-sram-c
83              - items:
84                  - enum:
85                      - allwinner,sun5i-a13-sram-a3-a4
86                      - allwinner,sun7i-a20-sram-a3-a4
87                  - const: allwinner,sun4i-a10-sram-a3-a4
88              - items:
89                  - enum:
90                      - allwinner,sun5i-a13-sram-c1
91                      - allwinner,sun7i-a20-sram-c1
92                      - allwinner,sun8i-a23-sram-c1
93                      - allwinner,sun8i-h3-sram-c1
94                      - allwinner,sun8i-r40-sram-c1
95                      - allwinner,sun50i-a64-sram-c1
96                      - allwinner,sun50i-h5-sram-c1
97                      - allwinner,sun50i-h6-sram-c1
98                  - const: allwinner,sun4i-a10-sram-c1
99              - items:
100                  - enum:
101                      - allwinner,suniv-f1c100s-sram-d
102                      - allwinner,sun5i-a13-sram-d
103                      - allwinner,sun7i-a20-sram-d
104                  - const: allwinner,sun4i-a10-sram-d
105              - items:
106                  - const: allwinner,sun50i-h6-sram-c
107                  - const: allwinner,sun50i-a64-sram-c
108
109required:
110  - "#address-cells"
111  - "#size-cells"
112  - compatible
113  - reg
114
115additionalProperties: false
116
117examples:
118  - |
119    system-control@1c00000 {
120      compatible = "allwinner,sun4i-a10-system-control";
121      reg = <0x01c00000 0x30>;
122      #address-cells = <1>;
123      #size-cells = <1>;
124      ranges;
125
126      sram_a: sram@0 {
127        compatible = "mmio-sram";
128        reg = <0x00000000 0xc000>;
129        #address-cells = <1>;
130        #size-cells = <1>;
131        ranges = <0 0x00000000 0xc000>;
132
133        emac_sram: sram-section@8000 {
134          compatible = "allwinner,sun4i-a10-sram-a3-a4";
135          reg = <0x8000 0x4000>;
136        };
137      };
138    };
139
140  - |
141    syscon@3000000 {
142      compatible = "allwinner,sun20i-d1-system-control";
143      reg = <0x3000000 0x1000>;
144      ranges;
145      #address-cells = <1>;
146      #size-cells = <1>;
147
148      regulators@3000150 {
149        compatible = "allwinner,sun20i-d1-system-ldos";
150        reg = <0x3000150 0x4>;
151
152        reg_ldoa: ldoa {
153          regulator-min-microvolt = <1800000>;
154          regulator-max-microvolt = <1800000>;
155        };
156
157        reg_ldob: ldob {
158          regulator-name = "vcc-dram";
159          regulator-min-microvolt = <1500000>;
160          regulator-max-microvolt = <1500000>;
161        };
162      };
163    };
164