diff mbox

mmc: core: Fix setting power notify state variable for non eMMC

Message ID 1320403967-2940-1-git-send-email-girish.shivananjappa@linaro.org
State Accepted
Commit 96a85d548bf960ec8e8a0c3bca2b2e88e41549db
Headers show

Commit Message

Girish K S Nov. 4, 2011, 10:52 a.m. UTC
This patch skips the setting of the power notify state variable
for non eMMC 4.5 devices. Also fixes the problem of omap_hsmmc
noisy/broken for suspend resume reported by kevin Hilman.

cc: Chris Ball <cjb@laptop.org>
Signed-off-by: Girish K S <girish.shivananjappa@linaro.org>
---
 drivers/mmc/core/mmc.c |   10 +++++++---
 1 files changed, 7 insertions(+), 3 deletions(-)

Comments

Girish K S Nov. 4, 2011, 11:29 a.m. UTC | #1
On 4 November 2011 06:52, Girish K S <girish.shivananjappa@linaro.org> wrote:
> This patch skips the setting of the power notify state variable
> for non eMMC 4.5 devices. Also fixes the problem of omap_hsmmc
> noisy/broken for suspend resume reported by kevin Hilman.
>
> cc: Chris Ball <cjb@laptop.org>
> Signed-off-by: Girish K S <girish.shivananjappa@linaro.org>
> ---
>  drivers/mmc/core/mmc.c |   10 +++++++---
>  1 files changed, 7 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c
> index 3627044..4db73a9 100644
> --- a/drivers/mmc/core/mmc.c
> +++ b/drivers/mmc/core/mmc.c
> @@ -882,10 +882,14 @@ static int mmc_init_card(struct mmc_host *host, u32 ocr,
>                                 card->ext_csd.generic_cmd6_time);
>                if (err && err != -EBADMSG)
>                        goto free_card;
> -       }
>
> -       if (!err)
> -               card->poweroff_notify_state = MMC_POWERED_ON;
> +               /*
> +                * The err can be -EBADMSG or 0,
> +                * so check for success and update the flag
> +                */
> +               if (!err)
> +                       card->poweroff_notify_state = MMC_POWERED_ON;
> +       }
>
>        /*
>         * Activate high speed (if supported)
> --
> 1.7.4.1
>
>Hi Chris,
              this patch is based on for-linus branch.
 Regards
Girish K S
Ulf Hansson Nov. 11, 2011, 1:32 p.m. UTC | #2
Girish K S wrote:
> This patch skips the setting of the power notify state variable
> for non eMMC 4.5 devices. Also fixes the problem of omap_hsmmc
> noisy/broken for suspend resume reported by kevin Hilman.
> 
> cc: Chris Ball <cjb@laptop.org>
> Signed-off-by: Girish K S <girish.shivananjappa@linaro.org>
> ---
>  drivers/mmc/core/mmc.c |   10 +++++++---
>  1 files changed, 7 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c
> index 3627044..4db73a9 100644
> --- a/drivers/mmc/core/mmc.c
> +++ b/drivers/mmc/core/mmc.c
> @@ -882,10 +882,14 @@ static int mmc_init_card(struct mmc_host *host, u32 ocr,
>  				 card->ext_csd.generic_cmd6_time);
>  		if (err && err != -EBADMSG)
>  			goto free_card;
> -	}
>  
> -	if (!err)
> -		card->poweroff_notify_state = MMC_POWERED_ON;
> +		/*
> +		 * The err can be -EBADMSG or 0,
> +		 * so check for success and update the flag
> +		 */
> +		if (!err)
> +			card->poweroff_notify_state = MMC_POWERED_ON;
> +	}
>  
>  	/*
>  	 * Activate high speed (if supported)


I encountered similar problems as for omap_hsmmc for the mmci driver 
(although with some ST-Ericsson internal pm_runtime patches). This patch 
fixed the problem. Great!

Acked-by: Ulf Hansson <ulf.hansson@stericsson.com>
Chris Ball Nov. 12, 2011, 3:12 a.m. UTC | #3
Hi,

On Fri, Nov 11 2011, Ulf Hansson wrote:
> Girish K S wrote:
>> This patch skips the setting of the power notify state variable
>> for non eMMC 4.5 devices. Also fixes the problem of omap_hsmmc
>> noisy/broken for suspend resume reported by kevin Hilman.
>>
>> cc: Chris Ball <cjb@laptop.org>
>> Signed-off-by: Girish K S <girish.shivananjappa@linaro.org>
>> ---
>>  drivers/mmc/core/mmc.c |   10 +++++++---
>>  1 files changed, 7 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c
>> index 3627044..4db73a9 100644
>> --- a/drivers/mmc/core/mmc.c
>> +++ b/drivers/mmc/core/mmc.c
>> @@ -882,10 +882,14 @@ static int mmc_init_card(struct mmc_host *host, u32 ocr,
>>  				 card->ext_csd.generic_cmd6_time);
>>  		if (err && err != -EBADMSG)
>>  			goto free_card;
>> -	}
>>  -	if (!err)
>> -		card->poweroff_notify_state = MMC_POWERED_ON;
>> +		/*
>> +		 * The err can be -EBADMSG or 0,
>> +		 * so check for success and update the flag
>> +		 */
>> +		if (!err)
>> +			card->poweroff_notify_state = MMC_POWERED_ON;
>> +	}
>>   	/*
>>  	 * Activate high speed (if supported)
>
>
> I encountered similar problems as for omap_hsmmc for the mmci driver
> (although with some ST-Ericsson internal pm_runtime patches). This
> patch fixed the problem. Great!
>
> Acked-by: Ulf Hansson <ulf.hansson@stericsson.com>

Thanks, pushed to mmc-next for 3.2.

- Chris.
diff mbox

Patch

diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c
index 3627044..4db73a9 100644
--- a/drivers/mmc/core/mmc.c
+++ b/drivers/mmc/core/mmc.c
@@ -882,10 +882,14 @@  static int mmc_init_card(struct mmc_host *host, u32 ocr,
 				 card->ext_csd.generic_cmd6_time);
 		if (err && err != -EBADMSG)
 			goto free_card;
-	}
 
-	if (!err)
-		card->poweroff_notify_state = MMC_POWERED_ON;
+		/*
+		 * The err can be -EBADMSG or 0,
+		 * so check for success and update the flag
+		 */
+		if (!err)
+			card->poweroff_notify_state = MMC_POWERED_ON;
+	}
 
 	/*
 	 * Activate high speed (if supported)