linux/drivers/base/power
Ulf Hansson ffe12855a5 PM / Domains: Allow runtime PM callbacks to be re-used during system PM
A runtime PM centric subsystem/driver may typically use the runtime PM
helpers, pm_runtime_force_suspend|resume() in the system PM path. This
means the genpd's runtime PM callbacks might be invoked even when runtime
PM has been disabled for the device.

To properly cope with these and similar scenarios when these helper
functions are used, change genpd to skip validating and measuring the
device PM QOS latency.

This is needed because otherwise genpd may prevent the device to be put
into low power state. If this occurs during system PM, it causes the
sequence to be aborted as a device's system PM callback returns -EBUSY.

Fixes: ba2bbfbf63 (PM / Domains: Remove intermediate states from the power off sequence)
Reported-by: Cao Minh Hiep <cm-hiep@jinso.co.jp>
Reported-by: Harunaga <nx-truong@jinso.co.jp>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Cc: 4.3+ <stable@vger.kernel.org> # 4.3+
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2015-12-10 01:37:34 +01:00
..
clock_ops.c PM / clk: don't return int on __pm_clk_enable() 2015-07-17 22:58:13 +02:00
common.c PM: Convert dev_pm_put_subsys_data() into a void function 2015-02-03 22:59:25 +01:00
domain_governor.c PM / Domains: Validate cases of a non-bound driver in genpd governor 2015-12-02 15:21:21 +01:00
domain.c PM / Domains: Allow runtime PM callbacks to be re-used during system PM 2015-12-10 01:37:34 +01:00
generic_ops.c PM / Runtime: Spelling s/competing/completing/ 2014-03-26 16:33:53 +01:00
main.c PM / sleep: Allow devices without runtime PM to do direct-complete 2015-07-21 23:14:22 +02:00
Makefile PM / Wakeirq: Add automated device wake IRQ handling 2015-05-20 01:56:31 +02:00
opp.c PM / OPP: Fix typo modifcation -> modification 2015-09-25 23:09:57 +02:00
power.h PM / QoS: Make it possible to expose device latency tolerance to userspace 2015-07-28 08:50:41 +01:00
qos.c PM / QoS: Make it possible to expose device latency tolerance to userspace 2015-07-28 08:50:41 +01:00
runtime.c PM / Wakeirq: Add automated device wake IRQ handling 2015-05-20 01:56:31 +02:00
sysfs.c PM / QoS: Make it possible to expose device latency tolerance to userspace 2015-07-28 08:50:41 +01:00
trace.c PM / sleep: add pm-trace support for suspending phase 2015-03-18 15:54:27 +01:00
wakeirq.c PM / wakeirq: Avoid setting power.wakeirq too hastily 2015-07-07 13:08:39 +02:00
wakeup.c Merge branch 'pm-wakeirq' 2015-07-07 22:47:43 +02:00