Re: [PATCH 1/2] mmc: dw_mmc: Check return value of regulator_enable

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

 



Hi, Sachin

Your patch is right. I want to use the mmc_regulator_set_ocr() into core.c.
Then I think we can remove the regulator_enable/disable in suspend/resume.
how about this? If you have any opinion, let me know.

Anyway, this patch looks good to me. Thanks for your effort.

Acked-by: Jaehoon Chung <jh80.chung@xxxxxxxxxxx>

Best Regards,
Jaehoon Chung

On 03/28/2013 01:25 PM, Sachin Kamat wrote:
> regulator_enable() is declared with __must_check attribute.
> Hence check the return value to ensure that the regulator is enabled.
> Fixes the following warning:
> drivers/mmc/host/dw_mmc.c:2461:19: warning:
> ignoring return value of ‘regulator_enable’, declared with attribute
> warn_unused_result [-Wunused-result]
> drivers/mmc/host/dw_mmc.c: In function ‘dw_mci_init_slot’:
> drivers/mmc/host/dw_mmc.c:1994:19: warning:
> ignoring return value of ‘regulator_enable’, declared with attribute
> warn_unused_result [-Wunused-result]
> 
> Signed-off-by: Sachin Kamat <sachin.kamat@xxxxxxxxxx>
> ---
>  drivers/mmc/host/dw_mmc.c |   20 ++++++++++++++++----
>  1 files changed, 16 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c
> index a443820..1ba09d0 100644
> --- a/drivers/mmc/host/dw_mmc.c
> +++ b/drivers/mmc/host/dw_mmc.c
> @@ -1990,8 +1990,14 @@ static int dw_mci_init_slot(struct dw_mci *host, unsigned int id)
>  	if (IS_ERR(host->vmmc)) {
>  		pr_info("%s: no vmmc regulator found\n", mmc_hostname(mmc));
>  		host->vmmc = NULL;
> -	} else
> -		regulator_enable(host->vmmc);
> +	} else {
> +		ret = regulator_enable(host->vmmc);
> +		if (ret != 0) {
> +			dev_err(host->dev,
> +				"failed to enable regulator: %d\n", ret);
> +			goto err_setup_bus;
> +		}
> +	}
>  
>  	if (dw_mci_get_cd(mmc))
>  		set_bit(DW_MMC_CARD_PRESENT, &slot->flags);
> @@ -2457,8 +2463,14 @@ int dw_mci_resume(struct dw_mci *host)
>  {
>  	int i, ret;
>  
> -	if (host->vmmc)
> -		regulator_enable(host->vmmc);
> +	if (host->vmmc) {
> +		ret = regulator_enable(host->vmmc);
> +		if (ret != 0) {
> +			dev_err(host->dev,
> +				"failed to enable regulator: %d\n", ret);
> +			return ret;
> +		}
> +	}
>  
>  	if (!mci_wait_reset(host->dev, host)) {
>  		ret = -ENODEV;
> 

--
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