diff options
author | Thierry Reding <treding@nvidia.com> | 2014-02-28 11:40:20 -0500 |
---|---|---|
committer | Stephen Warren <swarren@nvidia.com> | 2014-02-28 12:23:43 -0500 |
commit | af144b8d5dc260b5394cd43297bdb2bd9156a932 (patch) | |
tree | 42c3e71b6e1c523739c037b737a50cd99b741bc5 | |
parent | fa15ffaaea4abe1115d075946d87cd75360e59a2 (diff) |
ARM: tegra: Overhaul Venice2 regulators
Some of the regulators and the relationships to other regulators are
wrong. This commit attempts to rectify this by making them more similar
to what the schematics contain. This starts by adding a +VDD_MUX supply
that represents the 12V input and derives the main +3.3V_SYS and +5V_SYS
supplies from that. The majority of the other regulators derive from one
of those three.
While at it, rename the regulators to match the names in the schematics
to make them easier to match up.
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
-rw-r--r-- | arch/arm/boot/dts/tegra124-venice2.dts | 171 |
1 files changed, 98 insertions, 73 deletions
diff --git a/arch/arm/boot/dts/tegra124-venice2.dts b/arch/arm/boot/dts/tegra124-venice2.dts index c950c76185d2..cedf06416266 100644 --- a/arch/arm/boot/dts/tegra124-venice2.dts +++ b/arch/arm/boot/dts/tegra124-venice2.dts | |||
@@ -644,19 +644,19 @@ | |||
644 | }; | 644 | }; |
645 | 645 | ||
646 | regulators { | 646 | regulators { |
647 | vsup-sd2-supply = <&vdd_ac_bat_reg>; | 647 | vsup-sd2-supply = <&vdd_5v0_sys>; |
648 | vsup-sd3-supply = <&vdd_ac_bat_reg>; | 648 | vsup-sd3-supply = <&vdd_5v0_sys>; |
649 | vsup-sd4-supply = <&vdd_ac_bat_reg>; | 649 | vsup-sd4-supply = <&vdd_5v0_sys>; |
650 | vsup-sd5-supply = <&vdd_ac_bat_reg>; | 650 | vsup-sd5-supply = <&vdd_5v0_sys>; |
651 | vin-ldo0-supply = <&as3722_sd2>; | 651 | vin-ldo0-supply = <&vdd_1v35_lp0>; |
652 | vin-ldo1-6-supply = <&vdd_ac_bat_reg>; | 652 | vin-ldo1-6-supply = <&vdd_3v3_run>; |
653 | vin-ldo2-5-7-supply = <&as3722_sd5>; | 653 | vin-ldo2-5-7-supply = <&vddio_1v8>; |
654 | vin-ldo3-4-supply = <&vdd_ac_bat_reg>; | 654 | vin-ldo3-4-supply = <&vdd_3v3_sys>; |
655 | vin-ldo9-10-supply = <&vdd_ac_bat_reg>; | 655 | vin-ldo9-10-supply = <&vdd_5v0_sys>; |
656 | vin-ldo11-supply = <&vdd_ac_bat_reg>; | 656 | vin-ldo11-supply = <&vdd_3v3_run>; |
657 | 657 | ||
658 | sd0 { | 658 | sd0 { |
659 | regulator-name = "vdd-cpu"; | 659 | regulator-name = "+VDD_CPU_AP"; |
660 | regulator-min-microvolt = <700000>; | 660 | regulator-min-microvolt = <700000>; |
661 | regulator-max-microvolt = <1400000>; | 661 | regulator-max-microvolt = <1400000>; |
662 | regulator-min-microamp = <3500000>; | 662 | regulator-min-microamp = <3500000>; |
@@ -667,7 +667,7 @@ | |||
667 | }; | 667 | }; |
668 | 668 | ||
669 | sd1 { | 669 | sd1 { |
670 | regulator-name = "vdd-core"; | 670 | regulator-name = "+VDD_CORE"; |
671 | regulator-min-microvolt = <700000>; | 671 | regulator-min-microvolt = <700000>; |
672 | regulator-max-microvolt = <1350000>; | 672 | regulator-max-microvolt = <1350000>; |
673 | regulator-min-microamp = <2500000>; | 673 | regulator-min-microamp = <2500000>; |
@@ -677,8 +677,8 @@ | |||
677 | ams,external-control = <1>; | 677 | ams,external-control = <1>; |
678 | }; | 678 | }; |
679 | 679 | ||
680 | as3722_sd2: sd2 { | 680 | vdd_1v35_lp0: sd2 { |
681 | regulator-name = "vddio-ddr"; | 681 | regulator-name = "+1.35V_LP0(sd2)"; |
682 | regulator-min-microvolt = <1350000>; | 682 | regulator-min-microvolt = <1350000>; |
683 | regulator-max-microvolt = <1350000>; | 683 | regulator-max-microvolt = <1350000>; |
684 | regulator-always-on; | 684 | regulator-always-on; |
@@ -686,7 +686,7 @@ | |||
686 | }; | 686 | }; |
687 | 687 | ||
688 | sd3 { | 688 | sd3 { |
689 | regulator-name = "vddio-ddr-2phase"; | 689 | regulator-name = "+1.35V_LP0(sd3)"; |
690 | regulator-min-microvolt = <1350000>; | 690 | regulator-min-microvolt = <1350000>; |
691 | regulator-max-microvolt = <1350000>; | 691 | regulator-max-microvolt = <1350000>; |
692 | regulator-always-on; | 692 | regulator-always-on; |
@@ -694,15 +694,13 @@ | |||
694 | }; | 694 | }; |
695 | 695 | ||
696 | sd4 { | 696 | sd4 { |
697 | regulator-name = "avdd-pex-sata"; | 697 | regulator-name = "+1.05V_RUN"; |
698 | regulator-min-microvolt = <1050000>; | 698 | regulator-min-microvolt = <1050000>; |
699 | regulator-max-microvolt = <1050000>; | 699 | regulator-max-microvolt = <1050000>; |
700 | regulator-boot-on; | ||
701 | regulator-always-on; | ||
702 | }; | 700 | }; |
703 | 701 | ||
704 | as3722_sd5: sd5 { | 702 | vddio_1v8: sd5 { |
705 | regulator-name = "vddio-sys"; | 703 | regulator-name = "+1.8V_VDDIO"; |
706 | regulator-min-microvolt = <1800000>; | 704 | regulator-min-microvolt = <1800000>; |
707 | regulator-max-microvolt = <1800000>; | 705 | regulator-max-microvolt = <1800000>; |
708 | regulator-boot-on; | 706 | regulator-boot-on; |
@@ -710,7 +708,7 @@ | |||
710 | }; | 708 | }; |
711 | 709 | ||
712 | sd6 { | 710 | sd6 { |
713 | regulator-name = "vdd-gpu"; | 711 | regulator-name = "+VDD_GPU_AP"; |
714 | regulator-min-microvolt = <650000>; | 712 | regulator-min-microvolt = <650000>; |
715 | regulator-max-microvolt = <1200000>; | 713 | regulator-max-microvolt = <1200000>; |
716 | regulator-min-microamp = <3500000>; | 714 | regulator-min-microamp = <3500000>; |
@@ -720,7 +718,7 @@ | |||
720 | }; | 718 | }; |
721 | 719 | ||
722 | ldo0 { | 720 | ldo0 { |
723 | regulator-name = "avdd_pll"; | 721 | regulator-name = "+1.05V_RUN_AVDD"; |
724 | regulator-min-microvolt = <1050000>; | 722 | regulator-min-microvolt = <1050000>; |
725 | regulator-max-microvolt = <1050000>; | 723 | regulator-max-microvolt = <1050000>; |
726 | regulator-boot-on; | 724 | regulator-boot-on; |
@@ -729,13 +727,13 @@ | |||
729 | }; | 727 | }; |
730 | 728 | ||
731 | ldo1 { | 729 | ldo1 { |
732 | regulator-name = "run-cam-1.8"; | 730 | regulator-name = "+1.8V_RUN_CAM"; |
733 | regulator-min-microvolt = <1800000>; | 731 | regulator-min-microvolt = <1800000>; |
734 | regulator-max-microvolt = <1800000>; | 732 | regulator-max-microvolt = <1800000>; |
735 | }; | 733 | }; |
736 | 734 | ||
737 | ldo2 { | 735 | ldo2 { |
738 | regulator-name = "gen-avdd,vddio-hsic"; | 736 | regulator-name = "+1.2V_GEN_AVDD"; |
739 | regulator-min-microvolt = <1200000>; | 737 | regulator-min-microvolt = <1200000>; |
740 | regulator-max-microvolt = <1200000>; | 738 | regulator-max-microvolt = <1200000>; |
741 | regulator-boot-on; | 739 | regulator-boot-on; |
@@ -743,7 +741,7 @@ | |||
743 | }; | 741 | }; |
744 | 742 | ||
745 | ldo3 { | 743 | ldo3 { |
746 | regulator-name = "vdd-rtc"; | 744 | regulator-name = "+1.00V_LP0_VDD_RTC"; |
747 | regulator-min-microvolt = <1000000>; | 745 | regulator-min-microvolt = <1000000>; |
748 | regulator-max-microvolt = <1000000>; | 746 | regulator-max-microvolt = <1000000>; |
749 | regulator-boot-on; | 747 | regulator-boot-on; |
@@ -752,21 +750,19 @@ | |||
752 | }; | 750 | }; |
753 | 751 | ||
754 | ldo4 { | 752 | ldo4 { |
755 | regulator-name = "vdd-cam"; | 753 | regulator-name = "+3.3V_RUN_CAM"; |
756 | regulator-min-microvolt = <2800000>; | 754 | regulator-min-microvolt = <2800000>; |
757 | regulator-max-microvolt = <2800000>; | 755 | regulator-max-microvolt = <2800000>; |
758 | regulator-boot-on; | ||
759 | regulator-always-on; | ||
760 | }; | 756 | }; |
761 | 757 | ||
762 | ldo5 { | 758 | ldo5 { |
763 | regulator-name = "vdd-cam-front"; | 759 | regulator-name = "+1.2V_RUN_CAM_FRONT"; |
764 | regulator-min-microvolt = <1200000>; | 760 | regulator-min-microvolt = <1200000>; |
765 | regulator-max-microvolt = <1200000>; | 761 | regulator-max-microvolt = <1200000>; |
766 | }; | 762 | }; |
767 | 763 | ||
768 | ldo6 { | 764 | ldo6 { |
769 | regulator-name = "vddio-sdmmc3"; | 765 | regulator-name = "+VDDIO_SDMMC3"; |
770 | regulator-min-microvolt = <1800000>; | 766 | regulator-min-microvolt = <1800000>; |
771 | regulator-max-microvolt = <3300000>; | 767 | regulator-max-microvolt = <3300000>; |
772 | regulator-boot-on; | 768 | regulator-boot-on; |
@@ -774,25 +770,25 @@ | |||
774 | }; | 770 | }; |
775 | 771 | ||
776 | ldo7 { | 772 | ldo7 { |
777 | regulator-name = "vdd-cam-rear"; | 773 | regulator-name = "+1.05V_RUN_CAM_REAR"; |
778 | regulator-min-microvolt = <1050000>; | 774 | regulator-min-microvolt = <1050000>; |
779 | regulator-max-microvolt = <1050000>; | 775 | regulator-max-microvolt = <1050000>; |
780 | }; | 776 | }; |
781 | 777 | ||
782 | ldo9 { | 778 | ldo9 { |
783 | regulator-name = "vdd-touch"; | 779 | regulator-name = "+2.8V_RUN_TOUCH"; |
784 | regulator-min-microvolt = <2800000>; | 780 | regulator-min-microvolt = <2800000>; |
785 | regulator-max-microvolt = <2800000>; | 781 | regulator-max-microvolt = <2800000>; |
786 | }; | 782 | }; |
787 | 783 | ||
788 | ldo10 { | 784 | ldo10 { |
789 | regulator-name = "vdd-cam-af"; | 785 | regulator-name = "+2.8V_RUN_CAM_AF"; |
790 | regulator-min-microvolt = <2800000>; | 786 | regulator-min-microvolt = <2800000>; |
791 | regulator-max-microvolt = <2800000>; | 787 | regulator-max-microvolt = <2800000>; |
792 | }; | 788 | }; |
793 | 789 | ||
794 | ldo11 { | 790 | ldo11 { |
795 | regulator-name = "vpp-fuse"; | 791 | regulator-name = "+1.8V_RUN_VPP_FUSE"; |
796 | regulator-min-microvolt = <1800000>; | 792 | regulator-min-microvolt = <1800000>; |
797 | regulator-max-microvolt = <1800000>; | 793 | regulator-max-microvolt = <1800000>; |
798 | }; | 794 | }; |
@@ -975,99 +971,128 @@ | |||
975 | #address-cells = <1>; | 971 | #address-cells = <1>; |
976 | #size-cells = <0>; | 972 | #size-cells = <0>; |
977 | 973 | ||
978 | vdd_ac_bat_reg: regulator@0 { | 974 | vdd_mux: regulator@0 { |
979 | compatible = "regulator-fixed"; | 975 | compatible = "regulator-fixed"; |
980 | reg = <0>; | 976 | reg = <0>; |
981 | regulator-name = "vdd_ac_bat"; | 977 | regulator-name = "+VDD_MUX"; |
982 | regulator-min-microvolt = <5000000>; | 978 | regulator-min-microvolt = <12000000>; |
983 | regulator-max-microvolt = <5000000>; | 979 | regulator-max-microvolt = <12000000>; |
984 | regulator-always-on; | 980 | regulator-always-on; |
981 | regulator-boot-on; | ||
985 | }; | 982 | }; |
986 | 983 | ||
987 | vdd_3v3_reg: regulator@1 { | 984 | vdd_5v0_sys: regulator@1 { |
988 | compatible = "regulator-fixed"; | 985 | compatible = "regulator-fixed"; |
989 | reg = <1>; | 986 | reg = <1>; |
990 | regulator-name = "vdd_3v3"; | 987 | regulator-name = "+5V_SYS"; |
991 | regulator-min-microvolt = <3300000>; | 988 | regulator-min-microvolt = <5000000>; |
992 | regulator-max-microvolt = <3300000>; | 989 | regulator-max-microvolt = <5000000>; |
993 | regulator-always-on; | 990 | regulator-always-on; |
994 | regulator-boot-on; | 991 | regulator-boot-on; |
995 | enable-active-high; | 992 | vin-supply = <&vdd_mux>; |
996 | gpio = <&as3722 1 GPIO_ACTIVE_HIGH>; | ||
997 | }; | 993 | }; |
998 | 994 | ||
999 | vdd_3v3_modem_reg: regulator@2 { | 995 | vdd_3v3_sys: regulator@2 { |
1000 | compatible = "regulator-fixed"; | 996 | compatible = "regulator-fixed"; |
1001 | reg = <2>; | 997 | reg = <2>; |
1002 | regulator-name = "vdd-modem-3v3"; | 998 | regulator-name = "+3.3V_SYS"; |
1003 | regulator-min-microvolt = <3300000>; | 999 | regulator-min-microvolt = <3300000>; |
1004 | regulator-max-microvolt = <3300000>; | 1000 | regulator-max-microvolt = <3300000>; |
1005 | enable-active-high; | 1001 | regulator-always-on; |
1006 | gpio = <&as3722 2 GPIO_ACTIVE_HIGH>; | 1002 | regulator-boot-on; |
1003 | vin-supply = <&vdd_mux>; | ||
1007 | }; | 1004 | }; |
1008 | 1005 | ||
1009 | vdd_hdmi_5v0_reg: regulator@3 { | 1006 | vdd_3v3_run: regulator@3 { |
1010 | compatible = "regulator-fixed"; | 1007 | compatible = "regulator-fixed"; |
1011 | reg = <3>; | 1008 | reg = <3>; |
1012 | regulator-name = "vdd-hdmi-5v0"; | 1009 | regulator-name = "+3.3V_RUN"; |
1013 | regulator-min-microvolt = <5000000>; | 1010 | regulator-min-microvolt = <3300000>; |
1014 | regulator-max-microvolt = <5000000>; | 1011 | regulator-max-microvolt = <3300000>; |
1012 | gpio = <&as3722 1 GPIO_ACTIVE_HIGH>; | ||
1015 | enable-active-high; | 1013 | enable-active-high; |
1016 | gpio = <&gpio TEGRA_GPIO(K, 6) GPIO_ACTIVE_HIGH>; | 1014 | vin-supply = <&vdd_3v3_sys>; |
1017 | }; | 1015 | }; |
1018 | 1016 | ||
1019 | vdd_bl_reg: regulator@4 { | 1017 | vdd_3v3_hdmi: regulator@4 { |
1020 | compatible = "regulator-fixed"; | 1018 | compatible = "regulator-fixed"; |
1021 | reg = <4>; | 1019 | reg = <4>; |
1022 | regulator-name = "vdd-bl"; | 1020 | regulator-name = "+3.3V_AVDD_HDMI_AP_GATED"; |
1023 | regulator-min-microvolt = <3300000>; | 1021 | regulator-min-microvolt = <3300000>; |
1024 | regulator-max-microvolt = <3300000>; | 1022 | regulator-max-microvolt = <3300000>; |
1025 | gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_LOW>; | 1023 | vin-supply = <&vdd_3v3_run>; |
1026 | }; | 1024 | }; |
1027 | 1025 | ||
1028 | vdd_ts_sw_5v0: regulator@5 { | 1026 | vdd_led: regulator@5 { |
1029 | compatible = "regulator-fixed"; | 1027 | compatible = "regulator-fixed"; |
1030 | reg = <5>; | 1028 | reg = <5>; |
1031 | regulator-name = "vdd_ts_sw"; | 1029 | regulator-name = "+VDD_LED"; |
1032 | regulator-min-microvolt = <5000000>; | 1030 | gpio = <&gpio TEGRA_GPIO(P, 2) GPIO_ACTIVE_HIGH>; |
1033 | regulator-max-microvolt = <5000000>; | ||
1034 | enable-active-high; | 1031 | enable-active-high; |
1035 | regulator-boot-on; | 1032 | vin-supply = <&vdd_mux>; |
1036 | gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_LOW>; | ||
1037 | }; | 1033 | }; |
1038 | 1034 | ||
1039 | usb1_vbus_reg: regulator@6 { | 1035 | vdd_5v0_ts: regulator@6 { |
1040 | compatible = "regulator-fixed"; | 1036 | compatible = "regulator-fixed"; |
1041 | reg = <6>; | 1037 | reg = <6>; |
1042 | regulator-name = "usb1_vbus"; | 1038 | regulator-name = "+5V_VDD_TS_SW"; |
1043 | regulator-min-microvolt = <5000000>; | 1039 | regulator-min-microvolt = <5000000>; |
1044 | regulator-max-microvolt = <5000000>; | 1040 | regulator-max-microvolt = <5000000>; |
1045 | regulator-boot-on; | 1041 | regulator-boot-on; |
1042 | gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; | ||
1046 | enable-active-high; | 1043 | enable-active-high; |
1047 | gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; | 1044 | vin-supply = <&vdd_5v0_sys>; |
1048 | gpio-open-drain; | ||
1049 | }; | 1045 | }; |
1050 | 1046 | ||
1051 | usb3_vbus_reg: regulator@7 { | 1047 | vdd_usb1_vbus: regulator@7 { |
1052 | compatible = "regulator-fixed"; | 1048 | compatible = "regulator-fixed"; |
1053 | reg = <7>; | 1049 | reg = <7>; |
1054 | regulator-name = "usb3_vbus"; | 1050 | regulator-name = "+5V_USB_HS"; |
1055 | regulator-min-microvolt = <5000000>; | 1051 | regulator-min-microvolt = <5000000>; |
1056 | regulator-max-microvolt = <5000000>; | 1052 | regulator-max-microvolt = <5000000>; |
1057 | regulator-boot-on; | 1053 | gpio = <&gpio TEGRA_GPIO(N, 4) GPIO_ACTIVE_HIGH>; |
1058 | enable-active-high; | 1054 | enable-active-high; |
1059 | gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; | ||
1060 | gpio-open-drain; | 1055 | gpio-open-drain; |
1056 | vin-supply = <&vdd_5v0_sys>; | ||
1061 | }; | 1057 | }; |
1062 | 1058 | ||
1063 | panel_3v3_reg: regulator@8 { | 1059 | vdd_usb3_vbus: regulator@8 { |
1064 | compatible = "regulator-fixed"; | 1060 | compatible = "regulator-fixed"; |
1065 | reg = <8>; | 1061 | reg = <8>; |
1066 | regulator-name = "panel_3v3"; | 1062 | regulator-name = "+5V_USB_SS"; |
1063 | regulator-min-microvolt = <5000000>; | ||
1064 | regulator-max-microvolt = <5000000>; | ||
1065 | gpio = <&gpio TEGRA_GPIO(N, 5) GPIO_ACTIVE_HIGH>; | ||
1066 | enable-active-high; | ||
1067 | gpio-open-drain; | ||
1068 | vin-supply = <&vdd_5v0_sys>; | ||
1069 | }; | ||
1070 | |||
1071 | vdd_3v3_panel: regulator@9 { | ||
1072 | compatible = "regulator-fixed"; | ||
1073 | reg = <9>; | ||
1074 | regulator-name = "+3.3V_PANEL"; | ||
1067 | regulator-min-microvolt = <3300000>; | 1075 | regulator-min-microvolt = <3300000>; |
1068 | regulator-max-microvolt = <3300000>; | 1076 | regulator-max-microvolt = <3300000>; |
1069 | enable-active-high; | ||
1070 | gpio = <&as3722 4 GPIO_ACTIVE_HIGH>; | 1077 | gpio = <&as3722 4 GPIO_ACTIVE_HIGH>; |
1078 | enable-active-high; | ||
1079 | vin-supply = <&vdd_3v3_run>; | ||
1080 | }; | ||
1081 | |||
1082 | vdd_3v3_lp0: regulator@10 { | ||
1083 | compatible = "regulator-fixed"; | ||
1084 | reg = <10>; | ||
1085 | regulator-name = "+3.3V_LP0"; | ||
1086 | regulator-min-microvolt = <3300000>; | ||
1087 | regulator-max-microvolt = <3300000>; | ||
1088 | /* | ||
1089 | * TODO: find a way to wire this up with the USB EHCI | ||
1090 | * controllers so that it can be enabled on demand. | ||
1091 | */ | ||
1092 | regulator-always-on; | ||
1093 | gpio = <&as3722 2 GPIO_ACTIVE_HIGH>; | ||
1094 | enable-active-high; | ||
1095 | vin-supply = <&vdd_3v3_sys>; | ||
1071 | }; | 1096 | }; |
1072 | }; | 1097 | }; |
1073 | 1098 | ||