Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Linux/drivers/cpufreq/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 11 kB image not shown  

Quelle  Kconfig   Sprache: Shell

 
# SPDX-License-Identifier: GPL-2.0-only
menu "CPU Frequency scaling"

config CPU_FREQ
 bool "CPU Frequency scaling"
 help
   CPU Frequency scaling allows you to change the clock speed of 
   CPUs on the fly. This is a nice method to save power, because 
   the lower the CPU clock speed, the less power the CPU consumes.

   Note that this driver doesn't automatically change the CPU
   clock speed, you need to either enable a dynamic cpufreq governor
   (see below) after boot, or use a userspace tool.

   For details, take a look at
   <file:Documentation/admin-guide/pm/cpufreq.rst>.

   If in doubt, say N.

if CPU_FREQ

config CPU_FREQ_GOV_ATTR_SET
 bool

config CPU_FREQ_GOV_COMMON
 select CPU_FREQ_GOV_ATTR_SET
 select IRQ_WORK
 bool

config CPU_FREQ_STAT
 bool "CPU frequency transition statistics"
 help
   Export CPU frequency statistics information through sysfs.

   If in doubt, say N.

choice
 prompt "Default CPUFreq governor"
 default CPU_FREQ_DEFAULT_GOV_USERSPACE if ARM_SA1110_CPUFREQ
 default CPU_FREQ_DEFAULT_GOV_SCHEDUTIL if ARM64 || ARM
 default CPU_FREQ_DEFAULT_GOV_SCHEDUTIL if (X86_INTEL_PSTATE || X86_AMD_PSTATE) && SMP
 default CPU_FREQ_DEFAULT_GOV_PERFORMANCE
 help
   This option sets which CPUFreq governor shall be loaded at
   startup. If in doubt, use the default setting.

config CPU_FREQ_DEFAULT_GOV_PERFORMANCE
 bool "performance"
 select CPU_FREQ_GOV_PERFORMANCE
 help
   Use the CPUFreq governor 'performance' as default. This sets
   the frequency statically to the highest frequency supported by
   the CPU.

config CPU_FREQ_DEFAULT_GOV_POWERSAVE
 bool "powersave"
 select CPU_FREQ_GOV_POWERSAVE
 help
   Use the CPUFreq governor 'powersave' as default. This sets
   the frequency statically to the lowest frequency supported by
   the CPU.

config CPU_FREQ_DEFAULT_GOV_USERSPACE
 bool "userspace"
 select CPU_FREQ_GOV_USERSPACE
 help
   Use the CPUFreq governor 'userspace' as default. This allows
   you to set the CPU frequency manually or when a userspace 
   program shall be able to set the CPU dynamically without having
   to enable the userspace governor manually.

config CPU_FREQ_DEFAULT_GOV_ONDEMAND
 bool "ondemand"
 depends on !(X86_INTEL_PSTATE && SMP)
 select CPU_FREQ_GOV_ONDEMAND
 select CPU_FREQ_GOV_PERFORMANCE
 help
   Use the CPUFreq governor 'ondemand' as default. This allows
   you to get a full dynamic frequency capable system by simply
   loading your cpufreq low-level hardware driver.
   Be aware that not all cpufreq drivers support the ondemand
   governor. If unsure have a look at the help section of the
   driver. Fallback governor will be the performance governor.

config CPU_FREQ_DEFAULT_GOV_CONSERVATIVE
 bool "conservative"
 depends on !(X86_INTEL_PSTATE && SMP)
 select CPU_FREQ_GOV_CONSERVATIVE
 select CPU_FREQ_GOV_PERFORMANCE
 help
   Use the CPUFreq governor 'conservative' as default. This allows
   you to get a full dynamic frequency capable system by simply
   loading your cpufreq low-level hardware driver.
   Be aware that not all cpufreq drivers support the conservative
   governor. If unsure have a look at the help section of the
   driver. Fallback governor will be the performance governor.

config CPU_FREQ_DEFAULT_GOV_SCHEDUTIL
 bool "schedutil"
 depends on SMP
 select CPU_FREQ_GOV_SCHEDUTIL
 select CPU_FREQ_GOV_PERFORMANCE
 help
   Use the 'schedutil' CPUFreq governor by default. If unsure,
   have a look at the help section of that governor. The fallback
   governor will be 'performance'.

endchoice

