Subject: Re: [patch 1/2] PS3: Clear SPU Class 0 interrupts in handler

From: Arnd Bergmann <[email-masked]>
Date: Wed, 5 Sep 2007 00:50:30 +0200

On Tuesday 04 September 2007, Geoff Levand wrote:
> From: Masato Noguchi <[email-masked]>
> 
> Fix a bug that causes the PS3 to hang on the SPU Class 0 interrupt.
> 
> The Cell BE Architecture spec states that the SPU MFC Class 0 interrupt
> is delivered as a pulse.  The current spu interrupt handler assumes this
> behavior and does not clear the interrupt status.
> 
> The PS3 hypervisor visualizes all SPU interrupts as level, and on return
> from the interrupt handler the hypervisor will deliver a new virtual
> interrupt for any unmasked interrupts which for which the status has not
> been cleared.  This fix clears the interrupt status in the interrupt
> handler.

Right, we have this one in the sdk3.0/2.6.22-arnd2 kernel since I pulled
in all of the ps3-linux tree, so it was already part of our testing,
and the explanation makes sense, so we should certainly have it
upstream.

Jeremy, please add this to your patch queue.

> Signed-off-by: Masato Noguchi <[email-masked]>
> Signed-off-by: Geoff Levand <[email-masked]>

Acked-by: Arnd Bergmann <[email-masked]>