aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/s3c24xx/patches-2.6.24/1159-Fixup-hang-on-resume-caused-by-the-s3c2410-touch-scr.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/s3c24xx/patches-2.6.24/1159-Fixup-hang-on-resume-caused-by-the-s3c2410-touch-scr.patch')
-rw-r--r--target/linux/s3c24xx/patches-2.6.24/1159-Fixup-hang-on-resume-caused-by-the-s3c2410-touch-scr.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/target/linux/s3c24xx/patches-2.6.24/1159-Fixup-hang-on-resume-caused-by-the-s3c2410-touch-scr.patch b/target/linux/s3c24xx/patches-2.6.24/1159-Fixup-hang-on-resume-caused-by-the-s3c2410-touch-scr.patch
new file mode 100644
index 0000000000..2a53a95e58
--- /dev/null
+++ b/target/linux/s3c24xx/patches-2.6.24/1159-Fixup-hang-on-resume-caused-by-the-s3c2410-touch-scr.patch
@@ -0,0 +1,37 @@
+From 7b7d70785f1b3c1421d56ee8140578fea3b90f9c Mon Sep 17 00:00:00 2001
+From: Holger Freyther <zecke@openmoko.org>
+Date: Thu, 15 May 2008 21:47:56 +0100
+Subject: [PATCH] Fixup hang on resume caused by the s3c2410 touch screen driver
+
+From dc6d335b467646d802a21ea6b925ee97e83e07be Mon Sep 17 00:00:00 2001
+From: Holger Freyther <zecke@openmoko.org>
+Date: Thu, 15 May 2008 01:16:23 +0200
+Subject: [PATCH] Do not use msleep in the resume path of s3c2410_ts as it
+might lockup
+
+For some reason msleep might set the only task running into a suspended
+state and no timer will ever wake it up. Use mdelay to avoid this. I was not
+able to understand the reasoning of sleeping after enabling the clock. So we
+might just remove the msleep/mdelay at all and be fine.
+
+Signed-Off-By: Holger Freyther <zecke@openmoko.org>
+---
+ drivers/input/touchscreen/s3c2410_ts.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/drivers/input/touchscreen/s3c2410_ts.c b/drivers/input/touchscreen/s3c2410_ts.c
+index 68071c2..6d395ca 100644
+--- a/drivers/input/touchscreen/s3c2410_ts.c
++++ b/drivers/input/touchscreen/s3c2410_ts.c
+@@ -356,7 +356,7 @@ static int s3c2410ts_resume(struct platform_device *pdev)
+ ( struct s3c2410_ts_mach_info *)pdev->dev.platform_data;
+
+ clk_enable(adc_clock);
+- msleep(1);
++ mdelay(1);
+
+ enable_irq(IRQ_ADC);
+ enable_irq(IRQ_TC);
+--
+1.5.6.5
+