[PATCH][FOR-2.6.39.4][SHR] s3c24xx: ACK the external interrupt source when no handler is available

Thamos tigerred at gmx.de
Thu Nov 28 13:16:01 CET 2013


Hi,
great news, that somebody is working on these annoying resume bugs...
Is this patch flowing somewhere in (like shr-core-staging?), or do i
have to apply them manually and build my own kernel?
Thanks for your great work!

Thamos



Am 26.11.2013 12:22, schrieb Paul Fertser:
> The 2.6.39.4 version running on gta02 is sometimes (~0.5 - 4%) getting
> stuck on resume. The inspection showed that it constantly reenters
> s3c_irq_demux_extint8() but since all the external interrupts are
> masked at that time, no downstream handler is called. As the result,
> the corresponding SRCPND bit is never cleared and the handler reenters
> right after exiting.
> 
> Even though the cause for external interrupts being masked while
> there's a pending request present are still unclear, this patch seems
> to be doing the right thing (at least for that old kernel version). My
> device is running continious suspend/resume test for ~15 hours now
> (while it used to hang in less than 30 minutes of the same test
> before).
> 
> Thanks go to lindi- and gena2x for providing me with an openmoko debug
> board.
> 
> Signed-off-by: Paul Fertser <fercerpav at gmail.com>
> ---
>  arch/arm/plat-s3c24xx/irq.c |    5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/arch/arm/plat-s3c24xx/irq.c b/arch/arm/plat-s3c24xx/irq.c
> index 1317f04..0bcaccb 100644
> --- a/arch/arm/plat-s3c24xx/irq.c
> +++ b/arch/arm/plat-s3c24xx/irq.c
> @@ -484,6 +484,11 @@ s3c_irq_demux_extint8(unsigned int irq,
>  	eintpnd &= ~eintmsk;
>  	eintpnd &= ~0xff;	/* ignore lower irqs */
>  
> +	/* in case no IRQ is pending but we got here we still
> +	   must ack the parent or else we get an irq storm */
> +	if (!eintpnd)
> +		s3c_irq_ack(irq_get_irq_data(IRQ_EINT8t23));
> +	
>  	/* we may as well handle all the pending IRQs here */
>  
>  	while (eintpnd) {
> 


-- 
eMails sind wie Postkarten -> deshalb verschlüsseln!
GnuPG: http://www.gpg4win.de/ + Thunderbird:
https://www.mozilla.org/de/thunderbird/
 + Enigmail AddOn
Android: K9 Mail + APG



More information about the openmoko-kernel mailing list