Merge tag 'amd-drm-next-5.19-2022-04-15' of https://gitlab.freedesktop.org/agd5f...
[linux-2.6-microblaze.git] / arch / arm / boot / dts / exynos5420-galaxy-tab-common.dtsi
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Base DT for Samsung's family of tablets based on Exynos5420.
4  *
5  * Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
6  *              http://www.samsung.com
7  * Copyright (c) 2022 Henrik Grimler
8  */
9
10 /dts-v1/;
11 #include "exynos5420.dtsi"
12 #include "exynos5420-cpus.dtsi"
13 #include <dt-bindings/input/input.h>
14 #include <dt-bindings/gpio/gpio.h>
15 #include <dt-bindings/clock/samsung,s2mps11.h>
16
17 / {
18         chassis-type = "tablet";
19
20         /*
21          * To successfully boot the mainline kernel with the stock
22          * bootloader (SBOOT), the tlb needs to be flushed after the
23          * page table pointer has been updated in __common_mmu_cache_on.
24          * The same hack is also needed to boot exynos4412-i9300 with
25          * stock bootloader, and probably other Samsung devices of
26          * similar age.  See
27          * https://lore.kernel.org/all/1355276466-18295-1-git-send-email-arve@android.com
28          * for more details.
29          */
30
31         chosen {
32                 stdout-path = "serial2:115200n8";
33         };
34
35         memory@20000000 {
36                 device_type = "memory";
37                 reg = <0x20000000 0xc0000000>;
38         };
39
40         firmware@2073000 {
41                 compatible = "samsung,secure-firmware";
42                 reg = <0x02073000 0x1000>;
43         };
44
45         fixed-rate-clocks {
46                 oscclk {
47                         compatible = "samsung,exynos5420-oscclk";
48                         clock-frequency = <24000000>;
49                 };
50         };
51
52         gpio-keys {
53                 compatible = "gpio-keys";
54                 pinctrl-names = "default";
55
56                 key-power {
57                         debounce-interval = <10>;
58                         gpios = <&gpx2 2 GPIO_ACTIVE_LOW>;
59                         label = "Power";
60                         linux,code = <KEY_POWER>;
61                         wakeup-source;
62                 };
63
64                 key-home {
65                         debounce-interval = <10>;
66                         gpios = <&gpx0 5 GPIO_ACTIVE_LOW>;
67                         label = "Home";
68                         linux,code = <KEY_HOME>;
69                         wakeup-source;
70                 };
71
72                 key-volume-up {
73                         debounce-interval = <10>;
74                         gpios = <&gpx0 2 GPIO_ACTIVE_LOW>;
75                         label = "Volume Up";
76                         linux,code = <KEY_VOLUMEUP>;
77                 };
78
79                 key-volume-down {
80                         debounce-interval = <10>;
81                         gpios = <&gpx0 3 GPIO_ACTIVE_LOW>;
82                         label = "Volume Down";
83                         linux,code = <KEY_VOLUMEDOWN>;
84                 };
85         };
86 };
87
88 &cci {
89         /* CCI is disabled in hardware */
90         status = "disabled";
91 };
92
93 &cpu0 {
94         cpu-supply = <&buck2_reg>;
95 };
96
97 &cpu4 {
98         cpu-supply = <&buck6_reg>;
99 };
100
101 &gpu {
102         status = "okay";
103         mali-supply = <&buck4_reg>;
104 };
105
106 &hsi2c_7 {
107         status = "okay";
108
109         pmic@66 {
110                 compatible = "samsung,s2mps11-pmic";
111                 reg = <0x66>;
112
113                 interrupt-parent = <&gpx3>;
114                 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
115                 pinctrl-names = "default";
116                 pinctrl-0 = <&s2mps11_irq>;
117
118                 s2mps11_osc: clocks {
119                         compatible = "samsung,s2mps11-clk";
120                         #clock-cells = <1>;
121                         clock-output-names = "s2mps11_ap", "s2mps11_cp",
122                                              "s2mps11_bt";
123                 };
124
125                 regulators {
126                         buck1_reg: BUCK1 {
127                                 regulator-name = "VDD_MIF_1V1";
128                                 regulator-min-microvolt = <700000>;
129                                 regulator-max-microvolt = <1300000>;
130                                 regulator-always-on;
131                                 regulator-boot-on;
132
133                                 regulator-state-mem {
134                                         regulator-off-in-suspend;
135                                 };
136                         };
137
138                         buck2_reg: BUCK2 {
139                                 regulator-name = "VDD_ARM_1V0";
140                                 regulator-min-microvolt = <800000>;
141                                 regulator-max-microvolt = <1500000>;
142                                 regulator-always-on;
143                                 regulator-boot-on;
144
145                                 regulator-state-mem {
146                                         regulator-off-in-suspend;
147                                 };
148                         };
149
150                         buck3_reg: BUCK3 {
151                                 regulator-name = "VDD_INT_1V0";
152                                 regulator-min-microvolt = <800000>;
153                                 regulator-max-microvolt = <1400000>;
154                                 regulator-always-on;
155                                 regulator-boot-on;
156
157                                 regulator-state-mem {
158                                         regulator-off-in-suspend;
159                                 };
160                         };
161
162                         buck4_reg: BUCK4 {
163                                 regulator-name = "VDD_G3D_1V0";
164                                 regulator-min-microvolt = <700000>;
165                                 regulator-max-microvolt = <1400000>;
166                                 regulator-always-on;
167                                 regulator-boot-on;
168
169                                 regulator-state-mem {
170                                         regulator-off-in-suspend;
171                                 };
172                         };
173
174                         buck5_reg: BUCK5 {
175                                 regulator-name = "VDD_MEM_1V2";
176                                 regulator-min-microvolt = <1200000>;
177                                 regulator-max-microvolt = <1200000>;
178                                 regulator-always-on;
179                                 regulator-boot-on;
180
181                                 regulator-state-mem {
182                                         regulator-off-in-suspend;
183                                 };
184
185                         };
186
187                         buck6_reg: BUCK6 {
188                                 regulator-name = "VDD_KFC_1V0";
189                                 regulator-min-microvolt = <800000>;
190                                 regulator-max-microvolt = <1500000>;
191                                 regulator-always-on;
192                                 regulator-boot-on;
193
194                                 regulator-state-mem {
195                                         regulator-off-in-suspend;
196                                 };
197                         };
198
199                         buck7_reg: BUCK7 {
200                                 regulator-name = "VIN_LLDO_1V4";
201                                 regulator-min-microvolt = <1200000>;
202                                 regulator-max-microvolt = <1500000>;
203                                 regulator-always-on;
204                         };
205
206                         buck8_reg: BUCK8 {
207                                 regulator-name = "VIN_MLDO_2V0";
208                                 regulator-min-microvolt = <1800000>;
209                                 regulator-max-microvolt = <2100000>;
210                                 regulator-always-on;
211                         };
212
213                         buck9_reg: BUCK9 {
214                                 regulator-name = "VIN_HLDO_3V5";
215                                 regulator-min-microvolt = <3000000>;
216                                 regulator-max-microvolt = <3500000>;
217                                 regulator-always-on;
218                         };
219
220                         buck10_reg: BUCK10 {
221                                 regulator-name = "VDD_CAM_ISP_1V0";
222                                 regulator-min-microvolt = <750000>;
223                                 regulator-max-microvolt = <3550000>;
224                         };
225
226                         ldo1_reg: LDO1 {
227                                 regulator-name = "VDD_ALIVE_1.0V";
228                                 regulator-min-microvolt = <1000000>;
229                                 regulator-max-microvolt = <1000000>;
230                                 regulator-always-on;
231                         };
232
233                         ldo2_reg: LDO2 {
234                                 regulator-name = "VDD_APIO_1V8";
235                                 regulator-min-microvolt = <1800000>;
236                                 regulator-max-microvolt = <1800000>;
237                                 regulator-always-on;
238                                 regulator-boot-on;
239
240                                 regulator-state-mem {
241                                         regulator-on-in-suspend;
242                                 };
243                         };
244
245                         ldo3_reg: LDO3 {
246                                 regulator-name = "VDD_APIO_MMC01_1V8";
247                                 regulator-min-microvolt = <1800000>;
248                                 regulator-max-microvolt = <1800000>;
249                                 regulator-always-on;
250
251                                 regulator-state-mem {
252                                         regulator-off-in-suspend;
253                                 };
254                         };
255
256                         ldo4_reg: LDO4 {
257                                 regulator-name = "VDD_ADC_1V8";
258                                 regulator-min-microvolt = <1800000>;
259                                 regulator-max-microvolt = <1800000>;
260                                 regulator-always-on;
261                                 regulator-boot-on;
262
263                                 regulator-state-mem {
264                                         regulator-on-in-suspend;
265                                 };
266                         };
267
268                         ldo5_reg: LDO5 {
269                                 /* Unused */
270                                 regulator-name = "VDD_LDO5";
271                                 regulator-min-microvolt = <1800000>;
272                                 regulator-max-microvolt = <1800000>;
273                         };
274
275                         ldo6_reg: LDO6 {
276                                 regulator-name = "VDD_MIPI_1V0";
277                                 regulator-min-microvolt = <1000000>;
278                                 regulator-max-microvolt = <1000000>;
279                                 regulator-always-on;
280                                 regulator-boot-on;
281
282                                 regulator-state-mem {
283                                         regulator-off-in-suspend;
284                                 };
285                         };
286
287                         ldo7_reg: LDO7 {
288                                 regulator-name = "VDD_MIPI_PLL_ABB1_18V";
289                                 regulator-min-microvolt = <1800000>;
290                                 regulator-max-microvolt = <1800000>;
291                                 regulator-always-on;
292                                 regulator-boot-on;
293
294                                 regulator-state-mem {
295                                         regulator-off-in-suspend;
296                                 };
297                         };
298
299                         ldo8_reg: LDO8 {
300                                 /* Unused */
301                                 regulator-name = "VDD_LDO8";
302                                 regulator-min-microvolt = <1800000>;
303                                 regulator-max-microvolt = <1800000>;
304                         };
305
306                         ldo9_reg: LDO9 {
307                                 regulator-name = "VDD_UOTG_3V0";
308                                 regulator-min-microvolt = <3000000>;
309                                 regulator-max-microvolt = <3000000>;
310                                 regulator-always-on;
311                                 regulator-boot-on;
312
313                                 regulator-state-mem {
314                                         regulator-on-in-suspend;
315                                 };
316                         };
317
318                         ldo10_reg: LDO10 {
319                                 regulator-name = "VDDQ_PRE_1V8";
320                                 regulator-min-microvolt = <1800000>;
321                                 regulator-max-microvolt = <1800000>;
322                                 regulator-always-on;
323                                 regulator-boot-on;
324
325                                 regulator-state-mem {
326                                         regulator-on-in-suspend;
327                                 };
328                         };
329
330                         ldo11_reg: LDO11 {
331                                 regulator-name = "VDD_HSIC_1V0";
332                                 regulator-min-microvolt = <1000000>;
333                                 regulator-max-microvolt = <1000000>;
334                                 regulator-always-on;
335                                 regulator-boot-on;
336
337                                 regulator-state-mem {
338                                         regulator-on-in-suspend;
339                                 };
340                         };
341
342                         ldo12_reg: LDO12 {
343                                 regulator-name = "VDD_HSIC_1V8";
344                                 regulator-min-microvolt = <1800000>;
345                                 regulator-max-microvolt = <1800000>;
346                                 regulator-always-on;
347                                 regulator-boot-on;
348
349                                 regulator-state-mem {
350                                         regulator-on-in-suspend;
351                                 };
352                         };
353
354                         ldo13_reg: LDO13 {
355                                 regulator-name = "VDD_APIO_MMC2_2V8";
356                                 regulator-min-microvolt = <1800000>;
357                                 regulator-max-microvolt = <2800000>;
358                                 regulator-boot-on;
359
360                                 regulator-state-mem {
361                                         regulator-off-in-suspend;
362                                 };
363                         };
364
365                         ldo14_reg: LDO14 {
366                                 regulator-name = "VDD_MOTOR_3V0";
367                                 regulator-min-microvolt = <3000000>;
368                                 regulator-max-microvolt = <3000000>;
369
370                                 regulator-state-mem {
371                                         regulator-off-in-suspend;
372                                 };
373                         };
374
375                         ldo15_reg: LDO15 {
376                                 regulator-name = "VDD_LDO15";
377                                 /*
378                                  * LDO15 varies between devices and is
379                                  * specified in the device dts
380                                  */
381                         };
382
383                         ldo16_reg: LDO16 {
384                                 regulator-name = "VDD_AP_2V8";
385                                 regulator-min-microvolt = <2800000>;
386                                 regulator-max-microvolt = <2800000>;
387                                 regulator-always-on;
388                                 regulator-boot-on;
389
390                                 regulator-state-mem {
391                                         regulator-on-in-suspend;
392                                 };
393                         };
394
395                         ldo17_reg: LDO17 {
396                                 regulator-name = "VDD_LDO17";
397                                 /*
398                                  * LDO17 varies between devices and is
399                                  * specified in the device dts
400                                  */
401                         };
402
403                         ldo18_reg: LDO18 {
404                                 /* Unused */
405                                 regulator-name = "VDD_LDO18";
406                                 regulator-min-microvolt = <1800000>;
407                                 regulator-max-microvolt = <1800000>;
408                         };
409
410                         ldo19_reg: LDO19 {
411                                 regulator-name = "VDD_VTF_2V8";
412                                 regulator-min-microvolt = <2800000>;
413                                 regulator-max-microvolt = <2800000>;
414
415                                 regulator-state-mem {
416                                         regulator-off-in-suspend;
417                                 };
418                         };
419
420                         ldo20_reg: LDO20 {
421                                 regulator-name = "VDD_CAM1_CAM_1V8";
422                                 regulator-min-microvolt = <1800000>;
423                                 regulator-max-microvolt = <1800000>;
424
425                                 regulator-state-mem {
426                                         regulator-off-in-suspend;
427                                 };
428                         };
429
430                         ldo21_reg: LDO21 {
431                                 regulator-name = "VDD_CAM_IO_1V8";
432                                 regulator-min-microvolt = <1800000>;
433                                 regulator-max-microvolt = <1800000>;
434
435                                 regulator-state-mem {
436                                         regulator-off-in-suspend;
437                                 };
438                         };
439
440                         ldo22_reg: LDO22 {
441                                 regulator-name = "VDD_CAM0_S_CORE_1V1";
442                                 regulator-min-microvolt = <1050000>;
443                                 regulator-max-microvolt = <1200000>;
444
445                                 regulator-state-mem {
446                                         regulator-off-in-suspend;
447                                 };
448                         };
449
450                         ldo23_reg: LDO23 {
451                                 regulator-name = "VDD_MIFS_1V1";
452                                 regulator-min-microvolt = <800000>;
453                                 regulator-max-microvolt = <1100000>;
454                                 regulator-always-on;
455
456                                 regulator-state-mem {
457                                         regulator-on-in-suspend;
458                                 };
459                         };
460
461                         ldo24_reg: LDO24 {
462                                 regulator-name = "VDD_TSP_3V3";
463                                 regulator-min-microvolt = <3300000>;
464                                 regulator-max-microvolt = <3300000>;
465
466                                 regulator-state-mem {
467                                         regulator-off-in-suspend;
468                                 };
469                         };
470
471                         ldo25_reg: LDO25 {
472                                 /* Unused */
473                                 regulator-name = "VDD_LDO25";
474                                 regulator-min-microvolt = <800000>;
475                                 regulator-max-microvolt = <3950000>;
476                         };
477
478                         ldo26_reg: LDO26 {
479                                 regulator-name = "VDD_CAM0_AF_2V8";
480                                 regulator-min-microvolt = <2800000>;
481                                 regulator-max-microvolt = <2800000>;
482
483                                 regulator-state-mem {
484                                         regulator-off-in-suspend;
485                                 };
486                         };
487
488                         ldo27_reg: LDO27 {
489                                 regulator-name = "VDD_G3DS_1V0";
490                                 regulator-min-microvolt = <800000>;
491                                 regulator-max-microvolt = <1000000>;
492                                 regulator-always-on;
493
494                                 regulator-state-mem {
495                                         regulator-on-in-suspend;
496                                 };
497                         };
498
499                         ldo28_reg: LDO28 {
500                                 regulator-name = "VDD_LDO28";
501                                 /*
502                                  * LDO28 varies between devices and is
503                                  * specified in the device dts
504                                  */
505                         };
506
507                         ldo29_reg: LDO29 {
508                                 regulator-name = "VDD_LDO29";
509                                 /*
510                                  * LDO29 varies between devices and is
511                                  * specified in the device dts
512                                  */
513                         };
514
515                         ldo30_reg: LDO30 {
516                                 regulator-name = "VDD_TOUCH_1V8";
517                                 regulator-min-microvolt = <1900000>;
518                                 regulator-max-microvolt = <1900000>;
519
520                                 regulator-state-mem {
521                                         regulator-off-in-suspend;
522                                 };
523                         };
524
525                         ldo31_reg: LDO31 {
526                                 regulator-name = "VDD_LDO31";
527                                 /*
528                                  * LDO31 varies between devices and is
529                                  * specified in the device dts
530                                  */
531                         };
532
533                         ldo32_reg: LDO32 {
534                                 regulator-name = "VDD_LDO32";
535                                 /*
536                                  * LDO32 varies between devices and is
537                                  * specified in the device dts
538                                  */
539                         };
540
541                         ldo33_reg: LDO33 {
542                                 regulator-name = "VDD_MHL_1V8";
543                                 regulator-min-microvolt = <1800000>;
544                                 regulator-max-microvolt = <1800000>;
545
546                                 regulator-state-mem {
547                                         regulator-off-in-suspend;
548                                 };
549                         };
550
551                         ldo34_reg: LDO34 {
552                                 regulator-name = "VDD_MHL_3V3";
553                                 regulator-min-microvolt = <3300000>;
554                                 regulator-max-microvolt = <3300000>;
555
556                                 regulator-state-mem {
557                                         regulator-off-in-suspend;
558                                 };
559                         };
560
561                         ldo35_reg: LDO35 {
562                                 regulator-name = "VDD_SIL_1V2";
563                                 regulator-min-microvolt = <1200000>;
564                                 regulator-max-microvolt = <1200000>;
565
566                                 regulator-state-mem {
567                                         regulator-off-in-suspend;
568                                 };
569                         };
570
571                         ldo36_reg: LDO36 {
572                                 /* Unused */
573                                 regulator-name = "VDD_LDO36";
574                                 regulator-min-microvolt = <800000>;
575                                 regulator-max-microvolt = <3950000>;
576                         };
577
578                         ldo37_reg: LDO37 {
579                                 /* Unused */
580                                 regulator-name = "VDD_LDO37";
581                                 regulator-min-microvolt = <800000>;
582                                 regulator-max-microvolt = <3950000>;
583                         };
584
585                         ldo38_reg: LDO38 {
586                                 regulator-name = "VDD_KEY_LED_3V3";
587                                 regulator-min-microvolt = <2500000>;
588                                 regulator-max-microvolt = <3300000>;
589
590                                 regulator-state-mem {
591                                         regulator-off-in-suspend;
592                                 };
593                         };
594                 };
595         };
596 };
597
598 &mixer {
599         status = "okay";
600 };
601
602 /* Internal storage */
603 &mmc_0 {
604         status = "okay";
605         bus-width = <8>;
606         cap-mmc-highspeed;
607         card-detect-delay = <200>;
608         mmc-hs200-1_8v;
609         non-removable;
610         pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus1 &sd0_bus4 &sd0_bus8>;
611         pinctrl-names = "default";
612         samsung,dw-mshc-ciu-div = <3>;
613         samsung,dw-mshc-ddr-timing = <0 2>;
614         samsung,dw-mshc-sdr-timing = <0 4>;
615         vqmmc-supply = <&ldo3_reg>;
616 };
617
618 /* External sdcard */
619 &mmc_2 {
620         status = "okay";
621         bus-width = <4>;
622         cap-sd-highspeed;
623         card-detect-delay = <200>;
624         cd-gpios = <&gpx2 4 GPIO_ACTIVE_LOW>;
625         pinctrl-0 = <&sd2_clk &sd2_cmd &mmc2_cd &sd2_bus1 &sd2_bus4>;
626         pinctrl-names = "default";
627         samsung,dw-mshc-ciu-div = <3>;
628         samsung,dw-mshc-ddr-timing = <0 2>;
629         samsung,dw-mshc-sdr-timing = <0 4>;
630         sd-uhs-sdr50;
631         vmmc-supply = <&ldo19_reg>;
632         vqmmc-supply = <&ldo13_reg>;
633 };
634
635 &pinctrl_0 {
636         mmc2_cd: mmc2-cd-pins {
637                 samsung,pins = "gpx2-4";
638                 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
639         };
640
641         s2mps11_irq: s2mps11-irq-pins {
642                 samsung,pins = "gpx3-0";
643                 samsung,pin-function = <EXYNOS_PIN_FUNC_F>;
644                 samsung,pin-pud = <EXYNOS_PIN_PULL_NONE>;
645                 samsung,pin-drv = <EXYNOS5420_PIN_DRV_LV1>;
646         };
647 };
648
649 &rtc {
650         status = "okay";
651         clocks = <&clock CLK_RTC>, <&s2mps11_osc S2MPS11_CLK_AP>;
652         clock-names = "rtc", "rtc_src";
653 };
654
655 &tmu_cpu0 {
656         vtmu-supply = <&ldo10_reg>;
657 };
658
659 &tmu_cpu1 {
660         vtmu-supply = <&ldo10_reg>;
661 };
662
663 &tmu_cpu2 {
664         vtmu-supply = <&ldo10_reg>;
665 };
666
667 &tmu_cpu3 {
668         vtmu-supply = <&ldo10_reg>;
669 };
670
671 &tmu_gpu {
672         vtmu-supply = <&ldo10_reg>;
673 };
674
675 &usbdrd_dwc3_0 {
676         dr_mode = "peripheral";
677 };
678
679 &usbdrd_dwc3_1 {
680         dr_mode = "peripheral";
681 };
682
683 &usbdrd3_0 {
684         vdd33-supply = <&ldo9_reg>;
685         vdd10-supply = <&ldo11_reg>;
686 };
687
688 &usbdrd3_1 {
689         vdd33-supply = <&ldo9_reg>;
690         vdd10-supply = <&ldo11_reg>;
691 };