aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/devfreq
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-05-23 17:07:06 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2012-05-23 17:07:06 -0400
commit468f4d1a855f8039dabf441b8bf68cae264033ff (patch)
tree303ac5bc1ac3f86f136a30f9356e84f20dcbf13f /drivers/devfreq
parenteb2689e06b3526c7684b09beecf26070f05ee825 (diff)
parent8714c8d74d313c3ba27bf9c2aaacb1ad71c644f8 (diff)
Merge tag 'pm-for-3.5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
Pull power management updates from Rafael Wysocki: - Implementation of opportunistic suspend (autosleep) and user space interface for manipulating wakeup sources. - Hibernate updates from Bojan Smojver and Minho Ban. - Updates of the runtime PM core and generic PM domains framework related to PM QoS. - Assorted fixes. * tag 'pm-for-3.5' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (25 commits) epoll: Fix user space breakage related to EPOLLWAKEUP PM / Domains: Make it possible to add devices to inactive domains PM / Hibernate: Use get_gendisk to verify partition if resume_file is integer format PM / Domains: Fix computation of maximum domain off time PM / Domains: Fix link checking when add subdomain PM / Sleep: User space wakeup sources garbage collector Kconfig option PM / Sleep: Make the limit of user space wakeup sources configurable PM / Documentation: suspend-and-cpuhotplug.txt: Fix typo PM / Domains: Cache device stop and domain power off governor results, v3 PM / Domains: Make device removal more straightforward PM / Sleep: Fix a mistake in a conditional in autosleep_store() epoll: Add a flag, EPOLLWAKEUP, to prevent suspend while epoll events are ready PM / QoS: Create device constraints objects on notifier registration PM / Runtime: Remove device fields related to suspend time, v2 PM / Domains: Rework default domain power off governor function, v2 PM / Domains: Rework default device stop governor function, v2 PM / Sleep: Add user space interface for manipulating wakeup sources, v3 PM / Sleep: Add "prevent autosleep time" statistics to wakeup sources PM / Sleep: Implement opportunistic sleep, v2 PM / Sleep: Add wakeup_source_activate and wakeup_source_deactivate tracepoints ...
Diffstat (limited to 'drivers/devfreq')
-rw-r--r--drivers/devfreq/governor_performance.c7
-rw-r--r--drivers/devfreq/governor_powersave.c7
2 files changed, 14 insertions, 0 deletions
diff --git a/drivers/devfreq/governor_performance.c b/drivers/devfreq/governor_performance.c
index 574a06b1b1de..af75ddd4f158 100644
--- a/drivers/devfreq/governor_performance.c
+++ b/drivers/devfreq/governor_performance.c
@@ -10,6 +10,7 @@
10 */ 10 */
11 11
12#include <linux/devfreq.h> 12#include <linux/devfreq.h>
13#include "governor.h"
13 14
14static int devfreq_performance_func(struct devfreq *df, 15static int devfreq_performance_func(struct devfreq *df,
15 unsigned long *freq) 16 unsigned long *freq)
@@ -25,8 +26,14 @@ static int devfreq_performance_func(struct devfreq *df,
25 return 0; 26 return 0;
26} 27}
27 28
29static int performance_init(struct devfreq *devfreq)
30{
31 return update_devfreq(devfreq);
32}
33
28const struct devfreq_governor devfreq_performance = { 34const struct devfreq_governor devfreq_performance = {
29 .name = "performance", 35 .name = "performance",
36 .init = performance_init,
30 .get_target_freq = devfreq_performance_func, 37 .get_target_freq = devfreq_performance_func,
31 .no_central_polling = true, 38 .no_central_polling = true,
32}; 39};
diff --git a/drivers/devfreq/governor_powersave.c b/drivers/devfreq/governor_powersave.c
index d742d4a82d6a..fec0cdbd2477 100644
--- a/drivers/devfreq/governor_powersave.c
+++ b/drivers/devfreq/governor_powersave.c
@@ -10,6 +10,7 @@
10 */ 10 */
11 11
12#include <linux/devfreq.h> 12#include <linux/devfreq.h>
13#include "governor.h"
13 14
14static int devfreq_powersave_func(struct devfreq *df, 15static int devfreq_powersave_func(struct devfreq *df,
15 unsigned long *freq) 16 unsigned long *freq)
@@ -22,8 +23,14 @@ static int devfreq_powersave_func(struct devfreq *df,
22 return 0; 23 return 0;
23} 24}
24 25
26static int powersave_init(struct devfreq *devfreq)
27{
28 return update_devfreq(devfreq);
29}
30
25const struct devfreq_governor devfreq_powersave = { 31const struct devfreq_governor devfreq_powersave = {
26 .name = "powersave", 32 .name = "powersave",
33 .init = powersave_init,
27 .get_target_freq = devfreq_powersave_func, 34 .get_target_freq = devfreq_powersave_func,
28 .no_central_polling = true, 35 .no_central_polling = true,
29}; 36};