Merge branch 'topic/nhlt' into for-next
[linux-2.6-microblaze.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=on";
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                  <&osc1_clk>;
98         clock-names = "du.0", "du.1", "du.2", "dclkin.0";
99
100         ports {
101                 port@0 {
102                         endpoint {
103                                 remote-endpoint = <&adv7511_in>;
104                         };
105                 };
106         };
107 };
108
109 &lvds0 {
110         ports {
111                 port@1 {
112                         lvds_connector0: endpoint {
113                         };
114                 };
115         };
116 };
117
118 &lvds1 {
119         ports {
120                 port@1 {
121                         lvds_connector1: endpoint {
122                         };
123                 };
124         };
125 };
126
127 &extal_clk {
128         clock-frequency = <20000000>;
129 };
130
131 &pfc {
132
133         pinctrl-0 = <&scif_clk_pins>;
134         pinctrl-names = "default";
135
136         du_pins: du {
137                 groups = "du_rgb888", "du_sync_1", "du_clk_out_0";
138                 function = "du";
139         };
140
141         scifa0_pins: scifa0 {
142                 groups = "scifa0_data_b";
143                 function = "scifa0";
144         };
145
146         scif_clk_pins: scif_clk {
147                 groups = "scif_clk";
148                 function = "scif_clk";
149         };
150
151         ether_pins: ether {
152                 groups = "eth_link", "eth_mdio", "eth_rmii";
153                 function = "eth";
154         };
155
156         phy1_pins: phy1 {
157                 groups = "intc_irq1";
158                 function = "intc";
159         };
160
161         sdhi0_pins: sd0 {
162                 groups = "sdhi0_data4", "sdhi0_ctrl";
163                 function = "sdhi0";
164                 power-source = <3300>;
165         };
166
167         qspi_pins: qspi {
168                 groups = "qspi_ctrl", "qspi_data4";
169                 function = "qspi";
170         };
171
172         iic2_pins: iic2 {
173                 groups = "iic2_b";
174                 function = "iic2";
175         };
176
177         iic3_pins: iic3 {
178                 groups = "iic3";
179                 function = "iic3";
180         };
181
182         pmic_irq_pins: pmicirq {
183                 groups = "intc_irq2";
184                 function = "intc";
185         };
186
187         usb0_pins: usb0 {
188                 groups = "usb0";
189                 function = "usb0";
190         };
191 };
192
193 &ether {
194         pinctrl-0 = <&ether_pins &phy1_pins>;
195         pinctrl-names = "default";
196
197         phy-handle = <&phy1>;
198         renesas,ether-link-active-low;
199         status = "okay";
200
201         phy1: ethernet-phy@1 {
202                 reg = <1>;
203                 interrupt-parent = <&irqc0>;
204                 interrupts = <1 IRQ_TYPE_LEVEL_LOW>;
205                 micrel,led-mode = <1>;
206                 reset-gpios = <&gpio3 31 GPIO_ACTIVE_LOW>;
207         };
208 };
209
210 &cmt0 {
211         status = "okay";
212 };
213
214 &qspi {
215         pinctrl-0 = <&qspi_pins>;
216         pinctrl-names = "default";
217
218         status = "okay";
219
220         flash: flash@0 {
221                 compatible = "spansion,s25fl512s", "jedec,spi-nor";
222                 reg = <0>;
223                 spi-max-frequency = <30000000>;
224                 spi-tx-bus-width = <4>;
225                 spi-rx-bus-width = <4>;
226                 spi-cpha;
227                 spi-cpol;
228                 m25p,fast-read;
229
230                 partitions {
231                         compatible = "fixed-partitions";
232                         #address-cells = <1>;
233                         #size-cells = <1>;
234
235                         partition@0 {
236                                 label = "loader";
237                                 reg = <0x00000000 0x00080000>;
238                                 read-only;
239                         };
240                         partition@80000 {
241                                 label = "uboot";
242                                 reg = <0x00080000 0x00040000>;
243                                 read-only;
244                         };
245                         partition@c0000 {
246                                 label = "uboot-env";
247                                 reg = <0x000c0000 0x00040000>;
248                                 read-only;
249                         };
250                         partition@100000 {
251                                 label = "flash";
252                                 reg = <0x00100000 0x03f00000>;
253                         };
254                 };
255         };
256 };
257
258 &scifa0 {
259         pinctrl-0 = <&scifa0_pins>;
260         pinctrl-names = "default";
261
262         status = "okay";
263 };
264
265 &scif_clk {
266         clock-frequency = <14745600>;
267 };
268
269 &sdhi0 {
270         pinctrl-0 = <&sdhi0_pins>;
271         pinctrl-names = "default";
272
273         vmmc-supply = <&vcc_sdhi0>;
274         cd-gpios = <&gpio3 6 GPIO_ACTIVE_LOW>;
275         status = "okay";
276 };
277
278 &cpu0 {
279         cpu0-supply = <&vdd_dvfs>;
280 };
281
282 &iic2   {
283         status = "okay";
284         pinctrl-0 = <&iic2_pins>;
285         pinctrl-names = "default";
286
287         clock-frequency = <100000>;
288
289         hdmi@39 {
290                 compatible = "adi,adv7511w";
291                 reg = <0x39>;
292                 interrupt-parent = <&gpio1>;
293                 interrupts = <15 IRQ_TYPE_LEVEL_LOW>;
294                 clocks = <&osc4_clk>;
295                 clock-names = "cec";
296
297                 adi,input-depth = <8>;
298                 adi,input-colorspace = "rgb";
299                 adi,input-clock = "1x";
300                 adi,input-style = <1>;
301                 adi,input-justification = "evenly";
302
303                 ports {
304                         #address-cells = <1>;
305                         #size-cells = <0>;
306
307                         port@0 {
308                                 reg = <0>;
309                                 adv7511_in: endpoint {
310                                         remote-endpoint = <&du_out_rgb>;
311                                 };
312                         };
313
314                         port@1 {
315                                 reg = <1>;
316                                 adv7511_out: endpoint {
317                                         remote-endpoint = <&hdmi_con_out>;
318                                 };
319                         };
320                 };
321         };
322 };
323
324 &iic3 {
325         pinctrl-names = "default";
326         pinctrl-0 = <&iic3_pins &pmic_irq_pins>;
327         status = "okay";
328
329         pmic@58 {
330                 compatible = "dlg,da9063";
331                 reg = <0x58>;
332                 interrupt-parent = <&irqc0>;
333                 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
334                 interrupt-controller;
335
336                 onkey {
337                         compatible = "dlg,da9063-onkey";
338                 };
339
340                 rtc {
341                         compatible = "dlg,da9063-rtc";
342                 };
343
344                 wdt {
345                         compatible = "dlg,da9063-watchdog";
346                 };
347         };
348
349         vdd_dvfs: regulator@68 {
350                 compatible = "dlg,da9210";
351                 reg = <0x68>;
352                 interrupt-parent = <&irqc0>;
353                 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
354
355                 regulator-min-microvolt = <1000000>;
356                 regulator-max-microvolt = <1000000>;
357                 regulator-boot-on;
358                 regulator-always-on;
359         };
360
361         vdd: regulator@70 {
362                 compatible = "dlg,da9210";
363                 reg = <0x70>;
364                 interrupt-parent = <&irqc0>;
365                 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
366
367                 regulator-min-microvolt = <1000000>;
368                 regulator-max-microvolt = <1000000>;
369                 regulator-boot-on;
370                 regulator-always-on;
371         };
372 };
373
374 &pci0 {
375         status = "okay";
376         pinctrl-0 = <&usb0_pins>;
377         pinctrl-names = "default";
378 };
379
380 &usbphy {
381         status = "okay";
382 };