Home
last modified time | relevance | path

Searched +full:idle +full:- +full:state (Results 1 – 25 of 1027) sorted by relevance

12345678910>>...42

/kernel/linux/linux-5.10/Documentation/admin-guide/pm/
Dcpuidle.rst1 .. 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 …]
Dintel_idle.rst1 .. 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 …]
Dsuspend-flows.rst1 .. SPDX-License-Identifier: GPL-2.0
12 At least one global system-wide transition needs to be carried out for the
13 system to get from the working state into one of the supported
14 :doc:`sleep states <sleep-states>`. Hibernation requires more than one
16 referred to as *system-wide suspend* (or simply *system suspend*) states, need
19 For those sleep states, the transition from the working state of the system into
20 the target sleep state is referred to as *system suspend* too (in the majority
21 of cases, whether this means a transition or a sleep state of the system should
22 be clear from the context) and the transition back from the sleep state into the
23 working state is referred to as *system resume*.
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/powerpc/opal/
Dpower-mgt.txt1 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/arm/msm/
Dqcom,idle-state.txt1 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/
Didle-states.yaml1 # 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/
Dteo.c1 // 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-5.10/drivers/thermal/
Dcpuidle_cooling.c1 // 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-5.10/tools/power/cpupower/man/
Dcpupower-idle-info.11 .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 …]
Dcpupower-idle-set.11 .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 …]
Dcpupower-monitor.11 .TH CPUPOWER\-MONITOR "1" "22/02/2011" "" "cpupower Manual"
3 cpupower\-monitor \- Report processor frequency and idle statistics
7 .RB "\-l"
10 .RB [ -c ] [ "\-m <mon1>," [ "<mon2>,..." ] ]
11 .RB [ "\-i seconds" ]
14 .RB [ -c ][ "\-m <mon1>," [ "<mon2>,..." ] ]
18 \fBcpupower-monitor \fP reports processor topology, frequency and idle power
19 state statistics. Either \fBcommand\fP is forked and
22 \fBcpupower-monitor \fP implements independent processor sleep state and
24 directly reading out hardware registers. Use \-l to get an overview which are
[all …]
/kernel/linux/linux-5.10/Documentation/driver-api/pm/
Dcpuidle.rst1 .. 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/power/
Ddomain-idle-state.yaml1 # 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 …]
Dpower-domain.yaml1 # 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/driver-api/thermal/
Dcpu-idle-cooling.rst1 .. 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 …]
Dintel_powerclamp.rst6 - Arjan van de Ven <arjan@linux.intel.com>
7 - Jacob Pan <jacob.jun.pan@linux.intel.com>
12 - Goals and Objectives
15 - Idle Injection
16 - Calibration
19 - Effectiveness and Limitations
20 - Power vs Performance
21 - Scalability
22 - Calibration
23 - Comparison with Alternative Techniques
[all …]
/kernel/linux/linux-5.10/drivers/cpuidle/
Ddt_idle_states.c1 // 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()
31 * state enter function. in init_state_node()
33 idle_state->enter = match_id->data; in init_state_node()
35 * Since this is not a "coupled" state, it's safe to assume interrupts 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()
[all …]
Dcoupled.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * coupled.c - helper functions to enter the same idle state on multiple cpus
27 * will corrupt the gic state unless the other cpu runs a work
28 * around). Each cpu has a power state that it can enter without
32 * sometimes the whole SoC). Entering a coupled power state must
36 * WFI state until all cpus are ready to enter a coupled state, at
37 * which point the coupled state function will be called on all
40 * Once all cpus are ready to enter idle, they are woken by an smp
42 * cpus will find work to do, and choose not to enter idle. A
44 * power state enter function at the same time. During this pass,
[all …]
Dcpuidle-arm.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * ARM/ARM64 generic CPU idle driver.
25 * arm_enter_idle_state - Programs CPU to enter the specified state
29 * idx: state index
32 * specified target state selected by the governor.
38 * Pass idle state index to arm_cpuidle_suspend which in turn in arm_enter_idle_state()
39 * will call the CPU ops suspend protocol with idle index as a in arm_enter_idle_state()
49 * State at index 0 is standby wfi and considered standard
51 * can't be used as "state 0", DT bindings must be implemented
53 * handler for idle state index 0.
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/i2c/
Di2c-mux-pinctrl.txt1 Pinctrl-based I2C Bus Mux
7 +-----+ +-----+
9 +------------------------+ +-----+ +-----+
11 | /----|------+--------+
12 | +---+ +------+ | child bus A, on first set of pins
13 | |I2C|---|Pinmux| |
14 | +---+ +------+ | child bus B, on second set of pins
15 | \----|------+--------+--------+
17 +------------------------+ +-----+ +-----+ +-----+
19 +-----+ +-----+ +-----+
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/thermal/
Dthermal-idle.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
4 ---
5 $id: http://devicetree.org/schemas/thermal/thermal-idle.yaml#
6 $schema: http://devicetree.org/meta-schemas/core.yaml#
8 title: Thermal idle cooling device binding
11 - Daniel Lezcano <daniel.lezcano@linaro.org>
14 The thermal idle cooling device allows the system to passively
15 mitigate the temperature on the device by injecting idle cycles,
18 This binding describes the thermal idle node.
22 const: thermal-idle
[all …]
/kernel/linux/linux-5.10/arch/powerpc/platforms/powernv/
Didle.c1 // SPDX-License-Identifier: GPL-2.0-or-later
15 #include <asm/asm-prototypes.h>
21 #include <asm/code-patching.h>
29 /* Power ISA 3.0 allows for stop states 0x0 - 0xF */
40 * The default stop state that will be used by ppc_md.power_save
48 * First stop state levels when SPR and TB loss can occur.
54 * psscr value and mask of the deepest stop idle state.
161 * Used to store fastsleep workaround state
162 * 0 - Workaround applied/undone at fastsleep entry/exit path (Default)
163 * 1 - Workaround applied once, never undone.
[all …]
/kernel/linux/linux-5.10/kernel/sched/
Didle.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Generic entry points for the idle threads and
4 * implementation of the idle task scheduling class.
17 * sched_idle_set_state - Record idle state for the current CPU.
18 * @idle_state: State to record.
32 cpu_idle_force_poll--; in cpu_idle_poll_ctrl()
85 * default_idle_call - Default CPU idle routine.
104 * rcu_idle_enter() relies on lockdep IRQ state, so switch that in default_idle_call()
105 * last -- this is very similar to the entry code. in default_idle_call()
135 return -EBUSY; in call_cpuidle_s2idle()
[all …]
/kernel/linux/linux-5.10/kernel/time/
Dtick-sched.h1 /* SPDX-License-Identifier: GPL-2.0 */
24 * struct tick_sched - sched tick emulation and no idle tick control/stats
28 * @nohz_mode: Mode - one state of tick_nohz_mode
29 * @inidle: Indicator that the CPU is in the tick idle mode
30 * @tick_stopped: Indicator that the idle tick has been stopped
31 * @idle_active: Indicator that the CPU is actively in the tick idle mode;
33 * @do_timer_lst: CPU was the last one doing do_timer before going idle
40 * @idle_jiffies: jiffies at the entry to idle for idle time accounting
41 * @idle_calls: Total number of idle calls
42 * @idle_sleeps: Number of idle calls, where the sched tick was stopped
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/mux/
Dmux-controller.txt10 A mux controller provides a number of states to its consumers, and the state
11 space is a simple zero-based enumeration. I.e. 0-1 for a 2-way multiplexer,
12 0-7 for an 8-way multiplexer, etc.
16 ---------
19 want to use with a property containing a 'mux-ctrl-list':
21 mux-ctrl-list ::= <single-mux-ctrl> [mux-ctrl-list]
22 single-mux-ctrl ::= <mux-ctrl-phandle> [mux-ctrl-specifier]
23 mux-ctrl-phandle : phandle to mux controller node
24 mux-ctrl-specifier : array of #mux-control-cells specifying the
27 Mux controller properties should be named "mux-controls". The exact meaning of
[all …]

12345678910>>...42