hc
2023-12-11 d2ccde1c8e90d38cee87a1b0309ad2827f3fd30d
kernel/arch/arm/boot/dts/tegra20-paz00.dts
....@@ -3,6 +3,8 @@
33
44 #include <dt-bindings/input/input.h>
55 #include "tegra20.dtsi"
6
+#include "tegra20-cpu-opp.dtsi"
7
+#include "tegra20-cpu-opp-microvolt.dtsi"
68
79 / {
810 model = "Toshiba AC100 / Dynabook AZ";
....@@ -303,10 +305,56 @@
303305 request-gpios = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_HIGH>;
304306 slave-addr = <138>;
305307 clocks = <&tegra_car TEGRA20_CLK_I2C3>,
306
- <&tegra_car TEGRA20_CLK_PLL_P_OUT3>;
308
+ <&tegra_car TEGRA20_CLK_PLL_P_OUT3>;
307309 clock-names = "div-clk", "fast-clk";
308310 resets = <&tegra_car 67>;
309311 reset-names = "i2c";
312
+ };
313
+
314
+ memory-controller@7000f400 {
315
+ nvidia,use-ram-code;
316
+
317
+ emc-tables@0 {
318
+ nvidia,ram-code = <0x0>;
319
+ #address-cells = <1>;
320
+ #size-cells = <0>;
321
+
322
+ emc-table@166500 {
323
+ reg = <166500>;
324
+ compatible = "nvidia,tegra20-emc-table";
325
+ clock-frequency = <166500>;
326
+ nvidia,emc-registers = <0x0000000a 0x00000016
327
+ 0x00000008 0x00000003 0x00000004 0x00000004
328
+ 0x00000002 0x0000000c 0x00000003 0x00000003
329
+ 0x00000002 0x00000001 0x00000004 0x00000005
330
+ 0x00000004 0x00000009 0x0000000d 0x000004df
331
+ 0x00000000 0x00000003 0x00000003 0x00000003
332
+ 0x00000003 0x00000001 0x0000000a 0x000000c8
333
+ 0x00000003 0x00000006 0x00000004 0x00000008
334
+ 0x00000002 0x00000000 0x00000000 0x00000002
335
+ 0x00000000 0x00000000 0x00000083 0xe03b0323
336
+ 0x007fe010 0x00001414 0x00000000 0x00000000
337
+ 0x00000000 0x00000000 0x00000000 0x00000000>;
338
+ };
339
+
340
+ emc-table@333000 {
341
+ reg = <333000>;
342
+ compatible = "nvidia,tegra20-emc-table";
343
+ clock-frequency = <333000>;
344
+ nvidia,emc-registers = <0x00000018 0x00000033
345
+ 0x00000012 0x00000004 0x00000004 0x00000005
346
+ 0x00000003 0x0000000c 0x00000006 0x00000006
347
+ 0x00000003 0x00000001 0x00000004 0x00000005
348
+ 0x00000004 0x00000009 0x0000000d 0x00000bff
349
+ 0x00000000 0x00000003 0x00000003 0x00000006
350
+ 0x00000006 0x00000001 0x00000011 0x000000c8
351
+ 0x00000003 0x0000000e 0x00000007 0x00000008
352
+ 0x00000002 0x00000000 0x00000000 0x00000002
353
+ 0x00000000 0x00000000 0x00000083 0xf0440303
354
+ 0x007fe010 0x00001414 0x00000000 0x00000000
355
+ 0x00000000 0x00000000 0x00000000 0x00000000>;
356
+ };
357
+ };
310358 };
311359
312360 i2c@7000d000 {
....@@ -337,18 +385,26 @@
337385 regulator-always-on;
338386 };
339387
340
- sm0 {
388
+ core_vdd_reg: sm0 {
341389 regulator-name = "+1.2vs_sm0,vdd_core";
342390 regulator-min-microvolt = <1200000>;
343
- regulator-max-microvolt = <1200000>;
391
+ regulator-max-microvolt = <1225000>;
392
+ regulator-coupled-with = <&rtc_vdd_reg &cpu_vdd_reg>;
393
+ regulator-coupled-max-spread = <170000 450000>;
344394 regulator-always-on;
395
+
396
+ nvidia,tegra-core-regulator;
345397 };
346398
347
- sm1 {
399
+ cpu_vdd_reg: sm1 {
348400 regulator-name = "+1.0vs_sm1,vdd_cpu";
349
- regulator-min-microvolt = <1000000>;
350
- regulator-max-microvolt = <1000000>;
401
+ regulator-min-microvolt = <750000>;
402
+ regulator-max-microvolt = <1100000>;
403
+ regulator-coupled-with = <&core_vdd_reg &rtc_vdd_reg>;
404
+ regulator-coupled-max-spread = <450000 450000>;
351405 regulator-always-on;
406
+
407
+ nvidia,tegra-cpu-regulator;
352408 };
353409
354410 sm2_reg: sm2 {
....@@ -367,10 +423,15 @@
367423 regulator-always-on;
368424 };
369425
370
- ldo2 {
426
+ rtc_vdd_reg: ldo2 {
371427 regulator-name = "+1.2vs_ldo2,vdd_rtc";
372428 regulator-min-microvolt = <1200000>;
373
- regulator-max-microvolt = <1200000>;
429
+ regulator-max-microvolt = <1225000>;
430
+ regulator-coupled-with = <&core_vdd_reg &cpu_vdd_reg>;
431
+ regulator-coupled-max-spread = <170000 450000>;
432
+ regulator-always-on;
433
+
434
+ nvidia,tegra-rtc-regulator;
374435 };
375436
376437 ldo3 {
....@@ -482,7 +543,7 @@
482543 status = "okay";
483544 };
484545
485
- sdhci@c8000000 {
546
+ mmc@c8000000 {
486547 status = "okay";
487548 cd-gpios = <&gpio TEGRA_GPIO(V, 5) GPIO_ACTIVE_LOW>;
488549 wp-gpios = <&gpio TEGRA_GPIO(H, 1) GPIO_ACTIVE_HIGH>;
....@@ -490,7 +551,7 @@
490551 bus-width = <4>;
491552 };
492553
493
- sdhci@c8000600 {
554
+ mmc@c8000600 {
494555 status = "okay";
495556 bus-width = <8>;
496557 non-removable;
....@@ -508,17 +569,10 @@
508569 backlight-boot-off;
509570 };
510571
511
- clocks {
512
- compatible = "simple-bus";
513
- #address-cells = <1>;
514
- #size-cells = <0>;
515
-
516
- clk32k_in: clock@0 {
517
- compatible = "fixed-clock";
518
- reg = <0>;
519
- #clock-cells = <0>;
520
- clock-frequency = <32768>;
521
- };
572
+ clk32k_in: clock@0 {
573
+ compatible = "fixed-clock";
574
+ clock-frequency = <32768>;
575
+ #clock-cells = <0>;
522576 };
523577
524578 gpio-keys {
....@@ -535,7 +589,7 @@
535589 gpio-leds {
536590 compatible = "gpio-leds";
537591
538
- wifi {
592
+ led-0 {
539593 label = "wifi-led";
540594 gpios = <&gpio TEGRA_GPIO(D, 0) GPIO_ACTIVE_HIGH>;
541595 linux,default-trigger = "rfkill0";
....@@ -543,7 +597,7 @@
543597 };
544598
545599 panel: panel {
546
- compatible = "samsung,ltn101nt05", "simple-panel";
600
+ compatible = "samsung,ltn101nt05";
547601
548602 ddc-i2c-bus = <&lvds_ddc>;
549603 power-supply = <&vdd_pnl_reg>;
....@@ -552,30 +606,22 @@
552606 backlight = <&backlight>;
553607 };
554608
555
- regulators {
556
- compatible = "simple-bus";
557
- #address-cells = <1>;
558
- #size-cells = <0>;
609
+ p5valw_reg: regulator@0 {
610
+ compatible = "regulator-fixed";
611
+ regulator-name = "+5valw";
612
+ regulator-min-microvolt = <5000000>;
613
+ regulator-max-microvolt = <5000000>;
614
+ regulator-always-on;
615
+ };
559616
560
- p5valw_reg: regulator@0 {
561
- compatible = "regulator-fixed";
562
- reg = <0>;
563
- regulator-name = "+5valw";
564
- regulator-min-microvolt = <5000000>;
565
- regulator-max-microvolt = <5000000>;
566
- regulator-always-on;
567
- };
568
-
569
- vdd_pnl_reg: regulator@1 {
570
- compatible = "regulator-fixed";
571
- reg = <1>;
572
- regulator-name = "+3VS,vdd_pnl";
573
- regulator-min-microvolt = <3300000>;
574
- regulator-max-microvolt = <3300000>;
575
- regulator-boot-on;
576
- gpio = <&gpio TEGRA_GPIO(A, 4) GPIO_ACTIVE_HIGH>;
577
- enable-active-high;
578
- };
617
+ vdd_pnl_reg: regulator@1 {
618
+ compatible = "regulator-fixed";
619
+ regulator-name = "+3VS,vdd_pnl";
620
+ regulator-min-microvolt = <3300000>;
621
+ regulator-max-microvolt = <3300000>;
622
+ regulator-boot-on;
623
+ gpio = <&gpio TEGRA_GPIO(A, 4) GPIO_ACTIVE_HIGH>;
624
+ enable-active-high;
579625 };
580626
581627 sound {
....@@ -599,8 +645,20 @@
599645 GPIO_ACTIVE_HIGH>;
600646
601647 clocks = <&tegra_car TEGRA20_CLK_PLL_A>,
602
- <&tegra_car TEGRA20_CLK_PLL_A_OUT0>,
603
- <&tegra_car TEGRA20_CLK_CDEV1>;
648
+ <&tegra_car TEGRA20_CLK_PLL_A_OUT0>,
649
+ <&tegra_car TEGRA20_CLK_CDEV1>;
604650 clock-names = "pll_a", "pll_a_out0", "mclk";
605651 };
652
+
653
+ cpus {
654
+ cpu0: cpu@0 {
655
+ cpu-supply = <&cpu_vdd_reg>;
656
+ operating-points-v2 = <&cpu0_opp_table>;
657
+ };
658
+
659
+ cpu@1 {
660
+ cpu-supply = <&cpu_vdd_reg>;
661
+ operating-points-v2 = <&cpu0_opp_table>;
662
+ };
663
+ };
606664 };