diff options
author | Kevin Hilman <khilman@linaro.org> | 2013-08-20 19:30:54 -0400 |
---|---|---|
committer | Kevin Hilman <khilman@linaro.org> | 2013-08-20 19:30:54 -0400 |
commit | 1fa5fcdafc14c2e684da146ac2ed95aa4a11a2aa (patch) | |
tree | 9be99f3650a7be083e21895110d14c5059a19ef8 /arch/arm | |
parent | 4cb635d705a32f3592f420c92ba4ccd4b177b860 (diff) | |
parent | 8af3bbec752902c0480c84613d7f10e22f485977 (diff) |
Merge tag 'tegra-for-3.12-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra into next/dt
From: Stephen Warren:
ARM: tegra: device tree changes for 3.12
This branch contains all *.dts (device tree) changes for Tegra.
New features enabled are:
* PMICs on Dalmore
* CPU power-gating on Dalmore
* HDMI output on Beaver
* LP1 system suspend mode on almost all boards
* PCIe support on numerous Tegra20/30 boards
* USB support on Tegra30/114 boards
* Audio capture on Beaver and Dalmore
* Temperature sensor on Cardhu.
... along with a few DT cleanups.
* tag 'tegra-for-3.12-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/swarren/linux-tegra: (25 commits)
ARM: tegra: add Mic Jack to Dalmore device tree
ARM: tegra: add Mic Jack to Beaver device tree
ARM: tegra: add USB DT entries for Tegra114, Dalmore
ARM: tegra: add USB DT entries for Tegra30
ARM: dts: tegra: Increase prefetchable PCI memory space
ARM: tegra: Fix Beaver's PCIe lane configuration
ARM: tegra: Enable PCIe controller on Beaver
ARM: tegra: Enable PCIe controller on Cardhu
ARM: tegra: Add Tegra30 PCIe support
ARM: tegra: trimslice: Initialize PCIe from DT
ARM: tegra: harmony: Initialize PCIe from DT
ARM: tegra: tec: Add PCIe support
ARM: tegra: tamonten: Add PCIe support
ARM: tegra: Add Tegra20 PCIe support to DT
ARM: tegra: enable LP1 suspend mode
ARM: tegra: beaver: Enable HDMI output
ARM: tegra: use TEGRA_GPIO() in a couple more places
ARM: tegra: dalmore: fix the irq trigger type of Palmas MFD device
ARM: tegra: define valid function names in DT document
ARM: tegra: dalmore: add PM configurations for PMC
...
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/boot/dts/Makefile | 3 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra114-dalmore.dts | 235 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra114-pluto.dts | 33 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra114.dtsi | 62 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra20-colibri-512.dtsi | 2 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra20-harmony.dts | 22 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra20-paz00.dts | 2 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra20-seaboard.dts | 4 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra20-tamonten.dtsi | 19 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra20-tec.dts | 8 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra20-trimslice.dts | 32 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra20-ventana.dts | 2 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra20-whistler.dts | 2 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra20.dtsi | 55 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra30-beaver.dts | 64 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra30-cardhu.dtsi | 64 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra30.dtsi | 156 |
17 files changed, 694 insertions, 71 deletions
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index c2977ef59943..c382814c2d09 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile | |||
@@ -226,8 +226,7 @@ dtb-$(CONFIG_ARCH_TEGRA) += tegra20-harmony.dtb \ | |||
226 | tegra30-beaver.dtb \ | 226 | tegra30-beaver.dtb \ |
227 | tegra30-cardhu-a02.dtb \ | 227 | tegra30-cardhu-a02.dtb \ |
228 | tegra30-cardhu-a04.dtb \ | 228 | tegra30-cardhu-a04.dtb \ |
229 | tegra114-dalmore.dtb \ | 229 | tegra114-dalmore.dtb |
230 | tegra114-pluto.dtb | ||
231 | dtb-$(CONFIG_ARCH_VERSATILE) += versatile-ab.dtb \ | 230 | dtb-$(CONFIG_ARCH_VERSATILE) += versatile-ab.dtb \ |
232 | versatile-pb.dtb | 231 | versatile-pb.dtb |
233 | dtb-$(CONFIG_ARCH_U300) += ste-u300.dtb | 232 | dtb-$(CONFIG_ARCH_U300) += ste-u300.dtb |
diff --git a/arch/arm/boot/dts/tegra114-dalmore.dts b/arch/arm/boot/dts/tegra114-dalmore.dts index cb640eb6c932..45056a299408 100644 --- a/arch/arm/boot/dts/tegra114-dalmore.dts +++ b/arch/arm/boot/dts/tegra114-dalmore.dts | |||
@@ -791,7 +791,7 @@ | |||
791 | regulator-boot-on; | 791 | regulator-boot-on; |
792 | }; | 792 | }; |
793 | 793 | ||
794 | dcdc3 { | 794 | tps65090_dcdc3_reg: dcdc3 { |
795 | regulator-name = "vdd-ao"; | 795 | regulator-name = "vdd-ao"; |
796 | regulator-always-on; | 796 | regulator-always-on; |
797 | regulator-boot-on; | 797 | regulator-boot-on; |
@@ -836,6 +836,180 @@ | |||
836 | }; | 836 | }; |
837 | }; | 837 | }; |
838 | }; | 838 | }; |
839 | |||
840 | palmas: tps65913 { | ||
841 | compatible = "ti,palmas"; | ||
842 | reg = <0x58>; | ||
843 | interrupts = <0 86 IRQ_TYPE_LEVEL_LOW>; | ||
844 | |||
845 | #interrupt-cells = <2>; | ||
846 | interrupt-controller; | ||
847 | |||
848 | palmas_gpio: gpio { | ||
849 | compatible = "ti,palmas-gpio"; | ||
850 | gpio-controller; | ||
851 | #gpio-cells = <2>; | ||
852 | }; | ||
853 | |||
854 | pmic { | ||
855 | compatible = "ti,tps65913-pmic", "ti,palmas-pmic"; | ||
856 | smps1-in-supply = <&tps65090_dcdc3_reg>; | ||
857 | smps3-in-supply = <&tps65090_dcdc3_reg>; | ||
858 | smps4-in-supply = <&tps65090_dcdc2_reg>; | ||
859 | smps7-in-supply = <&tps65090_dcdc2_reg>; | ||
860 | smps8-in-supply = <&tps65090_dcdc2_reg>; | ||
861 | smps9-in-supply = <&tps65090_dcdc2_reg>; | ||
862 | ldo1-in-supply = <&tps65090_dcdc2_reg>; | ||
863 | ldo2-in-supply = <&tps65090_dcdc2_reg>; | ||
864 | ldo3-in-supply = <&palmas_smps3_reg>; | ||
865 | ldo4-in-supply = <&tps65090_dcdc2_reg>; | ||
866 | ldo5-in-supply = <&vdd_ac_bat_reg>; | ||
867 | ldo6-in-supply = <&tps65090_dcdc2_reg>; | ||
868 | ldo7-in-supply = <&tps65090_dcdc2_reg>; | ||
869 | ldo8-in-supply = <&tps65090_dcdc3_reg>; | ||
870 | ldo9-in-supply = <&palmas_smps9_reg>; | ||
871 | ldoln-in-supply = <&tps65090_dcdc1_reg>; | ||
872 | ldousb-in-supply = <&tps65090_dcdc1_reg>; | ||
873 | |||
874 | regulators { | ||
875 | smps12 { | ||
876 | regulator-name = "vddio-ddr"; | ||
877 | regulator-min-microvolt = <1350000>; | ||
878 | regulator-max-microvolt = <1350000>; | ||
879 | regulator-always-on; | ||
880 | regulator-boot-on; | ||
881 | }; | ||
882 | |||
883 | palmas_smps3_reg: smps3 { | ||
884 | regulator-name = "vddio-1v8"; | ||
885 | regulator-min-microvolt = <1800000>; | ||
886 | regulator-max-microvolt = <1800000>; | ||
887 | regulator-always-on; | ||
888 | regulator-boot-on; | ||
889 | }; | ||
890 | |||
891 | smps45 { | ||
892 | regulator-name = "vdd-core"; | ||
893 | regulator-min-microvolt = <900000>; | ||
894 | regulator-max-microvolt = <1400000>; | ||
895 | regulator-always-on; | ||
896 | regulator-boot-on; | ||
897 | }; | ||
898 | |||
899 | smps457 { | ||
900 | regulator-name = "vdd-core"; | ||
901 | regulator-min-microvolt = <900000>; | ||
902 | regulator-max-microvolt = <1400000>; | ||
903 | regulator-always-on; | ||
904 | regulator-boot-on; | ||
905 | }; | ||
906 | |||
907 | smps8 { | ||
908 | regulator-name = "avdd-pll"; | ||
909 | regulator-min-microvolt = <1050000>; | ||
910 | regulator-max-microvolt = <1050000>; | ||
911 | regulator-always-on; | ||
912 | regulator-boot-on; | ||
913 | }; | ||
914 | |||
915 | palmas_smps9_reg: smps9 { | ||
916 | regulator-name = "sdhci-vdd-sd-slot"; | ||
917 | regulator-min-microvolt = <2800000>; | ||
918 | regulator-max-microvolt = <2800000>; | ||
919 | regulator-always-on; | ||
920 | }; | ||
921 | |||
922 | ldo1 { | ||
923 | regulator-name = "avdd-cam1"; | ||
924 | regulator-min-microvolt = <2800000>; | ||
925 | regulator-max-microvolt = <2800000>; | ||
926 | }; | ||
927 | |||
928 | ldo2 { | ||
929 | regulator-name = "avdd-cam2"; | ||
930 | regulator-min-microvolt = <2800000>; | ||
931 | regulator-max-microvolt = <2800000>; | ||
932 | }; | ||
933 | |||
934 | ldo3 { | ||
935 | regulator-name = "avdd-dsi-csi"; | ||
936 | regulator-min-microvolt = <1200000>; | ||
937 | regulator-max-microvolt = <1200000>; | ||
938 | regulator-always-on; | ||
939 | regulator-boot-on; | ||
940 | }; | ||
941 | |||
942 | ldo4 { | ||
943 | regulator-name = "vpp-fuse"; | ||
944 | regulator-min-microvolt = <1800000>; | ||
945 | regulator-max-microvolt = <1800000>; | ||
946 | }; | ||
947 | |||
948 | ldo6 { | ||
949 | regulator-name = "vdd-sensor-2v85"; | ||
950 | regulator-min-microvolt = <2850000>; | ||
951 | regulator-max-microvolt = <2850000>; | ||
952 | }; | ||
953 | |||
954 | ldo7 { | ||
955 | regulator-name = "vdd-af-cam1"; | ||
956 | regulator-min-microvolt = <2800000>; | ||
957 | regulator-max-microvolt = <2800000>; | ||
958 | }; | ||
959 | |||
960 | ldo8 { | ||
961 | regulator-name = "vdd-rtc"; | ||
962 | regulator-min-microvolt = <900000>; | ||
963 | regulator-max-microvolt = <900000>; | ||
964 | regulator-always-on; | ||
965 | regulator-boot-on; | ||
966 | ti,enable-ldo8-tracking; | ||
967 | }; | ||
968 | |||
969 | ldo9 { | ||
970 | regulator-name = "vddio-sdmmc-2"; | ||
971 | regulator-min-microvolt = <1800000>; | ||
972 | regulator-max-microvolt = <3300000>; | ||
973 | regulator-always-on; | ||
974 | regulator-boot-on; | ||
975 | }; | ||
976 | |||
977 | ldoln { | ||
978 | regulator-name = "hvdd-usb"; | ||
979 | regulator-min-microvolt = <3300000>; | ||
980 | regulator-max-microvolt = <3300000>; | ||
981 | }; | ||
982 | |||
983 | ldousb { | ||
984 | regulator-name = "avdd-usb"; | ||
985 | regulator-min-microvolt = <3300000>; | ||
986 | regulator-max-microvolt = <3300000>; | ||
987 | regulator-always-on; | ||
988 | regulator-boot-on; | ||
989 | }; | ||
990 | |||
991 | regen1 { | ||
992 | regulator-name = "rail-3v3"; | ||
993 | regulator-max-microvolt = <3300000>; | ||
994 | regulator-always-on; | ||
995 | regulator-boot-on; | ||
996 | }; | ||
997 | |||
998 | regen2 { | ||
999 | regulator-name = "rail-5v0"; | ||
1000 | regulator-max-microvolt = <5000000>; | ||
1001 | regulator-always-on; | ||
1002 | regulator-boot-on; | ||
1003 | }; | ||
1004 | }; | ||
1005 | }; | ||
1006 | |||
1007 | rtc { | ||
1008 | compatible = "ti,palmas-rtc"; | ||
1009 | interrupt-parent = <&palmas>; | ||
1010 | interrupts = <8 0>; | ||
1011 | }; | ||
1012 | }; | ||
839 | }; | 1013 | }; |
840 | 1014 | ||
841 | spi@7000da00 { | 1015 | spi@7000da00 { |
@@ -850,6 +1024,13 @@ | |||
850 | 1024 | ||
851 | pmc { | 1025 | pmc { |
852 | nvidia,invert-interrupt; | 1026 | nvidia,invert-interrupt; |
1027 | nvidia,suspend-mode = <1>; | ||
1028 | nvidia,cpu-pwr-good-time = <500>; | ||
1029 | nvidia,cpu-pwr-off-time = <300>; | ||
1030 | nvidia,core-pwr-good-time = <641 3845>; | ||
1031 | nvidia,core-pwr-off-time = <61036>; | ||
1032 | nvidia,core-power-req-active-high; | ||
1033 | nvidia,sys-clock-req-active-high; | ||
853 | }; | 1034 | }; |
854 | 1035 | ||
855 | ahub { | 1036 | ahub { |
@@ -870,6 +1051,15 @@ | |||
870 | non-removable; | 1051 | non-removable; |
871 | }; | 1052 | }; |
872 | 1053 | ||
1054 | usb@7d008000 { | ||
1055 | status = "okay"; | ||
1056 | }; | ||
1057 | |||
1058 | usb-phy@7d008000 { | ||
1059 | status = "okay"; | ||
1060 | vbus-supply = <&usb3_vbus_reg>; | ||
1061 | }; | ||
1062 | |||
873 | clocks { | 1063 | clocks { |
874 | compatible = "simple-bus"; | 1064 | compatible = "simple-bus"; |
875 | #address-cells = <1>; | 1065 | #address-cells = <1>; |
@@ -883,6 +1073,35 @@ | |||
883 | }; | 1073 | }; |
884 | }; | 1074 | }; |
885 | 1075 | ||
1076 | gpio-keys { | ||
1077 | compatible = "gpio-keys"; | ||
1078 | |||
1079 | home { | ||
1080 | label = "Home"; | ||
1081 | gpios = <&gpio TEGRA_GPIO(I, 5) GPIO_ACTIVE_LOW>; | ||
1082 | linux,code = <102>; /* KEY_HOME */ | ||
1083 | }; | ||
1084 | |||
1085 | power { | ||
1086 | label = "Power"; | ||
1087 | gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; | ||
1088 | linux,code = <116>; /* KEY_POWER */ | ||
1089 | gpio-key,wakeup; | ||
1090 | }; | ||
1091 | |||
1092 | volume_down { | ||
1093 | label = "Volume Down"; | ||
1094 | gpios = <&gpio TEGRA_GPIO(R, 1) GPIO_ACTIVE_LOW>; | ||
1095 | linux,code = <114>; /* KEY_VOLUMEDOWN */ | ||
1096 | }; | ||
1097 | |||
1098 | volume_up { | ||
1099 | label = "Volume Up"; | ||
1100 | gpios = <&gpio TEGRA_GPIO(R, 2) GPIO_ACTIVE_LOW>; | ||
1101 | linux,code = <115>; /* KEY_VOLUMEUP */ | ||
1102 | }; | ||
1103 | }; | ||
1104 | |||
886 | regulators { | 1105 | regulators { |
887 | compatible = "simple-bus"; | 1106 | compatible = "simple-bus"; |
888 | #address-cells = <1>; | 1107 | #address-cells = <1>; |
@@ -951,6 +1170,16 @@ | |||
951 | gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; | 1170 | gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; |
952 | vin-supply = <&tps65090_dcdc1_reg>; | 1171 | vin-supply = <&tps65090_dcdc1_reg>; |
953 | }; | 1172 | }; |
1173 | |||
1174 | vdd_cam_1v8_reg: regulator@6 { | ||
1175 | compatible = "regulator-fixed"; | ||
1176 | reg = <6>; | ||
1177 | regulator-name = "vdd_cam_1v8_reg"; | ||
1178 | regulator-min-microvolt = <1800000>; | ||
1179 | regulator-max-microvolt = <1800000>; | ||
1180 | enable-active-high; | ||
1181 | gpio = <&palmas_gpio 6 0>; | ||
1182 | }; | ||
954 | }; | 1183 | }; |
955 | 1184 | ||
956 | sound { | 1185 | sound { |
@@ -964,7 +1193,9 @@ | |||
964 | "Speakers", "SPORP", | 1193 | "Speakers", "SPORP", |
965 | "Speakers", "SPORN", | 1194 | "Speakers", "SPORN", |
966 | "Speakers", "SPOLP", | 1195 | "Speakers", "SPOLP", |
967 | "Speakers", "SPOLN"; | 1196 | "Speakers", "SPOLN", |
1197 | "Mic Jack", "MICBIAS1", | ||
1198 | "IN2P", "Mic Jack"; | ||
968 | 1199 | ||
969 | nvidia,i2s-controller = <&tegra_i2s1>; | 1200 | nvidia,i2s-controller = <&tegra_i2s1>; |
970 | nvidia,audio-codec = <&rt5640>; | 1201 | nvidia,audio-codec = <&rt5640>; |
diff --git a/arch/arm/boot/dts/tegra114-pluto.dts b/arch/arm/boot/dts/tegra114-pluto.dts deleted file mode 100644 index d5f8d3e0bde2..000000000000 --- a/arch/arm/boot/dts/tegra114-pluto.dts +++ /dev/null | |||
@@ -1,33 +0,0 @@ | |||
1 | /dts-v1/; | ||
2 | |||
3 | #include "tegra114.dtsi" | ||
4 | |||
5 | / { | ||
6 | model = "NVIDIA Tegra114 Pluto evaluation board"; | ||
7 | compatible = "nvidia,pluto", "nvidia,tegra114"; | ||
8 | |||
9 | memory { | ||
10 | reg = <0x80000000 0x40000000>; | ||
11 | }; | ||
12 | |||
13 | serial@70006300 { | ||
14 | status = "okay"; | ||
15 | }; | ||
16 | |||
17 | pmc { | ||
18 | nvidia,invert-interrupt; | ||
19 | }; | ||
20 | |||
21 | clocks { | ||
22 | compatible = "simple-bus"; | ||
23 | #address-cells = <1>; | ||
24 | #size-cells = <0>; | ||
25 | |||
26 | clk32k_in: clock { | ||
27 | compatible = "fixed-clock"; | ||
28 | reg=<0>; | ||
29 | #clock-cells = <0>; | ||
30 | clock-frequency = <32768>; | ||
31 | }; | ||
32 | }; | ||
33 | }; | ||
diff --git a/arch/arm/boot/dts/tegra114.dtsi b/arch/arm/boot/dts/tegra114.dtsi index abf6c40d28c6..2905145d8e59 100644 --- a/arch/arm/boot/dts/tegra114.dtsi +++ b/arch/arm/boot/dts/tegra114.dtsi | |||
@@ -430,6 +430,68 @@ | |||
430 | status = "disable"; | 430 | status = "disable"; |
431 | }; | 431 | }; |
432 | 432 | ||
433 | usb@7d000000 { | ||
434 | compatible = "nvidia,tegra30-ehci", "usb-ehci"; | ||
435 | reg = <0x7d000000 0x4000>; | ||
436 | interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; | ||
437 | phy_type = "utmi"; | ||
438 | clocks = <&tegra_car TEGRA114_CLK_USBD>; | ||
439 | nvidia,phy = <&phy1>; | ||
440 | status = "disabled"; | ||
441 | }; | ||
442 | |||
443 | phy1: usb-phy@7d000000 { | ||
444 | compatible = "nvidia,tegra30-usb-phy"; | ||
445 | reg = <0x7d000000 0x4000 0x7d000000 0x4000>; | ||
446 | phy_type = "utmi"; | ||
447 | clocks = <&tegra_car TEGRA114_CLK_USBD>, | ||
448 | <&tegra_car TEGRA114_CLK_PLL_U>, | ||
449 | <&tegra_car TEGRA114_CLK_USBD>; | ||
450 | clock-names = "reg", "pll_u", "utmi-pads"; | ||
451 | nvidia,hssync-start-delay = <0>; | ||
452 | nvidia,idle-wait-delay = <17>; | ||
453 | nvidia,elastic-limit = <16>; | ||
454 | nvidia,term-range-adj = <6>; | ||
455 | nvidia,xcvr-setup = <9>; | ||
456 | nvidia,xcvr-lsfslew = <0>; | ||
457 | nvidia,xcvr-lsrslew = <3>; | ||
458 | nvidia,hssquelch-level = <2>; | ||
459 | nvidia,hsdiscon-level = <5>; | ||
460 | nvidia,xcvr-hsslew = <12>; | ||
461 | status = "disabled"; | ||
462 | }; | ||
463 | |||
464 | usb@7d008000 { | ||
465 | compatible = "nvidia,tegra30-ehci", "usb-ehci"; | ||
466 | reg = <0x7d008000 0x4000>; | ||
467 | interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; | ||
468 | phy_type = "utmi"; | ||
469 | clocks = <&tegra_car TEGRA114_CLK_USB3>; | ||
470 | nvidia,phy = <&phy3>; | ||
471 | status = "disabled"; | ||
472 | }; | ||
473 | |||
474 | phy3: usb-phy@7d008000 { | ||
475 | compatible = "nvidia,tegra30-usb-phy"; | ||
476 | reg = <0x7d008000 0x4000 0x7d000000 0x4000>; | ||
477 | phy_type = "utmi"; | ||
478 | clocks = <&tegra_car TEGRA114_CLK_USB3>, | ||
479 | <&tegra_car TEGRA114_CLK_PLL_U>, | ||
480 | <&tegra_car TEGRA114_CLK_USBD>; | ||
481 | clock-names = "reg", "pll_u", "utmi-pads"; | ||
482 | nvidia,hssync-start-delay = <0>; | ||
483 | nvidia,idle-wait-delay = <17>; | ||
484 | nvidia,elastic-limit = <16>; | ||
485 | nvidia,term-range-adj = <6>; | ||
486 | nvidia,xcvr-setup = <9>; | ||
487 | nvidia,xcvr-lsfslew = <0>; | ||
488 | nvidia,xcvr-lsrslew = <3>; | ||
489 | nvidia,hssquelch-level = <2>; | ||
490 | nvidia,hsdiscon-level = <5>; | ||
491 | nvidia,xcvr-hsslew = <12>; | ||
492 | status = "disabled"; | ||
493 | }; | ||
494 | |||
433 | cpus { | 495 | cpus { |
434 | #address-cells = <1>; | 496 | #address-cells = <1>; |
435 | #size-cells = <0>; | 497 | #size-cells = <0>; |
diff --git a/arch/arm/boot/dts/tegra20-colibri-512.dtsi b/arch/arm/boot/dts/tegra20-colibri-512.dtsi index 5592be6f2f7a..d5c9bca01232 100644 --- a/arch/arm/boot/dts/tegra20-colibri-512.dtsi +++ b/arch/arm/boot/dts/tegra20-colibri-512.dtsi | |||
@@ -363,7 +363,7 @@ | |||
363 | }; | 363 | }; |
364 | 364 | ||
365 | pmc { | 365 | pmc { |
366 | nvidia,suspend-mode = <2>; | 366 | nvidia,suspend-mode = <1>; |
367 | nvidia,cpu-pwr-good-time = <5000>; | 367 | nvidia,cpu-pwr-good-time = <5000>; |
368 | nvidia,cpu-pwr-off-time = <5000>; | 368 | nvidia,cpu-pwr-off-time = <5000>; |
369 | nvidia,core-pwr-good-time = <3845 3845>; | 369 | nvidia,core-pwr-good-time = <3845 3845>; |
diff --git a/arch/arm/boot/dts/tegra20-harmony.dts b/arch/arm/boot/dts/tegra20-harmony.dts index d9f89cd879a7..e156ab30e763 100644 --- a/arch/arm/boot/dts/tegra20-harmony.dts +++ b/arch/arm/boot/dts/tegra20-harmony.dts | |||
@@ -335,7 +335,7 @@ | |||
335 | regulator-always-on; | 335 | regulator-always-on; |
336 | }; | 336 | }; |
337 | 337 | ||
338 | ldo0 { | 338 | pci_clk_reg: ldo0 { |
339 | regulator-name = "vdd_ldo0,vddio_pex_clk"; | 339 | regulator-name = "vdd_ldo0,vddio_pex_clk"; |
340 | regulator-min-microvolt = <3300000>; | 340 | regulator-min-microvolt = <3300000>; |
341 | regulator-max-microvolt = <3300000>; | 341 | regulator-max-microvolt = <3300000>; |
@@ -417,7 +417,7 @@ | |||
417 | 417 | ||
418 | pmc { | 418 | pmc { |
419 | nvidia,invert-interrupt; | 419 | nvidia,invert-interrupt; |
420 | nvidia,suspend-mode = <2>; | 420 | nvidia,suspend-mode = <1>; |
421 | nvidia,cpu-pwr-good-time = <5000>; | 421 | nvidia,cpu-pwr-good-time = <5000>; |
422 | nvidia,cpu-pwr-off-time = <5000>; | 422 | nvidia,cpu-pwr-off-time = <5000>; |
423 | nvidia,core-pwr-good-time = <3845 3845>; | 423 | nvidia,core-pwr-good-time = <3845 3845>; |
@@ -425,6 +425,20 @@ | |||
425 | nvidia,sys-clock-req-active-high; | 425 | nvidia,sys-clock-req-active-high; |
426 | }; | 426 | }; |
427 | 427 | ||
428 | pcie-controller { | ||
429 | pex-clk-supply = <&pci_clk_reg>; | ||
430 | vdd-supply = <&pci_vdd_reg>; | ||
431 | status = "okay"; | ||
432 | |||
433 | pci@1,0 { | ||
434 | status = "okay"; | ||
435 | }; | ||
436 | |||
437 | pci@2,0 { | ||
438 | status = "okay"; | ||
439 | }; | ||
440 | }; | ||
441 | |||
428 | usb@c5000000 { | 442 | usb@c5000000 { |
429 | status = "okay"; | 443 | status = "okay"; |
430 | }; | 444 | }; |
@@ -643,7 +657,7 @@ | |||
643 | enable-active-high; | 657 | enable-active-high; |
644 | }; | 658 | }; |
645 | 659 | ||
646 | regulator@3 { | 660 | pci_vdd_reg: regulator@3 { |
647 | compatible = "regulator-fixed"; | 661 | compatible = "regulator-fixed"; |
648 | reg = <3>; | 662 | reg = <3>; |
649 | regulator-name = "vdd_1v05"; | 663 | regulator-name = "vdd_1v05"; |
@@ -651,8 +665,6 @@ | |||
651 | regulator-max-microvolt = <1050000>; | 665 | regulator-max-microvolt = <1050000>; |
652 | gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; | 666 | gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; |
653 | enable-active-high; | 667 | enable-active-high; |
654 | /* Hack until board-harmony-pcie.c is removed */ | ||
655 | status = "disabled"; | ||
656 | }; | 668 | }; |
657 | 669 | ||
658 | regulator@4 { | 670 | regulator@4 { |
diff --git a/arch/arm/boot/dts/tegra20-paz00.dts b/arch/arm/boot/dts/tegra20-paz00.dts index cfd12763b1b2..8d71fc9d8a2f 100644 --- a/arch/arm/boot/dts/tegra20-paz00.dts +++ b/arch/arm/boot/dts/tegra20-paz00.dts | |||
@@ -417,7 +417,7 @@ | |||
417 | 417 | ||
418 | pmc { | 418 | pmc { |
419 | nvidia,invert-interrupt; | 419 | nvidia,invert-interrupt; |
420 | nvidia,suspend-mode = <2>; | 420 | nvidia,suspend-mode = <1>; |
421 | nvidia,cpu-pwr-good-time = <2000>; | 421 | nvidia,cpu-pwr-good-time = <2000>; |
422 | nvidia,cpu-pwr-off-time = <0>; | 422 | nvidia,cpu-pwr-off-time = <0>; |
423 | nvidia,core-pwr-good-time = <3845 3845>; | 423 | nvidia,core-pwr-good-time = <3845 3845>; |
diff --git a/arch/arm/boot/dts/tegra20-seaboard.dts b/arch/arm/boot/dts/tegra20-seaboard.dts index 365760b33a26..f44a9b8e23bf 100644 --- a/arch/arm/boot/dts/tegra20-seaboard.dts +++ b/arch/arm/boot/dts/tegra20-seaboard.dts | |||
@@ -518,7 +518,7 @@ | |||
518 | 518 | ||
519 | pmc { | 519 | pmc { |
520 | nvidia,invert-interrupt; | 520 | nvidia,invert-interrupt; |
521 | nvidia,suspend-mode = <2>; | 521 | nvidia,suspend-mode = <1>; |
522 | nvidia,cpu-pwr-good-time = <5000>; | 522 | nvidia,cpu-pwr-good-time = <5000>; |
523 | nvidia,cpu-pwr-off-time = <5000>; | 523 | nvidia,cpu-pwr-off-time = <5000>; |
524 | nvidia,core-pwr-good-time = <3845 3845>; | 524 | nvidia,core-pwr-good-time = <3845 3845>; |
@@ -829,7 +829,7 @@ | |||
829 | regulator-min-microvolt = <5000000>; | 829 | regulator-min-microvolt = <5000000>; |
830 | regulator-max-microvolt = <5000000>; | 830 | regulator-max-microvolt = <5000000>; |
831 | enable-active-high; | 831 | enable-active-high; |
832 | gpio = <&gpio 24 0>; /* PD0 */ | 832 | gpio = <&gpio TEGRA_GPIO(D, 0) 0>; |
833 | }; | 833 | }; |
834 | }; | 834 | }; |
835 | 835 | ||
diff --git a/arch/arm/boot/dts/tegra20-tamonten.dtsi b/arch/arm/boot/dts/tegra20-tamonten.dtsi index c54faae7cfb3..7726dab3d08d 100644 --- a/arch/arm/boot/dts/tegra20-tamonten.dtsi +++ b/arch/arm/boot/dts/tegra20-tamonten.dtsi | |||
@@ -366,7 +366,7 @@ | |||
366 | regulator-always-on; | 366 | regulator-always-on; |
367 | }; | 367 | }; |
368 | 368 | ||
369 | ldo0 { | 369 | pci_clk_reg: ldo0 { |
370 | regulator-name = "vdd_ldo0,vddio_pex_clk"; | 370 | regulator-name = "vdd_ldo0,vddio_pex_clk"; |
371 | regulator-min-microvolt = <3300000>; | 371 | regulator-min-microvolt = <3300000>; |
372 | regulator-max-microvolt = <3300000>; | 372 | regulator-max-microvolt = <3300000>; |
@@ -459,7 +459,7 @@ | |||
459 | 459 | ||
460 | pmc { | 460 | pmc { |
461 | nvidia,invert-interrupt; | 461 | nvidia,invert-interrupt; |
462 | nvidia,suspend-mode = <2>; | 462 | nvidia,suspend-mode = <1>; |
463 | nvidia,cpu-pwr-good-time = <5000>; | 463 | nvidia,cpu-pwr-good-time = <5000>; |
464 | nvidia,cpu-pwr-off-time = <5000>; | 464 | nvidia,cpu-pwr-off-time = <5000>; |
465 | nvidia,core-pwr-good-time = <3845 3845>; | 465 | nvidia,core-pwr-good-time = <3845 3845>; |
@@ -467,6 +467,11 @@ | |||
467 | nvidia,sys-clock-req-active-high; | 467 | nvidia,sys-clock-req-active-high; |
468 | }; | 468 | }; |
469 | 469 | ||
470 | pcie-controller { | ||
471 | pex-clk-supply = <&pci_clk_reg>; | ||
472 | vdd-supply = <&pci_vdd_reg>; | ||
473 | }; | ||
474 | |||
470 | usb@c5008000 { | 475 | usb@c5008000 { |
471 | status = "okay"; | 476 | status = "okay"; |
472 | }; | 477 | }; |
@@ -509,5 +514,15 @@ | |||
509 | regulator-max-microvolt = <5000000>; | 514 | regulator-max-microvolt = <5000000>; |
510 | regulator-always-on; | 515 | regulator-always-on; |
511 | }; | 516 | }; |
517 | |||
518 | pci_vdd_reg: regulator@1 { | ||
519 | compatible = "regulator-fixed"; | ||
520 | reg = <1>; | ||
521 | regulator-name = "vdd_1v05"; | ||
522 | regulator-min-microvolt = <1050000>; | ||
523 | regulator-max-microvolt = <1050000>; | ||
524 | gpio = <&pmic 2 0>; | ||
525 | enable-active-high; | ||
526 | }; | ||
512 | }; | 527 | }; |
513 | }; | 528 | }; |
diff --git a/arch/arm/boot/dts/tegra20-tec.dts b/arch/arm/boot/dts/tegra20-tec.dts index c572c43751b1..3ada3cb67f07 100644 --- a/arch/arm/boot/dts/tegra20-tec.dts +++ b/arch/arm/boot/dts/tegra20-tec.dts | |||
@@ -32,6 +32,14 @@ | |||
32 | }; | 32 | }; |
33 | }; | 33 | }; |
34 | 34 | ||
35 | pcie-controller { | ||
36 | status = "okay"; | ||
37 | |||
38 | pci@1,0 { | ||
39 | status = "okay"; | ||
40 | }; | ||
41 | }; | ||
42 | |||
35 | sound { | 43 | sound { |
36 | compatible = "ad,tegra-audio-wm8903-tec", | 44 | compatible = "ad,tegra-audio-wm8903-tec", |
37 | "nvidia,tegra-audio-wm8903"; | 45 | "nvidia,tegra-audio-wm8903"; |
diff --git a/arch/arm/boot/dts/tegra20-trimslice.dts b/arch/arm/boot/dts/tegra20-trimslice.dts index ed4b901b0227..22e227f87e4c 100644 --- a/arch/arm/boot/dts/tegra20-trimslice.dts +++ b/arch/arm/boot/dts/tegra20-trimslice.dts | |||
@@ -302,7 +302,7 @@ | |||
302 | }; | 302 | }; |
303 | 303 | ||
304 | pmc { | 304 | pmc { |
305 | nvidia,suspend-mode = <2>; | 305 | nvidia,suspend-mode = <1>; |
306 | nvidia,cpu-pwr-good-time = <5000>; | 306 | nvidia,cpu-pwr-good-time = <5000>; |
307 | nvidia,cpu-pwr-off-time = <5000>; | 307 | nvidia,cpu-pwr-off-time = <5000>; |
308 | nvidia,core-pwr-good-time = <3845 3845>; | 308 | nvidia,core-pwr-good-time = <3845 3845>; |
@@ -310,6 +310,16 @@ | |||
310 | nvidia,sys-clock-req-active-high; | 310 | nvidia,sys-clock-req-active-high; |
311 | }; | 311 | }; |
312 | 312 | ||
313 | pcie-controller { | ||
314 | status = "okay"; | ||
315 | pex-clk-supply = <&pci_clk_reg>; | ||
316 | vdd-supply = <&pci_vdd_reg>; | ||
317 | |||
318 | pci@1,0 { | ||
319 | status = "okay"; | ||
320 | }; | ||
321 | }; | ||
322 | |||
313 | usb@c5000000 { | 323 | usb@c5000000 { |
314 | status = "okay"; | 324 | status = "okay"; |
315 | nvidia,vbus-gpio = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_HIGH>; | 325 | nvidia,vbus-gpio = <&gpio TEGRA_GPIO(V, 2) GPIO_ACTIVE_HIGH>; |
@@ -411,7 +421,25 @@ | |||
411 | regulator-min-microvolt = <5000000>; | 421 | regulator-min-microvolt = <5000000>; |
412 | regulator-max-microvolt = <5000000>; | 422 | regulator-max-microvolt = <5000000>; |
413 | enable-active-high; | 423 | enable-active-high; |
414 | gpio = <&gpio 170 0>; /* PV2 */ | 424 | gpio = <&gpio TEGRA_GPIO(V, 2) 0>; |
425 | }; | ||
426 | |||
427 | pci_clk_reg: regulator@3 { | ||
428 | compatible = "regulator-fixed"; | ||
429 | reg = <3>; | ||
430 | regulator-name = "pci_clk"; | ||
431 | regulator-min-microvolt = <3300000>; | ||
432 | regulator-max-microvolt = <3300000>; | ||
433 | regulator-always-on; | ||
434 | }; | ||
435 | |||
436 | pci_vdd_reg: regulator@4 { | ||
437 | compatible = "regulator-fixed"; | ||
438 | reg = <4>; | ||
439 | regulator-name = "pci_vdd"; | ||
440 | regulator-min-microvolt = <1050000>; | ||
441 | regulator-max-microvolt = <1050000>; | ||
442 | regulator-always-on; | ||
415 | }; | 443 | }; |
416 | }; | 444 | }; |
417 | 445 | ||
diff --git a/arch/arm/boot/dts/tegra20-ventana.dts b/arch/arm/boot/dts/tegra20-ventana.dts index 7f8c28d1121f..aab872cd0530 100644 --- a/arch/arm/boot/dts/tegra20-ventana.dts +++ b/arch/arm/boot/dts/tegra20-ventana.dts | |||
@@ -494,7 +494,7 @@ | |||
494 | 494 | ||
495 | pmc { | 495 | pmc { |
496 | nvidia,invert-interrupt; | 496 | nvidia,invert-interrupt; |
497 | nvidia,suspend-mode = <2>; | 497 | nvidia,suspend-mode = <1>; |
498 | nvidia,cpu-pwr-good-time = <2000>; | 498 | nvidia,cpu-pwr-good-time = <2000>; |
499 | nvidia,cpu-pwr-off-time = <100>; | 499 | nvidia,cpu-pwr-off-time = <100>; |
500 | nvidia,core-pwr-good-time = <3845 3845>; | 500 | nvidia,core-pwr-good-time = <3845 3845>; |
diff --git a/arch/arm/boot/dts/tegra20-whistler.dts b/arch/arm/boot/dts/tegra20-whistler.dts index ab67c94db280..3899cae2eacd 100644 --- a/arch/arm/boot/dts/tegra20-whistler.dts +++ b/arch/arm/boot/dts/tegra20-whistler.dts | |||
@@ -497,7 +497,7 @@ | |||
497 | 497 | ||
498 | pmc { | 498 | pmc { |
499 | nvidia,invert-interrupt; | 499 | nvidia,invert-interrupt; |
500 | nvidia,suspend-mode = <2>; | 500 | nvidia,suspend-mode = <1>; |
501 | nvidia,cpu-pwr-good-time = <2000>; | 501 | nvidia,cpu-pwr-good-time = <2000>; |
502 | nvidia,cpu-pwr-off-time = <1000>; | 502 | nvidia,cpu-pwr-off-time = <1000>; |
503 | nvidia,core-pwr-good-time = <0 3845>; | 503 | nvidia,core-pwr-good-time = <0 3845>; |
diff --git a/arch/arm/boot/dts/tegra20.dtsi b/arch/arm/boot/dts/tegra20.dtsi index 9653fd8288d2..3add9ac252d7 100644 --- a/arch/arm/boot/dts/tegra20.dtsi +++ b/arch/arm/boot/dts/tegra20.dtsi | |||
@@ -455,6 +455,61 @@ | |||
455 | #size-cells = <0>; | 455 | #size-cells = <0>; |
456 | }; | 456 | }; |
457 | 457 | ||
458 | pcie-controller { | ||
459 | compatible = "nvidia,tegra20-pcie"; | ||
460 | device_type = "pci"; | ||
461 | reg = <0x80003000 0x00000800 /* PADS registers */ | ||
462 | 0x80003800 0x00000200 /* AFI registers */ | ||
463 | 0x90000000 0x10000000>; /* configuration space */ | ||
464 | reg-names = "pads", "afi", "cs"; | ||
465 | interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH /* controller interrupt */ | ||
466 | GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; /* MSI interrupt */ | ||
467 | interrupt-names = "intr", "msi"; | ||
468 | |||
469 | bus-range = <0x00 0xff>; | ||
470 | #address-cells = <3>; | ||
471 | #size-cells = <2>; | ||
472 | |||
473 | ranges = <0x82000000 0 0x80000000 0x80000000 0 0x00001000 /* port 0 registers */ | ||
474 | 0x82000000 0 0x80001000 0x80001000 0 0x00001000 /* port 1 registers */ | ||
475 | 0x81000000 0 0 0x82000000 0 0x00010000 /* downstream I/O */ | ||
476 | 0x82000000 0 0xa0000000 0xa0000000 0 0x08000000 /* non-prefetchable memory */ | ||
477 | 0xc2000000 0 0xa8000000 0xa8000000 0 0x18000000>; /* prefetchable memory */ | ||
478 | |||
479 | clocks = <&tegra_car TEGRA20_CLK_PEX>, | ||
480 | <&tegra_car TEGRA20_CLK_AFI>, | ||
481 | <&tegra_car TEGRA20_CLK_PCIE_XCLK>, | ||
482 | <&tegra_car TEGRA20_CLK_PLL_E>; | ||
483 | clock-names = "pex", "afi", "pcie_xclk", "pll_e"; | ||
484 | status = "disabled"; | ||
485 | |||
486 | pci@1,0 { | ||
487 | device_type = "pci"; | ||
488 | assigned-addresses = <0x82000800 0 0x80000000 0 0x1000>; | ||
489 | reg = <0x000800 0 0 0 0>; | ||
490 | status = "disabled"; | ||
491 | |||
492 | #address-cells = <3>; | ||
493 | #size-cells = <2>; | ||
494 | ranges; | ||
495 | |||
496 | nvidia,num-lanes = <2>; | ||
497 | }; | ||
498 | |||
499 | pci@2,0 { | ||
500 | device_type = "pci"; | ||
501 | assigned-addresses = <0x82001000 0 0x80001000 0 0x1000>; | ||
502 | reg = <0x001000 0 0 0 0>; | ||
503 | status = "disabled"; | ||
504 | |||
505 | #address-cells = <3>; | ||
506 | #size-cells = <2>; | ||
507 | ranges; | ||
508 | |||
509 | nvidia,num-lanes = <2>; | ||
510 | }; | ||
511 | }; | ||
512 | |||
458 | usb@c5000000 { | 513 | usb@c5000000 { |
459 | compatible = "nvidia,tegra20-ehci", "usb-ehci"; | 514 | compatible = "nvidia,tegra20-ehci", "usb-ehci"; |
460 | reg = <0xc5000000 0x4000>; | 515 | reg = <0xc5000000 0x4000>; |
diff --git a/arch/arm/boot/dts/tegra30-beaver.dts b/arch/arm/boot/dts/tegra30-beaver.dts index 87c5f7b7c271..08cad696e89f 100644 --- a/arch/arm/boot/dts/tegra30-beaver.dts +++ b/arch/arm/boot/dts/tegra30-beaver.dts | |||
@@ -10,6 +10,40 @@ | |||
10 | reg = <0x80000000 0x7ff00000>; | 10 | reg = <0x80000000 0x7ff00000>; |
11 | }; | 11 | }; |
12 | 12 | ||
13 | pcie-controller { | ||
14 | status = "okay"; | ||
15 | pex-clk-supply = <&sys_3v3_pexs_reg>; | ||
16 | vdd-supply = <&ldo1_reg>; | ||
17 | avdd-supply = <&ldo2_reg>; | ||
18 | |||
19 | pci@1,0 { | ||
20 | status = "okay"; | ||
21 | nvidia,num-lanes = <2>; | ||
22 | }; | ||
23 | |||
24 | pci@2,0 { | ||
25 | nvidia,num-lanes = <2>; | ||
26 | }; | ||
27 | |||
28 | pci@3,0 { | ||
29 | status = "okay"; | ||
30 | nvidia,num-lanes = <2>; | ||
31 | }; | ||
32 | }; | ||
33 | |||
34 | host1x { | ||
35 | hdmi { | ||
36 | status = "okay"; | ||
37 | |||
38 | vdd-supply = <&sys_3v3_reg>; | ||
39 | pll-supply = <&vio_reg>; | ||
40 | |||
41 | nvidia,hpd-gpio = | ||
42 | <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; | ||
43 | nvidia,ddc-i2c-bus = <&hdmiddc>; | ||
44 | }; | ||
45 | }; | ||
46 | |||
13 | pinmux { | 47 | pinmux { |
14 | pinctrl-names = "default"; | 48 | pinctrl-names = "default"; |
15 | pinctrl-0 = <&state_default>; | 49 | pinctrl-0 = <&state_default>; |
@@ -76,6 +110,11 @@ | |||
76 | nvidia,pull = <0>; | 110 | nvidia,pull = <0>; |
77 | nvidia,tristate = <0>; | 111 | nvidia,tristate = <0>; |
78 | }; | 112 | }; |
113 | pex_l1_prsnt_n_pdd4 { | ||
114 | nvidia,pins = "pex_l1_prsnt_n_pdd4", | ||
115 | "pex_l1_clkreq_n_pdd6"; | ||
116 | nvidia,pull = <2>; | ||
117 | }; | ||
79 | sdio3 { | 118 | sdio3 { |
80 | nvidia,pins = "drive_sdio3"; | 119 | nvidia,pins = "drive_sdio3"; |
81 | nvidia,high-speed-mode = <0>; | 120 | nvidia,high-speed-mode = <0>; |
@@ -85,6 +124,10 @@ | |||
85 | nvidia,slew-rate-rising = <1>; | 124 | nvidia,slew-rate-rising = <1>; |
86 | nvidia,slew-rate-falling = <1>; | 125 | nvidia,slew-rate-falling = <1>; |
87 | }; | 126 | }; |
127 | gpv { | ||
128 | nvidia,pins = "drive_gpv"; | ||
129 | nvidia,pull-up-strength = <16>; | ||
130 | }; | ||
88 | }; | 131 | }; |
89 | }; | 132 | }; |
90 | 133 | ||
@@ -107,7 +150,7 @@ | |||
107 | clock-frequency = <100000>; | 150 | clock-frequency = <100000>; |
108 | }; | 151 | }; |
109 | 152 | ||
110 | i2c@7000c700 { | 153 | hdmiddc: i2c@7000c700 { |
111 | status = "okay"; | 154 | status = "okay"; |
112 | clock-frequency = <100000>; | 155 | clock-frequency = <100000>; |
113 | }; | 156 | }; |
@@ -262,7 +305,7 @@ | |||
262 | pmc { | 305 | pmc { |
263 | status = "okay"; | 306 | status = "okay"; |
264 | nvidia,invert-interrupt; | 307 | nvidia,invert-interrupt; |
265 | nvidia,suspend-mode = <2>; | 308 | nvidia,suspend-mode = <1>; |
266 | nvidia,cpu-pwr-good-time = <2000>; | 309 | nvidia,cpu-pwr-good-time = <2000>; |
267 | nvidia,cpu-pwr-off-time = <200>; | 310 | nvidia,cpu-pwr-off-time = <200>; |
268 | nvidia,core-pwr-good-time = <3845 3845>; | 311 | nvidia,core-pwr-good-time = <3845 3845>; |
@@ -285,6 +328,15 @@ | |||
285 | non-removable; | 328 | non-removable; |
286 | }; | 329 | }; |
287 | 330 | ||
331 | usb@7d008000 { | ||
332 | status = "okay"; | ||
333 | }; | ||
334 | |||
335 | usb-phy@7d008000 { | ||
336 | vbus-supply = <&usb3_vbus_reg>; | ||
337 | status = "okay"; | ||
338 | }; | ||
339 | |||
288 | clocks { | 340 | clocks { |
289 | compatible = "simple-bus"; | 341 | compatible = "simple-bus"; |
290 | #address-cells = <1>; | 342 | #address-cells = <1>; |
@@ -357,7 +409,7 @@ | |||
357 | regulator-min-microvolt = <5000000>; | 409 | regulator-min-microvolt = <5000000>; |
358 | regulator-max-microvolt = <5000000>; | 410 | regulator-max-microvolt = <5000000>; |
359 | enable-active-high; | 411 | enable-active-high; |
360 | gpio = <&gpio TEGRA_GPIO(I, 4) GPIO_ACTIVE_HIGH>; | 412 | gpio = <&gpio TEGRA_GPIO(DD, 6) GPIO_ACTIVE_HIGH>; |
361 | gpio-open-drain; | 413 | gpio-open-drain; |
362 | vin-supply = <&vdd_5v_in_reg>; | 414 | vin-supply = <&vdd_5v_in_reg>; |
363 | }; | 415 | }; |
@@ -369,7 +421,7 @@ | |||
369 | regulator-min-microvolt = <5000000>; | 421 | regulator-min-microvolt = <5000000>; |
370 | regulator-max-microvolt = <5000000>; | 422 | regulator-max-microvolt = <5000000>; |
371 | enable-active-high; | 423 | enable-active-high; |
372 | gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_HIGH>; | 424 | gpio = <&gpio TEGRA_GPIO(DD, 4) GPIO_ACTIVE_HIGH>; |
373 | gpio-open-drain; | 425 | gpio-open-drain; |
374 | vin-supply = <&vdd_5v_in_reg>; | 426 | vin-supply = <&vdd_5v_in_reg>; |
375 | }; | 427 | }; |
@@ -421,7 +473,9 @@ | |||
421 | 473 | ||
422 | nvidia,audio-routing = | 474 | nvidia,audio-routing = |
423 | "Headphones", "HPOR", | 475 | "Headphones", "HPOR", |
424 | "Headphones", "HPOL"; | 476 | "Headphones", "HPOL", |
477 | "Mic Jack", "MICBIAS1", | ||
478 | "IN2P", "Mic Jack"; | ||
425 | 479 | ||
426 | nvidia,i2s-controller = <&tegra_i2s1>; | 480 | nvidia,i2s-controller = <&tegra_i2s1>; |
427 | nvidia,audio-codec = <&rt5640>; | 481 | nvidia,audio-codec = <&rt5640>; |
diff --git a/arch/arm/boot/dts/tegra30-cardhu.dtsi b/arch/arm/boot/dts/tegra30-cardhu.dtsi index f65b53d32416..e19dbf238e5c 100644 --- a/arch/arm/boot/dts/tegra30-cardhu.dtsi +++ b/arch/arm/boot/dts/tegra30-cardhu.dtsi | |||
@@ -31,6 +31,26 @@ | |||
31 | reg = <0x80000000 0x40000000>; | 31 | reg = <0x80000000 0x40000000>; |
32 | }; | 32 | }; |
33 | 33 | ||
34 | pcie-controller { | ||
35 | status = "okay"; | ||
36 | pex-clk-supply = <&pex_hvdd_3v3_reg>; | ||
37 | vdd-supply = <&ldo1_reg>; | ||
38 | avdd-supply = <&ldo2_reg>; | ||
39 | |||
40 | pci@1,0 { | ||
41 | nvidia,num-lanes = <4>; | ||
42 | }; | ||
43 | |||
44 | pci@2,0 { | ||
45 | nvidia,num-lanes = <1>; | ||
46 | }; | ||
47 | |||
48 | pci@3,0 { | ||
49 | status = "okay"; | ||
50 | nvidia,num-lanes = <1>; | ||
51 | }; | ||
52 | }; | ||
53 | |||
34 | pinmux { | 54 | pinmux { |
35 | pinctrl-names = "default"; | 55 | pinctrl-names = "default"; |
36 | pinctrl-0 = <&state_default>; | 56 | pinctrl-0 = <&state_default>; |
@@ -173,19 +193,6 @@ | |||
173 | gpio-cfg = <0xffffffff 0xffffffff 0 0xffffffff 0xffffffff>; | 193 | gpio-cfg = <0xffffffff 0xffffffff 0 0xffffffff 0xffffffff>; |
174 | }; | 194 | }; |
175 | 195 | ||
176 | tps62361 { | ||
177 | compatible = "ti,tps62361"; | ||
178 | reg = <0x60>; | ||
179 | |||
180 | regulator-name = "tps62361-vout"; | ||
181 | regulator-min-microvolt = <500000>; | ||
182 | regulator-max-microvolt = <1500000>; | ||
183 | regulator-boot-on; | ||
184 | regulator-always-on; | ||
185 | ti,vsel0-state-high; | ||
186 | ti,vsel1-state-high; | ||
187 | }; | ||
188 | |||
189 | pmic: tps65911@2d { | 196 | pmic: tps65911@2d { |
190 | compatible = "ti,tps65911"; | 197 | compatible = "ti,tps65911"; |
191 | reg = <0x2d>; | 198 | reg = <0x2d>; |
@@ -286,6 +293,26 @@ | |||
286 | }; | 293 | }; |
287 | }; | 294 | }; |
288 | }; | 295 | }; |
296 | |||
297 | nct1008 { | ||
298 | compatible = "onnn,nct1008"; | ||
299 | reg = <0x4c>; | ||
300 | interrupt-parent = <&gpio>; | ||
301 | interrupts = <TEGRA_GPIO(CC, 2) IRQ_TYPE_LEVEL_LOW>; | ||
302 | }; | ||
303 | |||
304 | tps62361 { | ||
305 | compatible = "ti,tps62361"; | ||
306 | reg = <0x60>; | ||
307 | |||
308 | regulator-name = "tps62361-vout"; | ||
309 | regulator-min-microvolt = <500000>; | ||
310 | regulator-max-microvolt = <1500000>; | ||
311 | regulator-boot-on; | ||
312 | regulator-always-on; | ||
313 | ti,vsel0-state-high; | ||
314 | ti,vsel1-state-high; | ||
315 | }; | ||
289 | }; | 316 | }; |
290 | 317 | ||
291 | spi@7000da00 { | 318 | spi@7000da00 { |
@@ -307,7 +334,7 @@ | |||
307 | pmc { | 334 | pmc { |
308 | status = "okay"; | 335 | status = "okay"; |
309 | nvidia,invert-interrupt; | 336 | nvidia,invert-interrupt; |
310 | nvidia,suspend-mode = <2>; | 337 | nvidia,suspend-mode = <1>; |
311 | nvidia,cpu-pwr-good-time = <2000>; | 338 | nvidia,cpu-pwr-good-time = <2000>; |
312 | nvidia,cpu-pwr-off-time = <200>; | 339 | nvidia,cpu-pwr-off-time = <200>; |
313 | nvidia,core-pwr-good-time = <3845 3845>; | 340 | nvidia,core-pwr-good-time = <3845 3845>; |
@@ -330,6 +357,15 @@ | |||
330 | non-removable; | 357 | non-removable; |
331 | }; | 358 | }; |
332 | 359 | ||
360 | usb@7d008000 { | ||
361 | status = "okay"; | ||
362 | }; | ||
363 | |||
364 | usb-phy@7d008000 { | ||
365 | vbus-supply = <&usb3_vbus_reg>; | ||
366 | status = "okay"; | ||
367 | }; | ||
368 | |||
333 | clocks { | 369 | clocks { |
334 | compatible = "simple-bus"; | 370 | compatible = "simple-bus"; |
335 | #address-cells = <1>; | 371 | #address-cells = <1>; |
diff --git a/arch/arm/boot/dts/tegra30.dtsi b/arch/arm/boot/dts/tegra30.dtsi index d8783f0fae63..0022c127e1d9 100644 --- a/arch/arm/boot/dts/tegra30.dtsi +++ b/arch/arm/boot/dts/tegra30.dtsi | |||
@@ -16,6 +16,76 @@ | |||
16 | serial4 = &uarte; | 16 | serial4 = &uarte; |
17 | }; | 17 | }; |
18 | 18 | ||
19 | pcie-controller { | ||
20 | compatible = "nvidia,tegra30-pcie"; | ||
21 | device_type = "pci"; | ||
22 | reg = <0x00003000 0x00000800 /* PADS registers */ | ||
23 | 0x00003800 0x00000200 /* AFI registers */ | ||
24 | 0x10000000 0x10000000>; /* configuration space */ | ||
25 | reg-names = "pads", "afi", "cs"; | ||
26 | interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH /* controller interrupt */ | ||
27 | GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; /* MSI interrupt */ | ||
28 | interrupt-names = "intr", "msi"; | ||
29 | |||
30 | bus-range = <0x00 0xff>; | ||
31 | #address-cells = <3>; | ||
32 | #size-cells = <2>; | ||
33 | |||
34 | ranges = <0x82000000 0 0x00000000 0x00000000 0 0x00001000 /* port 0 configuration space */ | ||
35 | 0x82000000 0 0x00001000 0x00001000 0 0x00001000 /* port 1 configuration space */ | ||
36 | 0x82000000 0 0x00004000 0x00004000 0 0x00001000 /* port 2 configuration space */ | ||
37 | 0x81000000 0 0 0x02000000 0 0x00010000 /* downstream I/O */ | ||
38 | 0x82000000 0 0x20000000 0x20000000 0 0x08000000 /* non-prefetchable memory */ | ||
39 | 0xc2000000 0 0x28000000 0x28000000 0 0x18000000>; /* prefetchable memory */ | ||
40 | |||
41 | clocks = <&tegra_car TEGRA30_CLK_PCIE>, | ||
42 | <&tegra_car TEGRA30_CLK_AFI>, | ||
43 | <&tegra_car TEGRA30_CLK_PCIEX>, | ||
44 | <&tegra_car TEGRA30_CLK_PLL_E>, | ||
45 | <&tegra_car TEGRA30_CLK_CML0>; | ||
46 | clock-names = "pex", "afi", "pcie_xclk", "pll_e", "cml"; | ||
47 | status = "disabled"; | ||
48 | |||
49 | pci@1,0 { | ||
50 | device_type = "pci"; | ||
51 | assigned-addresses = <0x82000800 0 0x00000000 0 0x1000>; | ||
52 | reg = <0x000800 0 0 0 0>; | ||
53 | status = "disabled"; | ||
54 | |||
55 | #address-cells = <3>; | ||
56 | #size-cells = <2>; | ||
57 | ranges; | ||
58 | |||
59 | nvidia,num-lanes = <2>; | ||
60 | }; | ||
61 | |||
62 | pci@2,0 { | ||
63 | device_type = "pci"; | ||
64 | assigned-addresses = <0x82001000 0 0x00001000 0 0x1000>; | ||
65 | reg = <0x001000 0 0 0 0>; | ||
66 | status = "disabled"; | ||
67 | |||
68 | #address-cells = <3>; | ||
69 | #size-cells = <2>; | ||
70 | ranges; | ||
71 | |||
72 | nvidia,num-lanes = <2>; | ||
73 | }; | ||
74 | |||
75 | pci@3,0 { | ||
76 | device_type = "pci"; | ||
77 | assigned-addresses = <0x82001800 0 0x00004000 0 0x1000>; | ||
78 | reg = <0x001800 0 0 0 0>; | ||
79 | status = "disabled"; | ||
80 | |||
81 | #address-cells = <3>; | ||
82 | #size-cells = <2>; | ||
83 | ranges; | ||
84 | |||
85 | nvidia,num-lanes = <2>; | ||
86 | }; | ||
87 | }; | ||
88 | |||
19 | host1x { | 89 | host1x { |
20 | compatible = "nvidia,tegra30-host1x", "simple-bus"; | 90 | compatible = "nvidia,tegra30-host1x", "simple-bus"; |
21 | reg = <0x50000000 0x00024000>; | 91 | reg = <0x50000000 0x00024000>; |
@@ -561,6 +631,92 @@ | |||
561 | status = "disabled"; | 631 | status = "disabled"; |
562 | }; | 632 | }; |
563 | 633 | ||
634 | usb@7d000000 { | ||
635 | compatible = "nvidia,tegra30-ehci", "usb-ehci"; | ||
636 | reg = <0x7d000000 0x4000>; | ||
637 | interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; | ||
638 | phy_type = "utmi"; | ||
639 | clocks = <&tegra_car TEGRA30_CLK_USBD>; | ||
640 | nvidia,needs-double-reset; | ||
641 | nvidia,phy = <&phy1>; | ||
642 | status = "disabled"; | ||
643 | }; | ||
644 | |||
645 | phy1: usb-phy@7d000000 { | ||
646 | compatible = "nvidia,tegra30-usb-phy"; | ||
647 | reg = <0x7d000000 0x4000 0x7d000000 0x4000>; | ||
648 | phy_type = "utmi"; | ||
649 | clocks = <&tegra_car TEGRA30_CLK_USBD>, | ||
650 | <&tegra_car TEGRA30_CLK_PLL_U>, | ||
651 | <&tegra_car TEGRA30_CLK_USBD>; | ||
652 | clock-names = "reg", "pll_u", "utmi-pads"; | ||
653 | nvidia,hssync-start-delay = <9>; | ||
654 | nvidia,idle-wait-delay = <17>; | ||
655 | nvidia,elastic-limit = <16>; | ||
656 | nvidia,term-range-adj = <6>; | ||
657 | nvidia,xcvr-setup = <51>; | ||
658 | nvidia.xcvr-setup-use-fuses; | ||
659 | nvidia,xcvr-lsfslew = <1>; | ||
660 | nvidia,xcvr-lsrslew = <1>; | ||
661 | nvidia,xcvr-hsslew = <32>; | ||
662 | nvidia,hssquelch-level = <2>; | ||
663 | nvidia,hsdiscon-level = <5>; | ||
664 | status = "disabled"; | ||
665 | }; | ||
666 | |||
667 | usb@7d004000 { | ||
668 | compatible = "nvidia,tegra30-ehci", "usb-ehci"; | ||
669 | reg = <0x7d004000 0x4000>; | ||
670 | interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; | ||
671 | phy_type = "ulpi"; | ||
672 | clocks = <&tegra_car TEGRA30_CLK_USB2>; | ||
673 | nvidia,phy = <&phy2>; | ||
674 | status = "disabled"; | ||
675 | }; | ||
676 | |||
677 | phy2: usb-phy@7d004000 { | ||
678 | compatible = "nvidia,tegra30-usb-phy"; | ||
679 | reg = <0x7d004000 0x4000>; | ||
680 | phy_type = "ulpi"; | ||
681 | clocks = <&tegra_car TEGRA30_CLK_USB2>, | ||
682 | <&tegra_car TEGRA30_CLK_PLL_U>, | ||
683 | <&tegra_car TEGRA30_CLK_CDEV2>; | ||
684 | clock-names = "reg", "pll_u", "ulpi-link"; | ||
685 | status = "disabled"; | ||
686 | }; | ||
687 | |||
688 | usb@7d008000 { | ||
689 | compatible = "nvidia,tegra30-ehci", "usb-ehci"; | ||
690 | reg = <0x7d008000 0x4000>; | ||
691 | interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; | ||
692 | phy_type = "utmi"; | ||
693 | clocks = <&tegra_car TEGRA30_CLK_USB3>; | ||
694 | nvidia,phy = <&phy3>; | ||
695 | status = "disabled"; | ||
696 | }; | ||
697 | |||
698 | phy3: usb-phy@7d008000 { | ||
699 | compatible = "nvidia,tegra30-usb-phy"; | ||
700 | reg = <0x7d008000 0x4000 0x7d000000 0x4000>; | ||
701 | phy_type = "utmi"; | ||
702 | clocks = <&tegra_car TEGRA30_CLK_USB3>, | ||
703 | <&tegra_car TEGRA30_CLK_PLL_U>, | ||
704 | <&tegra_car TEGRA30_CLK_USBD>; | ||
705 | clock-names = "reg", "pll_u", "utmi-pads"; | ||
706 | nvidia,hssync-start-delay = <0>; | ||
707 | nvidia,idle-wait-delay = <17>; | ||
708 | nvidia,elastic-limit = <16>; | ||
709 | nvidia,term-range-adj = <6>; | ||
710 | nvidia,xcvr-setup = <51>; | ||
711 | nvidia.xcvr-setup-use-fuses; | ||
712 | nvidia,xcvr-lsfslew = <2>; | ||
713 | nvidia,xcvr-lsrslew = <2>; | ||
714 | nvidia,xcvr-hsslew = <32>; | ||
715 | nvidia,hssquelch-level = <2>; | ||
716 | nvidia,hsdiscon-level = <5>; | ||
717 | status = "disabled"; | ||
718 | }; | ||
719 | |||
564 | cpus { | 720 | cpus { |
565 | #address-cells = <1>; | 721 | #address-cells = <1>; |
566 | #size-cells = <0>; | 722 | #size-cells = <0>; |