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