mirror of
https://github.com/torvalds/linux.git
synced 2024-11-25 21:51:40 +00:00
b55eef5226
Add a powercap driver that, using the ARM SCMI Protocol to query the SCMI platform firmware for the list of existing Powercap domains, registers all of such discovered domains under the new 'arm-scmi' powercap control type. A new simple powercap zone and constraint is registered for all the SCMI powercap zones that are found. Reviewed-by: Lukasz Luba <lukasz.luba@arm.com> Signed-off-by: Cristian Marussi <cristian.marussi@arm.com> Acked-by: Sudeep Holla <sudeep.holla@arm.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
81 lines
2.5 KiB
Plaintext
81 lines
2.5 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
#
|
|
# Generic power capping sysfs interface configuration
|
|
#
|
|
|
|
menuconfig POWERCAP
|
|
bool "Generic powercap sysfs driver"
|
|
help
|
|
The power capping sysfs interface allows kernel subsystems to expose power
|
|
capping settings to user space in a consistent way. Usually, it consists
|
|
of multiple control types that determine which settings may be exposed and
|
|
power zones representing parts of the system that can be subject to power
|
|
capping.
|
|
|
|
If you want this code to be compiled in, say Y here.
|
|
|
|
if POWERCAP
|
|
# Client driver configurations go here.
|
|
config INTEL_RAPL_CORE
|
|
tristate
|
|
|
|
config INTEL_RAPL
|
|
tristate "Intel RAPL Support via MSR Interface"
|
|
depends on X86 && IOSF_MBI
|
|
select INTEL_RAPL_CORE
|
|
help
|
|
This enables support for the Intel Running Average Power Limit (RAPL)
|
|
technology via MSR interface, which allows power limits to be enforced
|
|
and monitored on modern Intel processors (Sandy Bridge and later).
|
|
|
|
In RAPL, the platform level settings are divided into domains for
|
|
fine grained control. These domains include processor package, DRAM
|
|
controller, CPU core (Power Plane 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.
|
|
|
|
config ARM_SCMI_POWERCAP
|
|
tristate "ARM SCMI Powercap driver"
|
|
depends on ARM_SCMI_PROTOCOL
|
|
help
|
|
This enables support for the ARM Powercap based on ARM SCMI
|
|
Powercap protocol.
|
|
|
|
ARM SCMI Powercap protocol allows power limits to be enforced
|
|
and monitored against the SCMI Powercap domains advertised as
|
|
available by the SCMI platform firmware.
|
|
|
|
When compiled as module it will be called arm_scmi_powercap.ko.
|
|
|
|
config DTPM
|
|
bool "Power capping for Dynamic Thermal Power Management (EXPERIMENTAL)"
|
|
depends on OF
|
|
help
|
|
This enables support for the power capping for the dynamic
|
|
thermal power management userspace engine.
|
|
|
|
config DTPM_CPU
|
|
bool "Add CPU power capping based on the energy model"
|
|
depends on DTPM && ENERGY_MODEL
|
|
help
|
|
This enables support for CPU power limitation based on
|
|
energy model.
|
|
|
|
config DTPM_DEVFREQ
|
|
bool "Add device power capping based on the energy model"
|
|
depends on DTPM && ENERGY_MODEL
|
|
help
|
|
This enables support for device power limitation based on
|
|
energy model.
|
|
endif
|