Merge tag 'fixes-v5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris...
[linux-2.6-microblaze.git] / arch / arm64 / boot / dts / renesas / r8a77980-condor.dts
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Device Tree Source for the Condor board
4  *
5  * Copyright (C) 2018 Renesas Electronics Corp.
6  * Copyright (C) 2018 Cogent Embedded, Inc.
7  */
8
9 /dts-v1/;
10 #include "r8a77980.dtsi"
11
12 / {
13         model = "Renesas Condor board based on r8a77980";
14         compatible = "renesas,condor", "renesas,r8a77980";
15
16         aliases {
17                 serial0 = &scif0;
18                 ethernet0 = &gether;
19         };
20
21         chosen {
22                 stdout-path = "serial0:115200n8";
23         };
24
25         d1_8v: regulator-2 {
26                 compatible = "regulator-fixed";
27                 regulator-name = "D1.8V";
28                 regulator-min-microvolt = <1800000>;
29                 regulator-max-microvolt = <1800000>;
30                 regulator-boot-on;
31                 regulator-always-on;
32         };
33
34         d3_3v: regulator-0 {
35                 compatible = "regulator-fixed";
36                 regulator-name = "D3.3V";
37                 regulator-min-microvolt = <3300000>;
38                 regulator-max-microvolt = <3300000>;
39                 regulator-boot-on;
40                 regulator-always-on;
41         };
42
43         hdmi-out {
44                 compatible = "hdmi-connector";
45                 type = "a";
46
47                 port {
48                         hdmi_con: endpoint {
49                                 remote-endpoint = <&adv7511_out>;
50                         };
51                 };
52         };
53
54         lvds-decoder {
55                 compatible = "thine,thc63lvd1024";
56                 vcc-supply = <&d3_3v>;
57
58                 ports {
59                         #address-cells = <1>;
60                         #size-cells = <0>;
61
62                         port@0 {
63                                 reg = <0>;
64                                 thc63lvd1024_in: endpoint {
65                                         remote-endpoint = <&lvds0_out>;
66                                 };
67                         };
68
69                         port@2 {
70                                 reg = <2>;
71                                 thc63lvd1024_out: endpoint {
72                                         remote-endpoint = <&adv7511_in>;
73                                 };
74                         };
75                 };
76         };
77
78         memory@48000000 {
79                 device_type = "memory";
80                 /* first 128MB is reserved for secure area. */
81                 reg = <0 0x48000000 0 0x78000000>;
82         };
83
84         vddq_vin01: regulator-1 {
85                 compatible = "regulator-fixed";
86                 regulator-name = "VDDQ_VIN01";
87                 regulator-min-microvolt = <1800000>;
88                 regulator-max-microvolt = <1800000>;
89                 regulator-boot-on;
90                 regulator-always-on;
91         };
92
93         x1_clk: x1-clock {
94                 compatible = "fixed-clock";
95                 #clock-cells = <0>;
96                 clock-frequency = <148500000>;
97         };
98 };
99
100 &canfd {
101         pinctrl-0 = <&canfd0_pins>;
102         pinctrl-names = "default";
103         status = "okay";
104
105         channel0 {
106                 status = "okay";
107         };
108 };
109
110 &du {
111         clocks = <&cpg CPG_MOD 724>,
112                  <&x1_clk>;
113         clock-names = "du.0", "dclkin.0";
114         status = "okay";
115 };
116
117 &extal_clk {
118         clock-frequency = <16666666>;
119 };
120
121 &extalr_clk {
122         clock-frequency = <32768>;
123 };
124
125 &gether {
126         pinctrl-0 = <&gether_pins>;
127         pinctrl-names = "default";
128
129         phy-mode = "rgmii-id";
130         phy-handle = <&phy0>;
131         renesas,no-ether-link;
132         status = "okay";
133
134         phy0: ethernet-phy@0 {
135                 rxc-skew-ps = <1500>;
136                 reg = <0>;
137                 interrupt-parent = <&gpio4>;
138                 interrupts = <23 IRQ_TYPE_LEVEL_LOW>;
139         };
140 };
141
142 &i2c0 {
143         pinctrl-0 = <&i2c0_pins>;
144         pinctrl-names = "default";
145
146         status = "okay";
147         clock-frequency = <400000>;
148
149         io_expander0: gpio@20 {
150                 compatible = "onnn,pca9654";
151                 reg = <0x20>;
152                 gpio-controller;
153                 #gpio-cells = <2>;
154         };
155
156         io_expander1: gpio@21 {
157                 compatible = "onnn,pca9654";
158                 reg = <0x21>;
159                 gpio-controller;
160                 #gpio-cells = <2>;
161         };
162
163         hdmi@39 {
164                 compatible = "adi,adv7511w";
165                 reg = <0x39>;
166                 interrupt-parent = <&gpio1>;
167                 interrupts = <20 IRQ_TYPE_LEVEL_LOW>;
168                 avdd-supply = <&d1_8v>;
169                 dvdd-supply = <&d1_8v>;
170                 pvdd-supply = <&d1_8v>;
171                 bgvdd-supply = <&d1_8v>;
172                 dvdd-3v-supply = <&d3_3v>;
173
174                 adi,input-depth = <8>;
175                 adi,input-colorspace = "rgb";
176                 adi,input-clock = "1x";
177
178                 ports {
179                         #address-cells = <1>;
180                         #size-cells = <0>;
181
182                         port@0 {
183                                 reg = <0>;
184                                 adv7511_in: endpoint {
185                                         remote-endpoint = <&thc63lvd1024_out>;
186                                 };
187                         };
188
189                         port@1 {
190                                 reg = <1>;
191                                 adv7511_out: endpoint {
192                                         remote-endpoint = <&hdmi_con>;
193                                 };
194                         };
195                 };
196         };
197 };
198
199 &lvds0 {
200         status = "okay";
201
202         ports {
203                 port@1 {
204                         lvds0_out: endpoint {
205                                 remote-endpoint = <&thc63lvd1024_in>;
206                         };
207                 };
208         };
209 };
210
211 &mmc0 {
212         pinctrl-0 = <&mmc_pins>;
213         pinctrl-1 = <&mmc_pins_uhs>;
214         pinctrl-names = "default", "state_uhs";
215
216         vmmc-supply = <&d3_3v>;
217         vqmmc-supply = <&vddq_vin01>;
218         mmc-hs200-1_8v;
219         bus-width = <8>;
220         no-sd;
221         no-sdio;
222         non-removable;
223         status = "okay";
224 };
225
226 &pciec {
227         status = "okay";
228 };
229
230 &pcie_bus_clk {
231         clock-frequency = <100000000>;
232 };
233
234 &pcie_phy {
235         status = "okay";
236 };
237
238 &pfc {
239         canfd0_pins: canfd0 {
240                 groups = "canfd0_data_a";
241                 function = "canfd0";
242         };
243
244         gether_pins: gether {
245                 groups = "gether_mdio_a", "gether_rgmii",
246                          "gether_txcrefclk", "gether_txcrefclk_mega";
247                 function = "gether";
248         };
249
250         i2c0_pins: i2c0 {
251                 groups = "i2c0";
252                 function = "i2c0";
253         };
254
255         mmc_pins: mmc {
256                 groups = "mmc_data8", "mmc_ctrl", "mmc_ds";
257                 function = "mmc";
258                 power-source = <3300>;
259         };
260
261         mmc_pins_uhs: mmc_uhs {
262                 groups = "mmc_data8", "mmc_ctrl", "mmc_ds";
263                 function = "mmc";
264                 power-source = <1800>;
265         };
266
267         qspi0_pins: qspi0 {
268                 groups = "qspi0_ctrl", "qspi0_data4";
269                 function = "qspi0";
270         };
271
272         scif0_pins: scif0 {
273                 groups = "scif0_data";
274                 function = "scif0";
275         };
276
277         scif_clk_pins: scif_clk {
278                 groups = "scif_clk_b";
279                 function = "scif_clk";
280         };
281 };
282
283 &rpc {
284         pinctrl-0 = <&qspi0_pins>;
285         pinctrl-names = "default";
286
287         status = "okay";
288
289         flash@0 {
290                 compatible = "spansion,s25fs512s", "jedec,spi-nor";
291                 reg = <0>;
292                 spi-max-frequency = <50000000>;
293                 spi-rx-bus-width = <4>;
294
295                 partitions {
296                         compatible = "fixed-partitions";
297                         #address-cells = <1>;
298                         #size-cells = <1>;
299
300                         bootparam@0 {
301                                 reg = <0x00000000 0x040000>;
302                                 read-only;
303                         };
304                         cr7@40000 {
305                                 reg = <0x00040000 0x080000>;
306                                 read-only;
307                         };
308                         cert_header_sa3@c0000 {
309                                 reg = <0x000c0000 0x080000>;
310                                 read-only;
311                         };
312                         bl2@140000 {
313                                 reg = <0x00140000 0x040000>;
314                                 read-only;
315                         };
316                         cert_header_sa6@180000 {
317                                 reg = <0x00180000 0x040000>;
318                                 read-only;
319                         };
320                         bl31@1c0000 {
321                                 reg = <0x001c0000 0x460000>;
322                                 read-only;
323                         };
324                         uboot@640000 {
325                                 reg = <0x00640000 0x0c0000>;
326                                 read-only;
327                         };
328                         uboot-env@700000 {
329                                 reg = <0x00700000 0x040000>;
330                                 read-only;
331                         };
332                         dtb@740000 {
333                                 reg = <0x00740000 0x080000>;
334                         };
335                         kernel@7c0000 {
336                                 reg = <0x007c0000 0x1400000>;
337                         };
338                         user@1bc0000 {
339                                 reg = <0x01bc0000 0x2440000>;
340                         };
341                 };
342         };
343 };
344
345 &rwdt {
346         timeout-sec = <60>;
347         status = "okay";
348 };
349
350 &scif0 {
351         pinctrl-0 = <&scif0_pins>, <&scif_clk_pins>;
352         pinctrl-names = "default";
353
354         status = "okay";
355 };
356
357 &scif_clk {
358         clock-frequency = <14745600>;
359 };