diff mbox series

PM / suspend: Print the driver flags of device during suspend resume

Message ID 20201023110254.26360-1-yu.c.chen@intel.com
State Accepted
Commit f39ee99f5118a71ea162f8f66d743a8c4c401540
Headers show
Series PM / suspend: Print the driver flags of device during suspend resume | expand

Commit Message

Chen Yu Oct. 23, 2020, 11:02 a.m. UTC
Currently there are 4 driver flags to control system suspend/resume
behavior: DPM_FLAG_NO_DIRECT_COMPLETE, DPM_FLAG_SMART_PREPARE,
DPM_FLAG_SMART_SUSPEND and DPM_FLAG_MAY_SKIP_RESUME. Print these flags
during suspend resume so as to get a brief understanding of the
expected behavior of each device, and to facilitate suspend/resume
debugging/tuning.

To enable this tracing:
echo 'file drivers/base/power/main.c +p' >
/sys/kernel/debug/dynamic_debug/control

Signed-off-by: Chen Yu <yu.c.chen@intel.com>
---
 drivers/base/power/main.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Rafael J. Wysocki Nov. 10, 2020, 6:43 p.m. UTC | #1
On Fri, Oct 23, 2020 at 1:02 PM Chen Yu <yu.c.chen@intel.com> wrote:
>

> Currently there are 4 driver flags to control system suspend/resume

> behavior: DPM_FLAG_NO_DIRECT_COMPLETE, DPM_FLAG_SMART_PREPARE,

> DPM_FLAG_SMART_SUSPEND and DPM_FLAG_MAY_SKIP_RESUME. Print these flags

> during suspend resume so as to get a brief understanding of the

> expected behavior of each device, and to facilitate suspend/resume

> debugging/tuning.

>

> To enable this tracing:

> echo 'file drivers/base/power/main.c +p' >

> /sys/kernel/debug/dynamic_debug/control

>

> Signed-off-by: Chen Yu <yu.c.chen@intel.com>

> ---

>  drivers/base/power/main.c | 4 ++--

>  1 file changed, 2 insertions(+), 2 deletions(-)

>

> diff --git a/drivers/base/power/main.c b/drivers/base/power/main.c

> index 205a06752ca9..be6744bdfc93 100644

> --- a/drivers/base/power/main.c

> +++ b/drivers/base/power/main.c

> @@ -442,9 +442,9 @@ static pm_callback_t pm_noirq_op(const struct dev_pm_ops *ops, pm_message_t stat

>

>  static void pm_dev_dbg(struct device *dev, pm_message_t state, const char *info)

>  {

> -       dev_dbg(dev, "%s%s%s\n", info, pm_verb(state.event),

> +       dev_dbg(dev, "%s%s%s driver flags: %x\n", info, pm_verb(state.event),

>                 ((state.event & PM_EVENT_SLEEP) && device_may_wakeup(dev)) ?

> -               ", may wakeup" : "");

> +               ", may wakeup" : "", dev->power.driver_flags);

>  }

>

>  static void pm_dev_err(struct device *dev, pm_message_t state, const char *info,

> --


Applied (with some edits in the subject and changelog) as 5.11 material, thanks!
diff mbox series

Patch

diff --git a/drivers/base/power/main.c b/drivers/base/power/main.c
index 205a06752ca9..be6744bdfc93 100644
--- a/drivers/base/power/main.c
+++ b/drivers/base/power/main.c
@@ -442,9 +442,9 @@  static pm_callback_t pm_noirq_op(const struct dev_pm_ops *ops, pm_message_t stat
 
 static void pm_dev_dbg(struct device *dev, pm_message_t state, const char *info)
 {
-	dev_dbg(dev, "%s%s%s\n", info, pm_verb(state.event),
+	dev_dbg(dev, "%s%s%s driver flags: %x\n", info, pm_verb(state.event),
 		((state.event & PM_EVENT_SLEEP) && device_may_wakeup(dev)) ?
-		", may wakeup" : "");
+		", may wakeup" : "", dev->power.driver_flags);
 }
 
 static void pm_dev_err(struct device *dev, pm_message_t state, const char *info,