]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/blob - arch/arm/boot/dts/at91-sama5d2_ptc_ek.dts
Merge tag 'linux-watchdog-4.17-rc1' of git://www.linux-watchdog.org/linux-watchdog
[mirror_ubuntu-eoan-kernel.git] / arch / arm / boot / dts / at91-sama5d2_ptc_ek.dts
1 // SPDX-License-Identifier: (GPL-2.0+ OR X11)
2 /*
3 * at91-sama5d2_ptc_ek.dts - Device Tree file for SAMA5D2 PTC EK board
4 *
5 * Copyright (C) 2017 Microchip/Atmel,
6 * 2017 Wenyou Yang <wenyou.yang@microchip.com>
7 * 2017 Ludovic Desroches <ludovic.desroches@microchip.com>
8 */
9 /dts-v1/;
10 #include "sama5d2.dtsi"
11 #include "sama5d2-pinfunc.h"
12 #include <dt-bindings/mfd/atmel-flexcom.h>
13 #include <dt-bindings/gpio/gpio.h>
14
15 / {
16 model = "Atmel SAMA5D2 PTC EK";
17 compatible = "atmel,sama5d2-ptc_ek", "atmel,sama5d2", "atmel,sama5";
18
19 aliases {
20 serial0 = &uart0;
21 i2c0 = &i2c0;
22 i2c1 = &i2c1;
23 i2c2 = &i2c2;
24 };
25
26 chosen {
27 stdout-path = "serial0:115200n8";
28 };
29
30 clocks {
31 slow_xtal {
32 clock-frequency = <32768>;
33 };
34
35 main_xtal {
36 clock-frequency = <24000000>;
37 };
38 };
39
40 ahb {
41 usb0: gadget@300000 {
42 atmel,vbus-gpio = <&pioA PIN_PA27 GPIO_ACTIVE_HIGH>;
43 pinctrl-names = "default";
44 pinctrl-0 = <&pinctrl_usba_vbus>;
45 status = "okay";
46 };
47
48 usb1: ohci@400000 {
49 num-ports = <3>;
50 atmel,vbus-gpio = <0
51 &pioA PIN_PB12 GPIO_ACTIVE_HIGH
52 0
53 >;
54 pinctrl-names = "default";
55 pinctrl-0 = <&pinctrl_usb_default>;
56 status = "okay";
57 };
58
59 usb2: ehci@500000 {
60 status = "okay";
61 };
62
63 ebi: ebi@10000000 {
64 pinctrl-names = "default";
65 pinctrl-0 = <&pinctrl_nand_default>;
66 status = "okay"; /* conflicts with sdmmc1 and qspi0 */
67
68 nand_controller: nand-controller {
69 status = "okay";
70
71 nand@3 {
72 reg = <0x3 0x0 0x2>;
73 atmel,rb = <0>;
74 nand-bus-width = <8>;
75 nand-ecc-mode = "hw";
76 nand-on-flash-bbt;
77 label = "atmel_nand";
78
79 partitions {
80 compatible = "fixed-partitions";
81 #address-cells = <1>;
82 #size-cells = <1>;
83
84 at91bootstrap@0 {
85 label = "bootstrap";
86 reg = <0x0 0x40000>;
87 };
88
89 bootloader@40000 {
90 label = "bootloader";
91 reg = <0x40000 0xc0000>;
92 };
93
94 bootloaderenv@0x100000 {
95 label = "bootloader env";
96 reg = <0x100000 0x40000>;
97 };
98
99 bootloaderenvred@0x140000 {
100 label = "bootloader env redundant";
101 reg = <0x140000 0x40000>;
102 };
103
104 dtb@180000 {
105 label = "device tree";
106 reg = <0x180000 0x80000>;
107 };
108
109 kernel@200000 {
110 label = "kernel";
111 reg = <0x200000 0x600000>;
112 };
113
114 rootfs@800000 {
115 label = "rootfs";
116 reg = <0x800000 0x1f800000>;
117 };
118 };
119 };
120 };
121 };
122
123 sdmmc0: sdio-host@a0000000 {
124 bus-width = <8>;
125 pinctrl-names = "default";
126 pinctrl-0 = <&pinctrl_sdmmc0_default>;
127 non-removable;
128 mmc-ddr-1_8v;
129 status = "okay";
130 };
131
132 apb {
133 spi0: spi@f8000000 {
134 pinctrl-names = "default";
135 pinctrl-0 = <&pinctrl_spi0_default>;
136 status = "okay";
137 };
138
139 macb0: ethernet@f8008000 {
140 pinctrl-names = "default";
141 pinctrl-0 = <&pinctrl_macb0_default &pinctrl_macb0_phy_irq>;
142 phy-mode = "rmii";
143 status = "okay";
144
145 ethernet-phy@1 {
146 reg = <0x1>;
147 interrupt-parent = <&pioA>;
148 interrupts = <56 IRQ_TYPE_LEVEL_LOW>;
149 };
150 };
151
152 tcb0: timer@f800c000 {
153 timer0: timer@0 {
154 compatible = "atmel,tcb-timer";
155 reg = <0>;
156 };
157
158 timer1: timer@1 {
159 compatible = "atmel,tcb-timer";
160 reg = <1>;
161 };
162 };
163
164 uart0: serial@f801c000 {
165 pinctrl-names = "default";
166 pinctrl-0 = <&pinctrl_uart0_default>;
167 atmel,use-dma-rx;
168 atmel,use-dma-tx;
169 status = "okay";
170 };
171
172 uart2: serial@f8024000 {
173 pinctrl-names = "default";
174 pinctrl-0 = <&pinctrl_uart2_default>;
175 atmel,use-dma-rx;
176 atmel,use-dma-tx;
177 status = "okay";
178 };
179
180 i2c0: i2c@f8028000 {
181 dmas = <0>, <0>;
182 pinctrl-names = "default";
183 pinctrl-0 = <&pinctrl_i2c0_default>;
184 status = "okay";
185 };
186
187 flx0: flexcom@f8034000 {
188 atmel,flexcom-mode = <ATMEL_FLEXCOM_MODE_TWI>;
189 status = "okay";
190
191 i2c2: i2c@600 {
192 compatible = "atmel,sama5d2-i2c";
193 reg = <0x600 0x200>;
194 interrupts = <19 IRQ_TYPE_LEVEL_HIGH 7>;
195 dmas = <0>, <0>;
196 dma-names = "tx", "rx";
197 #address-cells = <1>;
198 #size-cells = <0>;
199 clocks = <&flx0_clk>;
200 pinctrl-names = "default";
201 pinctrl-0 = <&pinctrl_flx0_default>;
202 atmel,fifo-size = <16>;
203 status = "okay";
204 };
205 };
206
207 shdwc@f8048010 {
208 atmel,shdwc-debouncer = <976>;
209
210 input@0 {
211 reg = <0>;
212 atmel,wakeup-type = "low";
213 };
214 };
215
216 watchdog@f8048040 {
217 status = "okay";
218 };
219
220 spi1: spi@fc000000 {
221 pinctrl-names = "default";
222 pinctrl-0 = <&pinctrl_spi1_default>;
223 status = "okay";
224 };
225
226 i2c1: i2c@fc028000 {
227 dmas = <0>, <0>;
228 pinctrl-names = "default";
229 pinctrl-0 = <&pinctrl_i2c1_default>;
230 status = "okay";
231
232 at24@50 {
233 compatible = "atmel,24c02";
234 reg = <0x50>;
235 pagesize = <8>;
236 };
237 };
238
239 pinctrl@fc038000 {
240 pinctrl_flx0_default: flx0_default {
241 pinmux = <PIN_PB28__FLEXCOM0_IO0>,
242 <PIN_PB29__FLEXCOM0_IO1>;
243 bias-disable;
244 };
245
246 pinctrl_i2c0_default: i2c0_default {
247 pinmux = <PIN_PD21__TWD0>,
248 <PIN_PD22__TWCK0>;
249 bias-disable;
250 };
251
252 pinctrl_i2c1_default: i2c1_default {
253 pinmux = <PIN_PC6__TWD1>,
254 <PIN_PC7__TWCK1>;
255 bias-disable;
256 };
257
258 pinctrl_key_gpio_default: key_gpio_default {
259 pinmux = <PIN_PA10__GPIO>;
260 bias-pull-up;
261 };
262
263 pinctrl_led_gpio_default: led_gpio_default {
264 pinmux = <PIN_PB6__GPIO>,
265 <PIN_PB8__GPIO>,
266 <PIN_PB10__GPIO>;
267 bias-pull-up;
268 };
269
270 pinctrl_macb0_default: macb0_default {
271 pinmux = <PIN_PB14__GTXCK>,
272 <PIN_PB15__GTXEN>,
273 <PIN_PB16__GRXDV>,
274 <PIN_PB17__GRXER>,
275 <PIN_PB18__GRX0>,
276 <PIN_PB19__GRX1>,
277 <PIN_PB20__GTX0>,
278 <PIN_PB21__GTX1>,
279 <PIN_PB22__GMDC>,
280 <PIN_PB23__GMDIO>;
281 bias-disable;
282 };
283
284 pinctrl_macb0_phy_irq: macb0_phy_irq {
285 pinmux = <PIN_PB24__GPIO>;
286 bias-disable;
287 };
288
289 pinctrl_nand_default: nand_default {
290 re_we_data {
291 pinmux = <PIN_PA22__D0>,
292 <PIN_PA23__D1>,
293 <PIN_PA24__D2>,
294 <PIN_PA25__D3>,
295 <PIN_PA26__D4>,
296 <PIN_PA27__D5>,
297 <PIN_PA28__D6>,
298 <PIN_PA29__D7>,
299 <PIN_PA30__NWE_NANDWE>,
300 <PIN_PB2__NRD_NANDOE>;
301 bias-pull-up;
302 };
303
304 ale_cle_rdy_cs {
305 pinmux = <PIN_PB0__A21_NANDALE>,
306 <PIN_PB1__A22_NANDCLE>,
307 <PIN_PC8__NANDRDY>,
308 <PIN_PA31__NCS3>;
309 bias-pull-up;
310 };
311 };
312
313 pinctrl_sdmmc0_default: sdmmc0_default {
314 cmd_data {
315 pinmux = <PIN_PA1__SDMMC0_CMD>,
316 <PIN_PA2__SDMMC0_DAT0>,
317 <PIN_PA3__SDMMC0_DAT1>,
318 <PIN_PA4__SDMMC0_DAT2>,
319 <PIN_PA5__SDMMC0_DAT3>,
320 <PIN_PA6__SDMMC0_DAT4>,
321 <PIN_PA7__SDMMC0_DAT5>,
322 <PIN_PA8__SDMMC0_DAT6>,
323 <PIN_PA9__SDMMC0_DAT7>;
324 bias-pull-up;
325 };
326
327 ck_cd_vddsel {
328 pinmux = <PIN_PA0__SDMMC0_CK>,
329 <PIN_PA11__SDMMC0_VDDSEL>,
330 <PIN_PA13__SDMMC0_CD>;
331 bias-disable;
332 };
333 };
334
335 pinctrl_spi0_default: spi0_default {
336 pinmux = <PIN_PA14__SPI0_SPCK>,
337 <PIN_PA15__SPI0_MOSI>,
338 <PIN_PA16__SPI0_MISO>,
339 <PIN_PA17__SPI0_NPCS0>;
340 bias-disable;
341 };
342
343 pinctrl_spi1_default: spi1_default {
344 pinmux = <PIN_PC1__SPI1_SPCK>,
345 <PIN_PC2__SPI1_MOSI>,
346 <PIN_PC3__SPI1_MISO>,
347 <PIN_PC4__SPI1_NPCS0>;
348 bias-disable;
349 };
350
351 pinctrl_uart0_default: uart0_default {
352 pinmux = <PIN_PB26__URXD0>,
353 <PIN_PB27__UTXD0>;
354 bias-disable;
355 };
356
357 pinctrl_uart2_default: uart2_default {
358 pinmux = <PIN_PD23__URXD2>,
359 <PIN_PD24__UTXD2>;
360 bias-disable;
361 };
362
363 pinctrl_usb_default: usb_default {
364 pinmux = <PIN_PB12__GPIO>;
365 bias-disable;
366 };
367
368 pinctrl_usba_vbus: usba_vbus {
369 pinmux = <PIN_PB11__GPIO>;
370 bias-disable;
371 };
372
373 };
374
375 };
376 };
377
378 gpio_keys {
379 compatible = "gpio-keys";
380
381 pinctrl-names = "default";
382 pinctrl-0 = <&pinctrl_key_gpio_default>;
383
384 bp1 {
385 label = "PB_USER";
386 gpios = <&pioA PIN_PA10 GPIO_ACTIVE_LOW>;
387 linux,code = <0x104>;
388 };
389 };
390
391 leds {
392 compatible = "gpio-leds";
393 pinctrl-names = "default";
394 pinctrl-0 = <&pinctrl_led_gpio_default>;
395 status = "okay";
396
397 red {
398 label = "red";
399 gpios = <&pioA PIN_PB10 GPIO_ACTIVE_HIGH>;
400 };
401
402 green {
403 label = "green";
404 gpios = <&pioA PIN_PB8 GPIO_ACTIVE_HIGH>;
405 };
406
407 blue {
408 label = "blue";
409 gpios = <&pioA PIN_PB6 GPIO_ACTIVE_HIGH>;
410 linux,default-trigger = "heartbeat";
411 };
412 };
413 };