diff mbox

[1/4] PM: Drop the SET_PM_RUNTIME_PM_OPS() macro

Message ID 3484329.phAPviVnbd@vostro.rjw.lan
State Not Applicable
Headers show

Commit Message

Rafael J. Wysocki Nov. 27, 2014, 12:38 a.m. UTC
From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

The SET_PM_RUNTIME_PM_OPS() and SET_RUNTIME_PM_OPS() macros are
identical except that one of them is not empty for CONFIG_PM set,
while the other one is not empty for CONFIG_PM_RUNTIME set,
respectively.

However, after commit b2b49ccbdd54 (PM: Kconfig: Set PM_RUNTIME if
PM_SLEEP is selected) PM_RUNTIME is always set if PM is set, so one
of these macros is now redundant.

For this reason, drop SET_PM_RUNTIME_PM_OPS() and replace it with
SET_RUNTIME_PM_OPS() everywhere.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
---
 drivers/amba/bus.c                |    2 +-
 drivers/dma/ste_dma40.c           |    2 +-
 drivers/gpio/gpio-zynq.c          |    2 +-
 drivers/i2c/busses/i2c-hix5hd2.c  |    2 +-
 drivers/i2c/busses/i2c-nomadik.c  |    2 +-
 drivers/mmc/host/mmci.c           |    2 +-
 drivers/mmc/host/sh_mobile_sdhi.c |    2 +-
 drivers/mmc/host/tmio_mmc.c       |    2 +-
 drivers/spi/spi-pl022.c           |    2 +-
 include/linux/pm.h                |   11 +----------
 10 files changed, 10 insertions(+), 19 deletions(-)


--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Ulf Hansson Dec. 3, 2014, 2:15 p.m. UTC | #1
On 27 November 2014 at 01:38, Rafael J. Wysocki <rjw@rjwysocki.net> wrote:
> From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
>
> The SET_PM_RUNTIME_PM_OPS() and SET_RUNTIME_PM_OPS() macros are
> identical except that one of them is not empty for CONFIG_PM set,
> while the other one is not empty for CONFIG_PM_RUNTIME set,
> respectively.
>
> However, after commit b2b49ccbdd54 (PM: Kconfig: Set PM_RUNTIME if
> PM_SLEEP is selected) PM_RUNTIME is always set if PM is set, so one
> of these macros is now redundant.
>
> For this reason, drop SET_PM_RUNTIME_PM_OPS() and replace it with
> SET_RUNTIME_PM_OPS() everywhere.

Hi Rafael,

Apparently, I have queued an mmc patch in my mmc tree, which means one
mmc driver starts using the SET_PM_RUNTIME_PM_OPS macro. It should
cause a build error in linux-next with @subject patch.

I have shared that patch through an immutable branch, I have also
checked potential conflicts and it shouldn't be any problems to pull
that in to your tree. Then you can fix $subject patch by also
converting the mmc driver to use SET_RUNTIME_PM_OPS macro.

The branch is available at:
git://git.linaro.org/people/ulf.hansson/mmc.git mmc_for_linux_pm

Kind regards
Uffe

