Merge tag 'compiler-attributes-for-linus-4.20-rc1' of https://github.com/ojeda/linux
[sfrench/cifs-2.6.git] / arch / arm64 / boot / dts / renesas / r8a77970-v3msk.dts
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Device Tree Source for the V3M Starter Kit board
4  *
5  * Copyright (C) 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 V3M Starter Kit board";
14         compatible = "renesas,v3msk", "renesas,r8a77970";
15
16         aliases {
17                 serial0 = &scif0;
18         };
19
20         chosen {
21                 stdout-path = "serial0:115200n8";
22         };
23
24         memory@48000000 {
25                 device_type = "memory";
26                 /* first 128MB is reserved for secure area. */
27                 reg = <0x0 0x48000000 0x0 0x38000000>;
28         };
29
30         osc5_clk: osc5-clock {
31                 compatible = "fixed-clock";
32                 #clock-cells = <0>;
33                 clock-frequency = <148500000>;
34         };
35
36         vcc_d1_8v: regulator-0 {
37                 compatible = "regulator-fixed";
38                 regulator-name = "VCC_D1.8V";
39                 regulator-min-microvolt = <1800000>;
40                 regulator-max-microvolt = <1800000>;
41                 regulator-boot-on;
42                 regulator-always-on;
43         };
44
45         vcc_d3_3v: regulator-1 {
46                 compatible = "regulator-fixed";
47                 regulator-name = "VCC_D3.3V";
48                 regulator-min-microvolt = <3300000>;
49                 regulator-max-microvolt = <3300000>;
50                 regulator-boot-on;
51                 regulator-always-on;
52         };
53
54         vcc_vddq_vin0: regulator-2 {
55                 compatible = "regulator-fixed";
56                 regulator-name = "VCC_VDDQ_VIN0";
57                 regulator-min-microvolt = <3300000>;
58                 regulator-max-microvolt = <3300000>;
59                 regulator-boot-on;
60                 regulator-always-on;
61         };
62
63         lvds-decoder {
64                 compatible = "thine,thc63lvd1024";
65                 vcc-supply = <&vcc_d3_3v>;
66
67                 ports {
68                         #address-cells = <1>;
69                         #size-cells = <0>;
70
71                         port@0 {
72                                 reg = <0>;
73                                 thc63lvd1024_in: endpoint {
74                                         remote-endpoint = <&lvds0_out>;
75                                 };
76                         };
77
78                         port@2 {
79                                 reg = <2>;
80                                 thc63lvd1024_out: endpoint {
81                                         remote-endpoint = <&adv7511_in>;
82                                 };
83                         };
84                 };
85         };
86
87         hdmi-out {
88                 compatible = "hdmi-connector";
89                 type = "a";
90
91                 port {
92                         hdmi_con: endpoint {
93                                 remote-endpoint = <&adv7511_out>;
94                         };
95                 };
96         };
97 };
98
99 &avb {
100         pinctrl-0 = <&avb_pins>;
101         pinctrl-names = "default";
102
103         renesas,no-ether-link;
104         phy-handle = <&phy0>;
105         phy-mode = "rgmii-id";
106         status = "okay";
107
108         phy0: ethernet-phy@0 {
109                 rxc-skew-ps = <1500>;
110                 reg = <0>;
111         };
112 };
113
114 &du {
115         clocks = <&cpg CPG_MOD 724>,
116                  <&osc5_clk>;
117         clock-names = "du.0", "dclkin.0";
118         status = "okay";
119 };
120
121 &extal_clk {
122         clock-frequency = <16666666>;
123 };
124
125 &extalr_clk {
126         clock-frequency = <32768>;
127 };
128
129 &pfc {
130         avb_pins: avb0 {
131                 groups = "avb0_mdio", "avb0_rgmii", "avb0_txcrefclk";
132                 function = "avb0";
133         };
134
135         i2c0_pins: i2c0 {
136                 groups = "i2c0";
137                 function = "i2c0";
138         };
139
140         mmc_pins: mmc_3_3v {
141                 groups = "mmc_data8", "mmc_ctrl";
142                 function = "mmc";
143                 power-source = <3300>;
144         };
145
146         scif0_pins: scif0 {
147                 groups = "scif0_data";
148                 function = "scif0";
149         };
150 };
151
152 &i2c0 {
153         pinctrl-0 = <&i2c0_pins>;
154         pinctrl-names = "default";
155
156         status = "okay";
157         clock-frequency = <400000>;
158
159         hdmi@39{
160                 compatible = "adi,adv7511w";
161                 #sound-dai-cells = <0>;
162                 reg = <0x39>;
163                 interrupt-parent = <&gpio1>;
164                 interrupts = <20 IRQ_TYPE_LEVEL_LOW>;
165                 avdd-supply = <&vcc_d1_8v>;
166                 dvdd-supply = <&vcc_d1_8v>;
167                 pvdd-supply = <&vcc_d1_8v>;
168                 bgvdd-supply = <&vcc_d1_8v>;
169                 dvdd-3v-supply = <&vcc_d3_3v>;
170
171                 adi,input-depth = <8>;
172                 adi,input-colorspace = "rgb";
173                 adi,input-clock = "1x";
174                 adi,input-style = <1>;
175                 adi,input-justification = "evenly";
176
177                 ports {
178                         #address-cells = <1>;
179                         #size-cells = <0>;
180
181                         port@0 {
182                                 reg = <0>;
183                                 adv7511_in: endpoint {
184                                         remote-endpoint = <&thc63lvd1024_out>;
185                                 };
186                         };
187
188                         port@1 {
189                                 reg = <1>;
190                                 adv7511_out: endpoint {
191                                         remote-endpoint = <&hdmi_con>;
192                                 };
193                         };
194                 };
195         };
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 };
209
210 &mmc0 {
211         pinctrl-0 = <&mmc_pins>;
212         pinctrl-names = "default";
213
214         vmmc-supply = <&vcc_d3_3v>;
215         vqmmc-supply = <&vcc_vddq_vin0>;
216         bus-width = <8>;
217         non-removable;
218         status = "okay";
219 };
220
221 &scif0 {
222         pinctrl-0 = <&scif0_pins>;
223         pinctrl-names = "default";
224
225         status = "okay";
226 };