[PATCH][FOR-2.6.39.4][SHR] s3c24xx: ACK the external interrupt source when no handler is available
Martin Jansa
martin.jansa at gmail.com
Thu Nov 28 15:22:16 CET 2013
On Thu, Nov 28, 2013 at 01:16:01PM +0100, Thamos wrote:
> 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!
I plan to add both Paul's patches to next shr-core-staging, but don't
know when I'll find time to do it :/.
>
> 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
>
--
Martin 'JaMa' Jansa jabber: Martin.Jansa at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.openmoko.org/pipermail/openmoko-kernel/attachments/20131128/a4b0f49e/attachment.sig>
More information about the openmoko-kernel
mailing list