diff options
author | mirko <mirko@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2008-12-13 01:54:56 +0000 |
---|---|---|
committer | mirko <mirko@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2008-12-13 01:54:56 +0000 |
commit | a95f9f92e2953d5829a29e95644dc4c4bc93f590 (patch) | |
tree | 01f2bf78edb2e3bb1466df9bca72e068632d0e74 /target/linux/s3c24xx/patches-2.6.26/1216-fix-scard-stop-on-resume.patch.patch | |
parent | 9fa649271dbc9c83417488203aeb1668a0238c54 (diff) |
change prefix for kernelpatchbase 2.6.26
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@13619 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/s3c24xx/patches-2.6.26/1216-fix-scard-stop-on-resume.patch.patch')
-rwxr-xr-x | target/linux/s3c24xx/patches-2.6.26/1216-fix-scard-stop-on-resume.patch.patch | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/target/linux/s3c24xx/patches-2.6.26/1216-fix-scard-stop-on-resume.patch.patch b/target/linux/s3c24xx/patches-2.6.26/1216-fix-scard-stop-on-resume.patch.patch new file mode 100755 index 0000000000..fd225c35fb --- /dev/null +++ b/target/linux/s3c24xx/patches-2.6.26/1216-fix-scard-stop-on-resume.patch.patch @@ -0,0 +1,51 @@ +From 81b94de6dbb00676ddca78219eacf41b1928b33f Mon Sep 17 00:00:00 2001 +From: Andy Green <andy@openmoko.com> +Date: Fri, 25 Jul 2008 23:06:20 +0100 +Subject: [PATCH] fix-scard-stop-on-resume.patch + Reported-by: Ville-Pekka Vainio <vpivaini@cs.helsinki.fi> + +The reporter noticed SD Card clock is running again after resume. After +looking at the code I saw I missed two tricks, this will force it off +after resume and will do better generally depending on what the last SD Card +packet was. + +Since bulk read packet is normally last action (which set the clock off even +without this) the old patch worked for normal cases. But after resume, the last +packet on the wire was not a bulk transfer and we didn't take care about the +clock then. + +Signed-off-by: Andy Green <andy@openmoko.com> +--- + drivers/mfd/glamo/glamo-mci.c | 6 +++--- + 1 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/drivers/mfd/glamo/glamo-mci.c b/drivers/mfd/glamo/glamo-mci.c +index 67bb815..93f4074 100644 +--- a/drivers/mfd/glamo/glamo-mci.c ++++ b/drivers/mfd/glamo/glamo-mci.c +@@ -619,12 +619,9 @@ done: + host->complete_what = COMPLETION_NONE; + host->mrq = NULL; + mmc_request_done(host->mmc, cmd->mrq); +- return; +- + bail: + /* stop the clock to card */ + __glamo_mci_fix_card_div(host, -1); +- return; + } + + static void glamo_mci_request(struct mmc_host *mmc, struct mmc_request *mrq) +@@ -690,6 +687,9 @@ static void glamo_mci_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) + host->real_rate = __glamo_mci_set_card_clock(host, ios->clock, &div); + host->clk_div = div; + ++ /* stop the clock to card, because we are idle until transfer */ ++ __glamo_mci_fix_card_div(host, -1); ++ + if ((ios->power_mode == MMC_POWER_ON) || + (ios->power_mode == MMC_POWER_UP)) { + dev_info(&host->pdev->dev, +-- +1.5.6.3 + |