summaryrefslogtreecommitdiff
path: root/target/linux/s3c24xx/patches/0120-fix-gta01-pmu-irq-edge-lost-on-resume.patch.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/s3c24xx/patches/0120-fix-gta01-pmu-irq-edge-lost-on-resume.patch.patch')
-rwxr-xr-xtarget/linux/s3c24xx/patches/0120-fix-gta01-pmu-irq-edge-lost-on-resume.patch.patch38
1 files changed, 38 insertions, 0 deletions
diff --git a/target/linux/s3c24xx/patches/0120-fix-gta01-pmu-irq-edge-lost-on-resume.patch.patch b/target/linux/s3c24xx/patches/0120-fix-gta01-pmu-irq-edge-lost-on-resume.patch.patch
new file mode 100755
index 0000000000..018115ef62
--- /dev/null
+++ b/target/linux/s3c24xx/patches/0120-fix-gta01-pmu-irq-edge-lost-on-resume.patch.patch
@@ -0,0 +1,38 @@
+From a0852d1ca05076a7f5129b57248fc72ea719ff2b Mon Sep 17 00:00:00 2001
+From: Mike Wester <mwester@dis.net>
+Date: Fri, 25 Jul 2008 23:06:06 +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.3
+