1724ba675SRob Herring// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2724ba675SRob Herring/*
3724ba675SRob Herring * Device Tree file for VInCo platform
4724ba675SRob Herring *
5724ba675SRob Herring *  Copyright (C) 2014 Atmel,
6724ba675SRob Herring *                2014 Nicolas Ferre <nicolas.ferre@atmel.com>
7724ba675SRob Herring *   2015 Gregory CLEMENT <gregory.clement@free-electrons.com>
8724ba675SRob Herring */
9724ba675SRob Herring/dts-v1/;
10724ba675SRob Herring#include "sama5d4.dtsi"
11724ba675SRob Herring
12724ba675SRob Herring/ {
13724ba675SRob Herring	model = "L+G VInCo platform";
14724ba675SRob Herring	compatible = "l+g,vinco", "atmel,sama5d4", "atmel,sama5";
15724ba675SRob Herring
16724ba675SRob Herring	chosen {
17724ba675SRob Herring		stdout-path = "serial0:115200n8";
18724ba675SRob Herring	};
19724ba675SRob Herring
20724ba675SRob Herring	memory@20000000 {
21724ba675SRob Herring		reg = <0x20000000 0x4000000>;
22724ba675SRob Herring	};
23724ba675SRob Herring
24724ba675SRob Herring	clocks {
25724ba675SRob Herring		slow_xtal {
26724ba675SRob Herring			clock-frequency = <32768>;
27724ba675SRob Herring		};
28724ba675SRob Herring
29724ba675SRob Herring		main_xtal {
30724ba675SRob Herring			clock-frequency = <12000000>;
31724ba675SRob Herring		};
32724ba675SRob Herring	};
33724ba675SRob Herring
34724ba675SRob Herring	ahb {
35724ba675SRob Herring		apb {
36724ba675SRob Herring
37724ba675SRob Herring			adc0: adc@fc034000 {
38724ba675SRob Herring				status = "okay"; /* Enable ADC IIO support */
39724ba675SRob Herring			};
40724ba675SRob Herring
41724ba675SRob Herring			mmc0: mmc@f8000000 {
42724ba675SRob Herring				pinctrl-names = "default";
43724ba675SRob Herring				pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0
44724ba675SRob Herring					     &pinctrl_mmc0_dat1_3
45724ba675SRob Herring					     &pinctrl_mmc0_dat4_7>;
46724ba675SRob Herring				vqmmc-supply = <&vcc_3v3_reg>;
47724ba675SRob Herring				vmmc-supply = <&vcc_3v3_reg>;
48724ba675SRob Herring				no-1-8-v;
49724ba675SRob Herring				status = "okay";
50724ba675SRob Herring				slot@0 {
51724ba675SRob Herring					reg = <0>;
52724ba675SRob Herring					bus-width = <8>;
53724ba675SRob Herring					non-removable;
54724ba675SRob Herring					broken-cd;
55724ba675SRob Herring					status = "okay";
56724ba675SRob Herring				};
57724ba675SRob Herring			};
58724ba675SRob Herring
59724ba675SRob Herring			spi0: spi@f8010000 {
60724ba675SRob Herring				cs-gpios = <&pioC 3 0>, <0>, <0>, <0>;
61724ba675SRob Herring				status = "okay";
62724ba675SRob Herring				flash@0 {
63724ba675SRob Herring					compatible = "n25q32b", "jedec,spi-nor";
64724ba675SRob Herring					spi-max-frequency = <50000000>;
65724ba675SRob Herring					reg = <0>;
66724ba675SRob Herring				};
67724ba675SRob Herring			};
68724ba675SRob Herring
69724ba675SRob Herring			i2c0: i2c@f8014000 {
70724ba675SRob Herring				status = "okay";
71724ba675SRob Herring			};
72724ba675SRob Herring
73724ba675SRob Herring			i2c1: i2c@f8018000 {
74724ba675SRob Herring				status = "okay";
75724ba675SRob Herring				/* kerkey security module */
76724ba675SRob Herring			};
77724ba675SRob Herring
78724ba675SRob Herring			macb0: ethernet@f8020000 {
79724ba675SRob Herring				phy-mode = "rmii";
80724ba675SRob Herring				status = "okay";
81724ba675SRob Herring
82724ba675SRob Herring				ethernet-phy@1 {
83724ba675SRob Herring					reg = <0x1>;
84724ba675SRob Herring					reset-gpios = <&pioE 8 GPIO_ACTIVE_LOW>;
85724ba675SRob Herring					interrupt-parent = <&pioB>;
86724ba675SRob Herring					interrupts = <15 IRQ_TYPE_EDGE_FALLING>;
87724ba675SRob Herring				};
88724ba675SRob Herring
89724ba675SRob Herring			};
90724ba675SRob Herring
91724ba675SRob Herring			i2c2: i2c@f8024000 {
92724ba675SRob Herring				status = "okay";
93724ba675SRob Herring
94724ba675SRob Herring				rtc1: rtc@32 {
95724ba675SRob Herring					compatible = "epson,rx8900";
96724ba675SRob Herring					reg = <0x32>;
97724ba675SRob Herring				};
98724ba675SRob Herring			};
99724ba675SRob Herring
100724ba675SRob Herring			usart2: serial@fc008000 {
101724ba675SRob Herring				/* MBUS */
102724ba675SRob Herring				status = "okay";
103724ba675SRob Herring			};
104724ba675SRob Herring
105724ba675SRob Herring			usart3: serial@fc00c000 {
106724ba675SRob Herring				/* debug */
107724ba675SRob Herring				status = "okay";
108724ba675SRob Herring			};
109724ba675SRob Herring
110724ba675SRob Herring			usart4: serial@fc010000 {
111724ba675SRob Herring				/* LMN */
112724ba675SRob Herring				pinctrl-0 = <&pinctrl_usart4 &pinctrl_usart4_rts>;
113724ba675SRob Herring				linux,rs485-enabled-at-boot-time;
114724ba675SRob Herring				status = "okay";
115724ba675SRob Herring			};
116724ba675SRob Herring
117724ba675SRob Herring			tcb2: timer@fc024000 {
118724ba675SRob Herring				timer@0 {
119724ba675SRob Herring					compatible = "atmel,tcb-timer";
120724ba675SRob Herring					reg = <0>;
121724ba675SRob Herring				};
122724ba675SRob Herring
123724ba675SRob Herring				timer@1 {
124724ba675SRob Herring					compatible = "atmel,tcb-timer";
125724ba675SRob Herring					reg = <1>;
126724ba675SRob Herring				};
127724ba675SRob Herring			};
128724ba675SRob Herring
129724ba675SRob Herring			macb1: ethernet@fc028000 {
130724ba675SRob Herring				phy-mode = "rmii";
131724ba675SRob Herring				status = "okay";
132724ba675SRob Herring				#address-cells = <1>;
133724ba675SRob Herring				#size-cells = <0>;
134724ba675SRob Herring				status = "okay";
135724ba675SRob Herring
136724ba675SRob Herring				ethernet-phy@1 {
137724ba675SRob Herring					reg = <0x1>;
138724ba675SRob Herring					interrupt-parent = <&pioB>;
139724ba675SRob Herring					interrupts = <31 IRQ_TYPE_EDGE_FALLING>;
140724ba675SRob Herring					reset-gpios = <&pioE 6 GPIO_ACTIVE_LOW>;
141724ba675SRob Herring				};
142724ba675SRob Herring			};
143724ba675SRob Herring
144724ba675SRob Herring			watchdog@fc068640 {
145724ba675SRob Herring				status = "okay";
146724ba675SRob Herring			};
147724ba675SRob Herring
148724ba675SRob Herring			pinctrl@fc06a000 {
149724ba675SRob Herring				board {
150724ba675SRob Herring					pinctrl_usba_vbus: usba_vbus {
151724ba675SRob Herring						atmel,pins =
152724ba675SRob Herring						<AT91_PIOE 31 AT91_PERIPH_GPIO AT91_PINCTRL_DEGLITCH>;
153724ba675SRob Herring					};
154724ba675SRob Herring				};
155724ba675SRob Herring			};
156724ba675SRob Herring		};
157724ba675SRob Herring
158724ba675SRob Herring		usb0: gadget@400000 {
159724ba675SRob Herring			atmel,vbus-gpio = <&pioE 31 GPIO_ACTIVE_HIGH>;
160724ba675SRob Herring			pinctrl-names = "default";
161724ba675SRob Herring			pinctrl-0 = <&pinctrl_usba_vbus>;
162*1cbb7c4dSRob Herring			status = "disabled";
163724ba675SRob Herring		};
164724ba675SRob Herring
165724ba675SRob Herring		usb1: ohci@500000 {
166724ba675SRob Herring			num-ports = <3>;
167724ba675SRob Herring			atmel,vbus-gpio = <0
168724ba675SRob Herring					   &pioE 11 GPIO_ACTIVE_LOW
169724ba675SRob Herring					   &pioE 12 GPIO_ACTIVE_LOW
170724ba675SRob Herring					  >;
171*1cbb7c4dSRob Herring			status = "disabled";
172724ba675SRob Herring		};
173724ba675SRob Herring
174724ba675SRob Herring		usb2: ehci@600000 {
175724ba675SRob Herring			/* 4G Modem */
176724ba675SRob Herring			status = "okay";
177724ba675SRob Herring		};
178724ba675SRob Herring
179724ba675SRob Herring	};
180724ba675SRob Herring
181724ba675SRob Herring	leds {
182724ba675SRob Herring		compatible = "gpio-leds";
183724ba675SRob Herring		status = "okay";
184724ba675SRob Herring
185724ba675SRob Herring		led_err {
186724ba675SRob Herring			label = "err";
187724ba675SRob Herring			gpios = <&pioA 7 GPIO_ACTIVE_LOW>;
188724ba675SRob Herring			default-state = "off";
189724ba675SRob Herring		};
190724ba675SRob Herring
191724ba675SRob Herring		led_rssi {
192724ba675SRob Herring			label = "rssi";
193724ba675SRob Herring			gpios = <&pioA 9 GPIO_ACTIVE_LOW>;
194724ba675SRob Herring			default-state = "off";
195724ba675SRob Herring		};
196724ba675SRob Herring
197724ba675SRob Herring		led_tls {
198724ba675SRob Herring			label = "tls";
199724ba675SRob Herring			gpios = <&pioA 24 GPIO_ACTIVE_LOW>;
200724ba675SRob Herring			default-state = "off";
201724ba675SRob Herring		};
202724ba675SRob Herring
203724ba675SRob Herring		led_lmc {
204724ba675SRob Herring			label = "lmc";
205724ba675SRob Herring			gpios = <&pioA 25 GPIO_ACTIVE_LOW>;
206724ba675SRob Herring			default-state = "off";
207724ba675SRob Herring		};
208724ba675SRob Herring
209724ba675SRob Herring		led_wmt {
210724ba675SRob Herring			label = "wmt";
211724ba675SRob Herring			gpios = <&pioA 29 GPIO_ACTIVE_LOW>;
212724ba675SRob Herring			default-state = "off";
213724ba675SRob Herring		};
214724ba675SRob Herring
215724ba675SRob Herring		led_pwr {
216724ba675SRob Herring			label = "pwr";
217724ba675SRob Herring			gpios = <&pioA 26 GPIO_ACTIVE_LOW>;
218724ba675SRob Herring			default-state = "on";
219724ba675SRob Herring		};
220724ba675SRob Herring
221724ba675SRob Herring	};
222724ba675SRob Herring
223724ba675SRob Herring	vcc_3v3_reg: fixedregulator_3v3 {
224724ba675SRob Herring		compatible = "regulator-fixed";
225724ba675SRob Herring		regulator-name = "VCC 3V3";
226724ba675SRob Herring		regulator-min-microvolt = <3300000>;
227724ba675SRob Herring		regulator-max-microvolt = <3300000>;
228724ba675SRob Herring		regulator-boot-on;
229724ba675SRob Herring		regulator-always-on;
230724ba675SRob Herring	};
231724ba675SRob Herring};
232