s3cmci: change to use dev_pm_ops
PATCH 21/42 s3cmci: change to use dev_pm_ops
From: Ben Dooks <[email protected]>
Move to using dev_pm_ops for suspend and resume.
Signed-off-by Ben Dooks <[email protected]>
Cc <[email protected]>
Signed-off-by Andrew Morton <[email protected]>
---
drivers/mmc/host/s3cmci.c | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-)
drivers/mmc/host/s3cmci.c renamed from drivers/mmc/host/s3cmci.c~s3cmci-change-to-use-dev_pm_ops +18 -11
@@ -1546,35 +1546,42 @@ MODULE_DEVICE_TABLE(platform, s3cmci_dri#ifdef CONFIG_PM -static int s3cmci_suspend (struct platform_device *dev,pm_message_t state) +static int s3cmci_suspend (struct device *dev) { -struct mmc_host *mmc =platform_get_drvdata (dev); +struct mmc_host *mmc =platform_get_drvdata (to_platform_device (dev)); +struct pm_message event = {PM_EVENT_SUSPEND }; -return mmc_suspend_host (mmc, state); +return mmc_suspend_host (mmc, event); } -static int s3cmci_resume (struct platform_device *dev) +static int s3cmci_resume (struct device *dev) { -struct mmc_host *mmc =platform_get_drvdata (dev); +struct mmc_host *mmc =platform_get_drvdata (to_platform_device (dev));return mmc_resume_host (mmc); } +static struct dev_pm_ops s3cmci_pm = { + .suspend = s3cmci_suspend, + .resume = s3cmci_resume, +}; + +#define s3cmci_pm_ops &s3cmci_pm#else /* CONFIG_PM */ -#define s3cmci_suspend NULL -#define s3cmci_resume NULL +#define s3cmci_pm_ops NULL#endif /* CONFIG_PM */ static struct platform_driver s3cmci_driver = { - .driver.name ="s3c-sdi" , - .driver.owner =THIS_MODULE , + .driver = { + .name ="s3c-sdi" , + .owner =THIS_MODULE , + .pm = s3cmci_pm_ops, + }, .id_table = s3cmci_driver_ids, .probe = s3cmci_probe, .remove =__devexit_p (s3cmci_remove), .shutdown = s3cmci_shutdown, - .suspend = s3cmci_suspend, - .resume = s3cmci_resume, };static int __init s3cmci_init (void )
_