From 8e19cbf8b8b9cb4af4f5947891fa975fa78d66c4 Mon Sep 17 00:00:00 2001 From: Roland Stigge Date: Mon, 27 Feb 2012 17:28:02 +0100 Subject: [PATCH] --- yaml --- r: 288070 b: refs/heads/master c: 94ed7830cba4dce57b18a2926b5d826bfd184bd6 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/arm/mach-lpc32xx/irq.c | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 56634de75073..433c5f20b014 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 35dd0a75d4a382e7f769dd0277732e7aa5235718 +refs/heads/master: 94ed7830cba4dce57b18a2926b5d826bfd184bd6 diff --git a/trunk/arch/arm/mach-lpc32xx/irq.c b/trunk/arch/arm/mach-lpc32xx/irq.c index d3bf9c11fd66..c74de01ab5b6 100644 --- a/trunk/arch/arm/mach-lpc32xx/irq.c +++ b/trunk/arch/arm/mach-lpc32xx/irq.c @@ -309,9 +309,18 @@ static int lpc32xx_irq_wake(struct irq_data *d, unsigned int state) if (state) eventreg |= lpc32xx_events[d->irq].mask; - else + else { eventreg &= ~lpc32xx_events[d->irq].mask; + /* + * When disabling the wakeup, clear the latched + * event + */ + __raw_writel(lpc32xx_events[d->irq].mask, + lpc32xx_events[d->irq]. + event_group->rawstat_reg); + } + __raw_writel(eventreg, lpc32xx_events[d->irq].event_group->enab_reg);