config CPU_FREQ_GOV_PERFORMANCE
 tristate "'performance' governor"
 help
   This cpufreq governor sets the frequency statically to the
   highest available CPU frequency.

   To compile this driver as a module, choose M here: the
   module will be called cpufreq_performance.

   If in doubt, say Y.

config CPU_FREQ_GOV_POWERSAVE
 tristate "'powersave' governor"
 help
   This cpufreq governor sets the frequency statically to the
   lowest available CPU frequency.

   To compile this driver as a module, choose M here: the
   module will be called cpufreq_powersave.

   If in doubt, say Y.

config CPU_FREQ_GOV_USERSPACE
 tristate "'userspace' governor for userspace frequency scaling"
 help
   Enable this cpufreq governor when you either want to set the
   CPU frequency manually or when a userspace program shall
   be able to set the CPU dynamically, like on LART 
   <http://www.lartmaker.nl/>.

   To compile this driver as a module, choose M here: the
   module will be called cpufreq_userspace.

   If in doubt, say Y.

config CPU_FREQ_GOV_ONDEMAND
 tristate "'ondemand' cpufreq policy governor"
 select CPU_FREQ_GOV_COMMON
 help
   'ondemand' - This driver adds a dynamic cpufreq policy governor.
   The governor does a periodic polling and 
   changes frequency based on the CPU utilization.
   The support for this governor depends on CPU capability to
   do fast frequency switching (i.e, very low latency frequency
   transitions). 

   To compile this driver as a module, choose M here: the
   module will be called cpufreq_ondemand.

   For details, take a look at
   <file:Documentation/admin-guide/pm/cpufreq.rst>.

   If in doubt, say N.

config CPU_FREQ_GOV_CONSERVATIVE
 tristate "'conservative' cpufreq governor"
 depends on CPU_FREQ
 select CPU_FREQ_GOV_COMMON
 help
   'conservative' - this driver is rather similar to the 'ondemand'
   governor both in its source code and its purpose, the difference is
   its optimisation for better suitability in a battery powered
   environment.  The frequency is gracefully increased and decreased
   rather than jumping to 100% when speed is required.

   If you have a desktop machine then you should really be considering
   the 'ondemand' governor instead, however if you are using a laptop,
   PDA or even an AMD64 based computer (due to the unacceptable
   step-by-step latency issues between the minimum and maximum frequency
   transitions in the CPU) you will probably want to use this governor.

   To compile this driver as a module, choose M here: the
   module will be called cpufreq_conservative.

   For details, take a look at
   <file:Documentation/admin-guide/pm/cpufreq.rst>.

   If in doubt, say N.

config CPU_FREQ_GOV_SCHEDUTIL
 bool "'schedutil' cpufreq policy governor"
 depends on CPU_FREQ && SMP
 select CPU_FREQ_GOV_ATTR_SET
 select IRQ_WORK
 help
   This governor makes decisions based on the utilization data provided
   by the scheduler.  It sets the CPU frequency to be proportional to
   the utilization/capacity ratio coming from the scheduler.  If the
   utilization is frequency-invariant, the new frequency is also
   proportional to the maximum available frequency.  If that is not the
   case, it is proportional to the current frequency of the CPU.  The
   frequency tipping point is at utilization/capacity equal to 80% in
   both cases.

   If in doubt, say N.

comment "CPU frequency scaling drivers"

config CPUFREQ_DT
 tristate "Generic DT based cpufreq driver"
 depends on HAVE_CLK && OF
 select CPUFREQ_DT_PLATDEV
 select PM_OPP
 help
   This adds a generic DT based cpufreq driver for frequency management.
   It supports both uniprocessor (UP) and symmetric multiprocessor (SMP)
   systems.

   If in doubt, say N.

config CPUFREQ_DT_RUST
 tristate "Rust based Generic DT based cpufreq driver"
 depends on HAVE_CLK && OF && RUST
 select CPUFREQ_DT_PLATDEV
 select PM_OPP
 help
   This adds a Rust based generic DT based cpufreq driver for frequency
   management.  It supports both uniprocessor (UP) and symmetric
   multiprocessor (SMP) systems.

   If in doubt, say N.

