summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/sysdev/mpic.c
diff options
context:
space:
mode:
authorKyle Moffett <Kyle.D.Moffett@boeing.com>2011-12-22 11:19:11 +0100
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2012-02-23 00:49:59 +0100
commit9ca163c8602681ad098910f48f89b97f0cb87c4f (patch)
treee2aa87c28be3b1253273b1a1e609b5d0e9d6feb7 /arch/powerpc/sysdev/mpic.c
parentfsl/mpic: Document and use the "big-endian" device-tree flag (diff)
downloadlinux-9ca163c8602681ad098910f48f89b97f0cb87c4f.tar.xz
linux-9ca163c8602681ad098910f48f89b97f0cb87c4f.zip
fsl/mpic: Create and document the "single-cpu-affinity" device-tree flag
The Freescale MPIC (and perhaps others in the future) is incapable of routing non-IPI interrupts to more than once CPU at a time. Currently all of the Freescale boards msut pass the MPIC_SINGLE_DEST_CPU flag to mpic_alloc(), but that information should really be present in the device-tree. Older board code can't rely on the device-tree having the property set, but newer platforms won't need it manually specified in the code. [BenH: Remove unrelated changes, folded in a different patch] Signed-off-by: Kyle Moffett <Kyle.D.Moffett@boeing.com> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/sysdev/mpic.c')
-rw-r--r--arch/powerpc/sysdev/mpic.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/powerpc/sysdev/mpic.c b/arch/powerpc/sysdev/mpic.c
index 9deec44ede83..c297a524f761 100644
--- a/arch/powerpc/sysdev/mpic.c
+++ b/arch/powerpc/sysdev/mpic.c
@@ -1187,6 +1187,8 @@ struct mpic * __init mpic_alloc(struct device_node *node,
flags |= MPIC_BIG_ENDIAN;
if (of_get_property(node, "pic-no-reset", NULL))
flags |= MPIC_NO_RESET;
+ if (of_get_property(node, "single-cpu-affinity", NULL))
+ flags |= MPIC_SINGLE_DEST_CPU;
if (of_device_is_compatible(node, "fsl,mpic"))
flags |= MPIC_FSL;