summaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorGrant Likely <grant.likely@linaro.org>2013-09-19 23:47:37 +0200
committerGrant Likely <grant.likely@linaro.org>2013-10-29 00:48:14 +0100
commit79d9701559a9f3e9b2021fbd292f5e70ad75f686 (patch)
treebbbcc05e19c73ffe9f6a5b71c8c45c5e051c2747 /arch/arm
parentmicroblaze/pci: Drop PowerPC-ism from irq parsing (diff)
downloadlinux-79d9701559a9f3e9b2021fbd292f5e70ad75f686.tar.xz
linux-79d9701559a9f3e9b2021fbd292f5e70ad75f686.zip
of/irq: create interrupts-extended property
The standard interrupts property in device tree can only handle interrupts coming from a single interrupt parent. If a device is wired to multiple interrupt controllers, then it needs to be attached to a node with an interrupt-map property to demux the interrupt specifiers which is confusing. It would be a lot easier if there was a form of the interrupts property that allows for a separate interrupt phandle for each interrupt specifier. This patch does exactly that by creating a new interrupts-extended property which reuses the phandle+arguments pattern used by GPIOs and other core bindings. Signed-off-by: Grant Likely <grant.likely@linaro.org> Acked-by: Tony Lindgren <tony@atomide.com> Acked-by: Kumar Gala <galak@codeaurora.org> [grant.likely: removed versatile platform hunks into separate patch] Cc: Rob Herring <rob.herring@calxeda.com>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/boot/dts/testcases/tests-interrupts.dtsi16
1 files changed, 16 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/testcases/tests-interrupts.dtsi b/arch/arm/boot/dts/testcases/tests-interrupts.dtsi
index 6ecda716e9d4..560d6bf680b6 100644
--- a/arch/arm/boot/dts/testcases/tests-interrupts.dtsi
+++ b/arch/arm/boot/dts/testcases/tests-interrupts.dtsi
@@ -27,6 +27,12 @@
<4 &test_intc2 15 16>;
};
+ test_intmap1: intmap1 {
+ #interrupt-cells = <2>;
+ #address-cells = <0>;
+ interrupt-map = <1 2 &test_intc0 15>;
+ };
+
interrupts0 {
interrupt-parent = <&test_intc0>;
interrupts = <1>, <2>, <3>, <4>;
@@ -36,6 +42,16 @@
interrupt-parent = <&test_intmap0>;
interrupts = <1>, <2>, <3>, <4>;
};
+
+ interrupts-extended0 {
+ interrupts-extended = <&test_intc0 1>,
+ <&test_intc1 2 3 4>,
+ <&test_intc2 5 6>,
+ <&test_intmap0 1>,
+ <&test_intmap0 2>,
+ <&test_intmap0 3>,
+ <&test_intmap1 1 2>;
+ };
};
};
};