diff options
author | Segher Boessenkool <segher@kernel.crashing.org> | 2006-07-08 02:37:20 +0200 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2006-07-28 02:53:16 +0200 |
commit | 96278d21000568a9261f016e8b2569a95a2d4c9e (patch) | |
tree | 0dc0614f2268cdc3453fbaccba384ff0e06358f9 /arch/powerpc | |
parent | [POWERPC] Fix new interrupt code (MPIC endianness) (diff) | |
download | linux-96278d21000568a9261f016e8b2569a95a2d4c9e.tar.xz linux-96278d21000568a9261f016e8b2569a95a2d4c9e.zip |
[POWERPC] Fix new interrupt code (MPIC detection)
As the code comment already says, the Maple device-tree is incorrect here;
make the Linux code detect the correct thing, too.
Signed-off-by: Segher Boessenkool <segher@kernel.crashing.org>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc')
-rw-r--r-- | arch/powerpc/platforms/maple/setup.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/arch/powerpc/platforms/maple/setup.c b/arch/powerpc/platforms/maple/setup.c index 2ecea3b21c7c..57567dfb9819 100644 --- a/arch/powerpc/platforms/maple/setup.c +++ b/arch/powerpc/platforms/maple/setup.c @@ -221,10 +221,17 @@ static void __init maple_init_IRQ(void) * in Maple device-tree where the type of the controller is * open-pic and not interrupt-controller */ - for_each_node_by_type(np, "open-pic") { - mpic_node = np; - break; - } + + for_each_node_by_type(np, "interrupt-controller") + if (device_is_compatible(np, "open-pic")) { + mpic_node = np; + break; + } + if (mpic_node == NULL) + for_each_node_by_type(np, "open-pic") { + mpic_node = np; + break; + } if (mpic_node == NULL) { printk(KERN_ERR "Failed to locate the MPIC interrupt controller\n"); |