2012-06-13 07:33:53

by Ning Jiang

[permalink] [raw]
Subject: Deprecate suspend/resume in device_driver

The suspend/resume will not be called if they are defined in
device_driver directly,
PM core will only use suspend/resume function in dev_pm_ops. Thus we shall
mark the old suspend/resume deprecated and make them scheduled for removal.


>From efee1b349a8abcb4702d93c1c12e7f27c96fbcfc Mon Sep 17 00:00:00 2001
From: Ning Jiang <[email protected]>
Date: Wed, 13 Jun 2012 15:00:33 +0800
Subject: [PATCH] PM: Deprecate suspend/resume in device_driver

Make suspend/resume callbacks in device_driver deprecated and scheduled
for removal since they are not used in PM core anymore.

Legacy drivers who still use them need to move suspend/resume callbacks
to dev_pm_ops.

Signed-off-by: Ning Jiang <[email protected]>
---
include/linux/device.h | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/linux/device.h b/include/linux/device.h
index e04f577..884d9a6 100644
--- a/include/linux/device.h
+++ b/include/linux/device.h
@@ -226,8 +226,8 @@ struct device_driver {
int (*probe) (struct device *dev);
int (*remove) (struct device *dev);
void (*shutdown) (struct device *dev);
- int (*suspend) (struct device *dev, pm_message_t state);
- int (*resume) (struct device *dev);
+ int (*suspend) (struct device *dev, pm_message_t state) __deprecated;
+ int (*resume) (struct device *dev) __deprecated;
const struct attribute_group **groups;

const struct dev_pm_ops *pm;
--
1.7.1


Attachments:
0001-PM-Deprecate-suspend-resume-in-device_driver.patch (1.16 kB)

2012-06-14 19:06:23

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: Deprecate suspend/resume in device_driver

On Wednesday, June 13, 2012, Ning Jiang wrote:
> The suspend/resume will not be called if they are defined in
> device_driver directly,
> PM core will only use suspend/resume function in dev_pm_ops. Thus we shall
> mark the old suspend/resume deprecated and make them scheduled for removal.
>
>
> From efee1b349a8abcb4702d93c1c12e7f27c96fbcfc Mon Sep 17 00:00:00 2001
> From: Ning Jiang <[email protected]>
> Date: Wed, 13 Jun 2012 15:00:33 +0800
> Subject: [PATCH] PM: Deprecate suspend/resume in device_driver
>
> Make suspend/resume callbacks in device_driver deprecated and scheduled
> for removal since they are not used in PM core anymore.
>
> Legacy drivers who still use them need to move suspend/resume callbacks
> to dev_pm_ops.
>
> Signed-off-by: Ning Jiang <[email protected]>

Greg, do you have any objections here?

Rafael


> ---
> include/linux/device.h | 4 ++--
> 1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/include/linux/device.h b/include/linux/device.h
> index e04f577..884d9a6 100644
> --- a/include/linux/device.h
> +++ b/include/linux/device.h
> @@ -226,8 +226,8 @@ struct device_driver {
> int (*probe) (struct device *dev);
> int (*remove) (struct device *dev);
> void (*shutdown) (struct device *dev);
> - int (*suspend) (struct device *dev, pm_message_t state);
> - int (*resume) (struct device *dev);
> + int (*suspend) (struct device *dev, pm_message_t state) __deprecated;
> + int (*resume) (struct device *dev) __deprecated;
> const struct attribute_group **groups;
>
> const struct dev_pm_ops *pm;
>