diff options
author | Marc Zyngier <marc.zyngier@arm.com> | 2015-03-11 11:43:01 -0400 |
---|---|---|
committer | Jason Cooper <jason@lakedaemon.net> | 2015-03-14 20:40:46 -0400 |
commit | 870c81a41f7074a99599be7f10ce5aab43c9f0c4 (patch) | |
tree | 2932c94dde62f99ce6eebc8b5d3b739c738d6d72 | |
parent | e9479e0e832b7e59bffcebfae9953759b2c195c4 (diff) |
ARM: tegra: update DTs to expose legacy interrupt controller
Describe the legacy interrupt controller in every tegra DTSI files,
and make it the parent of most interrupts.
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Link: https://lkml.kernel.org/r/1426088583-15097-5-git-send-email-marc.zyngier@arm.com
Signed-off-by: Jason Cooper <jason@lakedaemon.net>
-rw-r--r-- | arch/arm/boot/dts/tegra114.dtsi | 16 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra124.dtsi | 16 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra20.dtsi | 15 | ||||
-rw-r--r-- | arch/arm/boot/dts/tegra30.dtsi | 16 |
4 files changed, 59 insertions, 4 deletions
diff --git a/arch/arm/boot/dts/tegra114.dtsi b/arch/arm/boot/dts/tegra114.dtsi index 4296b5398bf5..f58a3d9d5f13 100644 --- a/arch/arm/boot/dts/tegra114.dtsi +++ b/arch/arm/boot/dts/tegra114.dtsi | |||
@@ -8,7 +8,7 @@ | |||
8 | 8 | ||
9 | / { | 9 | / { |
10 | compatible = "nvidia,tegra114"; | 10 | compatible = "nvidia,tegra114"; |
11 | interrupt-parent = <&gic>; | 11 | interrupt-parent = <&lic>; |
12 | 12 | ||
13 | host1x@50000000 { | 13 | host1x@50000000 { |
14 | compatible = "nvidia,tegra114-host1x", "simple-bus"; | 14 | compatible = "nvidia,tegra114-host1x", "simple-bus"; |
@@ -134,6 +134,19 @@ | |||
134 | <0x50046000 0x2000>; | 134 | <0x50046000 0x2000>; |
135 | interrupts = <GIC_PPI 9 | 135 | interrupts = <GIC_PPI 9 |
136 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; | 136 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; |
137 | interrupt-parent = <&gic>; | ||
138 | }; | ||
139 | |||
140 | lic: interrupt-controller@60004000 { | ||
141 | compatible = "nvidia,tegra114-ictlr", "nvidia,tegra30-ictlr"; | ||
142 | reg = <0x60004000 0x100>, | ||
143 | <0x60004100 0x50>, | ||
144 | <0x60004200 0x50>, | ||
145 | <0x60004300 0x50>, | ||
146 | <0x60004400 0x50>; | ||
147 | interrupt-controller; | ||
148 | #interrupt-cells = <3>; | ||
149 | interrupt-parent = <&gic>; | ||
137 | }; | 150 | }; |
138 | 151 | ||
139 | timer@60005000 { | 152 | timer@60005000 { |
@@ -766,5 +779,6 @@ | |||
766 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, | 779 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, |
767 | <GIC_PPI 10 | 780 | <GIC_PPI 10 |
768 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; | 781 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; |
782 | interrupt-parent = <&gic>; | ||
769 | }; | 783 | }; |
770 | }; | 784 | }; |
diff --git a/arch/arm/boot/dts/tegra124.dtsi b/arch/arm/boot/dts/tegra124.dtsi index 4be06c6ea0c8..db85695aa7aa 100644 --- a/arch/arm/boot/dts/tegra124.dtsi +++ b/arch/arm/boot/dts/tegra124.dtsi | |||
@@ -10,7 +10,7 @@ | |||
10 | 10 | ||
11 | / { | 11 | / { |
12 | compatible = "nvidia,tegra124"; | 12 | compatible = "nvidia,tegra124"; |
13 | interrupt-parent = <&gic>; | 13 | interrupt-parent = <&lic>; |
14 | #address-cells = <2>; | 14 | #address-cells = <2>; |
15 | #size-cells = <2>; | 15 | #size-cells = <2>; |
16 | 16 | ||
@@ -173,6 +173,7 @@ | |||
173 | <0x0 0x50046000 0x0 0x2000>; | 173 | <0x0 0x50046000 0x0 0x2000>; |
174 | interrupts = <GIC_PPI 9 | 174 | interrupts = <GIC_PPI 9 |
175 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; | 175 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; |
176 | interrupt-parent = <&gic>; | ||
176 | }; | 177 | }; |
177 | 178 | ||
178 | gpu@0,57000000 { | 179 | gpu@0,57000000 { |
@@ -190,6 +191,18 @@ | |||
190 | status = "disabled"; | 191 | status = "disabled"; |
191 | }; | 192 | }; |
192 | 193 | ||
194 | lic: interrupt-controller@60004000 { | ||
195 | compatible = "nvidia,tegra124-ictlr", "nvidia,tegra30-ictlr"; | ||
196 | reg = <0x0 0x60004000 0x0 0x100>, | ||
197 | <0x0 0x60004100 0x0 0x100>, | ||
198 | <0x0 0x60004200 0x0 0x100>, | ||
199 | <0x0 0x60004300 0x0 0x100>, | ||
200 | <0x0 0x60004400 0x0 0x100>; | ||
201 | interrupt-controller; | ||
202 | #interrupt-cells = <3>; | ||
203 | interrupt-parent = <&gic>; | ||
204 | }; | ||
205 | |||
193 | timer@0,60005000 { | 206 | timer@0,60005000 { |
194 | compatible = "nvidia,tegra124-timer", "nvidia,tegra20-timer"; | 207 | compatible = "nvidia,tegra124-timer", "nvidia,tegra20-timer"; |
195 | reg = <0x0 0x60005000 0x0 0x400>; | 208 | reg = <0x0 0x60005000 0x0 0x400>; |
@@ -955,5 +968,6 @@ | |||
955 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, | 968 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, |
956 | <GIC_PPI 10 | 969 | <GIC_PPI 10 |
957 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; | 970 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; |
971 | interrupt-parent = <&gic>; | ||
958 | }; | 972 | }; |
959 | }; | 973 | }; |
diff --git a/arch/arm/boot/dts/tegra20.dtsi b/arch/arm/boot/dts/tegra20.dtsi index e5527f742696..adf6b048d0bb 100644 --- a/arch/arm/boot/dts/tegra20.dtsi +++ b/arch/arm/boot/dts/tegra20.dtsi | |||
@@ -7,7 +7,7 @@ | |||
7 | 7 | ||
8 | / { | 8 | / { |
9 | compatible = "nvidia,tegra20"; | 9 | compatible = "nvidia,tegra20"; |
10 | interrupt-parent = <&intc>; | 10 | interrupt-parent = <&lic>; |
11 | 11 | ||
12 | host1x@50000000 { | 12 | host1x@50000000 { |
13 | compatible = "nvidia,tegra20-host1x", "simple-bus"; | 13 | compatible = "nvidia,tegra20-host1x", "simple-bus"; |
@@ -142,6 +142,7 @@ | |||
142 | 142 | ||
143 | timer@50040600 { | 143 | timer@50040600 { |
144 | compatible = "arm,cortex-a9-twd-timer"; | 144 | compatible = "arm,cortex-a9-twd-timer"; |
145 | interrupt-parent = <&intc>; | ||
145 | reg = <0x50040600 0x20>; | 146 | reg = <0x50040600 0x20>; |
146 | interrupts = <GIC_PPI 13 | 147 | interrupts = <GIC_PPI 13 |
147 | (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>; | 148 | (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>; |
@@ -154,6 +155,7 @@ | |||
154 | 0x50040100 0x0100>; | 155 | 0x50040100 0x0100>; |
155 | interrupt-controller; | 156 | interrupt-controller; |
156 | #interrupt-cells = <3>; | 157 | #interrupt-cells = <3>; |
158 | interrupt-parent = <&intc>; | ||
157 | }; | 159 | }; |
158 | 160 | ||
159 | cache-controller@50043000 { | 161 | cache-controller@50043000 { |
@@ -165,6 +167,17 @@ | |||
165 | cache-level = <2>; | 167 | cache-level = <2>; |
166 | }; | 168 | }; |
167 | 169 | ||
170 | lic: interrupt-controller@60004000 { | ||
171 | compatible = "nvidia,tegra20-ictlr"; | ||
172 | reg = <0x60004000 0x100>, | ||
173 | <0x60004100 0x50>, | ||
174 | <0x60004200 0x50>, | ||
175 | <0x60004300 0x50>; | ||
176 | interrupt-controller; | ||
177 | #interrupt-cells = <3>; | ||
178 | interrupt-parent = <&intc>; | ||
179 | }; | ||
180 | |||
168 | timer@60005000 { | 181 | timer@60005000 { |
169 | compatible = "nvidia,tegra20-timer"; | 182 | compatible = "nvidia,tegra20-timer"; |
170 | reg = <0x60005000 0x60>; | 183 | reg = <0x60005000 0x60>; |
diff --git a/arch/arm/boot/dts/tegra30.dtsi b/arch/arm/boot/dts/tegra30.dtsi index db4810df142c..60e205a0f63d 100644 --- a/arch/arm/boot/dts/tegra30.dtsi +++ b/arch/arm/boot/dts/tegra30.dtsi | |||
@@ -8,7 +8,7 @@ | |||
8 | 8 | ||
9 | / { | 9 | / { |
10 | compatible = "nvidia,tegra30"; | 10 | compatible = "nvidia,tegra30"; |
11 | interrupt-parent = <&intc>; | 11 | interrupt-parent = <&lic>; |
12 | 12 | ||
13 | pcie-controller@00003000 { | 13 | pcie-controller@00003000 { |
14 | compatible = "nvidia,tegra30-pcie"; | 14 | compatible = "nvidia,tegra30-pcie"; |
@@ -228,6 +228,7 @@ | |||
228 | timer@50040600 { | 228 | timer@50040600 { |
229 | compatible = "arm,cortex-a9-twd-timer"; | 229 | compatible = "arm,cortex-a9-twd-timer"; |
230 | reg = <0x50040600 0x20>; | 230 | reg = <0x50040600 0x20>; |
231 | interrupt-parent = <&intc>; | ||
231 | interrupts = <GIC_PPI 13 | 232 | interrupts = <GIC_PPI 13 |
232 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; | 233 | (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; |
233 | clocks = <&tegra_car TEGRA30_CLK_TWD>; | 234 | clocks = <&tegra_car TEGRA30_CLK_TWD>; |
@@ -239,6 +240,7 @@ | |||
239 | 0x50040100 0x0100>; | 240 | 0x50040100 0x0100>; |
240 | interrupt-controller; | 241 | interrupt-controller; |
241 | #interrupt-cells = <3>; | 242 | #interrupt-cells = <3>; |
243 | interrupt-parent = <&intc>; | ||
242 | }; | 244 | }; |
243 | 245 | ||
244 | cache-controller@50043000 { | 246 | cache-controller@50043000 { |
@@ -250,6 +252,18 @@ | |||
250 | cache-level = <2>; | 252 | cache-level = <2>; |
251 | }; | 253 | }; |
252 | 254 | ||
255 | lic: interrupt-controller@60004000 { | ||
256 | compatible = "nvidia,tegra30-ictlr"; | ||
257 | reg = <0x60004000 0x100>, | ||
258 | <0x60004100 0x50>, | ||
259 | <0x60004200 0x50>, | ||
260 | <0x60004300 0x50>, | ||
261 | <0x60004400 0x50>; | ||
262 | interrupt-controller; | ||
263 | #interrupt-cells = <3>; | ||
264 | interrupt-parent = <&intc>; | ||
265 | }; | ||
266 | |||
253 | timer@60005000 { | 267 | timer@60005000 { |
254 | compatible = "nvidia,tegra30-timer", "nvidia,tegra20-timer"; | 268 | compatible = "nvidia,tegra30-timer", "nvidia,tegra20-timer"; |
255 | reg = <0x60005000 0x400>; | 269 | reg = <0x60005000 0x400>; |