summaryrefslogtreecommitdiff
path: root/target/linux/s3c24xx/patches-2.6.24/1285-fix-glamo-idleclock-around-suspend.patch.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/s3c24xx/patches-2.6.24/1285-fix-glamo-idleclock-around-suspend.patch.patch')
-rw-r--r--target/linux/s3c24xx/patches-2.6.24/1285-fix-glamo-idleclock-around-suspend.patch.patch80
1 files changed, 0 insertions, 80 deletions
diff --git a/target/linux/s3c24xx/patches-2.6.24/1285-fix-glamo-idleclock-around-suspend.patch.patch b/target/linux/s3c24xx/patches-2.6.24/1285-fix-glamo-idleclock-around-suspend.patch.patch
deleted file mode 100644
index 0f1c0a0266..0000000000
--- a/target/linux/s3c24xx/patches-2.6.24/1285-fix-glamo-idleclock-around-suspend.patch.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-From ca19d156400f817960efe0d14680324b2ea34171 Mon Sep 17 00:00:00 2001
-From: Andy Green <andy@openmoko.com>
-Date: Wed, 3 Sep 2008 19:39:47 +0800
-Subject: [PATCH] fix-glamo-idleclock-around-suspend.patch
-
-Possible implementation of SD Card corruption workaround reported here
-
-https://docs.openmoko.org/trac/ticket/1802#comment:5
-
-Signed-off-by: Andy Green <andy@openmoko.com>
----
- drivers/mfd/glamo/glamo-mci.c | 31 ++++++++++++++++++++++++++++++-
- 1 files changed, 30 insertions(+), 1 deletions(-)
-
-diff --git a/drivers/mfd/glamo/glamo-mci.c b/drivers/mfd/glamo/glamo-mci.c
-index 577021e..3eece08 100644
---- a/drivers/mfd/glamo/glamo-mci.c
-+++ b/drivers/mfd/glamo/glamo-mci.c
-@@ -99,6 +99,8 @@ module_param(sd_drive, int, 0644);
- static int sd_idleclk = 0; /* disallow idle clock by default */
- module_param(sd_idleclk, int, 0644);
-
-+/* used to stash real idleclk state in suspend: we force it to run in there */
-+static int suspend_sd_idleclk;
-
-
- unsigned char CRC7(u8 * pu8, int cnt)
-@@ -947,6 +949,27 @@ static int glamo_mci_suspend(struct platform_device *dev, pm_message_t state)
- struct glamo_mci_host *host = mmc_priv(mmc);
- int ret;
-
-+ /*
-+ * possible workaround for SD corruption during suspend - resume
-+ * make sure the clock was running during suspend and consequently
-+ * resume
-+ */
-+ if (host->pdata->glamo_mci_use_slow)
-+ if ((host->pdata->glamo_mci_use_slow)())
-+ __glamo_mci_fix_card_div(host, host->clk_div *
-+ sd_slow_ratio);
-+ else
-+ __glamo_mci_fix_card_div(host, host->clk_div);
-+ else
-+ __glamo_mci_fix_card_div(host, host->clk_div);
-+
-+ /* we are going to do more commands to override this in
-+ * mmc_suspend_host(), so we need to change sd_idleclk for the
-+ * duration as well
-+ */
-+ suspend_sd_idleclk = sd_idleclk;
-+ sd_idleclk = 1;
-+
- host->suspending++;
- if (host->pdata->mci_all_dependencies_resumed)
- (host->pdata->mci_suspending)(dev);
-@@ -963,6 +986,7 @@ int glamo_mci_resume(struct platform_device *dev)
- {
- struct mmc_host *mmc = platform_get_drvdata(dev);
- struct glamo_mci_host *host = mmc_priv(mmc);
-+ int ret;
-
- if (host->pdata->mci_all_dependencies_resumed)
- if (!(host->pdata->mci_all_dependencies_resumed)(dev))
-@@ -970,7 +994,12 @@ int glamo_mci_resume(struct platform_device *dev)
-
- host->suspending--;
-
-- return mmc_resume_host(mmc);
-+ ret = mmc_resume_host(mmc);
-+
-+ /* put sd_idleclk back to pre-suspend state */
-+ sd_idleclk = suspend_sd_idleclk;
-+
-+ return ret;
- }
- EXPORT_SYMBOL_GPL(glamo_mci_resume);
-
---
-1.5.6.5
-