diff options
author | Kumar Gala <galak@kernel.crashing.org> | 2008-10-28 14:01:39 -0400 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2008-10-31 01:13:50 -0400 |
commit | 3c10c9c45e290022ca7d2aa1ad33a0b6ed767520 (patch) | |
tree | 002769098cd2b53aad995acac3c42f0331302588 /arch/powerpc/platforms/85xx | |
parent | f9226d572d2f8b5f564596db8c6a13e458c46191 (diff) |
powerpc/mpic: Fix regression caused by change of default IRQ affinity
The Freescale implementation of MPIC only allows a single CPU destination
for non-IPI interrupts. We add a flag to the mpic_init to distinquish
these variants of MPIC. We pull in the irq_choose_cpu from sparc64 to
select a single CPU as the destination of the interrupt.
This is to deal with the fact that the default smp affinity was
changed by commit 18404756765c713a0be4eb1082920c04822ce588 ("genirq:
Expose default irq affinity mask (take 3)") to be all CPUs.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/platforms/85xx')
-rw-r--r-- | arch/powerpc/platforms/85xx/mpc85xx_ds.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/powerpc/platforms/85xx/mpc85xx_ds.c b/arch/powerpc/platforms/85xx/mpc85xx_ds.c index 483b65cbabae..613bf8c2e30d 100644 --- a/arch/powerpc/platforms/85xx/mpc85xx_ds.c +++ b/arch/powerpc/platforms/85xx/mpc85xx_ds.c | |||
@@ -78,7 +78,8 @@ void __init mpc85xx_ds_pic_init(void) | |||
78 | 78 | ||
79 | mpic = mpic_alloc(np, r.start, | 79 | mpic = mpic_alloc(np, r.start, |
80 | MPIC_PRIMARY | MPIC_WANTS_RESET | | 80 | MPIC_PRIMARY | MPIC_WANTS_RESET | |
81 | MPIC_BIG_ENDIAN | MPIC_BROKEN_FRR_NIRQS, | 81 | MPIC_BIG_ENDIAN | MPIC_BROKEN_FRR_NIRQS | |
82 | MPIC_SINGLE_DEST_CPU, | ||
82 | 0, 256, " OpenPIC "); | 83 | 0, 256, " OpenPIC "); |
83 | BUG_ON(mpic == NULL); | 84 | BUG_ON(mpic == NULL); |
84 | of_node_put(np); | 85 | of_node_put(np); |