Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / arm / atmel-sysregs.txt
1 Atmel system registers
2
3 Chipid required properties:
4 - compatible: Should be "atmel,sama5d2-chipid" or "microchip,sama7g5-chipid"
5 - reg : Should contain registers location and length
6
7 PIT Timer required properties:
8 - compatible: Should be "atmel,at91sam9260-pit"
9 - reg: Should contain registers location and length
10 - interrupts: Should contain interrupt for the PIT which is the IRQ line
11   shared across all System Controller members.
12
13 PIT64B Timer required properties:
14 - compatible: Should be "microchip,sam9x60-pit64b"
15 - reg: Should contain registers location and length
16 - interrupts: Should contain interrupt for PIT64B timer
17 - clocks: Should contain the available clock sources for PIT64B timer.
18
19 System Timer (ST) required properties:
20 - compatible: Should be "atmel,at91rm9200-st", "syscon", "simple-mfd"
21 - reg: Should contain registers location and length
22 - interrupts: Should contain interrupt for the ST which is the IRQ line
23   shared across all System Controller members.
24 - clocks: phandle to input clock.
25 Its subnodes can be:
26 - watchdog: compatible should be "atmel,at91rm9200-wdt"
27
28 RSTC Reset Controller required properties:
29 - compatible: Should be "atmel,<chip>-rstc".
30   <chip> can be "at91sam9260", "at91sam9g45", "sama5d3" or "samx7"
31   it also can be "microchip,sam9x60-rstc"
32 - reg: Should contain registers location and length
33 - clocks: phandle to input clock.
34
35 Example:
36
37         rstc@fffffd00 {
38                 compatible = "atmel,at91sam9260-rstc";
39                 reg = <0xfffffd00 0x10>;
40                 clocks = <&clk32k>;
41         };
42
43 RAMC SDRAM/DDR Controller required properties:
44 - compatible: Should be "atmel,at91rm9200-sdramc", "syscon"
45                         "atmel,at91sam9260-sdramc",
46                         "atmel,at91sam9g45-ddramc",
47                         "atmel,sama5d3-ddramc",
48                         "microchip,sam9x60-ddramc",
49                         "microchip,sama7g5-uddrc"
50 - reg: Should contain registers location and length
51
52 Examples:
53
54         ramc0: ramc@ffffe800 {
55                 compatible = "atmel,at91sam9g45-ddramc";
56                 reg = <0xffffe800 0x200>;
57         };
58
59 RAMC PHY Controller required properties:
60 - compatible: Should be "microchip,sama7g5-ddr3phy", "syscon"
61 - reg: Should contain registers location and length
62
63 Example:
64
65         ddr3phy: ddr3phy@e3804000 {
66                 compatible = "microchip,sama7g5-ddr3phy", "syscon";
67                 reg = <0xe3804000 0x1000>;
68 };
69
70 SHDWC Shutdown Controller
71
72 required properties:
73 - compatible: Should be "atmel,<chip>-shdwc".
74   <chip> can be "at91sam9260", "at91sam9rl" or "at91sam9x5".
75 - reg: Should contain registers location and length
76 - clocks: phandle to input clock.
77
78 optional properties:
79 - atmel,wakeup-mode: String, operation mode of the wakeup mode.
80   Supported values are: "none", "high", "low", "any".
81 - atmel,wakeup-counter: Counter on Wake-up 0 (between 0x0 and 0xf).
82
83 optional at91sam9260 properties:
84 - atmel,wakeup-rtt-timer: boolean to enable Real-time Timer Wake-up.
85
86 optional at91sam9rl properties:
87 - atmel,wakeup-rtc-timer: boolean to enable Real-time Clock Wake-up.
88 - atmel,wakeup-rtt-timer: boolean to enable Real-time Timer Wake-up.
89
90 optional at91sam9x5 properties:
91 - atmel,wakeup-rtc-timer: boolean to enable Real-time Clock Wake-up.
92
93 Example:
94
95         shdwc@fffffd10 {
96                 compatible = "atmel,at91sam9260-shdwc";
97                 reg = <0xfffffd10 0x10>;
98                 clocks = <&clk32k>;
99         };
100
101 SHDWC SAMA5D2-Compatible Shutdown Controller
102
103 1) shdwc node
104
105 required properties:
106 - compatible: should be "atmel,sama5d2-shdwc", "microchip,sam9x60-shdwc" or
107   "microchip,sama7g5-shdwc"
108 - reg: should contain registers location and length
109 - clocks: phandle to input clock.
110 - #address-cells: should be one. The cell is the wake-up input index.
111 - #size-cells: should be zero.
112
113 optional properties:
114
115 - debounce-delay-us: minimum wake-up inputs debouncer period in
116   microseconds. It's usually a board-related property.
117 - atmel,wakeup-rtc-timer: boolean to enable Real-Time Clock wake-up.
118
119 optional microchip,sam9x60-shdwc or microchip,sama7g5-shdwc properties:
120 - atmel,wakeup-rtt-timer: boolean to enable Real-time Timer Wake-up.
121
122 The node contains child nodes for each wake-up input that the platform uses.
123
124 2) input nodes
125
126 Wake-up input nodes are usually described in the "board" part of the Device
127 Tree. Note also that input 0 is linked to the wake-up pin and is frequently
128 used.
129
130 Required properties:
131 - reg: should contain the wake-up input index [0 - 15].
132
133 Optional properties:
134 - atmel,wakeup-active-high: boolean, the corresponding wake-up input described
135   by the child, forces the wake-up of the core power supply on a high level.
136   The default is to be active low.
137
138 Example:
139
140 On the SoC side:
141         shdwc@f8048010 {
142                 compatible = "atmel,sama5d2-shdwc";
143                 reg = <0xf8048010 0x10>;
144                 clocks = <&clk32k>;
145                 #address-cells = <1>;
146                 #size-cells = <0>;
147                 atmel,wakeup-rtc-timer;
148         };
149
150 On the board side:
151         shdwc@f8048010 {
152                 debounce-delay-us = <976>;
153
154                 input@0 {
155                         reg = <0>;
156                 };
157
158                 input@1 {
159                         reg = <1>;
160                         atmel,wakeup-active-high;
161                 };
162         };
163
164 Special Function Registers (SFR)
165
166 Special Function Registers (SFR) manage specific aspects of the integrated
167 memory, bridge implementations, processor and other functionality not controlled
168 elsewhere.
169
170 required properties:
171 - compatible: Should be "atmel,<chip>-sfr", "syscon" or
172         "atmel,<chip>-sfrbu", "syscon"
173   <chip> can be "sama5d3", "sama5d4" or "sama5d2".
174   It also can be "microchip,sam9x60-sfr", "syscon".
175 - reg: Should contain registers location and length
176
177         sfr@f0038000 {
178                 compatible = "atmel,sama5d3-sfr", "syscon";
179                 reg = <0xf0038000 0x60>;
180         };
181
182 Security Module (SECUMOD)
183
184 The Security Module macrocell provides all necessary secure functions to avoid
185 voltage, temperature, frequency and mechanical attacks on the chip. It also
186 embeds secure memories that can be scrambled.
187
188 The Security Module also offers the PIOBU pins which can be used as GPIO pins.
189 Note that they maintain their voltage during Backup/Self-refresh.
190
191 required properties:
192 - compatible: Should be "atmel,<chip>-secumod", "syscon".
193   <chip> can be "sama5d2".
194 - reg: Should contain registers location and length
195 - gpio-controller:      Marks the port as GPIO controller.
196 - #gpio-cells:          There are 2. The pin number is the
197                         first, the second represents additional
198                         parameters such as GPIO_ACTIVE_HIGH/LOW.
199
200
201         secumod@fc040000 {
202                 compatible = "atmel,sama5d2-secumod", "syscon";
203                 reg = <0xfc040000 0x100>;
204                 gpio-controller;
205                 #gpio-cells = <2>;
206         };