xref: /openbmc/u-boot/arch/arm/dts/r8a7790-stout.dts (revision aa5e3e22)
1/*
2 * Device Tree Source for the Stout board
3 *
4 * Copyright (C) 2018 Marek Vasut <marek.vasut@gmail.com>
5 *
6 * SPDX-License-Identifier:	GPL-2.0
7 */
8
9/dts-v1/;
10#include "r8a7790.dtsi"
11#include <dt-bindings/gpio/gpio.h>
12#include <dt-bindings/input/input.h>
13
14/ {
15	model = "Stout";
16	compatible = "renesas,stout", "renesas,r8a7790";
17
18	aliases {
19		serial0 = &scifa0;
20	};
21
22	chosen {
23		bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp";
24		stdout-path = "serial0:115200n8";
25	};
26
27	memory@40000000 {
28		device_type = "memory";
29		reg = <0 0x40000000 0 0x40000000>;
30	};
31
32	leds {
33		compatible = "gpio-leds";
34		led1 {
35			gpios = <&gpio4 22 GPIO_ACTIVE_LOW>;
36		};
37		led2 {
38			gpios = <&gpio4 23 GPIO_ACTIVE_LOW>;
39		};
40		led3 {
41			gpios = <&gpio5 17 GPIO_ACTIVE_LOW>;
42		};
43		led5 {
44			gpios = <&gpio4 24 GPIO_ACTIVE_LOW>;
45		};
46	};
47
48	fixedregulator3v3: regulator-3v3 {
49		compatible = "regulator-fixed";
50		regulator-name = "fixed-3.3V";
51		regulator-min-microvolt = <3300000>;
52		regulator-max-microvolt = <3300000>;
53		regulator-boot-on;
54		regulator-always-on;
55	};
56
57	vcc_sdhi0: regulator-vcc-sdhi0 {
58		compatible = "regulator-fixed";
59
60		regulator-name = "SDHI0 Vcc";
61		regulator-min-microvolt = <3300000>;
62		regulator-max-microvolt = <3300000>;
63
64		gpio = <&gpio5 24 GPIO_ACTIVE_HIGH>;
65		enable-active-high;
66	};
67
68	hdmi-out {
69		compatible = "hdmi-connector";
70		type = "a";
71
72		port {
73			hdmi_con_out: endpoint {
74				remote-endpoint = <&adv7511_out>;
75			};
76		};
77	};
78
79	osc1_clk: osc1-clock {
80		compatible = "fixed-clock";
81		#clock-cells = <0>;
82		clock-frequency = <148500000>;
83	};
84
85	osc4_clk: osc4-clock {
86		compatible = "fixed-clock";
87		#clock-cells = <0>;
88		clock-frequency = <12000000>;
89	};
90};
91
92&du {
93	pinctrl-0 = <&du_pins>;
94	pinctrl-names = "default";
95	status = "okay";
96
97	clocks = <&cpg CPG_MOD 724>, <&cpg CPG_MOD 723>, <&cpg CPG_MOD 722>,
98		 <&cpg CPG_MOD 726>, <&cpg CPG_MOD 725>,
99		 <&osc1_clk>;
100	clock-names = "du.0", "du.1", "du.2", "lvds.0", "lvds.1", "dclkin.0";
101
102	ports {
103		port@0 {
104			endpoint {
105				remote-endpoint = <&adv7511_in>;
106			};
107		};
108		port@1 {
109			lvds_connector0: endpoint {
110			};
111		};
112		port@2 {
113			lvds_connector1: endpoint {
114			};
115		};
116	};
117};
118
119&extal_clk {
120	clock-frequency = <20000000>;
121};
122
123&pfc {
124
125	pinctrl-0 = <&scif_clk_pins>;
126	pinctrl-names = "default";
127
128	du_pins: du {
129		groups = "du_rgb888", "du_sync_1", "du_clk_out_0";
130		function = "du";
131	};
132
133	scifa0_pins: scifa0 {
134		groups = "scifa0_data_b";
135		function = "scifa0";
136	};
137
138	scif_clk_pins: scif_clk {
139		groups = "scif_clk";
140		function = "scif_clk";
141	};
142
143	ether_pins: ether {
144		groups = "eth_link", "eth_mdio", "eth_rmii";
145		function = "eth";
146	};
147
148	phy1_pins: phy1 {
149		groups = "intc_irq1";
150		function = "intc";
151	};
152
153	sdhi0_pins: sd0 {
154		groups = "sdhi0_data4", "sdhi0_ctrl";
155		function = "sdhi0";
156		power-source = <3300>;
157	};
158
159	qspi_pins: qspi {
160		groups = "qspi_ctrl", "qspi_data4";
161		function = "qspi";
162	};
163
164	iic2_pins: iic2 {
165		groups = "iic2_b";
166		function = "iic2";
167	};
168
169	iic3_pins: iic3 {
170		groups = "iic3";
171		function = "iic3";
172	};
173
174	usb0_pins: usb0 {
175		groups = "usb0";
176		function = "usb0";
177	};
178};
179
180&ether {
181	pinctrl-0 = <&ether_pins &phy1_pins>;
182	pinctrl-names = "default";
183
184	phy-handle = <&phy1>;
185	renesas,ether-link-active-low;
186	status = "okay";
187
188	phy1: ethernet-phy@1 {
189		reg = <1>;
190		interrupt-parent = <&irqc0>;
191		interrupts = <1 IRQ_TYPE_LEVEL_LOW>;
192		micrel,led-mode = <1>;
193	};
194};
195
196&cmt0 {
197	status = "okay";
198};
199
200&qspi {
201	pinctrl-0 = <&qspi_pins>;
202	pinctrl-names = "default";
203
204	status = "okay";
205
206	flash: flash@0 {
207		compatible = "spansion,s25fl512s", "jedec,spi-nor";
208		reg = <0>;
209		spi-max-frequency = <30000000>;
210		spi-tx-bus-width = <4>;
211		spi-rx-bus-width = <4>;
212		spi-cpha;
213		spi-cpol;
214		m25p,fast-read;
215
216		partitions {
217			compatible = "fixed-partitions";
218			#address-cells = <1>;
219			#size-cells = <1>;
220
221			partition@0 {
222				label = "loader";
223				reg = <0x00000000 0x00080000>;
224				read-only;
225			};
226			partition@80000 {
227				label = "uboot";
228				reg = <0x00080000 0x00040000>;
229				read-only;
230			};
231			partition@c0000 {
232				label = "uboot-env";
233				reg = <0x000c0000 0x00040000>;
234				read-only;
235			};
236			partition@100000 {
237				label = "flash";
238				reg = <0x00100000 0x03f00000>;
239			};
240		};
241	};
242};
243
244&scifa0 {
245	pinctrl-0 = <&scifa0_pins>;
246	pinctrl-names = "default";
247
248	status = "okay";
249};
250
251&scif_clk {
252	clock-frequency = <14745600>;
253};
254
255&sdhi0 {
256	pinctrl-0 = <&sdhi0_pins>;
257	pinctrl-names = "default";
258
259	vmmc-supply = <&vcc_sdhi0>;
260	cd-gpios = <&gpio3 6 GPIO_ACTIVE_LOW>;
261	status = "okay";
262};
263
264&cpu0 {
265	cpu0-supply = <&vdd_dvfs>;
266};
267
268&iic2	{
269	status = "okay";
270	pinctrl-0 = <&iic2_pins>;
271	pinctrl-names = "default";
272
273	clock-frequency = <100000>;
274
275	hdmi@39 {
276		compatible = "adi,adv7511w";
277		reg = <0x39>;
278		interrupt-parent = <&gpio1>;
279		interrupts = <15 IRQ_TYPE_LEVEL_LOW>;
280		clocks = <&osc4_clk>;
281		clock-names = "cec";
282
283		adi,input-depth = <8>;
284		adi,input-colorspace = "rgb";
285		adi,input-clock = "1x";
286		adi,input-style = <1>;
287		adi,input-justification = "evenly";
288
289		ports {
290			#address-cells = <1>;
291			#size-cells = <0>;
292
293			port@0 {
294				reg = <0>;
295				adv7511_in: endpoint {
296					remote-endpoint = <&du_out_rgb>;
297				};
298			};
299
300			port@1 {
301				reg = <1>;
302				adv7511_out: endpoint {
303					remote-endpoint = <&hdmi_con_out>;
304				};
305			};
306		};
307	};
308};
309
310&iic3 {
311	pinctrl-names = "default";
312	pinctrl-0 = <&iic3_pins>;
313	status = "okay";
314
315	pmic@58 {
316		compatible = "dlg,da9063";
317		reg = <0x58>;
318		interrupt-parent = <&irqc0>;
319		interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
320		interrupt-controller;
321
322		rtc {
323			compatible = "dlg,da9063-rtc";
324		};
325
326		wdt {
327			compatible = "dlg,da9063-watchdog";
328		};
329	};
330
331	vdd_dvfs: regulator@68 {
332		compatible = "dlg,da9210";
333		reg = <0x68>;
334		interrupt-parent = <&irqc0>;
335		interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
336
337		regulator-min-microvolt = <1000000>;
338		regulator-max-microvolt = <1000000>;
339		regulator-boot-on;
340		regulator-always-on;
341	};
342
343	vdd: regulator@70 {
344		compatible = "dlg,da9210";
345		reg = <0x70>;
346		interrupt-parent = <&irqc0>;
347		interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
348
349		regulator-min-microvolt = <1000000>;
350		regulator-max-microvolt = <1000000>;
351		regulator-boot-on;
352		regulator-always-on;
353	};
354};
355
356&pci0 {
357	status = "okay";
358	pinctrl-0 = <&usb0_pins>;
359	pinctrl-names = "default";
360};
361
362&usbphy {
363	status = "okay";
364};
365