xref: /linux/drivers/powercap/Kconfig (revision 03ab8e6297acd1bc0eedaa050e2a1635c576fd11)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
275d2364eSSrinivas Pandruvada#
375d2364eSSrinivas Pandruvada# Generic power capping sysfs interface configuration
475d2364eSSrinivas Pandruvada#
575d2364eSSrinivas Pandruvada
675d2364eSSrinivas Pandruvadamenuconfig POWERCAP
775d2364eSSrinivas Pandruvada	bool "Generic powercap sysfs driver"
875d2364eSSrinivas Pandruvada	help
975d2364eSSrinivas Pandruvada	  The power capping sysfs interface allows kernel subsystems to expose power
1075d2364eSSrinivas Pandruvada	  capping settings to user space in a consistent way.  Usually, it consists
1175d2364eSSrinivas Pandruvada	  of multiple control types that determine which settings may be exposed and
1275d2364eSSrinivas Pandruvada	  power zones representing parts of the system that can be subject to power
1375d2364eSSrinivas Pandruvada	  capping.
1475d2364eSSrinivas Pandruvada
1575d2364eSSrinivas Pandruvada	  If you want this code to be compiled in, say Y here.
1675d2364eSSrinivas Pandruvada
1775d2364eSSrinivas Pandruvadaif POWERCAP
1875d2364eSSrinivas Pandruvada# Client driver configurations go here.
193382388dSZhang Ruiconfig INTEL_RAPL_CORE
203382388dSZhang Rui	tristate
213382388dSZhang Rui
222d281d81SJacob Panconfig INTEL_RAPL
233382388dSZhang Rui	tristate "Intel RAPL Support via MSR Interface"
2424b59841SJacob Pan	depends on X86 && IOSF_MBI
253382388dSZhang Rui	select INTEL_RAPL_CORE
26a7f7f624SMasahiro Yamada	help
272d281d81SJacob Pan	  This enables support for the Intel Running Average Power Limit (RAPL)
283382388dSZhang Rui	  technology via MSR interface, which allows power limits to be enforced
293382388dSZhang Rui	  and monitored on modern Intel processors (Sandy Bridge and later).
302d281d81SJacob Pan
312d281d81SJacob Pan	  In RAPL, the platform level settings are divided into domains for
322d281d81SJacob Pan	  fine grained control. These domains include processor package, DRAM
33f8fee6e6SHubert Jasudowicz	  controller, CPU core (Power Plane 0), graphics uncore (Power Plane
342d281d81SJacob Pan	  1), etc.
3575d2364eSSrinivas Pandruvada
3688763a5cSDaniel Lezcanoconfig IDLE_INJECT
3788763a5cSDaniel Lezcano	bool "Idle injection framework"
3888763a5cSDaniel Lezcano	depends on CPU_IDLE
3988763a5cSDaniel Lezcano	default n
4088763a5cSDaniel Lezcano	help
4188763a5cSDaniel Lezcano	  This enables support for the idle injection framework. It
4288763a5cSDaniel Lezcano	  provides a way to force idle periods on a set of specified
4388763a5cSDaniel Lezcano	  CPUs for power capping. Idle period can be injected
4488763a5cSDaniel Lezcano	  synchronously on a set of specified CPUs or alternatively
4588763a5cSDaniel Lezcano	  on a per CPU basis.
46a20d0ef9SDaniel Lezcano
47a20d0ef9SDaniel Lezcanoconfig DTPM
489e2be308SDaniel Lezcano	bool "Power capping for Dynamic Thermal Power Management (EXPERIMENTAL)"
493759ec67SDaniel Lezcano	depends on OF
50a20d0ef9SDaniel Lezcano	help
51a20d0ef9SDaniel Lezcano	  This enables support for the power capping for the dynamic
52a20d0ef9SDaniel Lezcano	  thermal power management userspace engine.
530e8f68d7SDaniel Lezcano
540e8f68d7SDaniel Lezcanoconfig DTPM_CPU
550e8f68d7SDaniel Lezcano	bool "Add CPU power capping based on the energy model"
560e8f68d7SDaniel Lezcano	depends on DTPM && ENERGY_MODEL
570e8f68d7SDaniel Lezcano	help
580e8f68d7SDaniel Lezcano	  This enables support for CPU power limitation based on
590e8f68d7SDaniel Lezcano	  energy model.
60e4465561SDaniel Lezcano
61e4465561SDaniel Lezcanoconfig DTPM_DEVFREQ
62e4465561SDaniel Lezcano	bool "Add device power capping based on the energy model"
63e4465561SDaniel Lezcano	depends on DTPM && ENERGY_MODEL
64e4465561SDaniel Lezcano	help
65e4465561SDaniel Lezcano	  This enables support for device power limitation based on
66e4465561SDaniel Lezcano	  energy model.
6775d2364eSSrinivas Pandruvadaendif
68