openwrt/target/linux/s3c24xx/patches-2.6.24/1132-fix-gta01-pmu-irq-edge...

39 lines
1.1 KiB
Diff

From f54af99850ae25da80e491b1864bb90e14c80b1f Mon Sep 17 00:00:00 2001
From: Mike Wester <mwester@dis.net>
Date: Sun, 13 Apr 2008 07:25:59 +0100
Subject: [PATCH] fix-gta01-pmu-irq-edge-lost-on-resume.patch
GTA01 -only
Restore power button functionality after resume operation
Per Werner's suggestion, run the PMU interrupt handler immediately after resume
to clear/handle any pending interrupts from that device. This appears to
resolve the dead-powerbutton-after-resume problem. This is not well-tested;
need feedback to see if there are any side-effects or other problems.
From BZ 1313
Signed-off-by: Mike Wester <mwester@dis.net>
---
drivers/i2c/chips/pcf50606.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/drivers/i2c/chips/pcf50606.c b/drivers/i2c/chips/pcf50606.c
index 6f71e6c..aa841e3 100644
--- a/drivers/i2c/chips/pcf50606.c
+++ b/drivers/i2c/chips/pcf50606.c
@@ -1957,6 +1957,9 @@ static int pcf50606_resume(struct device *dev)
mutex_unlock(&pcf->lock);
+ /* Hack to fix the gta01 power button problem on resume */
+ pcf50606_irq(0, pcf);
+
return 0;
}
#else
--
1.5.6.5