2011-01-14 14:12:24 +00:00
|
|
|
|
|
|
|
ccflags-$(CONFIG_PM_DEBUG) := -DDEBUG
|
2005-04-16 22:20:36 +00:00
|
|
|
|
2012-02-13 15:23:42 +00:00
|
|
|
obj-y += qos.o
|
|
|
|
obj-$(CONFIG_PM) += main.o
|
2011-09-21 20:47:55 +00:00
|
|
|
obj-$(CONFIG_VT_CONSOLE_SLEEP) += console.o
|
2009-01-06 20:14:04 +00:00
|
|
|
obj-$(CONFIG_FREEZER) += process.o
|
2009-06-09 23:27:12 +00:00
|
|
|
obj-$(CONFIG_SUSPEND) += suspend.o
|
|
|
|
obj-$(CONFIG_PM_TEST_SUSPEND) += suspend_test.o
|
2010-05-01 21:52:34 +00:00
|
|
|
obj-$(CONFIG_HIBERNATION) += hibernate.o snapshot.o swap.o user.o \
|
|
|
|
block_io.o
|
2012-04-29 20:53:22 +00:00
|
|
|
obj-$(CONFIG_PM_AUTOSLEEP) += autosleep.o
|
PM / Sleep: Add user space interface for manipulating wakeup sources, v3
Android allows user space to manipulate wakelocks using two
sysfs file located in /sys/power/, wake_lock and wake_unlock.
Writing a wakelock name and optionally a timeout to the wake_lock
file causes the wakelock whose name was written to be acquired (it
is created before is necessary), optionally with the given timeout.
Writing the name of a wakelock to wake_unlock causes that wakelock
to be released.
Implement an analogous interface for user space using wakeup sources.
Add the /sys/power/wake_lock and /sys/power/wake_unlock files
allowing user space to create, activate and deactivate wakeup
sources, such that writing a name and optionally a timeout to
wake_lock causes the wakeup source of that name to be activated,
optionally with the given timeout. If that wakeup source doesn't
exist, it will be created and then activated. Writing a name to
wake_unlock causes the wakeup source of that name, if there is one,
to be deactivated. Wakeup sources created with the help of
wake_lock that haven't been used for more than 5 minutes are garbage
collected and destroyed. Moreover, there can be only WL_NUMBER_LIMIT
wakeup sources created with the help of wake_lock present at a time.
The data type used to track wakeup sources created by user space is
called "struct wakelock" to indicate the origins of this feature.
This version of the patch includes an rbtree manipulation fix from John Stultz.
Change-Id: Icb452cfd54362b49dcb1cff88345928a2528ad97
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: NeilBrown <neilb@suse.de>
Git-commit: b86ff9820fd5df69295273b9aa68e58786ffc23f
Git-repo: git://codeaurora.org/kernel/msm.git
[anursing@codeaurora.org: replace existing implementation, resolve
merge conflicts]
Signed-off-by: Anurag Singh <anursing@codeaurora.org>
2012-04-29 20:53:42 +00:00
|
|
|
obj-$(CONFIG_PM_WAKELOCKS) += wakelock.o
|
2005-06-25 21:55:06 +00:00
|
|
|
|
2005-04-16 22:20:36 +00:00
|
|
|
obj-$(CONFIG_MAGIC_SYSRQ) += poweroff.o
|
2014-02-19 23:30:47 +00:00
|
|
|
|
|
|
|
obj-$(CONFIG_SUSPEND) += wakeup_reason.o
|
power: add partial-resume framework
Partial resume refers to the concept of not waking up userspace when the kernel
comes out of suspend for certain types of events that we wish to discard. An
example is a network packet that can be disacarded in the kernel, or spurious
wakeup event that we wish to ignore. Partial resume allows drivers to register
callbacks, one one hand, and provides hooks into the PM's suspend/resume
mechanism, on the other.
When a device resumes from suspend, the core suspend/resume code invokes
partialresume to check to see if the set of wakeup interrupts all have
matching handlers. If this is not the case, the PM subsystem can continue to
resume as before. If all of the wakeup sources have matching handlers, then
those are invoked in turn (and can block), and if all of them reach consensus
that the reason for the wakeup can be ignored, they say so to the PM subsystem,
which goes right back into suspend. This latter support is implemented in a
separate change.
Signed-off-by: Iliyan Malchev <malchev@google.com>
Change-Id: Id50940bb22a550b413412264508d259f7121d442
2015-02-24 03:43:51 +00:00
|
|
|
obj-$(CONFIG_PARTIALRESUME) += partialresume.o
|