diff options
author | Hanjun Guo <guohanjun@huawei.com> | 2020-05-19 14:25:22 +0800 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2020-05-19 17:41:17 +0200 |
commit | b52e93e4e86c600492f977badad3c9e0f0303cb2 (patch) | |
tree | 4d3a996663bdc7e56ed6e48cdfb4d11dd52435f1 /drivers/cpuidle | |
parent | ef7e7d65eb808b5d37b4596974526962a741e930 (diff) | |
download | linux-b52e93e4e86c600492f977badad3c9e0f0303cb2.tar.bz2 |
cpuidle: Make cpuidle governor switchable to be the default behaviour
For now cpuidle governor can be switched via sysfs only when the
boot option "cpuidle_sysfs_switch" is passed, but it's important
to switch the governor to adapt to different workloads, especially
after TEO and haltpoll governor were introduced.
Add available_governors and current_governor into the default
attributes, but reserve the current_governor_ro for compatiblity.
Signed-off-by: Hanjun Guo <guohanjun@huawei.com>
Reviewed-by: Doug Smythies <dsmythies@telus.net>
Tested-by: Doug Smythies <dsmythies@telus.net>
Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/cpuidle')
-rw-r--r-- | drivers/cpuidle/sysfs.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/cpuidle/sysfs.c b/drivers/cpuidle/sysfs.c index a57ad10baccc..b51c470d3bdb 100644 --- a/drivers/cpuidle/sysfs.c +++ b/drivers/cpuidle/sysfs.c @@ -106,19 +106,20 @@ static ssize_t store_current_governor(struct device *dev, return ret ? ret : count; } +static DEVICE_ATTR(available_governors, 0444, show_available_governors, NULL); static DEVICE_ATTR(current_driver, 0444, show_current_driver, NULL); +static DEVICE_ATTR(current_governor, 0644, show_current_governor, + store_current_governor); static DEVICE_ATTR(current_governor_ro, 0444, show_current_governor, NULL); static struct attribute *cpuidle_default_attrs[] = { + &dev_attr_available_governors.attr, &dev_attr_current_driver.attr, + &dev_attr_current_governor.attr, &dev_attr_current_governor_ro.attr, NULL }; -static DEVICE_ATTR(available_governors, 0444, show_available_governors, NULL); -static DEVICE_ATTR(current_governor, 0644, show_current_governor, - store_current_governor); - static struct attribute *cpuidle_switch_attrs[] = { &dev_attr_available_governors.attr, &dev_attr_current_driver.attr, |