Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2430d12c authored by Alan Stern's avatar Alan Stern Committed by Rafael J. Wysocki
Browse files

PM: describe kernel policy regarding wakeup defaults (v. 2)



This patch (as1381b) updates a comment describing the kernel's policy
toward enabling wakeup by default.

It also makes device_set_wakeup_capable() actually do something when
CONFIG_PM isn't enabled.  It's not clear this is necessary; however if
it isn't then device_init_wakeup() and device_can_wakeup() should also
be do-nothing routines.  Furthermore, I don't expect this change to
have any noticeable effect -- but if it does then clearly the old
behavior was wrong.

Signed-off-by: default avatarAlan Stern <stern@rowland.harvard.edu>
Signed-off-by: default avatarRafael J. Wysocki <rjw@sisk.pl>
parent 90133673
Loading
Loading
Loading
Loading
+7 −3
Original line number Original line Diff line number Diff line
@@ -29,8 +29,11 @@


#ifdef CONFIG_PM
#ifdef CONFIG_PM


/* changes to device_may_wakeup take effect on the next pm state change.
/* Changes to device_may_wakeup take effect on the next pm state change.
 * by default, devices should wakeup if they can.
 *
 * By default, most devices should leave wakeup disabled.  The exceptions
 * are devices that everyone expects to be wakeup sources: keyboards,
 * power buttons, possibly network interfaces, etc.
 */
 */
static inline void device_init_wakeup(struct device *dev, bool val)
static inline void device_init_wakeup(struct device *dev, bool val)
{
{
@@ -59,7 +62,7 @@ static inline bool device_may_wakeup(struct device *dev)


#else /* !CONFIG_PM */
#else /* !CONFIG_PM */


/* For some reason the next two routines work even without CONFIG_PM */
/* For some reason the following routines work even without CONFIG_PM */
static inline void device_init_wakeup(struct device *dev, bool val)
static inline void device_init_wakeup(struct device *dev, bool val)
{
{
	dev->power.can_wakeup = val;
	dev->power.can_wakeup = val;
@@ -67,6 +70,7 @@ static inline void device_init_wakeup(struct device *dev, bool val)


static inline void device_set_wakeup_capable(struct device *dev, bool capable)
static inline void device_set_wakeup_capable(struct device *dev, bool capable)
{
{
	dev->power.can_wakeup = capable;
}
}


static inline bool device_can_wakeup(struct device *dev)
static inline bool device_can_wakeup(struct device *dev)