xref: /openbmc/linux/Documentation/devicetree/bindings/sram/allwinner,sun4i-a10-system-control.yaml (revision e533cda12d8f0e7936354bafdc85c81741f805d2)
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 Device Tree Bindings
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      - const: allwinner,sun4i-a10-sram-controller
28        deprecated: true
29      - const: allwinner,sun4i-a10-system-control
30      - const: allwinner,sun5i-a13-system-control
31      - items:
32          - const: allwinner,sun7i-a20-system-control
33          - const: allwinner,sun4i-a10-system-control
34      - const: allwinner,sun8i-a23-system-control
35      - const: allwinner,sun8i-h3-system-control
36      - items:
37          - const: allwinner,sun8i-r40-system-control
38          - const: allwinner,sun4i-a10-system-control
39      - const: allwinner,sun50i-a64-sram-controller
40        deprecated: true
41      - const: allwinner,sun50i-a64-system-control
42      - const: allwinner,sun50i-h5-system-control
43      - items:
44          - const: allwinner,sun50i-h6-system-control
45          - const: allwinner,sun50i-a64-system-control
46      - items:
47          - const: allwinner,suniv-f1c100s-system-control
48          - const: allwinner,sun4i-a10-system-control
49
50  reg:
51    maxItems: 1
52
53  ranges: true
54
55patternProperties:
56  "^sram@[a-z0-9]+":
57    type: object
58
59    properties:
60      compatible:
61        const: mmio-sram
62
63    patternProperties:
64      "^sram-section?@[a-f0-9]+$":
65        type: object
66
67        properties:
68          compatible:
69            oneOf:
70              - const: allwinner,sun4i-a10-sram-a3-a4
71              - const: allwinner,sun4i-a10-sram-c1
72              - const: allwinner,sun4i-a10-sram-d
73              - const: allwinner,sun50i-a64-sram-c
74              - items:
75                  - const: allwinner,sun5i-a13-sram-a3-a4
76                  - const: allwinner,sun4i-a10-sram-a3-a4
77              - items:
78                  - const: allwinner,sun7i-a20-sram-a3-a4
79                  - const: allwinner,sun4i-a10-sram-a3-a4
80              - items:
81                  - const: allwinner,sun5i-a13-sram-c1
82                  - const: allwinner,sun4i-a10-sram-c1
83              - items:
84                  - const: allwinner,sun7i-a20-sram-c1
85                  - const: allwinner,sun4i-a10-sram-c1
86              - items:
87                  - const: allwinner,sun8i-a23-sram-c1
88                  - const: allwinner,sun4i-a10-sram-c1
89              - items:
90                  - const: allwinner,sun8i-h3-sram-c1
91                  - const: allwinner,sun4i-a10-sram-c1
92              - items:
93                  - const: allwinner,sun8i-r40-sram-c1
94                  - const: allwinner,sun4i-a10-sram-c1
95              - items:
96                  - const: allwinner,sun50i-a64-sram-c1
97                  - const: allwinner,sun4i-a10-sram-c1
98              - items:
99                  - const: allwinner,sun50i-h5-sram-c1
100                  - const: allwinner,sun4i-a10-sram-c1
101              - items:
102                  - const: allwinner,sun50i-h6-sram-c1
103                  - const: allwinner,sun4i-a10-sram-c1
104              - items:
105                  - const: allwinner,sun5i-a13-sram-d
106                  - const: allwinner,sun4i-a10-sram-d
107              - items:
108                  - const: allwinner,sun7i-a20-sram-d
109                  - const: allwinner,sun4i-a10-sram-d
110              - items:
111                  - const: allwinner,suniv-f1c100s-sram-d
112                  - const: allwinner,sun4i-a10-sram-d
113              - items:
114                  - const: allwinner,sun50i-h6-sram-c
115                  - const: allwinner,sun50i-a64-sram-c
116
117required:
118  - "#address-cells"
119  - "#size-cells"
120  - compatible
121  - reg
122
123additionalProperties: false
124
125examples:
126  - |
127    system-control@1c00000 {
128      compatible = "allwinner,sun4i-a10-system-control";
129      reg = <0x01c00000 0x30>;
130      #address-cells = <1>;
131      #size-cells = <1>;
132      ranges;
133
134      sram_a: sram@0 {
135        compatible = "mmio-sram";
136        reg = <0x00000000 0xc000>;
137        #address-cells = <1>;
138        #size-cells = <1>;
139        ranges = <0 0x00000000 0xc000>;
140
141        emac_sram: sram-section@8000 {
142          compatible = "allwinner,sun4i-a10-sram-a3-a4";
143          reg = <0x8000 0x4000>;
144        };
145      };
146    };
147