From bc25361c2c1d3aa3d6a66b777da81fa783fa0e77 Mon Sep 17 00:00:00 2001 From: Nishanth Menon Date: Mon, 8 Aug 2011 20:57:12 -0500 Subject: GPIO: OMAP: setup irq enable only after configuring interrupt in restore Setup the interrupt enable registers only after we have configured the required edge and required configurations, not before, to prevent spurious events as part of restore routine. Change-Id: I3936d3b8f9b5c12052e2e388d79558b2e134fb35 Signed-off-by: Nishanth Menon --- drivers/gpio/gpio-omap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'drivers/gpio') diff --git a/drivers/gpio/gpio-omap.c b/drivers/gpio/gpio-omap.c index fbf9727..62b756a 100644 --- a/drivers/gpio/gpio-omap.c +++ b/drivers/gpio/gpio-omap.c @@ -1441,10 +1441,6 @@ void omap_gpio_restore_context(struct gpio_bank *bank) { if(!bank->saved_context) return; - __raw_writel(bank->context.irqenable1, - bank->base + bank->regs->irqenable); - __raw_writel(bank->context.irqenable2, - bank->base + bank->regs->irqenable2); __raw_writel(bank->context.wake_en, bank->base + bank->regs->wkup_set); __raw_writel(bank->context.ctrl, bank->base + bank->regs->ctrl); @@ -1469,6 +1465,10 @@ void omap_gpio_restore_context(struct gpio_bank *bank) __raw_writel(bank->context.debounce_en, bank->base + bank->regs->debounce_en); } + __raw_writel(bank->context.irqenable1, + bank->base + bank->regs->irqenable); + __raw_writel(bank->context.irqenable2, + bank->base + bank->regs->irqenable2); bank->saved_context = 0; } #endif -- cgit v1.1