blob: 721e5ee7b6803e6d306a8a1c94cc52944e336edf [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: GPL-2.0-or-later
2/*
3 * DTS file for SPEAr320 Evaluation Baord
4 *
5 * Copyright 2012 Shiraz Hashim <shiraz.linux.kernel@gmail.com>
6 */
7
8/dts-v1/;
9/include/ "spear320.dtsi"
10
11/ {
12 model = "ST SPEAr320 HMI Board";
13 compatible = "st,spear320-hmi", "st,spear320";
14 #address-cells = <1>;
15 #size-cells = <1>;
16
17 memory {
18 reg = <0 0x40000000>;
19 };
20
21 ahb {
22 pinmux@b3000000 {
23 st,pinmux-mode = <4>;
24 pinctrl-names = "default";
25 pinctrl-0 = <&state_default>;
26
27 state_default: pinmux {
28 i2c0 {
29 st,pins = "i2c0_grp";
30 st,function = "i2c0";
31 };
32 ssp0 {
33 st,pins = "ssp0_grp";
34 st,function = "ssp0";
35 };
36 uart0 {
37 st,pins = "uart0_grp";
38 st,function = "uart0";
39 };
40 clcd {
41 st,pins = "clcd_grp";
42 st,function = "clcd";
43 };
44 fsmc {
45 st,pins = "fsmc_8bit_grp";
46 st,function = "fsmc";
47 };
48 sdhci {
49 st,pins = "sdhci_cd_12_grp";
50 st,function = "sdhci";
51 };
52 i2s {
53 st,pins = "i2s_grp";
54 st,function = "i2s";
55 };
56 uart1 {
57 st,pins = "uart1_grp";
58 st,function = "uart1";
59 };
60 uart2 {
61 st,pins = "uart2_grp";
62 st,function = "uart2";
63 };
64 can0 {
65 st,pins = "can0_grp";
66 st,function = "can0";
67 };
68 can1 {
69 st,pins = "can1_grp";
70 st,function = "can1";
71 };
72 mii0_1 {
73 st,pins = "rmii0_1_grp";
74 st,function = "mii0_1";
75 };
76 pwm0_1 {
77 st,pins = "pwm0_1_pin_37_38_grp";
78 st,function = "pwm0_1";
79 };
80 pwm2 {
81 st,pins = "pwm2_pin_34_grp";
82 st,function = "pwm2";
83 };
84 };
85 };
86
87 clcd@90000000 {
88 status = "okay";
89 };
90
91 dma@fc400000 {
92 status = "okay";
93 };
94
95 ehci@e1800000 {
96 status = "okay";
97 };
98
99 fsmc: flash@4c000000 {
100 status = "okay";
101
102 partition@0 {
103 label = "xloader";
104 reg = <0x0 0x80000>;
105 };
106 partition@80000 {
107 label = "u-boot";
108 reg = <0x80000 0x140000>;
109 };
110 partition@1C0000 {
111 label = "environment";
112 reg = <0x1C0000 0x40000>;
113 };
114 partition@200000 {
115 label = "dtb";
116 reg = <0x200000 0x40000>;
117 };
118 partition@240000 {
119 label = "linux";
120 reg = <0x240000 0xC00000>;
121 };
122 partition@E40000 {
123 label = "rootfs";
124 reg = <0xE40000 0x0>;
125 };
126 };
127
128 gpio_keys {
129 compatible = "gpio-keys";
130 #address-cells = <1>;
131 #size-cells = <0>;
132
133 button@1 {
134 label = "user button 1";
135 linux,code = <0x100>;
136 gpios = <&stmpegpio 3 0x4>;
137 debounce-interval = <20>;
138 wakeup-source;
139 };
140
141 button@2 {
142 label = "user button 2";
143 linux,code = <0x200>;
144 gpios = <&stmpegpio 2 0x4>;
145 debounce-interval = <20>;
146 wakeup-source;
147 };
148 };
149
150 ohci@e1900000 {
151 status = "okay";
152 };
153
154 ohci@e2100000 {
155 status = "okay";
156 };
157
158 pwm: pwm@a8000000 {
159 status = "okay";
160 };
161
162 sdhci@70000000 {
163 power-gpio = <&gpiopinctrl 50 1>;
164 power_always_enb;
165 status = "okay";
166 };
167
168 smi: flash@fc000000 {
169 status = "okay";
170 clock-rate = <50000000>;
171
172 flash@f8000000 {
173 #address-cells = <1>;
174 #size-cells = <1>;
175 reg = <0xf8000000 0x800000>;
176 st,smi-fast-mode;
177
178 partition@0 {
179 label = "xloader";
180 reg = <0x0 0x10000>;
181 };
182 partition@10000 {
183 label = "u-boot";
184 reg = <0x10000 0x50000>;
185 };
186 partition@60000 {
187 label = "environment";
188 reg = <0x60000 0x10000>;
189 };
190 partition@70000 {
191 label = "dtb";
192 reg = <0x70000 0x10000>;
193 };
194 partition@80000 {
195 label = "linux";
196 reg = <0x80000 0x310000>;
197 };
198 partition@390000 {
199 label = "rootfs";
200 reg = <0x390000 0x0>;
201 };
202 };
203 };
204
205 spi0: spi@d0100000 {
206 status = "okay";
207 };
208
209 spi1: spi@a5000000 {
210 status = "okay";
211 };
212
213 spi2: spi@a6000000 {
214 status = "okay";
215 };
216
217 usbd@e1100000 {
218 status = "okay";
219 };
220
221 apb {
222 gpio0: gpio@fc980000 {
223 status = "okay";
224 };
225
226 gpio@b3000000 {
227 status = "okay";
228 };
229
230 i2c0: i2c@d0180000 {
231 status = "okay";
232
233 stmpe811@41 {
234 compatible = "st,stmpe811";
235 #address-cells = <1>;
236 #size-cells = <0>;
237 reg = <0x41>;
238 irq-gpios = <&gpiopinctrl 29 0x4>;
239 id = <0>;
240 blocks = <0x5>;
241 irq-trigger = <0x1>;
242
243 stmpegpio: stmpe-gpio {
244 compatible = "st,stmpe-gpio";
245 reg = <0>;
246 gpio-controller;
247 #gpio-cells = <2>;
248 gpio,norequest-mask = <0xF3>;
249 };
250
251 stmpe610-ts {
252 compatible = "stmpe,ts";
253 reg = <0>;
254 ts,sample-time = <4>;
255 ts,mod-12b = <1>;
256 ts,ref-sel = <0>;
257 ts,adc-freq = <1>;
258 ts,ave-ctrl = <1>;
259 ts,touch-det-delay = <3>;
260 ts,settling = <4>;
261 ts,fraction-z = <7>;
262 ts,i-drive = <1>;
263 };
264 };
265 };
266
267 i2c1: i2c@a7000000 {
268 status = "okay";
269 };
270
271 rtc@fc900000 {
272 status = "okay";
273 };
274
275 serial@d0000000 {
276 status = "okay";
277 pinctrl-names = "default";
278 pinctrl-0 = <>;
279 };
280
281 serial@a3000000 {
282 status = "okay";
283 pinctrl-names = "default";
284 pinctrl-0 = <>;
285 };
286
287 serial@a4000000 {
288 status = "okay";
289 pinctrl-names = "default";
290 pinctrl-0 = <>;
291 };
292
293 wdt@fc880000 {
294 status = "okay";
295 };
296 };
297 };
298};