|
@@ -16,6 +16,7 @@
|
|
|
#include <linux/io.h>
|
|
|
#include <linux/irq.h>
|
|
|
#include <linux/platform_device.h>
|
|
|
+#include <linux/pm_runtime.h>
|
|
|
#include <linux/slab.h>
|
|
|
#include <linux/mmc/host.h>
|
|
|
#include <linux/mmc/mmc.h>
|
|
@@ -58,26 +59,13 @@ int dw_mci_pltfm_register(struct platform_device *pdev,
|
|
|
}
|
|
|
EXPORT_SYMBOL_GPL(dw_mci_pltfm_register);
|
|
|
|
|
|
-#ifdef CONFIG_PM_SLEEP
|
|
|
-/*
|
|
|
- * TODO: we should probably disable the clock to the card in the suspend path.
|
|
|
- */
|
|
|
-static int dw_mci_pltfm_suspend(struct device *dev)
|
|
|
-{
|
|
|
- struct dw_mci *host = dev_get_drvdata(dev);
|
|
|
-
|
|
|
- return dw_mci_suspend(host);
|
|
|
-}
|
|
|
-
|
|
|
-static int dw_mci_pltfm_resume(struct device *dev)
|
|
|
-{
|
|
|
- struct dw_mci *host = dev_get_drvdata(dev);
|
|
|
-
|
|
|
- return dw_mci_resume(host);
|
|
|
-}
|
|
|
-#endif /* CONFIG_PM_SLEEP */
|
|
|
-
|
|
|
-SIMPLE_DEV_PM_OPS(dw_mci_pltfm_pmops, dw_mci_pltfm_suspend, dw_mci_pltfm_resume);
|
|
|
+const struct dev_pm_ops dw_mci_pltfm_pmops = {
|
|
|
+ SET_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend,
|
|
|
+ pm_runtime_force_resume)
|
|
|
+ SET_RUNTIME_PM_OPS(dw_mci_runtime_suspend,
|
|
|
+ dw_mci_runtime_resume,
|
|
|
+ NULL)
|
|
|
+};
|
|
|
EXPORT_SYMBOL_GPL(dw_mci_pltfm_pmops);
|
|
|
|
|
|
static const struct of_device_id dw_mci_pltfm_match[] = {
|