summaryrefslogtreecommitdiffstats
path: root/drivers/powercap/Kconfig
diff options
context:
space:
mode:
authorDaniel Lezcano2018-06-26 12:53:29 +0200
committerRafael J. Wysocki2018-07-02 13:00:24 +0200
commit88763a5cf80ca59a7c3bea32681ce8f697d9995f (patch)
tree216d5d099fb48994f41e71e3bbf7b9ae742cea57 /drivers/powercap/Kconfig
parentLinux 4.18-rc3 (diff)
downloadkernel-qcow2-linux-88763a5cf80ca59a7c3bea32681ce8f697d9995f.tar.gz
kernel-qcow2-linux-88763a5cf80ca59a7c3bea32681ce8f697d9995f.tar.xz
kernel-qcow2-linux-88763a5cf80ca59a7c3bea32681ce8f697d9995f.zip
powercap / idle_inject: Add an idle injection framework
Initially, the cpu_cooling device for ARM was changed by adding a new policy inserting idle cycles. The intel_powerclamp driver does a similar action. Instead of implementing idle injections privately in the cpu_cooling device, move the idle injection code in a dedicated framework and give the opportunity to other frameworks to make use of it. The framework relies on the smpboot kthreads which handles via its main loop the common code for hotplugging and [un]parking. This code was previously tested with the cpu cooling device and went through several iterations. It results now in split code and API exported in the header file. It was tested with the cpu cooling device with success. Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org> [ rjw: Rewrite of all comments ] Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/powercap/Kconfig')
-rw-r--r--drivers/powercap/Kconfig10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/powercap/Kconfig b/drivers/powercap/Kconfig
index 85727ef6ce8e..6ac27e5908f5 100644
--- a/drivers/powercap/Kconfig
+++ b/drivers/powercap/Kconfig
@@ -29,4 +29,14 @@ config INTEL_RAPL
controller, CPU core (Power Plance 0), graphics uncore (Power Plane
1), etc.
+config IDLE_INJECT
+ bool "Idle injection framework"
+ depends on CPU_IDLE
+ default n
+ help
+ This enables support for the idle injection framework. It
+ provides a way to force idle periods on a set of specified
+ CPUs for power capping. Idle period can be injected
+ synchronously on a set of specified CPUs or alternatively
+ on a per CPU basis.
endif