Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc
[sfrench/cifs-2.6.git] / arch / arm64 / boot / dts / renesas / r8a77970-eagle.dts
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Device Tree Source for the Eagle board
4  *
5  * Copyright (C) 2016-2017 Renesas Electronics Corp.
6  * Copyright (C) 2017 Cogent Embedded, Inc.
7  */
8
9 /dts-v1/;
10 #include "r8a77970.dtsi"
11
12 / {
13         model = "Renesas Eagle board based on r8a77970";
14         compatible = "renesas,eagle", "renesas,r8a77970";
15
16         aliases {
17                 serial0 = &scif0;
18                 ethernet0 = &avb;
19         };
20
21         chosen {
22                 bootargs = "ignore_loglevel rw root=/dev/nfs ip=on";
23                 stdout-path = "serial0:115200n8";
24         };
25
26         memory@48000000 {
27                 device_type = "memory";
28                 /* first 128MB is reserved for secure area. */
29                 reg = <0x0 0x48000000 0x0 0x38000000>;
30         };
31
32         hdmi-out {
33                 compatible = "hdmi-connector";
34                 type = "a";
35
36                 port {
37                         hdmi_con_out: endpoint {
38                                 remote-endpoint = <&adv7511_out>;
39                         };
40                 };
41         };
42
43         d3p3: regulator-fixed {
44                 compatible = "regulator-fixed";
45                 regulator-name = "fixed-3.3V";
46                 regulator-min-microvolt = <3300000>;
47                 regulator-max-microvolt = <3300000>;
48                 regulator-boot-on;
49                 regulator-always-on;
50         };
51
52         lvds-decoder {
53                 compatible = "thine,thc63lvd1024";
54
55                 vcc-supply = <&d3p3>;
56
57                 ports {
58                         #address-cells = <1>;
59                         #size-cells = <0>;
60
61                         port@0 {
62                                 reg = <0>;
63                                 thc63lvd1024_in: endpoint {
64                                         remote-endpoint = <&lvds0_out>;
65                                 };
66                         };
67
68                         port@2 {
69                                 reg = <2>;
70                                 thc63lvd1024_out: endpoint {
71                                         remote-endpoint = <&adv7511_in>;
72                                 };
73                         };
74                 };
75         };
76 };
77
78 &avb {
79         pinctrl-0 = <&avb_pins>;
80         pinctrl-names = "default";
81
82         renesas,no-ether-link;
83         phy-handle = <&phy0>;
84         phy-mode = "rgmii-id";
85         status = "okay";
86
87         phy0: ethernet-phy@0 {
88                 rxc-skew-ps = <1500>;
89                 reg = <0>;
90                 interrupt-parent = <&gpio1>;
91                 interrupts = <17 IRQ_TYPE_LEVEL_LOW>;
92         };
93 };
94
95 &canfd {
96         pinctrl-0 = <&canfd0_pins>;
97         pinctrl-names = "default";
98         status = "okay";
99
100         channel0 {
101                 status = "okay";
102         };
103 };
104
105 &extal_clk {
106         clock-frequency = <16666666>;
107 };
108
109 &extalr_clk {
110         clock-frequency = <32768>;
111 };
112
113 &i2c0 {
114         pinctrl-0 = <&i2c0_pins>;
115         pinctrl-names = "default";
116
117         status = "okay";
118         clock-frequency = <400000>;
119
120         io_expander: gpio@20 {
121                 compatible = "onnn,pca9654";
122                 reg = <0x20>;
123                 gpio-controller;
124                 #gpio-cells = <2>;
125         };
126
127         hdmi@39 {
128                 compatible = "adi,adv7511w";
129                 reg = <0x39>;
130                 interrupt-parent = <&gpio1>;
131                 interrupts = <20 IRQ_TYPE_LEVEL_LOW>;
132
133                 adi,input-depth = <8>;
134                 adi,input-colorspace = "rgb";
135                 adi,input-clock = "1x";
136                 adi,input-style = <1>;
137                 adi,input-justification = "evenly";
138
139                 ports {
140                         #address-cells = <1>;
141                         #size-cells = <0>;
142
143                         port@0 {
144                                 reg = <0>;
145                                 adv7511_in: endpoint {
146                                         remote-endpoint = <&thc63lvd1024_out>;
147                                 };
148                         };
149
150                         port@1 {
151                                 reg = <1>;
152                                 adv7511_out: endpoint {
153                                         remote-endpoint = <&hdmi_con_out>;
154                                 };
155                         };
156                 };
157         };
158 };
159
160 &pfc {
161         avb_pins: avb0 {
162                 groups = "avb0_mdio", "avb0_rgmii", "avb0_txcrefclk";
163                 function = "avb0";
164         };
165
166         canfd0_pins: canfd0 {
167                 groups = "canfd0_data_a";
168                 function = "canfd0";
169         };
170
171         i2c0_pins: i2c0 {
172                 groups = "i2c0";
173                 function = "i2c0";
174         };
175
176         scif0_pins: scif0 {
177                 groups = "scif0_data";
178                 function = "scif0";
179         };
180 };
181
182 &rwdt {
183         timeout-sec = <60>;
184         status = "okay";
185 };
186
187 &scif0 {
188         pinctrl-0 = <&scif0_pins>;
189         pinctrl-names = "default";
190
191         status = "okay";
192 };
193
194 &du {
195         status = "okay";
196 };
197
198 &lvds0 {
199         status = "okay";
200
201         ports {
202                 port@1 {
203                         lvds0_out: endpoint {
204                                 remote-endpoint = <&thc63lvd1024_in>;
205                         };
206                 };
207         };
208 };