The following series is based on:
linux-next e083feb Merge branch 'acpi-next' into linux-next
from git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git
In addition, this series depends on the following to apply cleanly:
https://patchwork.kernel.org/patch/1649621/
https://patchwork.kernel.org/patch/1663331/
This series allows the devfreq governors to be built as modules and switched
on the fly using sysfs controls (inspired by cpufreq's ability to do the same).
Tested on BeagleBoard XM(3730) with dummy driver[1]:
/sys/devices/platform/iva.0/devfreq/iva.0 # ls
available_frequencies governor power
available_governors max_freq subsystem
cur_freq min_freq target_freq
device polling_interval uevent
/sys/devices/platform/iva.0/devfreq/iva.0 # cat available_governors
simple_ondemand
/sys/devices/platform/iva.0/devfreq/iva.0 # modprobe governor_userspace
/sys/devices/platform/iva.0/devfreq/iva.0 # cat available_governors
userspace simple_ondemand
/sys/devices/platform/iva.0/devfreq/iva.0 #
/sys/devices/platform/iva.0/devfreq/iva.0 # echo -n "userspace">governor
/sys/devices/platform/iva.0/devfreq/iva.0 # ls
available_frequencies max_freq target_freq
available_governors min_freq uevent
cur_freq polling_interval userspace
device power
governor subsystem
/sys/devices/platform/iva.0/devfreq/iva.0 # cat governor
userspace
/sys/devices/platform/iva.0/devfreq/iva.0 # echo -n "simple_ondemand">governor
/sys/devices/platform/iva.0/devfreq/iva.0 # cat governor
simple_ondemand
/sys/devices/platform/iva.0/devfreq/iva.0 # ls
available_frequencies governor power
available_governors max_freq subsystem
cur_freq min_freq target_freq
device polling_interval uevent
Nishanth Menon (7):
PM / devfreq: export update_devfreq
PM / devfreq: provide hooks for governors to be registered
PM / devfreq: register governors with devfreq framework
PM / devfreq: map devfreq drivers to governor using name
PM / devfreq: governors: add GPL module license and allow module
build
PM / devfreq: allow sysfs governor node to switch governor
PM / devfreq: Add sysfs node to expose available governors
Documentation/ABI/testing/sysfs-class-devfreq | 9 +-
drivers/devfreq/Kconfig | 8 +-
drivers/devfreq/devfreq.c | 249 ++++++++++++++++++++++++-
drivers/devfreq/exynos4_bus.c | 2 +-
drivers/devfreq/governor.h | 4 +
drivers/devfreq/governor_performance.c | 22 ++-
drivers/devfreq/governor_powersave.c | 22 ++-
drivers/devfreq/governor_simpleondemand.c | 22 ++-
drivers/devfreq/governor_userspace.c | 22 ++-
include/linux/devfreq.h | 24 +--
10 files changed, 348 insertions(+), 36 deletions(-)
Cc: Rajagopal Venkat <[email protected]>
Cc: MyungJoo Ham <[email protected]>
Cc: Kyungmin Park <[email protected]>
Cc: "Rafael J. Wysocki" <[email protected]>
Cc: Kevin Hilman <[email protected]>
Cc: [email protected]
Cc: [email protected]
[1] http://pastebin.pandaboard.org/index.php/view/85100576
Regards,
Nishanth Menon
--
1.7.9.5
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/