hc
2023-12-11 d2ccde1c8e90d38cee87a1b0309ad2827f3fd30d
kernel/arch/arm/boot/dts/exynos4210-trats.dts
....@@ -26,66 +26,62 @@
2626 };
2727
2828 chosen {
29
- bootargs = "console=ttySAC2,115200N8 root=/dev/mmcblk0p5 rootwait earlyprintk panic=5";
30
- stdout-path = &serial_2;
29
+ bootargs = "root=/dev/mmcblk0p5 rootwait earlyprintk panic=5";
30
+ stdout-path = "serial2:115200n8";
3131 };
3232
33
- regulators {
34
- compatible = "simple-bus";
33
+ vemmc_reg: regulator-0 {
34
+ compatible = "regulator-fixed";
35
+ regulator-name = "VMEM_VDD_2.8V";
36
+ regulator-min-microvolt = <2800000>;
37
+ regulator-max-microvolt = <2800000>;
38
+ gpio = <&gpk0 2 GPIO_ACTIVE_HIGH>;
39
+ enable-active-high;
40
+ };
3541
36
- vemmc_reg: regulator-0 {
37
- compatible = "regulator-fixed";
38
- regulator-name = "VMEM_VDD_2.8V";
39
- regulator-min-microvolt = <2800000>;
40
- regulator-max-microvolt = <2800000>;
41
- gpio = <&gpk0 2 GPIO_ACTIVE_HIGH>;
42
- enable-active-high;
43
- };
42
+ tsp_reg: regulator-1 {
43
+ compatible = "regulator-fixed";
44
+ regulator-name = "TSP_FIXED_VOLTAGES";
45
+ regulator-min-microvolt = <2800000>;
46
+ regulator-max-microvolt = <2800000>;
47
+ gpio = <&gpl0 3 GPIO_ACTIVE_HIGH>;
48
+ enable-active-high;
49
+ };
4450
45
- tsp_reg: regulator-1 {
46
- compatible = "regulator-fixed";
47
- regulator-name = "TSP_FIXED_VOLTAGES";
48
- regulator-min-microvolt = <2800000>;
49
- regulator-max-microvolt = <2800000>;
50
- gpio = <&gpl0 3 GPIO_ACTIVE_HIGH>;
51
- enable-active-high;
52
- };
51
+ cam_af_28v_reg: regulator-2 {
52
+ compatible = "regulator-fixed";
53
+ regulator-name = "8M_AF_2.8V_EN";
54
+ regulator-min-microvolt = <2800000>;
55
+ regulator-max-microvolt = <2800000>;
56
+ gpio = <&gpk1 1 GPIO_ACTIVE_HIGH>;
57
+ enable-active-high;
58
+ };
5359
54
- cam_af_28v_reg: regulator-2 {
55
- compatible = "regulator-fixed";
56
- regulator-name = "8M_AF_2.8V_EN";
57
- regulator-min-microvolt = <2800000>;
58
- regulator-max-microvolt = <2800000>;
59
- gpio = <&gpk1 1 GPIO_ACTIVE_HIGH>;
60
- enable-active-high;
61
- };
60
+ cam_io_en_reg: regulator-3 {
61
+ compatible = "regulator-fixed";
62
+ regulator-name = "CAM_IO_EN";
63
+ regulator-min-microvolt = <2800000>;
64
+ regulator-max-microvolt = <2800000>;
65
+ gpio = <&gpe2 1 GPIO_ACTIVE_HIGH>;
66
+ enable-active-high;
67
+ };
6268
63
- cam_io_en_reg: regulator-3 {
64
- compatible = "regulator-fixed";
65
- regulator-name = "CAM_IO_EN";
66
- regulator-min-microvolt = <2800000>;
67
- regulator-max-microvolt = <2800000>;
68
- gpio = <&gpe2 1 GPIO_ACTIVE_HIGH>;
69
- enable-active-high;
70
- };
69
+ cam_io_12v_reg: regulator-4 {
70
+ compatible = "regulator-fixed";
71
+ regulator-name = "8M_1.2V_EN";
72
+ regulator-min-microvolt = <1200000>;
73
+ regulator-max-microvolt = <1200000>;
74
+ gpio = <&gpe2 5 GPIO_ACTIVE_HIGH>;
75
+ enable-active-high;
76
+ };
7177
72
- cam_io_12v_reg: regulator-4 {
73
- compatible = "regulator-fixed";
74
- regulator-name = "8M_1.2V_EN";
75
- regulator-min-microvolt = <1200000>;
76
- regulator-max-microvolt = <1200000>;
77
- gpio = <&gpe2 5 GPIO_ACTIVE_HIGH>;
78
- enable-active-high;
79
- };
80
-
81
- vt_core_15v_reg: regulator-5 {
82
- compatible = "regulator-fixed";
83
- regulator-name = "VT_CORE_1.5V";
84
- regulator-min-microvolt = <1500000>;
85
- regulator-max-microvolt = <1500000>;
86
- gpio = <&gpe2 2 GPIO_ACTIVE_HIGH>;
87
- enable-active-high;
88
- };
78
+ vt_core_15v_reg: regulator-5 {
79
+ compatible = "regulator-fixed";
80
+ regulator-name = "VT_CORE_1.5V";
81
+ regulator-min-microvolt = <1500000>;
82
+ regulator-max-microvolt = <1500000>;
83
+ gpio = <&gpe2 2 GPIO_ACTIVE_HIGH>;
84
+ enable-active-high;
8985 };
9086
9187 gpio-keys {
....@@ -121,6 +117,11 @@
121117 };
122118 };
123119
120
+ wlan_pwrseq: sdhci3-pwrseq {
121
+ compatible = "mmc-pwrseq-simple";
122
+ reset-gpios = <&gpl1 2 GPIO_ACTIVE_LOW>;
123
+ };
124
+
124125 fixed-rate-clocks {
125126 xxti {
126127 compatible = "samsung,clock-xxti";
....@@ -131,23 +132,14 @@
131132 compatible = "samsung,clock-xusbxti";
132133 clock-frequency = <24000000>;
133134 };
134
- };
135135
136
- thermal-zones {
137
- cpu_thermal: cpu-thermal {
138
- cooling-maps {
139
- map0 {
140
- /* Corresponds to 800MHz at freq_table */
141
- cooling-device = <&cpu0 2 2>;
142
- };
143
- map1 {
144
- /* Corresponds to 200MHz at freq_table */
145
- cooling-device = <&cpu0 4 4>;
146
- };
147
- };
136
+ pmic_ap_clk: pmic-ap-clk {
137
+ /* Workaround for missing clock on max8997 PMIC */
138
+ compatible = "fixed-clock";
139
+ #clock-cells = <0>;
140
+ clock-frequency = <32768>;
148141 };
149142 };
150
-
151143 };
152144
153145 &camera {
....@@ -158,6 +150,19 @@
158150
159151 &cpu0 {
160152 cpu0-supply = <&varm_breg>;
153
+};
154
+
155
+&cpu_thermal {
156
+ cooling-maps {
157
+ map0 {
158
+ /* Corresponds to 800MHz at freq_table */
159
+ cooling-device = <&cpu0 2 2>, <&cpu1 2 2>;
160
+ };
161
+ map1 {
162
+ /* Corresponds to 200MHz at freq_table */
163
+ cooling-device = <&cpu0 4 4>, <&cpu1 4 4>;
164
+ };
165
+ };
161166 };
162167
163168 &dsi_0 {
....@@ -239,6 +244,10 @@
239244 status = "okay";
240245 };
241246
247
+&gpu {
248
+ status = "okay";
249
+};
250
+
242251 &hsotg {
243252 vusb_d-supply = <&vusb_reg>;
244253 vusb_a-supply = <&vusbdac_reg>;
....@@ -276,11 +285,10 @@
276285
277286 max8997_pmic@66 {
278287 compatible = "maxim,max8997-pmic";
279
- interrupts-extended = <&gpx0 7 0>, <&gpx2 3 0>;
280288
281289 reg = <0x66>;
282
- interrupt-parent = <&gpx0>;
283
- interrupts = <7 IRQ_TYPE_NONE>;
290
+ interrupts-extended = <&gpx0 7 IRQ_TYPE_LEVEL_LOW>,
291
+ <&gpx2 3 IRQ_TYPE_EDGE_FALLING>;
284292
285293 max8997,pmic-buck1-uses-gpio-dvs;
286294 max8997,pmic-buck2-uses-gpio-dvs;
....@@ -310,137 +318,154 @@
310318
311319 regulators {
312320 valive_reg: LDO2 {
313
- regulator-name = "VALIVE_1.1V_C210";
314
- regulator-min-microvolt = <1100000>;
315
- regulator-max-microvolt = <1100000>;
316
- regulator-always-on;
321
+ regulator-name = "VALIVE_1.1V_C210";
322
+ regulator-min-microvolt = <1100000>;
323
+ regulator-max-microvolt = <1100000>;
324
+ regulator-always-on;
317325 };
318326
319327 vusb_reg: LDO3 {
320
- regulator-name = "VUSB_1.1V_C210";
321
- regulator-min-microvolt = <1100000>;
322
- regulator-max-microvolt = <1100000>;
328
+ regulator-name = "VUSB_1.1V_C210";
329
+ regulator-min-microvolt = <1100000>;
330
+ regulator-max-microvolt = <1100000>;
323331 };
324332
325333 vmipi_reg: LDO4 {
326
- regulator-name = "VMIPI_1.8V";
327
- regulator-min-microvolt = <1800000>;
328
- regulator-max-microvolt = <1800000>;
334
+ regulator-name = "VMIPI_1.8V";
335
+ regulator-min-microvolt = <1800000>;
336
+ regulator-max-microvolt = <1800000>;
329337 };
330338
331339 vpda_reg: LDO6 {
332
- regulator-name = "VCC_1.8V_PDA";
333
- regulator-min-microvolt = <1800000>;
334
- regulator-max-microvolt = <1800000>;
335
- regulator-always-on;
340
+ regulator-name = "VCC_1.8V_PDA";
341
+ regulator-min-microvolt = <1800000>;
342
+ regulator-max-microvolt = <1800000>;
343
+ regulator-always-on;
336344 };
337345
338346 vcam_reg: LDO7 {
339
- regulator-name = "CAM_ISP_1.8V";
340
- regulator-min-microvolt = <1800000>;
341
- regulator-max-microvolt = <1800000>;
347
+ regulator-name = "CAM_ISP_1.8V";
348
+ regulator-min-microvolt = <1800000>;
349
+ regulator-max-microvolt = <1800000>;
342350 };
343351
344352 vusbdac_reg: LDO8 {
345
- regulator-name = "VUSB+VDAC_3.3V_C210";
346
- regulator-min-microvolt = <3300000>;
347
- regulator-max-microvolt = <3300000>;
353
+ regulator-name = "VUSB+VDAC_3.3V_C210";
354
+ regulator-min-microvolt = <3300000>;
355
+ regulator-max-microvolt = <3300000>;
348356 };
349357
350358 vccpda_reg: LDO9 {
351
- regulator-name = "VCC_2.8V_PDA";
352
- regulator-min-microvolt = <2800000>;
353
- regulator-max-microvolt = <2800000>;
354
- regulator-always-on;
359
+ regulator-name = "VCC_2.8V_PDA";
360
+ regulator-min-microvolt = <2800000>;
361
+ regulator-max-microvolt = <2800000>;
362
+ regulator-always-on;
355363 };
356364
357365 vpll_reg: LDO10 {
358
- regulator-name = "VPLL_1.1V_C210";
359
- regulator-min-microvolt = <1100000>;
360
- regulator-max-microvolt = <1100000>;
361
- regulator-always-on;
366
+ regulator-name = "VPLL_1.1V_C210";
367
+ regulator-min-microvolt = <1100000>;
368
+ regulator-max-microvolt = <1100000>;
369
+ regulator-always-on;
362370 };
363371
364372 vtcam_reg: LDO12 {
365
- regulator-name = "VT_CAM_1.8V";
366
- regulator-min-microvolt = <1800000>;
367
- regulator-max-microvolt = <1800000>;
373
+ regulator-name = "VT_CAM_1.8V";
374
+ regulator-min-microvolt = <1800000>;
375
+ regulator-max-microvolt = <1800000>;
368376 };
369377
370378 vcclcd_reg: LDO13 {
371
- regulator-name = "VCC_3.3V_LCD";
372
- regulator-min-microvolt = <3300000>;
373
- regulator-max-microvolt = <3300000>;
379
+ regulator-name = "VCC_3.3V_LCD";
380
+ regulator-min-microvolt = <3300000>;
381
+ regulator-max-microvolt = <3300000>;
374382 };
375383
376384 vlcd_reg: LDO15 {
377
- regulator-name = "VLCD_2.2V";
378
- regulator-min-microvolt = <2200000>;
379
- regulator-max-microvolt = <2200000>;
385
+ regulator-name = "VLCD_2.2V";
386
+ regulator-min-microvolt = <2200000>;
387
+ regulator-max-microvolt = <2200000>;
380388 };
381389
382390 camsensor_reg: LDO16 {
383
- regulator-name = "CAM_SENSOR_IO_1.8V";
384
- regulator-min-microvolt = <1800000>;
385
- regulator-max-microvolt = <1800000>;
391
+ regulator-name = "CAM_SENSOR_IO_1.8V";
392
+ regulator-min-microvolt = <1800000>;
393
+ regulator-max-microvolt = <1800000>;
394
+ };
395
+
396
+ tflash_reg: LDO17 {
397
+ regulator-name = "VTF_2.8V";
398
+ regulator-min-microvolt = <2800000>;
399
+ regulator-max-microvolt = <2800000>;
386400 };
387401
388402 vddq_reg: LDO21 {
389
- regulator-name = "VDDQ_M1M2_1.2V";
390
- regulator-min-microvolt = <1200000>;
391
- regulator-max-microvolt = <1200000>;
392
- regulator-always-on;
403
+ regulator-name = "VDDQ_M1M2_1.2V";
404
+ regulator-min-microvolt = <1200000>;
405
+ regulator-max-microvolt = <1200000>;
406
+ regulator-always-on;
393407 };
394408
395409 varm_breg: BUCK1 {
396
- /*
397
- * HACK: The real name is VARM_1.2V_C210,
398
- * but exynos-cpufreq does not support
399
- * DT-based regulator lookup yet.
400
- */
401
- regulator-name = "vdd_arm";
402
- regulator-min-microvolt = <900000>;
403
- regulator-max-microvolt = <1350000>;
404
- regulator-always-on;
410
+ regulator-name = "VARM_1.2V_C210";
411
+ regulator-min-microvolt = <900000>;
412
+ regulator-max-microvolt = <1350000>;
413
+ regulator-always-on;
405414 };
406415
407416 vint_breg: BUCK2 {
408
- regulator-name = "VINT_1.1V_C210";
409
- regulator-min-microvolt = <900000>;
410
- regulator-max-microvolt = <1100000>;
411
- regulator-always-on;
417
+ regulator-name = "VINT_1.1V_C210";
418
+ regulator-min-microvolt = <900000>;
419
+ regulator-max-microvolt = <1100000>;
420
+ regulator-always-on;
412421 };
413422
414423 camisp_breg: BUCK4 {
415
- regulator-name = "CAM_ISP_CORE_1.2V";
416
- regulator-min-microvolt = <1200000>;
417
- regulator-max-microvolt = <1200000>;
424
+ regulator-name = "CAM_ISP_CORE_1.2V";
425
+ regulator-min-microvolt = <1200000>;
426
+ regulator-max-microvolt = <1200000>;
418427 };
419428
420429 vmem_breg: BUCK5 {
421
- regulator-name = "VMEM_1.2V_C210";
422
- regulator-min-microvolt = <1200000>;
423
- regulator-max-microvolt = <1200000>;
424
- regulator-always-on;
430
+ regulator-name = "VMEM_1.2V_C210";
431
+ regulator-min-microvolt = <1200000>;
432
+ regulator-max-microvolt = <1200000>;
433
+ regulator-always-on;
425434 };
426435
427436 vccsub_breg: BUCK7 {
428
- regulator-name = "VCC_SUB_2.0V";
429
- regulator-min-microvolt = <2000000>;
430
- regulator-max-microvolt = <2000000>;
431
- regulator-always-on;
437
+ regulator-name = "VCC_SUB_2.0V";
438
+ regulator-min-microvolt = <2000000>;
439
+ regulator-max-microvolt = <2000000>;
440
+ regulator-always-on;
432441 };
433442
434443 safe1_sreg: ESAFEOUT1 {
435
- regulator-name = "SAFEOUT1";
444
+ regulator-name = "SAFEOUT1";
436445 };
437446
438447 safe2_sreg: ESAFEOUT2 {
439
- regulator-name = "SAFEOUT2";
440
- regulator-boot-on;
448
+ regulator-name = "SAFEOUT2";
449
+ regulator-boot-on;
450
+ };
451
+
452
+ EN32KHZ_AP {
453
+ regulator-name = "EN32KHZ_AP";
454
+ regulator-always-on;
455
+ };
456
+
457
+ EN32KHZ_CP {
458
+ regulator-name = "EN32KHZ_CP";
459
+ regulator-always-on;
441460 };
442461 };
443462 };
463
+};
464
+
465
+&rtc {
466
+ status = "okay";
467
+ clocks = <&clock CLK_RTC>, <&pmic_ap_clk>;
468
+ clock-names = "rtc", "rtc_src";
444469 };
445470
446471 &sdhci_0 {
....@@ -452,6 +477,39 @@
452477 status = "okay";
453478 };
454479
480
+&sdhci_2 {
481
+ bus-width = <4>;
482
+ pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4>;
483
+ pinctrl-names = "default";
484
+ vmmc-supply = <&tflash_reg>;
485
+ cd-gpios = <&gpx3 4 GPIO_ACTIVE_LOW>;
486
+ status = "okay";
487
+};
488
+
489
+&sdhci_3 {
490
+ status = "okay";
491
+
492
+ #address-cells = <1>;
493
+ #size-cells = <0>;
494
+
495
+ non-removable;
496
+ bus-width = <4>;
497
+ mmc-pwrseq = <&wlan_pwrseq>;
498
+ vmmc-supply = <&tflash_reg>;
499
+
500
+ pinctrl-names = "default";
501
+ pinctrl-0 = <&sd3_clk>, <&sd3_cmd>, <&sd3_bus4>;
502
+
503
+ brcmf: wifi@1 {
504
+ compatible = "brcm,bcm4330-fmac";
505
+ reg = <1>;
506
+
507
+ interrupt-parent = <&gpx2>;
508
+ interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
509
+ interrupt-names = "host-wake";
510
+ };
511
+};
512
+
455513 &serial_0 {
456514 status = "okay";
457515 };