[PATCH] Driver core: PM_DEBUG device suspend() messages become informative
This makes the driver model PM suspend debug messages more useful, by (a) explaining what event is being sent, since not all suspend() requests mean the same thing; (b) reporting when a PM_EVENT_SUSPEND call is allowing the device to issue wakeup events. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
1e72484503
commit
fd869db6eb
|
@ -29,6 +29,15 @@
|
|||
* lists. This way, the ancestors will be accessed before their descendents.
|
||||
*/
|
||||
|
||||
static inline char *suspend_verb(u32 event)
|
||||
{
|
||||
switch (event) {
|
||||
case PM_EVENT_SUSPEND: return "suspend";
|
||||
case PM_EVENT_FREEZE: return "freeze";
|
||||
default: return "(unknown suspend event)";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* suspend_device - Save state of one device.
|
||||
|
@ -57,7 +66,13 @@ int suspend_device(struct device * dev, pm_message_t state)
|
|||
dev->power.prev_state = dev->power.power_state;
|
||||
|
||||
if (dev->bus && dev->bus->suspend && !dev->power.power_state.event) {
|
||||
dev_dbg(dev, "suspending\n");
|
||||
dev_dbg(dev, "%s%s\n",
|
||||
suspend_verb(state.event),
|
||||
((state.event == PM_EVENT_SUSPEND)
|
||||
&& device_may_wakeup(dev))
|
||||
? ", may wakeup"
|
||||
: ""
|
||||
);
|
||||
error = dev->bus->suspend(dev, state);
|
||||
suspend_report_result(dev->bus->suspend, error);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue