Merge tag 'backlight-next-4.21' of git://git.kernel.org/pub/scm/linux/kernel/git...
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / exynos5420-smdk5420.dts
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * SAMSUNG SMDK5420 board device tree source
4  *
5  * Copyright (c) 2013 Samsung Electronics Co., Ltd.
6  *              http://www.samsung.com
7  */
8
9 /dts-v1/;
10 #include "exynos5420.dtsi"
11 #include "exynos5420-cpus.dtsi"
12 #include <dt-bindings/gpio/gpio.h>
13
14 / {
15         model = "Samsung SMDK5420 board based on EXYNOS5420";
16         compatible = "samsung,smdk5420", "samsung,exynos5420", "samsung,exynos5";
17
18         memory@20000000 {
19                 device_type = "memory";
20                 reg = <0x20000000 0x80000000>;
21         };
22
23         chosen {
24                 bootargs = "console=ttySAC2,115200 init=/linuxrc";
25         };
26
27         fixed-rate-clocks {
28                 oscclk {
29                         compatible = "samsung,exynos5420-oscclk";
30                         clock-frequency = <24000000>;
31                 };
32         };
33
34         regulators {
35                 compatible = "simple-bus";
36                 #address-cells = <1>;
37                 #size-cells = <0>;
38
39                 vdd: fixed-regulator@0 {
40                         compatible = "regulator-fixed";
41                         reg = <0>;
42                         regulator-name = "vdd-supply";
43                         regulator-min-microvolt = <1800000>;
44                         regulator-max-microvolt = <1800000>;
45                         regulator-always-on;
46                 };
47
48                 dbvdd: fixed-regulator@1 {
49                         compatible = "regulator-fixed";
50                         reg = <1>;
51                         regulator-name = "dbvdd-supply";
52                         regulator-min-microvolt = <3300000>;
53                         regulator-max-microvolt = <3300000>;
54                         regulator-always-on;
55                 };
56
57                 spkvdd: fixed-regulator@2 {
58                         compatible = "regulator-fixed";
59                         reg = <2>;
60                         regulator-name = "spkvdd-supply";
61                         regulator-min-microvolt = <5000000>;
62                         regulator-max-microvolt = <5000000>;
63                         regulator-always-on;
64                 };
65         };
66
67         usb300_vbus_reg: regulator-usb300 {
68                 compatible = "regulator-fixed";
69                 regulator-name = "VBUS0";
70                 regulator-min-microvolt = <5000000>;
71                 regulator-max-microvolt = <5000000>;
72                 gpio = <&gpg0 5 GPIO_ACTIVE_HIGH>;
73                 pinctrl-names = "default";
74                 pinctrl-0 = <&usb300_vbus_en>;
75                 enable-active-high;
76         };
77
78         usb301_vbus_reg: regulator-usb301 {
79                 compatible = "regulator-fixed";
80                 regulator-name = "VBUS1";
81                 regulator-min-microvolt = <5000000>;
82                 regulator-max-microvolt = <5000000>;
83                 gpio = <&gpg1 4 GPIO_ACTIVE_HIGH>;
84                 pinctrl-names = "default";
85                 pinctrl-0 = <&usb301_vbus_en>;
86                 enable-active-high;
87         };
88
89 };
90
91 &cpu0 {
92         cpu-supply = <&buck2_reg>;
93 };
94
95 &cpu4 {
96         cpu-supply = <&buck6_reg>;
97 };
98
99 &dp {
100         pinctrl-names = "default";
101         pinctrl-0 = <&dp_hpd>;
102         samsung,color-space = <0>;
103         samsung,color-depth = <1>;
104         samsung,link-rate = <0x0a>;
105         samsung,lane-count = <4>;
106         status = "okay";
107
108         display-timings {
109                 native-mode = <&timing0>;
110                 timing0: timing {
111                         clock-frequency = <50000>;
112                         hactive = <2560>;
113                         vactive = <1600>;
114                         hfront-porch = <48>;
115                         hback-porch = <80>;
116                         hsync-len = <32>;
117                         vback-porch = <16>;
118                         vfront-porch = <8>;
119                         vsync-len = <6>;
120                 };
121         };
122 };
123
124 &fimd {
125         status = "okay";
126 };
127
128 &hdmi {
129         status = "okay";
130         ddc = <&i2c_2>;
131         hpd-gpios = <&gpx3 7 GPIO_ACTIVE_HIGH>;
132         pinctrl-names = "default";
133         pinctrl-0 = <&hdmi_hpd_irq>;
134 };
135
136 &hsi2c_4 {
137         status = "okay";
138
139         s2mps11_pmic@66 {
140                 compatible = "samsung,s2mps11-pmic";
141                 reg = <0x66>;
142
143                 s2mps11_osc: clocks {
144                         compatible = "samsung,s2mps11-clk";
145                         #clock-cells = <1>;
146                         clock-output-names = "s2mps11_ap",
147                                         "s2mps11_cp", "s2mps11_bt";
148                 };
149
150                 regulators {
151                         ldo1_reg: LDO1 {
152                                 regulator-name = "vdd_ldo1";
153                                 regulator-min-microvolt = <1000000>;
154                                 regulator-max-microvolt = <1000000>;
155                                 regulator-always-on;
156                         };
157
158                         ldo3_reg: LDO3 {
159                                 regulator-name = "vdd_ldo3";
160                                 regulator-min-microvolt = <1800000>;
161                                 regulator-max-microvolt = <1800000>;
162                                 regulator-always-on;
163                         };
164
165                         ldo5_reg: LDO5 {
166                                 regulator-name = "vdd_ldo5";
167                                 regulator-min-microvolt = <1800000>;
168                                 regulator-max-microvolt = <1800000>;
169                                 regulator-always-on;
170                         };
171
172                         ldo6_reg: LDO6 {
173                                 regulator-name = "vdd_ldo6";
174                                 regulator-min-microvolt = <1000000>;
175                                 regulator-max-microvolt = <1000000>;
176                                 regulator-always-on;
177                         };
178
179                         ldo7_reg: LDO7 {
180                                 regulator-name = "vdd_ldo7";
181                                 regulator-min-microvolt = <1800000>;
182                                 regulator-max-microvolt = <1800000>;
183                                 regulator-always-on;
184                         };
185
186                         ldo8_reg: LDO8 {
187                                 regulator-name = "vdd_ldo8";
188                                 regulator-min-microvolt = <1800000>;
189                                 regulator-max-microvolt = <1800000>;
190                                 regulator-always-on;
191                         };
192
193                         ldo9_reg: LDO9 {
194                                 regulator-name = "vdd_ldo9";
195                                 regulator-min-microvolt = <3000000>;
196                                 regulator-max-microvolt = <3000000>;
197                                 regulator-always-on;
198                         };
199
200                         ldo10_reg: LDO10 {
201                                 regulator-name = "vdd_ldo10";
202                                 regulator-min-microvolt = <1800000>;
203                                 regulator-max-microvolt = <1800000>;
204                                 regulator-always-on;
205                         };
206
207                         ldo11_reg: LDO11 {
208                                 regulator-name = "vdd_ldo11";
209                                 regulator-min-microvolt = <1000000>;
210                                 regulator-max-microvolt = <1000000>;
211                                 regulator-always-on;
212                         };
213
214                         ldo12_reg: LDO12 {
215                                 regulator-name = "vdd_ldo12";
216                                 regulator-min-microvolt = <1800000>;
217                                 regulator-max-microvolt = <1800000>;
218                                 regulator-always-on;
219                         };
220
221                         ldo13_reg: LDO13 {
222                                 regulator-name = "vdd_ldo13";
223                                 regulator-min-microvolt = <2800000>;
224                                 regulator-max-microvolt = <2800000>;
225                                 regulator-always-on;
226                         };
227
228                         ldo15_reg: LDO15 {
229                                 regulator-name = "vdd_ldo15";
230                                 regulator-min-microvolt = <3100000>;
231                                 regulator-max-microvolt = <3100000>;
232                                 regulator-always-on;
233                         };
234
235                         ldo16_reg: LDO16 {
236                                 regulator-name = "vdd_ldo16";
237                                 regulator-min-microvolt = <2200000>;
238                                 regulator-max-microvolt = <2200000>;
239                                 regulator-always-on;
240                         };
241
242                         ldo17_reg: LDO17 {
243                                 regulator-name = "tsp_avdd";
244                                 regulator-min-microvolt = <3300000>;
245                                 regulator-max-microvolt = <3300000>;
246                                 regulator-always-on;
247                         };
248
249                         ldo19_reg: LDO19 {
250                                 regulator-name = "vdd_sd";
251                                 regulator-min-microvolt = <2800000>;
252                                 regulator-max-microvolt = <2800000>;
253                                 regulator-always-on;
254                         };
255
256                         ldo24_reg: LDO24 {
257                                 regulator-name = "tsp_io";
258                                 regulator-min-microvolt = <2800000>;
259                                 regulator-max-microvolt = <2800000>;
260                                 regulator-always-on;
261                         };
262
263                         buck1_reg: BUCK1 {
264                                 regulator-name = "vdd_mif";
265                                 regulator-min-microvolt = <800000>;
266                                 regulator-max-microvolt = <1300000>;
267                                 regulator-always-on;
268                                 regulator-boot-on;
269                         };
270
271                         buck2_reg: BUCK2 {
272                                 regulator-name = "vdd_arm";
273                                 regulator-min-microvolt = <800000>;
274                                 regulator-max-microvolt = <1500000>;
275                                 regulator-always-on;
276                                 regulator-boot-on;
277                         };
278
279                         buck3_reg: BUCK3 {
280                                 regulator-name = "vdd_int";
281                                 regulator-min-microvolt = <800000>;
282                                 regulator-max-microvolt = <1400000>;
283                                 regulator-always-on;
284                                 regulator-boot-on;
285                         };
286
287                         buck4_reg: BUCK4 {
288                                 regulator-name = "vdd_g3d";
289                                 regulator-min-microvolt = <800000>;
290                                 regulator-max-microvolt = <1400000>;
291                                 regulator-always-on;
292                                 regulator-boot-on;
293                         };
294
295                         buck5_reg: BUCK5 {
296                                 regulator-name = "vdd_mem";
297                                 regulator-min-microvolt = <800000>;
298                                 regulator-max-microvolt = <1400000>;
299                                 regulator-always-on;
300                                 regulator-boot-on;
301                         };
302
303                         buck6_reg: BUCK6 {
304                                 regulator-name = "vdd_kfc";
305                                 regulator-min-microvolt = <800000>;
306                                 regulator-max-microvolt = <1500000>;
307                                 regulator-always-on;
308                                 regulator-boot-on;
309                         };
310
311                         buck7_reg: BUCK7 {
312                                 regulator-name = "vdd_1.0v_ldo";
313                                 regulator-min-microvolt = <800000>;
314                                 regulator-max-microvolt = <1500000>;
315                                 regulator-always-on;
316                                 regulator-boot-on;
317                         };
318
319                         buck8_reg: BUCK8 {
320                                 regulator-name = "vdd_1.8v_ldo";
321                                 regulator-min-microvolt = <800000>;
322                                 regulator-max-microvolt = <1500000>;
323                                 regulator-always-on;
324                                 regulator-boot-on;
325                         };
326
327                         buck9_reg: BUCK9 {
328                                 regulator-name = "vdd_2.8v_ldo";
329                                 regulator-min-microvolt = <3000000>;
330                                 regulator-max-microvolt = <3750000>;
331                                 regulator-always-on;
332                                 regulator-boot-on;
333                         };
334
335                         buck10_reg: BUCK10 {
336                                 regulator-name = "vdd_vmem";
337                                 regulator-min-microvolt = <2850000>;
338                                 regulator-max-microvolt = <2850000>;
339                                 regulator-always-on;
340                                 regulator-boot-on;
341                         };
342                 };
343         };
344 };
345
346 &i2c_2 {
347         samsung,i2c-sda-delay = <100>;
348         samsung,i2c-max-bus-freq = <66000>;
349         /* used by HDMI DDC */
350         status = "okay";
351 };
352
353 &mixer {
354         status = "okay";
355 };
356
357 &mmc_0 {
358         status = "okay";
359         broken-cd;
360         card-detect-delay = <200>;
361         samsung,dw-mshc-ciu-div = <3>;
362         samsung,dw-mshc-sdr-timing = <0 4>;
363         samsung,dw-mshc-ddr-timing = <0 2>;
364         samsung,dw-mshc-hs400-timing = <0 2>;
365         samsung,read-strobe-delay = <90>;
366         pinctrl-names = "default";
367         pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8
368                      &sd0_rclk>;
369         bus-width = <8>;
370         cap-mmc-highspeed;
371 };
372
373 &mmc_2 {
374         status = "okay";
375         card-detect-delay = <200>;
376         samsung,dw-mshc-ciu-div = <3>;
377         samsung,dw-mshc-sdr-timing = <2 3>;
378         samsung,dw-mshc-ddr-timing = <1 2>;
379         pinctrl-names = "default";
380         pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_cd &sd2_bus1 &sd2_bus4>;
381         bus-width = <4>;
382         cap-sd-highspeed;
383 };
384
385 &pinctrl_0 {
386         hdmi_hpd_irq: hdmi-hpd-irq {
387                 samsung,pins = "gpx3-7";
388                 samsung,pin-function = <EXYNOS_PIN_FUNC_INPUT>;
389                 samsung,pin-pud = <EXYNOS_PIN_PULL_DOWN>;
390                 samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
391         };
392 };
393
394 &pinctrl_2 {
395         usb300_vbus_en: usb300-vbus-en {
396                 samsung,pins = "gpg0-5";
397                 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
398                 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
399                 samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
400         };
401
402         usb301_vbus_en: usb301-vbus-en {
403                 samsung,pins = "gpg1-4";
404                 samsung,pin-function = <EXYNOS_PIN_FUNC_OUTPUT>;
405                 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
406                 samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
407         };
408 };
409
410 &rtc {
411         status = "okay";
412 };
413
414 &usbdrd_phy0 {
415         vbus-supply = <&usb300_vbus_reg>;
416 };
417
418 &usbdrd_phy1 {
419         vbus-supply = <&usb301_vbus_reg>;
420 };