aboutsummaryrefslogtreecommitdiff
path: root/drivers/mmc
diff options
context:
space:
mode:
authormerge <null@invalid>2008-12-29 12:11:49 +0000
committerAndy Green <agreen@pads.home.warmcat.com>2008-12-29 12:11:49 +0000
commit4f0d7f43b8a9d35be25f520834bbb13f2dae10f3 (patch)
treec75c07e7c55a1004996754651484514e7530d38e /drivers/mmc
parent39a497b0421174c3f23ef3dffb0675a4db3aa3a0 (diff)
MERGE-via-pending-tracking-hist-this-patch-gets-the-linux-mci-
pending-tracking-hist top was this-patch-gets-the-linux-mci- / f45f6d893a0dc65a6041a2c0127e9970427a85da ... parent commitmessage: From: Balaji Rao <balajirrao@openmoko.org> This patch gets the Linux mci stack to use the voltage it negotiated before with the uSD card on resume. Without this, it always reverts to and stays at 3.3V. Signed-off-by: Balaji Rao <balajirrao@openmoko.org>
Diffstat (limited to 'drivers/mmc')
-rw-r--r--drivers/mmc/core/core.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c
index b76667e36e8..56988ff4732 100644
--- a/drivers/mmc/core/core.c
+++ b/drivers/mmc/core/core.c
@@ -496,7 +496,13 @@ void mmc_set_timing(struct mmc_host *host, unsigned int timing)
*/
static void mmc_power_up(struct mmc_host *host)
{
- int bit = fls(host->ocr_avail) - 1;
+ int bit;
+
+ /* If ocr is set, we use it */
+ if (host->ocr)
+ bit = ffs(host->ocr) - 1;
+ else
+ bit = fls(host->ocr_avail) - 1;
host->ios.vdd = bit;
if (mmc_host_is_spi(host)) {