aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin Hilman <khilman@linaro.org>2013-10-17 19:02:36 -0400
committerKevin Hilman <khilman@linaro.org>2013-10-17 19:02:51 -0400
commitec902c620b31de13fa5afb2803af175793a7273d (patch)
tree007c9eaec708898154167fe39e8cc1be2451d772
parent048e5a786afd9c76f4300f263ec264319407aefd (diff)
parentc71d39090eae67c324a870f3c0d26347db504705 (diff)
Merge branch 'tegra/dt' into next/dt
From Stephen Warren: * tegra/dt: ARM: tegra: Use symbolic names for gr3d clocks ARM: tegra: Mark Tegra30 display controller compatible with Tegra20 ARM: tegra: add GPIO controller to tegra124.dtsi ARM: tegra: enable LP1 suspend mode for Venice2 ARM: tegra: enable Tegra RTC as default for Tegra124 ARM: tegra: add Venice2 board support ARM: tegra: Add initial device tree for Tegra124 ARM: tegra: add vcc supply for nct1008 to Cardhu ARM: tegra: add DT entry for nct1008 to Dalmore ARM: tegra: use dt-binding header for key code ARM: tegra: add palmas pincontrol to Dalmore device tree Signed-off-by: Kevin Hilman <khilman@linaro.org>
-rw-r--r--arch/arm/boot/dts/Makefile3
-rw-r--r--arch/arm/boot/dts/tegra114-dalmore.dts32
-rw-r--r--arch/arm/boot/dts/tegra124-venice2.dts27
-rw-r--r--arch/arm/boot/dts/tegra124.dtsi149
-rw-r--r--arch/arm/boot/dts/tegra30-cardhu.dtsi3
-rw-r--r--arch/arm/boot/dts/tegra30.dtsi5
6 files changed, 210 insertions, 9 deletions
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 56c7d82e5b8d..e1f8d9840a48 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -261,7 +261,8 @@ dtb-$(CONFIG_ARCH_TEGRA) += tegra20-harmony.dtb \
261 tegra30-beaver.dtb \ 261 tegra30-beaver.dtb \
262 tegra30-cardhu-a02.dtb \ 262 tegra30-cardhu-a02.dtb \
263 tegra30-cardhu-a04.dtb \ 263 tegra30-cardhu-a04.dtb \
264 tegra114-dalmore.dtb 264 tegra114-dalmore.dtb \
265 tegra124-venice2.dtb
265dtb-$(CONFIG_ARCH_VERSATILE) += versatile-ab.dtb \ 266dtb-$(CONFIG_ARCH_VERSATILE) += versatile-ab.dtb \
266 versatile-pb.dtb 267 versatile-pb.dtb
267dtb-$(CONFIG_ARCH_U300) += ste-u300.dtb 268dtb-$(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 60230288884b..cb5ec23b03a7 100644
--- a/arch/arm/boot/dts/tegra114-dalmore.dts
+++ b/arch/arm/boot/dts/tegra114-dalmore.dts
@@ -1,5 +1,6 @@
1/dts-v1/; 1/dts-v1/;
2 2
3#include <dt-bindings/input/input.h>
3#include "tegra114.dtsi" 4#include "tegra114.dtsi"
4 5
5/ { 6/ {
@@ -738,6 +739,14 @@
738 realtek,ldo1-en-gpios = 739 realtek,ldo1-en-gpios =
739 <&gpio TEGRA_GPIO(V, 3) GPIO_ACTIVE_HIGH>; 740 <&gpio TEGRA_GPIO(V, 3) GPIO_ACTIVE_HIGH>;
740 }; 741 };
742
743 temperature-sensor@4c {
744 compatible = "onnn,nct1008";
745 reg = <0x4c>;
746 vcc-supply = <&palmas_ldo6_reg>;
747 interrupt-parent = <&gpio>;
748 interrupts = <TEGRA_GPIO(O, 4) IRQ_TYPE_LEVEL_LOW>;
749 };
741 }; 750 };
742 751
743 i2c@7000d000 { 752 i2c@7000d000 {
@@ -947,7 +956,7 @@
947 regulator-max-microvolt = <1800000>; 956 regulator-max-microvolt = <1800000>;
948 }; 957 };
949 958
950 ldo6 { 959 palmas_ldo6_reg: ldo6 {
951 regulator-name = "vdd-sensor-2v85"; 960 regulator-name = "vdd-sensor-2v85";
952 regulator-min-microvolt = <2850000>; 961 regulator-min-microvolt = <2850000>;
953 regulator-max-microvolt = <2850000>; 962 regulator-max-microvolt = <2850000>;
@@ -1011,6 +1020,19 @@
1011 interrupt-parent = <&palmas>; 1020 interrupt-parent = <&palmas>;
1012 interrupts = <8 0>; 1021 interrupts = <8 0>;
1013 }; 1022 };
1023
1024 pinmux {
1025 compatible = "ti,tps65913-pinctrl";
1026 pinctrl-names = "default";
1027 pinctrl-0 = <&palmas_default>;
1028
1029 palmas_default: pinmux {
1030 pin_gpio6 {
1031 pins = "gpio6";
1032 function = "gpio";
1033 };
1034 };
1035 };
1014 }; 1036 };
1015 }; 1037 };
1016 1038
@@ -1081,26 +1103,26 @@
1081 home { 1103 home {
1082 label = "Home"; 1104 label = "Home";
1083 gpios = <&gpio TEGRA_GPIO(I, 5) GPIO_ACTIVE_LOW>; 1105 gpios = <&gpio TEGRA_GPIO(I, 5) GPIO_ACTIVE_LOW>;
1084 linux,code = <102>; /* KEY_HOME */ 1106 linux,code = <KEY_HOME>;
1085 }; 1107 };
1086 1108
1087 power { 1109 power {
1088 label = "Power"; 1110 label = "Power";
1089 gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; 1111 gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>;
1090 linux,code = <116>; /* KEY_POWER */ 1112 linux,code = <KEY_POWER>;
1091 gpio-key,wakeup; 1113 gpio-key,wakeup;
1092 }; 1114 };
1093 1115
1094 volume_down { 1116 volume_down {
1095 label = "Volume Down"; 1117 label = "Volume Down";
1096 gpios = <&gpio TEGRA_GPIO(R, 1) GPIO_ACTIVE_LOW>; 1118 gpios = <&gpio TEGRA_GPIO(R, 1) GPIO_ACTIVE_LOW>;
1097 linux,code = <114>; /* KEY_VOLUMEDOWN */ 1119 linux,code = <KEY_VOLUMEDOWN>;
1098 }; 1120 };
1099 1121
1100 volume_up { 1122 volume_up {
1101 label = "Volume Up"; 1123 label = "Volume Up";
1102 gpios = <&gpio TEGRA_GPIO(R, 2) GPIO_ACTIVE_LOW>; 1124 gpios = <&gpio TEGRA_GPIO(R, 2) GPIO_ACTIVE_LOW>;
1103 linux,code = <115>; /* KEY_VOLUMEUP */ 1125 linux,code = <KEY_VOLUMEUP>;
1104 }; 1126 };
1105 }; 1127 };
1106 1128
diff --git a/arch/arm/boot/dts/tegra124-venice2.dts b/arch/arm/boot/dts/tegra124-venice2.dts
new file mode 100644
index 000000000000..431d67a2b413
--- /dev/null
+++ b/arch/arm/boot/dts/tegra124-venice2.dts
@@ -0,0 +1,27 @@
1/dts-v1/;
2
3#include "tegra124.dtsi"
4
5/ {
6 model = "NVIDIA Tegra124 Venice2";
7 compatible = "nvidia,venice2", "nvidia,tegra124";
8
9 memory {
10 reg = <0x80000000 0x80000000>;
11 };
12
13 serial@70006000 {
14 status = "okay";
15 };
16
17 pmc@7000e400 {
18 nvidia,invert-interrupt;
19 nvidia,suspend-mode = <1>;
20 nvidia,cpu-pwr-good-time = <500>;
21 nvidia,cpu-pwr-off-time = <300>;
22 nvidia,core-pwr-good-time = <641 3845>;
23 nvidia,core-pwr-off-time = <61036>;
24 nvidia,core-power-req-active-high;
25 nvidia,sys-clock-req-active-high;
26 };
27};
diff --git a/arch/arm/boot/dts/tegra124.dtsi b/arch/arm/boot/dts/tegra124.dtsi
new file mode 100644
index 000000000000..b7413004ee77
--- /dev/null
+++ b/arch/arm/boot/dts/tegra124.dtsi
@@ -0,0 +1,149 @@
1#include <dt-bindings/gpio/tegra-gpio.h>
2#include <dt-bindings/interrupt-controller/arm-gic.h>
3
4#include "skeleton.dtsi"
5
6/ {
7 compatible = "nvidia,tegra124";
8 interrupt-parent = <&gic>;
9
10 gic: interrupt-controller@50041000 {
11 compatible = "arm,cortex-a15-gic";
12 #interrupt-cells = <3>;
13 interrupt-controller;
14 reg = <0x50041000 0x1000>,
15 <0x50042000 0x1000>,
16 <0x50044000 0x2000>,
17 <0x50046000 0x2000>;
18 interrupts = <GIC_PPI 9
19 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
20 };
21
22 timer@60005000 {
23 compatible = "nvidia,tegra124-timer", "nvidia,tegra20-timer";
24 reg = <0x60005000 0x400>;
25 interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
26 <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
27 <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>,
28 <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>,
29 <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>,
30 <GIC_SPI 122 IRQ_TYPE_LEVEL_HIGH>;
31 };
32
33 gpio: gpio@6000d000 {
34 compatible = "nvidia,tegra124-gpio", "nvidia,tegra30-gpio";
35 reg = <0x6000d000 0x1000>;
36 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>,
37 <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
38 <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,
39 <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
40 <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>,
41 <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>,
42 <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>,
43 <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
44 #gpio-cells = <2>;
45 gpio-controller;
46 #interrupt-cells = <2>;
47 interrupt-controller;
48 };
49
50 /*
51 * There are two serial driver i.e. 8250 based simple serial
52 * driver and APB DMA based serial driver for higher baudrate
53 * and performace. To enable the 8250 based driver, the compatible
54 * is "nvidia,tegra124-uart", "nvidia,tegra20-uart" and to enable
55 * the APB DMA based serial driver, the comptible is
56 * "nvidia,tegra124-hsuart", "nvidia,tegra30-hsuart".
57 */
58 serial@70006000 {
59 compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
60 reg = <0x70006000 0x40>;
61 reg-shift = <2>;
62 interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
63 status = "disabled";
64 };
65
66 serial@70006040 {
67 compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
68 reg = <0x70006040 0x40>;
69 reg-shift = <2>;
70 interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
71 status = "disabled";
72 };
73
74 serial@70006200 {
75 compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
76 reg = <0x70006200 0x40>;
77 reg-shift = <2>;
78 interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>;
79 status = "disabled";
80 };
81
82 serial@70006300 {
83 compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
84 reg = <0x70006300 0x40>;
85 reg-shift = <2>;
86 interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>;
87 status = "disabled";
88 };
89
90 serial@70006400 {
91 compatible = "nvidia,tegra124-uart", "nvidia,tegra20-uart";
92 reg = <0x70006400 0x40>;
93 reg-shift = <2>;
94 interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>;
95 status = "disabled";
96 };
97
98 rtc@7000e000 {
99 compatible = "nvidia,tegra124-rtc", "nvidia,tegra20-rtc";
100 reg = <0x7000e000 0x100>;
101 interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
102 };
103
104 pmc@7000e400 {
105 compatible = "nvidia,tegra124-pmc";
106 reg = <0x7000e400 0x400>;
107 };
108
109 cpus {
110 #address-cells = <1>;
111 #size-cells = <0>;
112
113 cpu@0 {
114 device_type = "cpu";
115 compatible = "arm,cortex-a15";
116 reg = <0>;
117 };
118
119 cpu@1 {
120 device_type = "cpu";
121 compatible = "arm,cortex-a15";
122 reg = <1>;
123 };
124
125 cpu@2 {
126 device_type = "cpu";
127 compatible = "arm,cortex-a15";
128 reg = <2>;
129 };
130
131 cpu@3 {
132 device_type = "cpu";
133 compatible = "arm,cortex-a15";
134 reg = <3>;
135 };
136 };
137
138 timer {
139 compatible = "arm,armv7-timer";
140 interrupts = <GIC_PPI 13
141 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
142 <GIC_PPI 14
143 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
144 <GIC_PPI 11
145 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
146 <GIC_PPI 10
147 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
148 };
149};
diff --git a/arch/arm/boot/dts/tegra30-cardhu.dtsi b/arch/arm/boot/dts/tegra30-cardhu.dtsi
index e19dbf238e5c..5ea7dfa4d9fa 100644
--- a/arch/arm/boot/dts/tegra30-cardhu.dtsi
+++ b/arch/arm/boot/dts/tegra30-cardhu.dtsi
@@ -294,9 +294,10 @@
294 }; 294 };
295 }; 295 };
296 296
297 nct1008 { 297 temperature-sensor@4c {
298 compatible = "onnn,nct1008"; 298 compatible = "onnn,nct1008";
299 reg = <0x4c>; 299 reg = <0x4c>;
300 vcc-supply = <&sys_3v3_reg>;
300 interrupt-parent = <&gpio>; 301 interrupt-parent = <&gpio>;
301 interrupts = <TEGRA_GPIO(CC, 2) IRQ_TYPE_LEVEL_LOW>; 302 interrupts = <TEGRA_GPIO(CC, 2) IRQ_TYPE_LEVEL_LOW>;
302 }; 303 };
diff --git a/arch/arm/boot/dts/tegra30.dtsi b/arch/arm/boot/dts/tegra30.dtsi
index 0022c127e1d9..2bd55cfd88ad 100644
--- a/arch/arm/boot/dts/tegra30.dtsi
+++ b/arch/arm/boot/dts/tegra30.dtsi
@@ -136,12 +136,13 @@
136 gr3d { 136 gr3d {
137 compatible = "nvidia,tegra30-gr3d"; 137 compatible = "nvidia,tegra30-gr3d";
138 reg = <0x54180000 0x00040000>; 138 reg = <0x54180000 0x00040000>;
139 clocks = <&tegra_car 24 &tegra_car 98>; 139 clocks = <&tegra_car TEGRA30_CLK_GR3D
140 &tegra_car TEGRA30_CLK_GR3D2>;
140 clock-names = "3d", "3d2"; 141 clock-names = "3d", "3d2";
141 }; 142 };
142 143
143 dc@54200000 { 144 dc@54200000 {
144 compatible = "nvidia,tegra30-dc"; 145 compatible = "nvidia,tegra30-dc", "nvidia,tegra20-dc";
145 reg = <0x54200000 0x00040000>; 146 reg = <0x54200000 0x00040000>;
146 interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 147 interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
147 clocks = <&tegra_car TEGRA30_CLK_DISP1>, 148 clocks = <&tegra_car TEGRA30_CLK_DISP1>,