linux/Documentation/admin-guide/pm
Quentin Perret 8412b4563e cpufreq: Specify default governor on command line
Currently, the only way to specify the default CPUfreq governor is
via Kconfig options, which suits users who can build the kernel
themselves perfectly.

However, for those who use a distro-like kernel (such as Android,
with the Generic Kernel Image project), the only way to use a
non-default governor is to boot to userspace, and to then switch
using the sysfs interface. Being able to specify the default governor
on the command line, like is the case for cpuidle, would allow those
users to specify their governor of choice earlier on, and to simplify
the userspace boot procedure slighlty.

To support this use-case, add a kernel command line parameter
allowing the default governor for CPUfreq to be specified, which
takes precedence over the built-in default.

This implementation has one notable limitation: the default governor
must be registered before the driver. This is solved for builtin
governors and drivers using appropriate *_initcall() functions. And
in the modular case, this must be reflected as a constraint on the
module loading order.

Signed-off-by: Quentin Perret <qperret@google.com>
[ Viresh: Converted 'default_governor' to a string and parsing it only
	  at initcall level, and several updates to
	  cpufreq_init_policy(). ]
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
[ rjw: Changelog ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2020-07-02 13:03:30 +02:00
..
cpufreq_drivers.rst Documentation: cpufreq: Move legacy driver documentation 2020-03-02 11:31:06 +01:00
cpufreq.rst cpufreq: Specify default governor on command line 2020-07-02 13:03:30 +02:00
cpuidle.rst Documentation: cpuidle: update the document 2020-05-19 17:41:17 +02:00
index.rst Documentation: PM: Add SPDX license tags to multiple files 2019-04-08 12:57:47 +02:00
intel_epb.rst admin-guide: pm: intel_epb: Add SPDX license tag and copyright notice 2019-04-08 12:59:09 +02:00
intel_idle.rst intel_idle: Introduce 'states_off' module parameter 2020-02-03 11:57:18 +01:00
intel_pstate.rst cpufreq: intel_pstate: Allow raw energy performance preference value 2020-07-02 13:02:46 +02:00
intel-speed-select.rst Documentation: admin-guide: pm: Document intel-speed-select 2020-05-19 19:59:10 +02:00
sleep-states.rst Documentation: admin-guide: PM: Update sleep states documentation 2020-02-03 11:58:26 +01:00
strategies.rst Documentation: PM: Unify copyright notices 2019-04-08 12:57:47 +02:00
suspend-flows.rst Documentation: PM: sleep: Document system-wide suspend code flows 2020-04-03 11:41:01 +02:00
system-wide.rst Documentation: PM: sleep: Document system-wide suspend code flows 2020-04-03 11:41:01 +02:00
working-state.rst Documentation: admin-guide: pm: Document intel-speed-select 2020-05-19 19:59:10 +02:00