[PATCH V2] arm: mvebu: Improve the SMP support of the interrupt controller

Jason Cooper jason at lakedaemon.net
Wed Jan 9 20:44:29 EST 2013


On Mon, Jan 07, 2013 at 09:48:13PM +0100, Gregory CLEMENT wrote:
> On 01/07/2013 06:51 PM, Jason Cooper wrote:
> > On Wed, Dec 05, 2012 at 09:43:23PM +0100, Gregory CLEMENT wrote:
> >> This patch makes the interrupt controller driver more SMP aware for
> >> the Armada XP SoCs. It adds the support for the per-CPU irq. It also
> >> adds the implementation for the set_affinity hook.
> >>
> >> Patch initialy wrote by Yehuda Yitschak and reworked by Gregory
> >> CLEMENT.
> >>
> >> Signed-off-by: Yehuda Yitschak <yehuday at marvell.com>
> >> Signed-off-by: Gregory CLEMENT <gregory.clement at free-electrons.com>
> >> ---
> >>  arch/arm/boot/dts/armada-xp.dtsi        |    2 +-
> >>  arch/arm/mach-mvebu/irq-armada-370-xp.c |   52 +++++++++++++++++++++++++++++++
> >>  2 files changed, 53 insertions(+), 1 deletion(-)
> > 
> > Applied to mvebu/boards
> 
> Hi Jason,
> thanks for taking this patch. Unfortunately it won't be enough. Indeed
> after speaking with Marvell engineers we realized that the MPIC didn't
> work as we expected. As it is written in the following patch: the MPIC,
> unlike the GIC, allows several CPUs to acknowledge the same global
> interrupt.
> 
> I joined the patch to this email, you can apply it on top of your
> mvebu/boards or you can squash it with the previous patch.
> 
> Thanks,
> 
> Gregory

> From e3d36240832be914034bb3fb55dcf65c5a9f01df Mon Sep 17 00:00:00 2001
> From: Yehuda Yitschak <yehuday at marvell.com>
> Date: Thu, 27 Dec 2012 13:03:36 +0200
> Subject: [PATCH] arm: mvebu: Fix interrupt handling in SMP mode
> 
> The Multi Processor interrupt Controller (MPIC), unlike the GIC,
> allows several CPUs to acknowledge the same global interrupt.
> 
> This patch introduces changes to avoid this situation by forbidding
> multi-CPU interrupt affinity. This is done by setting the default
> interrupt affinity to the boot CPU and rejecting the affinity requests
> to more than one CPU.
> 
> Signed-off-by: Yehuda Yitschak <yehuday at marvell.com>
> Acked-by: Gregory CLEMENT <gregory.clement at free-electrons.com>
> ---
>  arch/arm/mach-mvebu/irq-armada-370-xp.c |   26 +++++++++++++++++++++++---
>  1 file changed, 23 insertions(+), 3 deletions(-)

Applied to mvebu/boards

thx,

Jason.



More information about the linux-arm-kernel mailing list