>
> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> ---
>  drivers/amba/bus.c                |    2 +-
>  drivers/dma/ste_dma40.c           |    2 +-
>  drivers/gpio/gpio-zynq.c          |    2 +-
>  drivers/i2c/busses/i2c-hix5hd2.c  |    2 +-
>  drivers/i2c/busses/i2c-nomadik.c  |    2 +-
>  drivers/mmc/host/mmci.c           |    2 +-
>  drivers/mmc/host/sh_mobile_sdhi.c |    2 +-
>  drivers/mmc/host/tmio_mmc.c       |    2 +-
>  drivers/spi/spi-pl022.c           |    2 +-
>  include/linux/pm.h                |   11 +----------
>  10 files changed, 10 insertions(+), 19 deletions(-)
>
> Index: linux-pm/drivers/amba/bus.c
> ===================================================================
> --- linux-pm.orig/drivers/amba/bus.c
> +++ linux-pm/drivers/amba/bus.c
> @@ -124,7 +124,7 @@ static const struct dev_pm_ops amba_pm =
>         .thaw           = pm_generic_thaw,
>         .poweroff       = pm_generic_poweroff,
>         .restore        = pm_generic_restore,
> -       SET_PM_RUNTIME_PM_OPS(
> +       SET_RUNTIME_PM_OPS(
>                 amba_pm_runtime_suspend,
>                 amba_pm_runtime_resume,
>                 NULL
> Index: linux-pm/drivers/dma/ste_dma40.c
> ===================================================================
> --- linux-pm.orig/drivers/dma/ste_dma40.c
> +++ linux-pm/drivers/dma/ste_dma40.c
> @@ -3051,7 +3051,7 @@ static int dma40_runtime_resume(struct d
>
>  static const struct dev_pm_ops dma40_pm_ops = {
>         SET_LATE_SYSTEM_SLEEP_PM_OPS(dma40_suspend, dma40_resume)
> -       SET_PM_RUNTIME_PM_OPS(dma40_runtime_suspend,
> +       SET_RUNTIME_PM_OPS(dma40_runtime_suspend,
>                                 dma40_runtime_resume,
>                                 NULL)
>  };
> Index: linux-pm/drivers/gpio/gpio-zynq.c
> ===================================================================
> --- linux-pm.orig/drivers/gpio/gpio-zynq.c
> +++ linux-pm/drivers/gpio/gpio-zynq.c
> @@ -578,7 +578,7 @@ static void zynq_gpio_free(struct gpio_c
>
>  static const struct dev_pm_ops zynq_gpio_dev_pm_ops = {
>         SET_SYSTEM_SLEEP_PM_OPS(zynq_gpio_suspend, zynq_gpio_resume)
> -       SET_PM_RUNTIME_PM_OPS(zynq_gpio_runtime_suspend,
> +       SET_RUNTIME_PM_OPS(zynq_gpio_runtime_suspend,
>                         zynq_gpio_runtime_resume, NULL)
>  };
>
> Index: linux-pm/drivers/i2c/busses/i2c-hix5hd2.c
> ===================================================================
> --- linux-pm.orig/drivers/i2c/busses/i2c-hix5hd2.c
> +++ linux-pm/drivers/i2c/busses/i2c-hix5hd2.c
> @@ -528,7 +528,7 @@ static int hix5hd2_i2c_runtime_resume(st
>  #endif
>
>  static const struct dev_pm_ops hix5hd2_i2c_pm_ops = {
> -       SET_PM_RUNTIME_PM_OPS(hix5hd2_i2c_runtime_suspend,
> +       SET_RUNTIME_PM_OPS(hix5hd2_i2c_runtime_suspend,
>                               hix5hd2_i2c_runtime_resume,
>                               NULL)
>  };
> Index: linux-pm/drivers/i2c/busses/i2c-nomadik.c
> ===================================================================
> --- linux-pm.orig/drivers/i2c/busses/i2c-nomadik.c
> +++ linux-pm/drivers/i2c/busses/i2c-nomadik.c
> @@ -932,7 +932,7 @@ static int nmk_i2c_runtime_resume(struct
>
>  static const struct dev_pm_ops nmk_i2c_pm = {
>         SET_LATE_SYSTEM_SLEEP_PM_OPS(nmk_i2c_suspend_late, nmk_i2c_resume_early)
> -       SET_PM_RUNTIME_PM_OPS(nmk_i2c_runtime_suspend,
> +       SET_RUNTIME_PM_OPS(nmk_i2c_runtime_suspend,
>                         nmk_i2c_runtime_resume,
>                         NULL)
>  };
> Index: linux-pm/drivers/mmc/host/mmci.c
> ===================================================================
> --- linux-pm.orig/drivers/mmc/host/mmci.c
> +++ linux-pm/drivers/mmc/host/mmci.c
> @@ -1843,7 +1843,7 @@ static int mmci_runtime_resume(struct de
>  static const struct dev_pm_ops mmci_dev_pm_ops = {
>         SET_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend,
>                                 pm_runtime_force_resume)
> -       SET_PM_RUNTIME_PM_OPS(mmci_runtime_suspend, mmci_runtime_resume, NULL)
> +       SET_RUNTIME_PM_OPS(mmci_runtime_suspend, mmci_runtime_resume, NULL)
>  };
>
>  static struct amba_id mmci_ids[] = {
> Index: linux-pm/drivers/mmc/host/sh_mobile_sdhi.c
> ===================================================================
> --- linux-pm.orig/drivers/mmc/host/sh_mobile_sdhi.c
> +++ linux-pm/drivers/mmc/host/sh_mobile_sdhi.c
> @@ -375,7 +375,7 @@ static int sh_mobile_sdhi_remove(struct
>  static const struct dev_pm_ops tmio_mmc_dev_pm_ops = {
>         SET_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend,
>                         pm_runtime_force_resume)
> -       SET_PM_RUNTIME_PM_OPS(tmio_mmc_host_runtime_suspend,
> +       SET_RUNTIME_PM_OPS(tmio_mmc_host_runtime_suspend,
>                         tmio_mmc_host_runtime_resume,
>                         NULL)
>  };
> Index: linux-pm/drivers/mmc/host/tmio_mmc.c
> ===================================================================
> --- linux-pm.orig/drivers/mmc/host/tmio_mmc.c
> +++ linux-pm/drivers/mmc/host/tmio_mmc.c
> @@ -135,7 +135,7 @@ static int tmio_mmc_remove(struct platfo
>
>  static const struct dev_pm_ops tmio_mmc_dev_pm_ops = {
>         SET_SYSTEM_SLEEP_PM_OPS(tmio_mmc_suspend, tmio_mmc_resume)
> -       SET_PM_RUNTIME_PM_OPS(tmio_mmc_host_runtime_suspend,
> +       SET_RUNTIME_PM_OPS(tmio_mmc_host_runtime_suspend,
>                         tmio_mmc_host_runtime_resume,
>                         NULL)
>  };
> Index: linux-pm/drivers/spi/spi-pl022.c
> ===================================================================
> --- linux-pm.orig/drivers/spi/spi-pl022.c
> +++ linux-pm/drivers/spi/spi-pl022.c
> @@ -2377,7 +2377,7 @@ static int pl022_runtime_resume(struct d
>
>  static const struct dev_pm_ops pl022_dev_pm_ops = {
>         SET_SYSTEM_SLEEP_PM_OPS(pl022_suspend, pl022_resume)
> -       SET_PM_RUNTIME_PM_OPS(pl022_runtime_suspend, pl022_runtime_resume, NULL)
> +       SET_RUNTIME_PM_OPS(pl022_runtime_suspend, pl022_runtime_resume, NULL)
>  };
>
>  static struct vendor_data vendor_arm = {
> Index: linux-pm/include/linux/pm.h
> ===================================================================
> --- linux-pm.orig/include/linux/pm.h
> +++ linux-pm/include/linux/pm.h
> @@ -342,7 +342,7 @@ struct dev_pm_ops {
>  #define SET_LATE_SYSTEM_SLEEP_PM_OPS(suspend_fn, resume_fn)
>  #endif
>
> -#ifdef CONFIG_PM_RUNTIME
> +#ifdef CONFIG_PM
>  #define SET_RUNTIME_PM_OPS(suspend_fn, resume_fn, idle_fn) \
>         .runtime_suspend = suspend_fn, \
>         .runtime_resume = resume_fn, \
> @@ -351,15 +351,6 @@ struct dev_pm_ops {
>  #define SET_RUNTIME_PM_OPS(suspend_fn, resume_fn, idle_fn)
>  #endif
>
> -#ifdef CONFIG_PM
> -#define SET_PM_RUNTIME_PM_OPS(suspend_fn, resume_fn, idle_fn) \
> -       .runtime_suspend = suspend_fn, \
> -       .runtime_resume = resume_fn, \
> -       .runtime_idle = idle_fn,
> -#else
> -#define SET_PM_RUNTIME_PM_OPS(suspend_fn, resume_fn, idle_fn)
> -#endif
> -
>  /*
>   * Use this if you want to use the same suspend and resume callbacks for suspend
>   * to RAM and hibernation.
>
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Rafael J. Wysocki Dec. 3, 2014, 10:51 p.m. UTC | #2
On Wednesday, December 03, 2014 03:15:49 PM Ulf Hansson wrote:
> On 27 November 2014 at 01:38, Rafael J. Wysocki <rjw@rjwysocki.net> wrote:
> > From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> >
> > The SET_PM_RUNTIME_PM_OPS() and SET_RUNTIME_PM_OPS() macros are
> > identical except that one of them is not empty for CONFIG_PM set,
> > while the other one is not empty for CONFIG_PM_RUNTIME set,
> > respectively.
> >
> > However, after commit b2b49ccbdd54 (PM: Kconfig: Set PM_RUNTIME if
> > PM_SLEEP is selected) PM_RUNTIME is always set if PM is set, so one
> > of these macros is now redundant.
> >
> > For this reason, drop SET_PM_RUNTIME_PM_OPS() and replace it with
> > SET_RUNTIME_PM_OPS() everywhere.
> 
> Hi Rafael,
> 
> Apparently, I have queued an mmc patch in my mmc tree, which means one
> mmc driver starts using the SET_PM_RUNTIME_PM_OPS macro. It should
> cause a build error in linux-next with @subject patch.
> 
> I have shared that patch through an immutable branch, I have also
> checked potential conflicts and it shouldn't be any problems to pull
> that in to your tree. Then you can fix $subject patch by also
> converting the mmc driver to use SET_RUNTIME_PM_OPS macro.
> 
> The branch is available at:
> git://git.linaro.org/people/ulf.hansson/mmc.git mmc_for_linux_pm

Thanks for letting me know!

What about adding the following line to the $subject patch instead:

#define SET_PM_RUNTIME_PM_OPS	SET_RUNTIME_PM_OPS

and fixing things up when all has been merged?
Ulf Hansson Dec. 4, 2014, 10:04 a.m. UTC | #3
On 3 December 2014 at 23:51, Rafael J. Wysocki <rjw@rjwysocki.net> wrote:
> On Wednesday, December 03, 2014 03:15:49 PM Ulf Hansson wrote:
>> On 27 November 2014 at 01:38, Rafael J. Wysocki <rjw@rjwysocki.net> wrote:
>> > From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
>> >
>> > The SET_PM_RUNTIME_PM_OPS() and SET_RUNTIME_PM_OPS() macros are
>> > identical except that one of them is not empty for CONFIG_PM set,
>> > while the other one is not empty for CONFIG_PM_RUNTIME set,
>> > respectively.
>> >
>> > However, after commit b2b49ccbdd54 (PM: Kconfig: Set PM_RUNTIME if
>> > PM_SLEEP is selected) PM_RUNTIME is always set if PM is set, so one
>> > of these macros is now redundant.
>> >
>> > For this reason, drop SET_PM_RUNTIME_PM_OPS() and replace it with
>> > SET_RUNTIME_PM_OPS() everywhere.
>>
>> Hi Rafael,
>>
>> Apparently, I have queued an mmc patch in my mmc tree, which means one
>> mmc driver starts using the SET_PM_RUNTIME_PM_OPS macro. It should
>> cause a build error in linux-next with @subject patch.
>>
>> I have shared that patch through an immutable branch, I have also
>> checked potential conflicts and it shouldn't be any problems to pull
>> that in to your tree. Then you can fix $subject patch by also
>> converting the mmc driver to use SET_RUNTIME_PM_OPS macro.
>>
>> The branch is available at:
>> git://git.linaro.org/people/ulf.hansson/mmc.git mmc_for_linux_pm
>
> Thanks for letting me know!
>
> What about adding the following line to the $subject patch instead:
>
> #define SET_PM_RUNTIME_PM_OPS   SET_RUNTIME_PM_OPS
>
> and fixing things up when all has been merged?

That's an option.

On the other hand we will have a window of new users of
SET_PM_RUNTIME_PM_OPS, during the next release cycle. Or are you
saying that we should send fixes for the rc which takes care of the
removal of it?

Kind regards
Uffe

>
>
> --
> I speak only for myself.
> Rafael J. Wysocki, Intel Open Source Technology Center.
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Rafael J. Wysocki Dec. 4, 2014, 9:48 p.m. UTC | #4
On Thursday, December 04, 2014 11:04:20 AM Ulf Hansson wrote:
> On 3 December 2014 at 23:51, Rafael J. Wysocki <rjw@rjwysocki.net> wrote:
> > On Wednesday, December 03, 2014 03:15:49 PM Ulf Hansson wrote:
> >> On 27 November 2014 at 01:38, Rafael J. Wysocki <rjw@rjwysocki.net> wrote:
> >> > From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> >> >
> >> > The SET_PM_RUNTIME_PM_OPS() and SET_RUNTIME_PM_OPS() macros are
> >> > identical except that one of them is not empty for CONFIG_PM set,
> >> > while the other one is not empty for CONFIG_PM_RUNTIME set,
> >> > respectively.
> >> >
> >> > However, after commit b2b49ccbdd54 (PM: Kconfig: Set PM_RUNTIME if
> >> > PM_SLEEP is selected) PM_RUNTIME is always set if PM is set, so one
> >> > of these macros is now redundant.
> >> >
> >> > For this reason, drop SET_PM_RUNTIME_PM_OPS() and replace it with
> >> > SET_RUNTIME_PM_OPS() everywhere.
> >>
> >> Hi Rafael,
> >>
> >> Apparently, I have queued an mmc patch in my mmc tree, which means one
> >> mmc driver starts using the SET_PM_RUNTIME_PM_OPS macro. It should
> >> cause a build error in linux-next with @subject patch.
> >>
> >> I have shared that patch through an immutable branch, I have also
> >> checked potential conflicts and it shouldn't be any problems to pull
> >> that in to your tree. Then you can fix $subject patch by also
> >> converting the mmc driver to use SET_RUNTIME_PM_OPS macro.
> >>
> >> The branch is available at:
> >> git://git.linaro.org/people/ulf.hansson/mmc.git mmc_for_linux_pm
> >
> > Thanks for letting me know!
> >
> > What about adding the following line to the $subject patch instead:
> >
> > #define SET_PM_RUNTIME_PM_OPS   SET_RUNTIME_PM_OPS
> >
> > and fixing things up when all has been merged?
> 
> That's an option.
> 
> On the other hand we will have a window of new users of
> SET_PM_RUNTIME_PM_OPS, during the next release cycle. Or are you
> saying that we should send fixes for the rc which takes care of the
> removal of it?

That is my plan.

It is quite usual for new users of stuff being reworked to appear at the
same time and that can always be addressed by doing a second round of
replacements after the merge window.
diff mbox

Patch

Index: linux-pm/drivers/amba/bus.c
===================================================================
--- linux-pm.orig/drivers/amba/bus.c
+++ linux-pm/drivers/amba/bus.c
@@ -124,7 +124,7 @@  static const struct dev_pm_ops amba_pm =
 	.thaw		= pm_generic_thaw,
 	.poweroff	= pm_generic_poweroff,
 	.restore	= pm_generic_restore,
-	SET_PM_RUNTIME_PM_OPS(
+	SET_RUNTIME_PM_OPS(
 		amba_pm_runtime_suspend,
 		amba_pm_runtime_resume,
 		NULL
Index: linux-pm/drivers/dma/ste_dma40.c
===================================================================
--- linux-pm.orig/drivers/dma/ste_dma40.c
+++ linux-pm/drivers/dma/ste_dma40.c
@@ -3051,7 +3051,7 @@  static int dma40_runtime_resume(struct d
 
 static const struct dev_pm_ops dma40_pm_ops = {
 	SET_LATE_SYSTEM_SLEEP_PM_OPS(dma40_suspend, dma40_resume)
-	SET_PM_RUNTIME_PM_OPS(dma40_runtime_suspend,
+	SET_RUNTIME_PM_OPS(dma40_runtime_suspend,
 				dma40_runtime_resume,
 				NULL)
 };
Index: linux-pm/drivers/gpio/gpio-zynq.c
===================================================================
--- linux-pm.orig/drivers/gpio/gpio-zynq.c
+++ linux-pm/drivers/gpio/gpio-zynq.c
@@ -578,7 +578,7 @@  static void zynq_gpio_free(struct gpio_c
 
 static const struct dev_pm_ops zynq_gpio_dev_pm_ops = {
 	SET_SYSTEM_SLEEP_PM_OPS(zynq_gpio_suspend, zynq_gpio_resume)
-	SET_PM_RUNTIME_PM_OPS(zynq_gpio_runtime_suspend,
+	SET_RUNTIME_PM_OPS(zynq_gpio_runtime_suspend,
 			zynq_gpio_runtime_resume, NULL)
 };
 
Index: linux-pm/drivers/i2c/busses/i2c-hix5hd2.c
===================================================================
--- linux-pm.orig/drivers/i2c/busses/i2c-hix5hd2.c
+++ linux-pm/drivers/i2c/busses/i2c-hix5hd2.c
@@ -528,7 +528,7 @@  static int hix5hd2_i2c_runtime_resume(st
 #endif
 
 static const struct dev_pm_ops hix5hd2_i2c_pm_ops = {
-	SET_PM_RUNTIME_PM_OPS(hix5hd2_i2c_runtime_suspend,
+	SET_RUNTIME_PM_OPS(hix5hd2_i2c_runtime_suspend,
 			      hix5hd2_i2c_runtime_resume,
 			      NULL)
 };
Index: linux-pm/drivers/i2c/busses/i2c-nomadik.c
===================================================================
--- linux-pm.orig/drivers/i2c/busses/i2c-nomadik.c
+++ linux-pm/drivers/i2c/busses/i2c-nomadik.c
@@ -932,7 +932,7 @@  static int nmk_i2c_runtime_resume(struct
 
 static const struct dev_pm_ops nmk_i2c_pm = {
 	SET_LATE_SYSTEM_SLEEP_PM_OPS(nmk_i2c_suspend_late, nmk_i2c_resume_early)
-	SET_PM_RUNTIME_PM_OPS(nmk_i2c_runtime_suspend,
+	SET_RUNTIME_PM_OPS(nmk_i2c_runtime_suspend,
 			nmk_i2c_runtime_resume,
 			NULL)
 };
Index: linux-pm/drivers/mmc/host/mmci.c
===================================================================
--- linux-pm.orig/drivers/mmc/host/mmci.c
+++ linux-pm/drivers/mmc/host/mmci.c
@@ -1843,7 +1843,7 @@  static int mmci_runtime_resume(struct de
 static const struct dev_pm_ops mmci_dev_pm_ops = {
 	SET_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend,
 				pm_runtime_force_resume)
-	SET_PM_RUNTIME_PM_OPS(mmci_runtime_suspend, mmci_runtime_resume, NULL)
+	SET_RUNTIME_PM_OPS(mmci_runtime_suspend, mmci_runtime_resume, NULL)
 };
 
 static struct amba_id mmci_ids[] = {
Index: linux-pm/drivers/mmc/host/sh_mobile_sdhi.c
===================================================================
--- linux-pm.orig/drivers/mmc/host/sh_mobile_sdhi.c
+++ linux-pm/drivers/mmc/host/sh_mobile_sdhi.c
@@ -375,7 +375,7 @@  static int sh_mobile_sdhi_remove(struct
 static const struct dev_pm_ops tmio_mmc_dev_pm_ops = {
 	SET_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend,
 			pm_runtime_force_resume)
-	SET_PM_RUNTIME_PM_OPS(tmio_mmc_host_runtime_suspend,
+	SET_RUNTIME_PM_OPS(tmio_mmc_host_runtime_suspend,
 			tmio_mmc_host_runtime_resume,
 			NULL)
 };
Index: linux-pm/drivers/mmc/host/tmio_mmc.c
===================================================================
--- linux-pm.orig/drivers/mmc/host/tmio_mmc.c
+++ linux-pm/drivers/mmc/host/tmio_mmc.c
@@ -135,7 +135,7 @@  static int tmio_mmc_remove(struct platfo
 
 static const struct dev_pm_ops tmio_mmc_dev_pm_ops = {
 	SET_SYSTEM_SLEEP_PM_OPS(tmio_mmc_suspend, tmio_mmc_resume)
-	SET_PM_RUNTIME_PM_OPS(tmio_mmc_host_runtime_suspend,
+	SET_RUNTIME_PM_OPS(tmio_mmc_host_runtime_suspend,
 			tmio_mmc_host_runtime_resume,
 			NULL)
 };
Index: linux-pm/drivers/spi/spi-pl022.c
===================================================================
--- linux-pm.orig/drivers/spi/spi-pl022.c
+++ linux-pm/drivers/spi/spi-pl022.c
@@ -2377,7 +2377,7 @@  static int pl022_runtime_resume(struct d
 
 static const struct dev_pm_ops pl022_dev_pm_ops = {
 	SET_SYSTEM_SLEEP_PM_OPS(pl022_suspend, pl022_resume)
-	SET_PM_RUNTIME_PM_OPS(pl022_runtime_suspend, pl022_runtime_resume, NULL)
+	SET_RUNTIME_PM_OPS(pl022_runtime_suspend, pl022_runtime_resume, NULL)
 };
 
 static struct vendor_data vendor_arm = {
Index: linux-pm/include/linux/pm.h
===================================================================
--- linux-pm.orig/include/linux/pm.h
+++ linux-pm/include/linux/pm.h
@@ -342,7 +342,7 @@  struct dev_pm_ops {
 #define SET_LATE_SYSTEM_SLEEP_PM_OPS(suspend_fn, resume_fn)
 #endif
 
-#ifdef CONFIG_PM_RUNTIME
+#ifdef CONFIG_PM
 #define SET_RUNTIME_PM_OPS(suspend_fn, resume_fn, idle_fn) \
 	.runtime_suspend = suspend_fn, \
 	.runtime_resume = resume_fn, \
@@ -351,15 +351,6 @@  struct dev_pm_ops {
 #define SET_RUNTIME_PM_OPS(suspend_fn, resume_fn, idle_fn)
 #endif
 
-#ifdef CONFIG_PM
-#define SET_PM_RUNTIME_PM_OPS(suspend_fn, resume_fn, idle_fn) \
-	.runtime_suspend = suspend_fn, \
-	.runtime_resume = resume_fn, \
-	.runtime_idle = idle_fn,
-#else
-#define SET_PM_RUNTIME_PM_OPS(suspend_fn, resume_fn, idle_fn)
-#endif
-
 /*
  * Use this if you want to use the same suspend and resume callbacks for suspend
  * to RAM and hibernation.