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