Home
last modified time | relevance | path

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

12345678

/linux/Documentation/devicetree/bindings/power/
H A 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 <rafael@kernel.org>
11 - Kevin Hilman <khilman@kernel.org>
12 - Ulf Hansson <ulf.hansson@linaro.org>
20 This device tree binding can be used to bind PM domain consumer devices with
21 their PM domains provided by PM domain providers. A PM domain provider can be
24 phandle arguments (so called PM domain specifiers) of length specified by the
[all …]
/linux/Documentation/devicetree/bindings/arm/
H A Dpsci.yaml1 # SPDX-License-Identifier: GPL-2.0
3 ---
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Power State Coordination Interface (PSCI)
10 - Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
14 ARM DEN 0022A ("Power State Coordination Interface System Software on ARM
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
31 [2] Power State Coordination Interface (PSCI) specification
[all …]
/linux/drivers/cpuidle/
H A Dcpuidle-riscv-sbi.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * RISC-V SBI CPU idle driver.
9 #define pr_fmt(fmt) "cpuidle-riscv-sbi: " fmt
40 u32 state; member
48 static inline void sbi_set_domain_state(u32 state) in sbi_set_domain_state() argument
52 data->available = true; in sbi_set_domain_state()
53 data->state = state; in sbi_set_domain_state()
60 return data->state; in sbi_get_domain_state()
67 data->available = false; in sbi_clear_domain_state()
74 return data->available; in sbi_is_domain_state_available()
[all …]
H A Dcpuidle-psci.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * PSCI CPU idle driver.
30 #include "cpuidle-psci.h"
42 u32 state; member
50 u32 state) in psci_set_domain_state() argument
54 ds->pd = pd; in psci_set_domain_state()
55 ds->state_idx = state_idx; in psci_set_domain_state()
56 ds->state = state; in psci_set_domain_state()
61 __this_cpu_write(psci_domain_state.state, 0); in psci_clear_domain_state()
69 u32 *states = data->psci_states; in __psci_enter_domain_idle_state()
[all …]
H A Ddt_idle_genpd.c1 // SPDX-License-Identifier: GPL-2.0-only
12 #define pr_fmt(fmt) "dt-idle-genpd: " fmt
29 u32 state, *state_buf; in pd_parse_state_nodes() local
32 ret = parse_state(to_of_node(states[i].fwnode), &state); in pd_parse_state_nodes()
38 ret = -ENOMEM; in pd_parse_state_nodes()
41 *state_buf = state; in pd_parse_state_nodes()
48 i--; in pd_parse_state_nodes()
49 for (; i >= 0; i--) in pd_parse_state_nodes()
61 /* Parse the domain idle states. */ in pd_parse_states()
66 /* Fill out the dt specifics for each found state. */ in pd_parse_states()
[all …]
H A Dcpuidle-psci-domain.c1 // SPDX-License-Identifier: GPL-2.0
3 * PM domains for CPUs via genpd - managed by cpuidle-psci.
22 #include "cpuidle-psci.h"
34 struct genpd_power_state *state = &pd->states[pd->state_idx]; in psci_pd_power_off() local
37 if (!state->data) in psci_pd_power_off()
40 /* OSI mode is enabled, set the corresponding domain state. */ in psci_pd_power_off()
41 pd_state = state->data; in psci_pd_power_off()
42 psci_set_domain_state(pd, pd->state_idx, *pd_state); in psci_pd_power_off()
52 int ret = -ENOMEM; in psci_pd_init()
62 pd->flags |= GENPD_FLAG_IRQ_SAFE | GENPD_FLAG_CPU_DOMAIN; in psci_pd_init()
[all …]
/linux/Documentation/trace/coresight/
H A Dcoresight-cpu-debug.rst9 ------------
11 Coresight CPU debug module is defined in ARMv8-a architecture reference manual
13 debug module and it is mainly used for two modes: self-hosted debug and
16 explore debugging method which rely on self-hosted debug mode, this document
19 The debug module provides sample-based profiling extension, which can be used
20 to sample CPU program counter, secure state and exception level, etc; usually
21 every CPU has one dedicated debug module to be connected. Based on self-hosted
29 --------------
31 - During driver registration, it uses EDDEVID and EDDEVID1 - two device ID
32 registers to decide if sample-based profiling is implemented or not. On some
[all …]
/linux/arch/arm64/boot/dts/qcom/
H A Dsm4450.dtsi1 // SPDX-License-Identifier: BSD-3-Clause
6 #include <dt-bindings/clock/qcom,rpmh.h>
7 #include <dt-bindings/clock/qcom,sm4450-camcc.h>
8 #include <dt-bindings/clock/qcom,sm4450-dispcc.h>
9 #include <dt-bindings/clock/qcom,sm4450-gcc.h>
10 #include <dt-bindings/clock/qcom,sm4450-gpucc.h>
11 #include <dt-bindings/gpio/gpio.h>
12 #include <dt-bindings/interrupt-controller/arm-gic.h>
13 #include <dt-bindings/power/qcom,rpmhpd.h>
14 #include <dt-bindings/power/qcom-rpmpd.h>
[all …]
H A Dsdx75.dtsi1 // SPDX-License-Identifier: BSD-3-Clause
9 #include <dt-bindings/clock/qcom,rpmh.h>
10 #include <dt-bindings/clock/qcom,sdx75-gcc.h>
11 #include <dt-bindings/dma/qcom-gpi.h>
12 #include <dt-bindings/gpio/gpio.h>
13 #include <dt-bindings/interconnect/qcom,icc.h>
14 #include <dt-bindings/interconnect/qcom,sdx75.h>
15 #include <dt-bindings/interrupt-controller/arm-gic.h>
16 #include <dt-bindings/mailbox/qcom-ipcc.h>
17 #include <dt-bindings/power/qcom,rpmhpd.h>
[all …]
H A Dsdm670.dtsi1 // SPDX-License-Identifier: GPL-2.0
9 #include <dt-bindings/clock/qcom,camcc-sdm845.h>
10 #include <dt-bindings/clock/qcom,dispcc-sdm845.h>
11 #include <dt-bindings/clock/qcom,dsi-phy-28nm.h>
12 #include <dt-bindings/clock/qcom,gcc-sdm845.h>
13 #include <dt-bindings/clock/qcom,gpucc-sdm845.h>
14 #include <dt-bindings/clock/qcom,rpmh.h>
15 #include <dt-bindings/dma/qcom-gpi.h>
16 #include <dt-bindings/gpio/gpio.h>
17 #include <dt-bindings/interconnect/qcom,osm-l3.h>
[all …]
H A Dqdu1000.dtsi1 // SPDX-License-Identifier: BSD-3-Clause
6 #include <dt-bindings/clock/qcom,qdu1000-gcc.h>
7 #include <dt-bindings/clock/qcom,rpmh.h>
8 #include <dt-bindings/dma/qcom-gpi.h>
9 #include <dt-bindings/gpio/gpio.h>
10 #include <dt-bindings/interconnect/qcom,icc.h>
11 #include <dt-bindings/interconnect/qcom,qdu1000-rpmh.h>
12 #include <dt-bindings/interrupt-controller/arm-gic.h>
13 #include <dt-bindings/power/qcom-rpmpd.h>
14 #include <dt-bindings/soc/qcom,rpmh-rsc.h>
[all …]
H A Dsm6115.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
6 #include <dt-bindings/clock/qcom,dsi-phy-28nm.h>
7 #include <dt-bindings/clock/qcom,gcc-sm6115.h>
8 #include <dt-bindings/clock/qcom,sm6115-dispcc.h>
9 #include <dt-bindings/clock/qcom,sm6115-gpucc.h>
10 #include <dt-bindings/clock/qcom,rpmcc.h>
11 #include <dt-bindings/dma/qcom-gpi.h>
12 #include <dt-bindings/firmware/qcom,scm.h>
13 #include <dt-bindings/gpio/gpio.h>
14 #include <dt-bindings/interconnect/qcom,rpm-icc.h>
[all …]
H A Dmsm8917.dtsi1 // SPDX-License-Identifier: GPL-2.0-only
3 #include <dt-bindings/clock/qcom,dsi-phy-28nm.h>
4 #include <dt-bindings/clock/qcom,gcc-msm8917.h>
5 #include <dt-bindings/clock/qcom,rpmcc.h>
6 #include <dt-bindings/interrupt-controller/arm-gic.h>
7 #include <dt-bindings/power/qcom-rpmpd.h>
8 #include <dt-bindings/thermal/thermal.h>
11 interrupt-parent = <&intc>;
13 #address-cells = <2>;
14 #size-cells = <2>;
[all …]
H A Dsdm630.dtsi1 // SPDX-License-Identifier: BSD-3-Clause
7 #include <dt-bindings/clock/qcom,dsi-phy-28nm.h>
8 #include <dt-bindings/clock/qcom,gcc-sdm660.h>
9 #include <dt-bindings/clock/qcom,gpucc-sdm660.h>
10 #include <dt-bindings/clock/qcom,mmcc-sdm660.h>
11 #include <dt-bindings/clock/qcom,rpmcc.h>
12 #include <dt-bindings/firmware/qcom,scm.h>
13 #include <dt-bindings/interconnect/qcom,sdm660.h>
14 #include <dt-bindings/power/qcom-rpmpd.h>
15 #include <dt-bindings/gpio/gpio.h>
[all …]
/linux/kernel/sched/
H A Dext_idle.c1 // SPDX-License-Identifier: GPL-2.0
3 * BPF extensible scheduler class: Documentation/scheduler/sched-ext.rst
5 * Built-in idle CPU tracking policy.
14 /* Enable/disable built-in idle CPU selection policy */
17 /* Enable/disable per-node idle cpumasks */
27 * cpumasks to track idle CPUs within each NUMA node.
30 * from is used to track all the idle CPUs in the system.
38 * Global host-wide idle cpumasks (used when SCX_OPS_BUILTIN_IDLE_PER_NODE
44 * Per-node idle cpumasks.
49 * Local per-CPU cpumasks (used to generate temporary idle cpumasks).
[all …]
/linux/drivers/pmdomain/
H A Dgovernor.c1 // SPDX-License-Identifier: GPL-2.0
3 * drivers/base/power/domain_governor.c - Governors for device PM domains.
21 if (dev->power.subsys_data && dev->power.subsys_data->domain_data) { in dev_update_qos_constraint()
22 struct gpd_timing_data *td = dev_gpd_data(dev)->td; in dev_update_qos_constraint()
25 * Only take suspend-time QoS constraints of devices into in dev_update_qos_constraint()
31 constraint_ns = td ? td->effective_constraint_ns : in dev_update_qos_constraint()
35 * The child is not in a domain and there's no info on its in dev_update_qos_constraint()
51 * default_suspend_ok - Default PM domain governor routine to suspend devices.
58 struct gpd_timing_data *td = dev_gpd_data(dev)->td; in default_suspend_ok()
64 spin_lock_irqsave(&dev->power.lock, flags); in default_suspend_ok()
[all …]
/linux/arch/arm/mach-omap2/
H A Dclockdomain.h1 /* SPDX-License-Identifier: GPL-2.0-only */
6 * Copyright (C) 2008-2011 Nokia Corporation
29 * CLKDM_MISSING_IDLE_REPORTING: The idle status of the IP blocks and
31 * the PRCM when determining whether the clockdomain is idle.
33 * hardware-supervised idle mode, the PRCM may transition the
34 * enclosing powerdomain to a low power state, even when devices
38 * force-sleep mode, then the HW_AUTO mode will be used to put the
40 * the force-wakeup mode, then it will be used whenever a clock or
58 * struct clkdm_autodep - clkdm deps to add when entering/exiting hwsup mode
59 * @clkdm: clockdomain to add wkdep+sleepdep on - set name member only
[all …]
H A Dcm33xx.c1 // SPDX-License-Identifier: GPL-2.0-only
5 * Copyright (C) 2011-2012 Texas Instruments Incorporated - https://www.ti.com/
20 #include "cm-regbits-34xx.h"
21 #include "cm-regbits-33xx.h"
33 * 0x2 idle: Module is in Idle mode (only OCP part). It is functional if
57 /* Read-modify-write a register in CM */
82 * _clkctrl_idlest - read a CM_*_CLKCTRL register; mask & shift IDLEST bitfield
98 * _is_module_ready - can module registers be accessed without causing an abort?
116 * _clktrctrl_write - write @c to a CM_CLKSTCTRL.CLKTRCTRL register bitfield
121 * @c must be the unshifted value for CLKTRCTRL - i.e., this function
[all …]
/linux/Documentation/trace/
H A Devents-power.rst8 - Power state switch which reports events related to suspend (S-states),
9 cpuidle (C-states) and cpufreq (P-states)
10 - System clock related changes
11 - Power domains related changes and transitions
18 1. Power state switch events
22 -----------------
24 A 'cpu' event class gathers the CPU-related events: cpuidle and
28 cpu_idle "state=%lu cpu_id=%lu"
29 cpu_frequency "state=%lu cpu_id=%lu"
36 machine_suspend "state=%lu"
[all …]
/linux/Documentation/ABI/testing/
H A Dsysfs-class-regulator1 What: /sys/class/regulator/.../state
7 state. This reports the regulator enable control, for
20 supplying power to the system (unless some non-Linux
23 'unknown' means software cannot determine the state, or
24 the reported state is invalid.
38 - off
39 - on
40 - error
41 - fast
42 - normal
[all …]
/linux/arch/arm64/boot/dts/freescale/
H A Dimx943.dtsi1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
10 #address-cells = <1>;
11 #size-cells = <0>;
13 idle-states {
14 entry-method = "psci";
16 cpu_pd_wait: cpu-pd-wait {
17 compatible = "arm,idle-state";
18 arm,psci-suspend-param = <0x0010033>;
19 local-timer-stop;
20 entry-latency-us = <1000>;
[all …]
/linux/include/linux/
H A Dcpu_pm.h1 /* SPDX-License-Identifier: GPL-2.0-only */
16 * When a CPU goes to a low power state that turns off power to the CPU's
17 * power domain, the contents of some blocks (floating point coprocessors,
18 * interrupt controllers, caches, timers) in the same power domain can
19 * be lost. The cpm_pm notifiers provide a method for platform idle, suspend,
29 * CPU. They are used to save per-cpu context for affected blocks.
31 * CPU cluster notifications apply to all CPUs in a single power domain. They
33 * after all the CPUs in the power domain have been notified of the low power
34 * state.
41 /* A single cpu is entering a low power state */
[all …]
/linux/tools/power/x86/turbostat/
H A Dturbostat.83 turbostat \- Report processor frequency and idle statistics
12 .RB [ "\--interval seconds" ]
15 idle power-state statistics, temperature and power on X86 processors.
19 in one-shot upon its completion.
22 The 5-second interval can be changed using the --interval option.
26 Options can be specified with a single or double '-', and only as much of the option
27 name as necessary to disambiguate it from others is necessary. Note that options are case-sensitiv…
29 \fB--add attributes\fP add column with counter having specified 'attributes'. The 'location' attri…
39 … event for given device from /sys/bus/event_source/devices/<device>/events/<event> eg. c1-residency
40 …perf/cstate_core/c1-residency would then use /sys/bus/event_source/devices/cstate_core/events/c1-r…
[all …]
/linux/include/xen/interface/io/
H A Dtpmif.h6 * This file is in the public domain.
14 * Xenbus state machine
19 * 3. Frontend populates ring-ref, event-channel, feature-protocol-v2
21 * 5. Backend maps grant and event channel, verifies feature-protocol-v2
23 * 7. Frontend verifies feature-protocol-v2, transitions to Connected
26 * 1. State is changed to XenbusStateClosing
28 * 3. Backend unmaps grant and event, changes state to InitWait
32 VTPM_STATE_IDLE, /* no contents / vTPM idle / cancel complete */
34 VTPM_STATE_FINISH, /* response ready / vTPM idle */
37 /* The backend should only change state to IDLE or FINISH, while the
[all …]
/linux/kernel/
H A Dcpu_pm.c1 // SPDX-License-Identifier: GPL-2.0-only
18 * Notifications for cpu_pm will be issued by the idle task itself, which can
53 * cpu_pm_register_notifier - register a driver with cpu_pm
74 * cpu_pm_unregister_notifier - unregister a driver with cpu_pm
94 * cpu_pm_enter - CPU low power entry notifier
96 * Notifies listeners that a single CPU is entering a low power state that may
97 * cause some blocks in the same power domain as the cpu to reset.
102 * co-processor, interrupt controller and its PM extensions, local CPU
115 * cpu_pm_exit - CPU low power exit notifier
117 * Notifies listeners that a single CPU is exiting a low power state that may
[all …]

12345678