mmc: core: Fix setting power notify state variable for non-eMMC
authorGirish K S <girish.shivananjappa@linaro.org>
Fri, 4 Nov 2011 10:52:47 +0000 (16:22 +0530)
committerChris Ball <cjb@laptop.org>
Sat, 10 Dec 2011 21:18:36 +0000 (16:18 -0500)
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.

Signed-off-by: Girish K S <girish.shivananjappa@linaro.org>
Acked-by: Ulf Hansson <ulf.hansson@stericsson.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
drivers/mmc/core/mmc.c

index dbf421a6279c702d91baeede5bb5f1e55dcb6fcd..90de9ba36d2fe294c6fadd6f7b4abf6bf99fcbab 100644 (file)
@@ -883,10 +883,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)