diff options
author | Kevin Hilman <khilman@linaro.org> | 2013-10-17 19:02:36 -0400 |
---|---|---|
committer | Kevin Hilman <khilman@linaro.org> | 2013-10-17 19:02:51 -0400 |
commit | ec902c620b31de13fa5afb2803af175793a7273d (patch) | |
tree | 007c9eaec708898154167fe39e8cc1be2451d772 | |
parent | 048e5a786afd9c76f4300f263ec264319407aefd (diff) | |
parent | c71d39090eae67c324a870f3c0d26347db504705 (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/Makefile | 3 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra114-dalmore.dts | 32 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra124-venice2.dts | 27 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra124.dtsi | 149 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra30-cardhu.dtsi | 3 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra30.dtsi | 5 |
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 | ||
265 | dtb-$(CONFIG_ARCH_VERSATILE) += versatile-ab.dtb \ | 266 | dtb-$(CONFIG_ARCH_VERSATILE) += versatile-ab.dtb \ |
266 | versatile-pb.dtb | 267 | versatile-pb.dtb |
267 | dtb-$(CONFIG_ARCH_U300) += ste-u300.dtb | 268 | 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 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>, |