Re: [PATCH] mmc: reset card voltage after power off

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On Sat, Mar 05 2011, Linus Walleij wrote:
> From: Ulf Hansson <ulf.hansson@xxxxxxxxxxxxxx>
>
> At power off, reset OCR mask to be the highest possible voltage
> supported for the current mmc host.
>
> This solves the re-initialization during the power up sequence.
> The voltage may have been decreased due to the card accepts a lower
> voltage than the voltage used during the initialization sequence.
> We need to reset the voltage to by the host highest possible value
> since according to specification the initialization must always be
> done at high voltage.
>
> Reviewed-by: Jonas Aberg <jonas.aberg@xxxxxxxxxxxxxx>
> Signed-off-by: Ulf Hansson <ulf.hansson@xxxxxxxxxxxxxx>
> Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
> ---
>  drivers/mmc/core/core.c |    7 +++++++
>  1 files changed, 7 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c
> index 2521794..b9d39ec 100644
> --- a/drivers/mmc/core/core.c
> +++ b/drivers/mmc/core/core.c
> @@ -1002,6 +1002,13 @@ static void mmc_power_off(struct mmc_host *host)
>  {
>  	host->ios.clock = 0;
>  	host->ios.vdd = 0;
> +
> +	/*
> +	 * Reset ocr mask to be the highest possible voltage supported for
> +	 * this mmc host. This value will be used at next power up.
> +	 */
> +	host->ocr = 1 << (fls(host->ocr_avail) - 1);
> +
>  	if (!mmc_host_is_spi(host)) {
>  		host->ios.bus_mode = MMC_BUSMODE_OPENDRAIN;
>  		host->ios.chip_select = MMC_CS_DONTCARE;

Thanks, pushed to mmc-next for .39.

It would be good to hear more about whether you think this is a
regression, should have a stable@ tag, etc.

- Chris.
-- 
Chris Ball   <cjb@xxxxxxxxxx>   <http://printf.net/>
One Laptop Per Child
--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux