PM / devfreq: Add basic governors
authorMyungJoo Ham <myungjoo.ham@samsung.com>
Sat, 1 Oct 2011 22:19:34 +0000 (00:19 +0200)
committerRafael J. Wysocki <rjw@sisk.pl>
Sat, 1 Oct 2011 22:19:34 +0000 (00:19 +0200)
commitce26c5bb9569d8b826f01b8620fc16d8da6821e9
tree3960fee73ec26f939295c92a231a09abcb4c816e
parent9005b65099ee4f14b6be691c4574612fe947531a
PM / devfreq: Add basic governors

Four cpufreq-like governors are provided as examples.

powersave: use the lowest frequency possible. The user (device) should
set the polling_ms as 0 because polling is useless for this governor.

performance: use the highest freqeuncy possible. The user (device)
should set the polling_ms as 0 because polling is useless for this
governor.

userspace: use the user specified frequency stored at
devfreq.user_set_freq. With sysfs support in the following patch, a user
may set the value with the sysfs interface.

simple_ondemand: simplified version of cpufreq's ondemand governor.

When a user updates OPP entries (enable/disable/add), OPP framework
automatically notifies devfreq to update operating frequency
accordingly. Thus, devfreq users (device drivers) do not need to update
devfreq manually with OPP entry updates or set polling_ms for powersave
, performance, userspace, or any other "static" governors.

Note that these are given only as basic examples for governors and any
devices with devfreq may implement their own governors with the drivers
and use them.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Reviewed-by: Mike Turquette <mturquette@ti.com>
Acked-by: Kevin Hilman <khilman@ti.com>
Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Documentation/ABI/testing/sysfs-class-devfreq
drivers/devfreq/Kconfig
drivers/devfreq/Makefile
drivers/devfreq/governor_performance.c [new file with mode: 0644]
drivers/devfreq/governor_powersave.c [new file with mode: 0644]
drivers/devfreq/governor_simpleondemand.c [new file with mode: 0644]
drivers/devfreq/governor_userspace.c [new file with mode: 0644]
include/linux/devfreq.h