| From b940887b0d91df677ace9b35e3cafeee9b0c4ff9 Mon Sep 17 00:00:00 2001 |
| From: Ulf Hansson <ulf.hansson@linaro.org> |
| Date: Wed, 23 Oct 2013 14:57:50 +0200 |
| Subject: mmc: tmio_mmc: Convert from legacy to modern PM ops |
| |
| Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> |
| Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
| Signed-off-by: Chris Ball <chris@printf.net> |
| (cherry picked from commit c8964481d0273ef77a37ed2c627482fde3a1222c) |
| Signed-off-by: Simon Horman <horms+renesas@verge.net.au> |
| --- |
| drivers/mmc/host/tmio_mmc.c | 30 ++++++++++++++++-------------- |
| 1 file changed, 16 insertions(+), 14 deletions(-) |
| |
| diff --git a/drivers/mmc/host/tmio_mmc.c b/drivers/mmc/host/tmio_mmc.c |
| index 1900abb04236..cfad844730d8 100644 |
| --- a/drivers/mmc/host/tmio_mmc.c |
| +++ b/drivers/mmc/host/tmio_mmc.c |
| @@ -23,38 +23,37 @@ |
| |
| #include "tmio_mmc.h" |
| |
| -#ifdef CONFIG_PM |
| -static int tmio_mmc_suspend(struct platform_device *dev, pm_message_t state) |
| +#ifdef CONFIG_PM_SLEEP |
| +static int tmio_mmc_suspend(struct device *dev) |
| { |
| - const struct mfd_cell *cell = mfd_get_cell(dev); |
| + struct platform_device *pdev = to_platform_device(dev); |
| + const struct mfd_cell *cell = mfd_get_cell(pdev); |
| int ret; |
| |
| - ret = tmio_mmc_host_suspend(&dev->dev); |
| + ret = tmio_mmc_host_suspend(dev); |
| |
| /* Tell MFD core it can disable us now.*/ |
| if (!ret && cell->disable) |
| - cell->disable(dev); |
| + cell->disable(pdev); |
| |
| return ret; |
| } |
| |
| -static int tmio_mmc_resume(struct platform_device *dev) |
| +static int tmio_mmc_resume(struct device *dev) |
| { |
| - const struct mfd_cell *cell = mfd_get_cell(dev); |
| + struct platform_device *pdev = to_platform_device(dev); |
| + const struct mfd_cell *cell = mfd_get_cell(pdev); |
| int ret = 0; |
| |
| /* Tell the MFD core we are ready to be enabled */ |
| if (cell->resume) |
| - ret = cell->resume(dev); |
| + ret = cell->resume(pdev); |
| |
| if (!ret) |
| - ret = tmio_mmc_host_resume(&dev->dev); |
| + ret = tmio_mmc_host_resume(dev); |
| |
| return ret; |
| } |
| -#else |
| -#define tmio_mmc_suspend NULL |
| -#define tmio_mmc_resume NULL |
| #endif |
| |
| static int tmio_mmc_probe(struct platform_device *pdev) |
| @@ -134,15 +133,18 @@ static int tmio_mmc_remove(struct platform_device *pdev) |
| |
| /* ------------------- device registration ----------------------- */ |
| |
| +static const struct dev_pm_ops tmio_mmc_dev_pm_ops = { |
| + SET_SYSTEM_SLEEP_PM_OPS(tmio_mmc_suspend, tmio_mmc_resume) |
| +}; |
| + |
| static struct platform_driver tmio_mmc_driver = { |
| .driver = { |
| .name = "tmio-mmc", |
| .owner = THIS_MODULE, |
| + .pm = &tmio_mmc_dev_pm_ops, |
| }, |
| .probe = tmio_mmc_probe, |
| .remove = tmio_mmc_remove, |
| - .suspend = tmio_mmc_suspend, |
| - .resume = tmio_mmc_resume, |
| }; |
| |
| module_platform_driver(tmio_mmc_driver); |
| -- |
| 2.1.2 |
| |