| /kernel/linux/linux-6.6/Documentation/admin-guide/pm/ |
| 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 …]
|
| D | cpuidle.rst | 1 .. SPDX-License-Identifier: GPL-2.0 8 CPU Idle Time Management 19 Modern processors are generally able to enter states in which the execution of 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 [all …]
|
| /kernel/linux/linux-5.10/Documentation/admin-guide/pm/ |
| 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 …]
|
| D | cpuidle.rst | 1 .. SPDX-License-Identifier: GPL-2.0 8 CPU Idle Time Management 19 Modern processors are generally able to enter states in which the execution of 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 [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 19 to power gating) according to OS PM policies. The CPU states representing the 20 range of dynamic idle states that a processor can enter at run-time, can be [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-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/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-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-5.10/tools/power/cpupower/man/ |
| 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 12 sleep states. This can be handy for power vs performance tuning. 16 \fB\-d\fR \fB\-\-disable\fR <STATE_NO> 19 \fB\-e\fR \fB\-\-enable\fR <STATE_NO> 22 \fB\-D\fR \fB\-\-disable-by-latency\fR <LATENCY> 23 Disable all idle states with a equal or higher latency than <LATENCY>. 25 Enable all idle states with a latency lower than <LATENCY>. [all …]
|
| 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 26 statistics when it enters or leaves an idle state, therefore on a very idle or [all …]
|
| /kernel/linux/linux-6.6/tools/power/cpupower/man/ |
| 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 12 sleep states. This can be handy for power vs performance tuning. 16 \fB\-d\fR \fB\-\-disable\fR <STATE_NO> 19 \fB\-e\fR \fB\-\-enable\fR <STATE_NO> 22 \fB\-D\fR \fB\-\-disable-by-latency\fR <LATENCY> 23 Disable all idle states with a equal or higher latency than <LATENCY>. 25 Enable all idle states with a latency lower than <LATENCY>. [all …]
|
| 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 26 statistics when it enters or leaves an idle state, therefore on a very idle or [all …]
|
| /kernel/linux/linux-6.6/drivers/cpuidle/ |
| D | Kconfig.arm | 1 # SPDX-License-Identifier: GPL-2.0-only 3 # ARM CPU Idle drivers 6 bool "Generic ARM CPU idle Driver" 12 It provides a generic idle driver whose idle states are configured 13 at run-time through DT nodes. The CPUidle suspend backend is 14 initialized by calling the CPU operations init idle hook 18 bool "PSCI CPU idle Driver" 24 It provides an idle driver that is capable of detecting and 25 managing idle states through the PSCI firmware interface. 28 - If the idle states are described with the non-hierarchical layout, [all …]
|
| D | dt_idle_states.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * DT idle states parsing code. 9 #define pr_fmt(fmt) "DT idle-states: " fmt 29 * pointer of the passed in struct of_device_id array to the idle in init_state_node() 32 idle_state->enter = match_id->data; in init_state_node() 38 idle_state->enter_s2idle = match_id->data; in init_state_node() 40 err = of_property_read_u32(state_node, "wakeup-latency-us", in init_state_node() 41 &idle_state->exit_latency); in init_state_node() 45 err = of_property_read_u32(state_node, "entry-latency-us", in init_state_node() 48 pr_debug(" * %pOF missing entry-latency-us property\n", in init_state_node() [all …]
|
| /kernel/linux/linux-5.10/drivers/cpuidle/ |
| D | dt_idle_states.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * DT idle states parsing code. 9 #define pr_fmt(fmt) "DT idle-states: " fmt 30 * pointer of the passed in struct of_device_id array to the idle in init_state_node() 33 idle_state->enter = match_id->data; in init_state_node() 39 idle_state->enter_s2idle = match_id->data; in init_state_node() 41 err = of_property_read_u32(state_node, "wakeup-latency-us", in init_state_node() 42 &idle_state->exit_latency); in init_state_node() 46 err = of_property_read_u32(state_node, "entry-latency-us", in init_state_node() 49 pr_debug(" * %pOF missing entry-latency-us property\n", in init_state_node() [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-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 - 18 hierarchy to enter standby states, when all cpus are idle. An interrupt brings 34 between the time it enters idle and the next known wake up. SPC mode is used 37 sequence for this idle state is programmed to power down the supply to the 44 code in the EL for the SoC. On SoCs with write-back L1 cache, the cache has to 50 be flushed, system bus, clocks - lowered, and SoC main XO clock gated and [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 - 18 hierarchy to enter standby states, when all cpus are idle. An interrupt brings 34 between the time it enters idle and the next known wake up. SPC mode is used 37 sequence for this idle state is programmed to power down the supply to the 44 code in the EL for the SoC. On SoCs with write-back L1 cache, the cache has to 50 be flushed, system bus, clocks - lowered, and SoC main XO clock gated and [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 25 * states to choose instead of it. 27 * Of course, non-timer wakeup sources are more important in some use cases [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/power/ |
| D | power-domain.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/power/power-domain.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Rafael J. Wysocki <rjw@rjwysocki.net> 11 - Kevin Hilman <khilman@kernel.org> 12 - Ulf Hansson <ulf.hansson@linaro.org> 24 \#power-domain-cells property in the PM domain provider node. 28 pattern: "^(power-controller|power-domain)([@-].*)?$" 30 domain-idle-states: [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/power/ |
| D | power-domain.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/power/power-domain.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Rafael J. Wysocki <rjw@rjwysocki.net> 11 - Kevin Hilman <khilman@kernel.org> 12 - Ulf Hansson <ulf.hansson@linaro.org> 24 \#power-domain-cells property in the PM domain provider node. 28 pattern: "^(power-controller|power-domain)([@-].*)?$" 30 domain-idle-states: [all …]
|
| /kernel/linux/linux-6.6/arch/arm64/boot/dts/qcom/ |
| D | sc7180-firmware-tfa.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 4 * Devices that use SC7180 with TrustedFirmware-A 10 /delete-property/ power-domains; 11 /delete-property/ power-domain-names; 13 cpu-idle-states = <&LITTLE_CPU_SLEEP_0 19 /delete-property/ power-domains; 20 /delete-property/ power-domain-names; 22 cpu-idle-states = <&LITTLE_CPU_SLEEP_0 28 /delete-property/ power-domains; 29 /delete-property/ power-domain-names; [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/arm/ |
| D | psci.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> 15 processors") can be used by Linux to initiate various CPU-centric power 25 r0 => 32-bit Function ID / return value 26 {r1 - r3} => Parameters 40 - description: 44 - description: 52 - const: arm,psci-0.2 [all …]
|