Merge tag 'linux-watchdog-5.1-rc1' of git://www.linux-watchdog.org/linux-watchdog
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / sram / sunxi-sram.txt
1 Allwinnner SoC SRAM controllers
2 -----------------------------------------------------
3
4 The SRAM controller found on most Allwinner devices is represented by
5 a regular node for the SRAM controller itself, with sub-nodes
6 reprensenting the SRAM handled by the SRAM controller.
7
8 Controller Node
9 ---------------
10
11 Required properties:
12 - compatible : should be:
13     - "allwinner,sun4i-a10-sram-controller" (deprecated)
14     - "allwinner,sun4i-a10-system-control"
15     - "allwinner,sun5i-a13-system-control"
16     - "allwinner,sun7i-a20-system-control", "allwinner,sun4i-a10-system-control"
17     - "allwinner,sun8i-a23-system-control"
18     - "allwinner,sun8i-h3-system-control"
19     - "allwinner,sun50i-a64-sram-controller" (deprecated)
20     - "allwinner,sun50i-a64-system-control"
21     - "allwinner,sun50i-h5-system-control"
22     - "allwinner,sun50i-h6-system-control", "allwinner,sun50i-a64-system-control"
23     - "allwinner,suniv-f1c100s-system-control", "allwinner,sun4i-a10-system-control"
24 - reg : sram controller register offset + length
25
26 SRAM nodes
27 ----------
28
29 Each SRAM is described using the mmio-sram bindings documented in
30 Documentation/devicetree/bindings/sram/sram.txt
31
32 Each SRAM will have SRAM sections that are going to be handled by the
33 SRAM controller as subnodes. These sections are represented following
34 once again the representation described in the mmio-sram binding.
35
36 The valid sections compatible for A10 are:
37     - allwinner,sun4i-a10-sram-a3-a4
38     - allwinner,sun4i-a10-sram-c1
39     - allwinner,sun4i-a10-sram-d
40
41 The valid sections compatible for A13 are:
42     - allwinner,sun5i-a13-sram-a3-a4, allwinner,sun4i-a10-sram-a3-a4
43     - allwinner,sun5i-a13-sram-c1, allwinner,sun4i-a10-sram-c1
44     - allwinner,sun5i-a13-sram-d, allwinner,sun4i-a10-sram-d
45
46 The valid sections compatible for A20 are:
47     - allwinner,sun7i-a20-sram-a3-a4, allwinner,sun4i-a10-sram-a3-a4
48     - allwinner,sun7i-a20-sram-c1, allwinner,sun4i-a10-sram-c1
49     - allwinner,sun7i-a20-sram-d, allwinner,sun4i-a10-sram-d
50
51 The valid sections compatible for A23/A33 are:
52     - allwinner,sun8i-a23-sram-c1, allwinner,sun4i-a10-sram-c1
53
54 The valid sections compatible for H3 are:
55     - allwinner,sun8i-h3-sram-c1, allwinner,sun4i-a10-sram-c1
56
57 The valid sections compatible for A64 are:
58     - allwinner,sun50i-a64-sram-c
59     - allwinner,sun50i-a64-sram-c1, allwinner,sun4i-a10-sram-c1
60
61 The valid sections compatible for H5 are:
62     - allwinner,sun50i-h5-sram-c1, allwinner,sun4i-a10-sram-c1
63
64 The valid sections compatible for H6 are:
65     - allwinner,sun50i-h6-sram-c, allwinner,sun50i-a64-sram-c
66     - allwinner,sun50i-h6-sram-c1, allwinner,sun4i-a10-sram-c1
67
68 The valid sections compatible for F1C100s are:
69     - allwinner,suniv-f1c100s-sram-d, allwinner,sun4i-a10-sram-d
70
71 Devices using SRAM sections
72 ---------------------------
73
74 Some devices need to request to the SRAM controller to map an SRAM for
75 their exclusive use.
76
77 The relationship between such a device and an SRAM section is
78 expressed through the allwinner,sram property, that will take a
79 phandle and an argument.
80
81 This valid values for this argument are:
82   - 0: CPU
83   - 1: Device
84
85 Example
86 -------
87 system-control@1c00000 {
88         compatible = "allwinner,sun4i-a10-system-control";
89         reg = <0x01c00000 0x30>;
90         #address-cells = <1>;
91         #size-cells = <1>;
92         ranges;
93
94         sram_a: sram@00000000 {
95                 compatible = "mmio-sram";
96                 reg = <0x00000000 0xc000>;
97                 #address-cells = <1>;
98                 #size-cells = <1>;
99                 ranges = <0 0x00000000 0xc000>;
100
101                 emac_sram: sram-section@8000 {
102                         compatible = "allwinner,sun4i-a10-sram-a3-a4";
103                         reg = <0x8000 0x4000>;
104                 };
105         };
106 };
107
108 emac: ethernet@1c0b000 {
109         compatible = "allwinner,sun4i-a10-emac";
110         ...
111
112         allwinner,sram = <&emac_sram 1>;
113 };