blob: 301cb728fedc34b6a36fe1ee00a585aa2713b7a7 [file] [log] [blame]
Marek Vasuta500e4e2018-01-24 15:52:56 +01001/*
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"
Marek Vasut2155a792018-02-26 19:55:37 +010011#include <dt-bindings/gpio/gpio.h>
12#include <dt-bindings/input/input.h>
Marek Vasuta500e4e2018-01-24 15:52:56 +010013
14/ {
15 model = "Stout";
16 compatible = "renesas,stout", "renesas,r8a7790";
17
18 aliases {
Marek Vasut2155a792018-02-26 19:55:37 +010019 serial0 = &scifa0;
20 };
21
22 chosen {
23 bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp";
24 stdout-path = "serial0:115200n8";
Marek Vasuta500e4e2018-01-24 15:52:56 +010025 };
26
27 memory@40000000 {
28 device_type = "memory";
29 reg = <0 0x40000000 0 0x40000000>;
30 };
Marek Vasut2155a792018-02-26 19:55:37 +010031
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 };
Marek Vasuta500e4e2018-01-24 15:52:56 +0100117};
118
119&extal_clk {
120 clock-frequency = <20000000>;
121};
122
123&pfc {
Marek Vasut2155a792018-02-26 19:55:37 +0100124
Marek Vasuta500e4e2018-01-24 15:52:56 +0100125 pinctrl-0 = <&scif_clk_pins>;
126 pinctrl-names = "default";
127
Marek Vasut2155a792018-02-26 19:55:37 +0100128 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";
Marek Vasuta500e4e2018-01-24 15:52:56 +0100136 };
137
138 scif_clk_pins: scif_clk {
139 groups = "scif_clk";
140 function = "scif_clk";
141 };
Marek Vasut2155a792018-02-26 19:55:37 +0100142
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 };
Marek Vasuta500e4e2018-01-24 15:52:56 +0100178};
179
Marek Vasut2155a792018-02-26 19:55:37 +0100180&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>;
Marek Vasuta500e4e2018-01-24 15:52:56 +0100246 pinctrl-names = "default";
247
248 status = "okay";
249};
250
251&scif_clk {
252 clock-frequency = <14745600>;
253};
Marek Vasut2155a792018-02-26 19:55:37 +0100254
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};