diff --git a/[refs] b/[refs] index 248a47c54a86..66abb7123758 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e56770fbc48c1517f620f9f68e3f728e74d52bf5 +refs/heads/master: 500f35648e5ebd04be00f974738a9db959a892b8 diff --git a/trunk/drivers/mmc/core/core.c b/trunk/drivers/mmc/core/core.c index d84c880fac84..e22d2b5576ec 100644 --- a/trunk/drivers/mmc/core/core.c +++ b/trunk/drivers/mmc/core/core.c @@ -687,7 +687,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)) {