diff options
Diffstat (limited to 'target/linux/s3c24xx/patches-2.6.24/1032-pcf50633-suspend-hacks.patch.patch')
-rw-r--r-- | target/linux/s3c24xx/patches-2.6.24/1032-pcf50633-suspend-hacks.patch.patch | 45 |
1 files changed, 0 insertions, 45 deletions
diff --git a/target/linux/s3c24xx/patches-2.6.24/1032-pcf50633-suspend-hacks.patch.patch b/target/linux/s3c24xx/patches-2.6.24/1032-pcf50633-suspend-hacks.patch.patch deleted file mode 100644 index 4c38899..0000000 --- a/target/linux/s3c24xx/patches-2.6.24/1032-pcf50633-suspend-hacks.patch.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 56b25d1ddc3662594f9344bac89f08bcf993cc61 Mon Sep 17 00:00:00 2001 -From: mokopatches <mokopatches@openmoko.org> -Date: Fri, 4 Apr 2008 11:34:44 +0100 -Subject: [PATCH] pcf50633-suspend-hacks.patch - ---- - drivers/i2c/chips/pcf50633.c | 22 ++++++++++++++++++++-- - 1 files changed, 20 insertions(+), 2 deletions(-) - -diff --git a/drivers/i2c/chips/pcf50633.c b/drivers/i2c/chips/pcf50633.c -index 5488084..0cf5e53 100644 ---- a/drivers/i2c/chips/pcf50633.c -+++ b/drivers/i2c/chips/pcf50633.c -@@ -567,8 +567,26 @@ static void pcf50633_work(struct work_struct *work) - */ - ret = i2c_smbus_read_i2c_block_data(&pcf->client, PCF50633_REG_INT1, 5, - pcfirq); -- if (ret != 5) -- DEBUGP("Oh crap PMU IRQ register read failed %d\n", ret); -+ if (ret != 5) { -+ DEBUGP("Oh crap PMU IRQ register read failed -- " -+ "retrying later %d\n", ret); -+ /* -+ * this situation can happen during resume, just defer -+ * handling the interrupt until enough I2C is up we can -+ * actually talk to the PMU. We can't just ignore this -+ * because we are on a falling edge interrupt and our -+ * PMU interrupt source does not clear until we read these -+ * interrupt source registers. -+ */ -+ if (!schedule_work(&pcf->work) && !pcf->working) -+ dev_dbg(&pcf->client.dev, "work item may be lost\n"); -+ -+ /* we don't put the device here, hold it for next time */ -+ mutex_unlock(&pcf->working_lock); -+ /* don't spew, delaying whatever else is happening */ -+ msleep(1); -+ return; -+ } - - if (!pcf->coldplug_done) { - DEBUGP("PMU Coldplug init\n"); --- -1.5.6.5 - |