mmc: dw_mmc: fixed wrong regulator_enable in suspend/resume
Jaehoon Chung [Wed, 11 May 2011 06:52:39 +0000 (15:52 +0900)]
regulator_enable() was incorrectly placed in the suspend function
instead of the resume function.

Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Will Newton <will.newton@imgtec.com>
Signed-off-by: Chris Ball <cjb@laptop.org>

drivers/mmc/host/dw_mmc.c

index 87e1f57..66dcddb 100644 (file)
@@ -1769,9 +1769,6 @@ static int dw_mci_suspend(struct platform_device *pdev, pm_message_t mesg)
        int i, ret;
        struct dw_mci *host = platform_get_drvdata(pdev);
 
-       if (host->vmmc)
-               regulator_enable(host->vmmc);
-
        for (i = 0; i < host->num_slots; i++) {
                struct dw_mci_slot *slot = host->slot[i];
                if (!slot)
@@ -1798,6 +1795,9 @@ static int dw_mci_resume(struct platform_device *pdev)
        int i, ret;
        struct dw_mci *host = platform_get_drvdata(pdev);
 
+       if (host->vmmc)
+               regulator_enable(host->vmmc);
+
        if (host->dma_ops->init)
                host->dma_ops->init(host);