| /kernel/linux/linux-5.10/Documentation/admin-guide/pm/ |
| D | cpuidle.rst | 1 .. SPDX-License-Identifier: GPL-2.0 8 CPU Idle Time Management 21 memory or executed. Those states are the *idle* states of the processor. 23 Since part of the processor hardware is not used in idle states, entering them 27 CPU idle time management is an energy-efficiency feature concerned about using 28 the idle states of processors for this purpose. 31 ------------ 33 CPU idle time management operates on CPUs as seen by the *CPU scheduler* (that 37 software as individual single-core processors. In other words, a CPU is an 44 enter an idle state, that applies to the processor as a whole. [all …]
|
| D | intel_idle.rst | 1 .. SPDX-License-Identifier: GPL-2.0 5 ``intel_idle`` CPU Idle Time Management Driver 17 :doc:`CPU idle time management subsystem <cpuidle>` in the Linux kernel 18 (``CPUIdle``). It is the default CPU idle time management driver for the 27 logical CPU executing it is idle and so it may be possible to put some of the 28 processor's functional blocks into low-power states. That instruction takes two 38 only way to pass early-configuration-time parameters to it is via the kernel 42 .. _intel-idle-enumeration-of-states: 44 Enumeration of Idle States 50 as C-states (in the ACPI terminology) or idle states. The list of meaningful [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/powerpc/opal/ |
| D | power-mgt.txt | 1 IBM Power-Management Bindings 5 idle states. The description of these idle states is exposed via the 6 node @power-mgt in the device-tree by the firmware. 9 ---------------- 10 Typically each idle state has the following associated properties: 12 - name: The name of the idle state as defined by the firmware. 14 - flags: indicating some aspects of this idle states such as the 15 extent of state-loss, whether timebase is stopped on this 16 idle states and so on. The flag bits are as follows: 18 - exit-latency: The latency involved in transitioning the state of the [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/powerpc/opal/ |
| D | power-mgt.txt | 1 IBM Power-Management Bindings 5 idle states. The description of these idle states is exposed via the 6 node @power-mgt in the device-tree by the firmware. 9 ---------------- 10 Typically each idle state has the following associated properties: 12 - name: The name of the idle state as defined by the firmware. 14 - flags: indicating some aspects of this idle states such as the 15 extent of state-loss, whether timebase is stopped on this 16 idle states and so on. The flag bits are as follows: 18 - exit-latency: The latency involved in transitioning the state of the [all …]
|
| /kernel/linux/linux-6.6/Documentation/admin-guide/pm/ |
| D | cpuidle.rst | 1 .. SPDX-License-Identifier: GPL-2.0 8 CPU Idle Time Management 21 memory or executed. Those states are the *idle* states of the processor. 23 Since part of the processor hardware is not used in idle states, entering them 27 CPU idle time management is an energy-efficiency feature concerned about using 28 the idle states of processors for this purpose. 31 ------------ 33 CPU idle time management operates on CPUs as seen by the *CPU scheduler* (that 37 software as individual single-core processors. In other words, a CPU is an 44 enter an idle state, that applies to the processor as a whole. [all …]
|
| D | intel_idle.rst | 1 .. SPDX-License-Identifier: GPL-2.0 5 ``intel_idle`` CPU Idle Time Management Driver 17 :doc:`CPU idle time management subsystem <cpuidle>` in the Linux kernel 18 (``CPUIdle``). It is the default CPU idle time management driver for the 24 Documentation/admin-guide/pm/cpuidle.rst if you have not done that yet.] 27 logical CPU executing it is idle and so it may be possible to put some of the 28 processor's functional blocks into low-power states. That instruction takes two 38 only way to pass early-configuration-time parameters to it is via the kernel 42 .. _intel-idle-enumeration-of-states: 44 Enumeration of Idle States [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/arm/msm/ |
| D | qcom,idle-state.txt | 1 QCOM Idle States for cpuidle driver 3 ARM provides idle-state node to define the cpuidle states, as defined in [1]. 4 cpuidle-qcom is the cpuidle driver for Qualcomm SoCs and uses these idle 5 states. Idle states have different enter/exit latency and residency values. 6 The idle states supported by the QCOM SoC are defined as - 16 trigger to execute the SPM state machine. The SPM state machine waits for the 18 hierarchy to enter standby states, when all cpus are idle. An interrupt brings 19 the SPM state machine out of its wait, the next step is to ensure that the 21 execution. This state is defined as a generic ARM WFI state by the ARM cpuidle 22 driver and is not defined in the DT. The SPM state machine should be [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/arm/msm/ |
| D | qcom,idle-state.txt | 1 QCOM Idle States for cpuidle driver 3 ARM provides idle-state node to define the cpuidle states, as defined in [1]. 4 cpuidle-qcom is the cpuidle driver for Qualcomm SoCs and uses these idle 5 states. Idle states have different enter/exit latency and residency values. 6 The idle states supported by the QCOM SoC are defined as - 16 trigger to execute the SPM state machine. The SPM state machine waits for the 18 hierarchy to enter standby states, when all cpus are idle. An interrupt brings 19 the SPM state machine out of its wait, the next step is to ensure that the 21 execution. This state is defined as a generic ARM WFI state by the ARM cpuidle 22 driver and is not defined in the DT. The SPM state machine should be [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/arm/ |
| D | idle-states.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/arm/idle-states.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: ARM idle states binding description 10 - Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> 14 1 - Introduction 18 where cores can be put in different low-power states (ranging from simple wfi 20 range of dynamic idle states that a processor can enter at run-time, can be 22 enter/exit specific idle states on a given processor. [all …]
|
| /kernel/linux/linux-5.10/drivers/cpuidle/governors/ |
| D | teo.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Timer events oriented CPU idle governor 11 * wakeups from idle states. Moreover, information about what happened in the 13 * idle state with target residency within the time to the closest timer is 14 * likely to be suitable for the upcoming idle time of the CPU and, if not, then 15 * which of the shallower idle states to choose. 17 * Of course, non-timer wakeup sources are more important in some use cases and 18 * they can be covered by taking a few most recent idle time intervals of the 20 * idle duration values greater than the time till the closest timer, as the 24 * Thus this governor estimates whether or not the upcoming idle time of the CPU [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/cpu/ |
| D | idle-states.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/cpu/idle-states.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Idle states 10 - Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> 11 - Anup Patel <anup@brainfault.org> 15 1 - Introduction 18 ARM and RISC-V systems contain HW capable of managing power consumption 19 dynamically, where cores can be put in different low-power states (ranging [all …]
|
| /kernel/linux/linux-6.6/drivers/cpuidle/governors/ |
| D | teo.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Timer events oriented CPU idle governor 6 * Copyright (C) 2018 - 2021 Intel Corporation 9 * Util-awareness mechanism: 15 * DOC: teo-description 20 * wakeups from idle states. Moreover, information about what happened in the 22 * idle state with target residency within the (known) time till the closest 24 * the upcoming CPU idle period and, if not, then which of the shallower idle 27 * Of course, non-timer wakeup sources are more important in some use cases 28 * which can be covered by taking a few most recent idle time intervals of the [all …]
|
| /kernel/linux/linux-6.6/drivers/thermal/ |
| D | cpuidle_cooling.c | 1 // SPDX-License-Identifier: GPL-2.0 21 * struct cpuidle_cooling_device - data for the idle cooling device 22 * @ii_dev: an atomic to keep track of the last task exiting the idle cycle 23 * @state: a normalized integer giving the state of the cooling device 27 unsigned long state; member 31 * cpuidle_cooling_runtime - Running time computation 32 * @idle_duration_us: CPU idle time to inject in microseconds 33 * @state: a percentile based number 35 * The running duration is computed from the idle injection duration 36 * which is fixed. If we reach 100% of idle injection ratio, that [all …]
|
| /kernel/linux/linux-5.10/drivers/thermal/ |
| D | cpuidle_cooling.c | 1 // SPDX-License-Identifier: GPL-2.0 20 * struct cpuidle_cooling_device - data for the idle cooling device 21 * @ii_dev: an atomic to keep track of the last task exiting the idle cycle 22 * @state: a normalized integer giving the state of the cooling device 26 unsigned long state; member 32 * cpuidle_cooling_runtime - Running time computation 33 * @idle_duration_us: CPU idle time to inject in microseconds 34 * @state: a percentile based number 36 * The running duration is computed from the idle injection duration 37 * which is fixed. If we reach 100% of idle injection ratio, that [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/mux/ |
| D | mux-controller.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/mux/mux-controller.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Peter Rosin <peda@axentia.se> 19 A mux controller provides a number of states to its consumers, and the state 20 space is a simple zero-based enumeration. I.e. 0-1 for a 2-way multiplexer, 21 0-7 for an 8-way multiplexer, etc. 25 -------------------- 28 specifier using the '#mux-control-cells' or '#mux-state-cells' property. [all …]
|
| /kernel/linux/linux-6.6/tools/power/cpupower/man/ |
| D | cpupower-idle-info.1 | 1 .TH "CPUPOWER-IDLE-INFO" "1" "0.1" "" "cpupower Manual" 4 cpupower\-idle\-info \- Utility to retrieve cpu idle kernel information 7 cpupower [ \-c cpulist ] idle\-info [\fIoptions\fP] 10 A tool which prints out per cpu idle information helpful to developers and interested users. 14 \fB\-f\fR \fB\-\-silent\fR 15 Only print a summary of all available C-states in the system. 17 \fB\-e\fR \fB\-\-proc\fR 19 Prints out idle information in old /proc/acpi/processor/*/power format. This 23 .SH IDLE\-INFO DESCRIPTIONS 24 CPU sleep state statistics and descriptions are retrieved from sysfs files, [all …]
|
| D | cpupower-idle-set.1 | 1 .TH "CPUPOWER-IDLE-SET" "1" "0.1" "" "cpupower Manual" 4 cpupower\-idle\-set \- Utility to set cpu idle state specific kernel options 7 cpupower [ \-c cpulist ] idle\-set [\fIoptions\fP] 10 The cpupower idle\-set subcommand allows to set cpu idle, also called cpu 11 sleep state, specific options offered by the kernel. One example is disabling 16 \fB\-d\fR \fB\-\-disable\fR <STATE_NO> 17 Disable a specific processor sleep state. 19 \fB\-e\fR \fB\-\-enable\fR <STATE_NO> 20 Enable a specific processor sleep state. 22 \fB\-D\fR \fB\-\-disable-by-latency\fR <LATENCY> [all …]
|
| /kernel/linux/linux-5.10/tools/power/cpupower/man/ |
| D | cpupower-idle-info.1 | 1 .TH "CPUPOWER-IDLE-INFO" "1" "0.1" "" "cpupower Manual" 4 cpupower\-idle\-info \- Utility to retrieve cpu idle kernel information 7 cpupower [ \-c cpulist ] idle\-info [\fIoptions\fP] 10 A tool which prints out per cpu idle information helpful to developers and interested users. 14 \fB\-f\fR \fB\-\-silent\fR 15 Only print a summary of all available C-states in the system. 17 \fB\-e\fR \fB\-\-proc\fR 19 Prints out idle information in old /proc/acpi/processor/*/power format. This 23 .SH IDLE\-INFO DESCRIPTIONS 24 CPU sleep state statistics and descriptions are retrieved from sysfs files, [all …]
|
| D | cpupower-idle-set.1 | 1 .TH "CPUPOWER-IDLE-SET" "1" "0.1" "" "cpupower Manual" 4 cpupower\-idle\-set \- Utility to set cpu idle state specific kernel options 7 cpupower [ \-c cpulist ] idle\-info [\fIoptions\fP] 10 The cpupower idle\-set subcommand allows to set cpu idle, also called cpu 11 sleep state, specific options offered by the kernel. One example is disabling 16 \fB\-d\fR \fB\-\-disable\fR <STATE_NO> 17 Disable a specific processor sleep state. 19 \fB\-e\fR \fB\-\-enable\fR <STATE_NO> 20 Enable a specific processor sleep state. 22 \fB\-D\fR \fB\-\-disable-by-latency\fR <LATENCY> [all …]
|
| /kernel/linux/linux-6.6/Documentation/driver-api/pm/ |
| D | cpuidle.rst | 1 .. SPDX-License-Identifier: GPL-2.0 5 CPU Idle Time Management 13 CPU Idle Time Management Subsystem 18 cores) is idle after an interrupt or equivalent wakeup event, which means that 19 there are no tasks to run on it except for the special "idle" task associated 21 belongs to. That can be done by making the idle logical CPU stop fetching 23 depended on by it into an idle state in which they will draw less power. 25 However, there may be multiple different idle states that can be used in such a 28 particular idle state. That is the role of the CPU idle time management 35 units: *governors* responsible for selecting idle states to ask the processor [all …]
|
| /kernel/linux/linux-5.10/Documentation/driver-api/pm/ |
| D | cpuidle.rst | 1 .. SPDX-License-Identifier: GPL-2.0 5 CPU Idle Time Management 13 CPU Idle Time Management Subsystem 18 cores) is idle after an interrupt or equivalent wakeup event, which means that 19 there are no tasks to run on it except for the special "idle" task associated 21 belongs to. That can be done by making the idle logical CPU stop fetching 23 depended on by it into an idle state in which they will draw less power. 25 However, there may be multiple different idle states that can be used in such a 28 particular idle state. That is the role of the CPU idle time management 35 units: *governors* responsible for selecting idle states to ask the processor [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/power/ |
| D | domain-idle-state.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/power/domain-idle-state.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: PM Domain Idle States 10 - Ulf Hansson <ulf.hansson@linaro.org> 13 A domain idle state node represents the state parameters that will be used to 14 select the state when there are no active components in the PM domain. 18 const: domain-idle-states 21 "^(cpu|cluster|domain)-": [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/power/ |
| D | domain-idle-state.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/power/domain-idle-state.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: PM Domain Idle States binding description 10 - Ulf Hansson <ulf.hansson@linaro.org> 13 A domain idle state node represents the state parameters that will be used to 14 select the state when there are no active components in the PM domain. 18 const: domain-idle-states 21 "^(cpu|cluster|domain)-": [all …]
|
| /kernel/linux/linux-5.10/Documentation/driver-api/thermal/ |
| D | cpu-idle-cooling.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 CPU Idle Cooling 8 ---------- 26 budget lower than the requested one and under-utilize the CPU, thus 27 losing performance. In other words, one OPP under-utilizes the CPU 33 ---------- 37 decrease. Acting on the idle state duration or the idle cycle 47 At a specific OPP, we can assume that injecting idle cycle on all CPUs 49 idle state target residency, we lead to dropping the static and the 51 this state). So the sustainable power with idle cycles has a linear [all …]
|
| /kernel/linux/linux-6.6/Documentation/driver-api/thermal/ |
| D | cpu-idle-cooling.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 CPU Idle Cooling 8 ---------- 26 budget lower than the requested one and under-utilize the CPU, thus 27 losing performance. In other words, one OPP under-utilizes the CPU 33 ---------- 37 decrease. Acting on the idle state duration or the idle cycle 47 At a specific OPP, we can assume that injecting idle cycle on all CPUs 49 idle state target residency, we lead to dropping the static and the 51 this state). So the sustainable power with idle cycles has a linear [all …]
|