|
@@ -2760,14 +2760,13 @@ int mmc_flush_cache(struct mmc_card *card)
|
|
|
}
|
|
|
EXPORT_SYMBOL(mmc_flush_cache);
|
|
|
|
|
|
-#ifdef CONFIG_PM
|
|
|
-
|
|
|
+#ifdef CONFIG_PM_SLEEP
|
|
|
/* Do the card removal on suspend if card is assumed removeable
|
|
|
* Do that in pm notifier while userspace isn't yet frozen, so we will be able
|
|
|
to sync the card.
|
|
|
*/
|
|
|
-int mmc_pm_notify(struct notifier_block *notify_block,
|
|
|
- unsigned long mode, void *unused)
|
|
|
+static int mmc_pm_notify(struct notifier_block *notify_block,
|
|
|
+ unsigned long mode, void *unused)
|
|
|
{
|
|
|
struct mmc_host *host = container_of(
|
|
|
notify_block, struct mmc_host, pm_notify);
|
|
@@ -2814,6 +2813,17 @@ int mmc_pm_notify(struct notifier_block *notify_block,
|
|
|
|
|
|
return 0;
|
|
|
}
|
|
|
+
|
|
|
+void mmc_register_pm_notifier(struct mmc_host *host)
|
|
|
+{
|
|
|
+ host->pm_notify.notifier_call = mmc_pm_notify;
|
|
|
+ register_pm_notifier(&host->pm_notify);
|
|
|
+}
|
|
|
+
|
|
|
+void mmc_unregister_pm_notifier(struct mmc_host *host)
|
|
|
+{
|
|
|
+ unregister_pm_notifier(&host->pm_notify);
|
|
|
+}
|
|
|
#endif
|
|
|
|
|
|
/**
|