config CPUFREQ_VIRT
 tristate "Virtual cpufreq driver"
 depends on GENERIC_ARCH_TOPOLOGY
 help
   This adds a virtualized cpufreq driver for guest kernels that
   read/writes to a MMIO region for a virtualized cpufreq device to
   communicate with the host. It sends performance requests to the host
   which gets used as a hint to schedule vCPU threads and select CPU
   frequency. If a VM does not support a virtualized FIE such as AMUs,
   it updates the frequency scaling factor by polling host CPU frequency
   to enable accurate Per-Entity Load Tracking for tasks running in the guest.

   If in doubt, say N.

config CPUFREQ_DT_PLATDEV
 bool "Generic DT based cpufreq platdev driver"
 depends on OF
 help
   This adds a generic DT based cpufreq platdev driver for frequency
   management.  This creates a 'cpufreq-dt' platform device, on the
   supported platforms.

   If in doubt, say N.

if X86
source "drivers/cpufreq/Kconfig.x86"
endif

source "drivers/cpufreq/Kconfig.arm"

if PPC32 || PPC64
source "drivers/cpufreq/Kconfig.powerpc"
endif

if MIPS
config BMIPS_CPUFREQ
 tristate "BMIPS CPUfreq Driver"
 help
   This option adds a CPUfreq driver for BMIPS processors with
   support for configurable CPU frequency.

   For now, BMIPS5 chips are supported (such as the Broadcom 7425).

   If in doubt, say N.

config LOONGSON2_CPUFREQ
 tristate "Loongson2 CPUFreq Driver"
 depends on LEMOTE_MACH2F
 help
   This option adds a CPUFreq driver for loongson processors which
   support software configurable cpu frequency.

   Loongson2F and its successors support this feature.

   If in doubt, say N.
endif

if LOONGARCH
config LOONGSON3_CPUFREQ
 tristate "Loongson3 CPUFreq Driver"
 help
   This option adds a CPUFreq driver for Loongson processors which
   support software configurable cpu frequency.

   Loongson-3 family processors support this feature.

   If in doubt, say N.
endif

if SPARC64
config SPARC_US3_CPUFREQ
 tristate "UltraSPARC-III CPU Frequency driver"
 help
   This adds the CPUFreq driver for UltraSPARC-III processors.

   If in doubt, say N.

config SPARC_US2E_CPUFREQ
 tristate "UltraSPARC-IIe CPU Frequency driver"
 help
   This adds the CPUFreq driver for UltraSPARC-IIe processors.

   If in doubt, say N.
endif

if SUPERH
config SH_CPU_FREQ
 tristate "SuperH CPU Frequency driver"
 help
   This adds the cpufreq driver for SuperH. Any CPU that supports
   clock rate rounding through the clock framework can use this
   driver. While it will make the kernel slightly larger, this is
   harmless for CPUs that don't support rate rounding. The driver
   will also generate a notice in the boot log before disabling
   itself if the CPU in question is not capable of rate rounding.

   If unsure, say N.
endif

config QORIQ_CPUFREQ
 tristate "CPU frequency scaling driver for Freescale QorIQ SoCs"
 depends on OF && COMMON_CLK
 depends on PPC_E500MC || SOC_LS1021A || ARCH_LAYERSCAPE || COMPILE_TEST
 select CLK_QORIQ
 help
   This adds the CPUFreq driver support for Freescale QorIQ SoCs
   which are capable of changing the CPU's frequency dynamically.

config ACPI_CPPC_CPUFREQ
 tristate "CPUFreq driver based on the ACPI CPPC spec"
 depends on ACPI_PROCESSOR
 depends on ARM || ARM64 || RISCV
 select ACPI_CPPC_LIB
 help
   This adds a CPUFreq driver which uses CPPC methods
   as described in the ACPIv5.1 spec. CPPC stands for
   Collaborative Processor Performance Controls. It
   is based on an abstract continuous scale of CPU
   performance values which allows the remote power
   processor to flexibly optimize for power and
   performance. CPPC relies on power management firmware
   support for its operation.

   If in doubt, say N.

config ACPI_CPPC_CPUFREQ_FIE
 bool "Frequency Invariance support for CPPC cpufreq driver"
 depends on ACPI_CPPC_CPUFREQ && GENERIC_ARCH_TOPOLOGY
 depends on ARM || ARM64 || RISCV
 default y
 help
   This extends frequency invariance support in the CPPC cpufreq driver,
   by using CPPC delivered and reference performance counters.

   If in doubt, say N.

endif

endmenu

Messung V0.5
C=96 H=90 G=93

¤ Dauer der Verarbeitung: 0.6 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.