| /OK3568_Linux_fs/kernel/drivers/cpuidle/ |
| H A 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() 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 …]
|
| H A D | cpuidle-powernv.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * cpuidle-powernv - idle state cpuidle driver. 4 * Adapted from drivers/cpuidle/cpuidle-pseries 26 * Expose only those Hardware idle states via the cpuidle framework 32 .name = "powernv_idle", 58 for (i = index + 1; i < drv->state_count; i++) { in get_snooze_timeout() 59 if (dev->states_usage[i].disable) in get_snooze_timeout() 62 return drv->states[i].target_residency * tb_ticks_per_usec; in get_snooze_timeout() 154 .name = "snooze", 193 drv->state_count = 0; in powernv_cpuidle_driver_init() [all …]
|
| H A D | cpuidle-arm.c | 1 // 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() 46 .name = "arm_idle", 49 * State at index 0 is standby wfi and considered standard 51 * can't be used as "state 0", DT bindings must be implemented [all …]
|
| H A D | cpuidle-psci.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * PSCI CPU idle driver. 30 #include "cpuidle-psci.h" 42 void psci_set_domain_state(u32 state) in psci_set_domain_state() argument 44 __this_cpu_write(domain_state, state); in psci_set_domain_state() 52 static inline int psci_enter_state(int idx, u32 state) in psci_enter_state() argument 54 return CPU_PM_CPU_IDLE_ENTER_PARAM(psci_cpu_suspend_enter, idx, state); in psci_enter_state() 62 u32 *states = data->psci_states; in __psci_enter_domain_idle_state() 63 struct device *pd_dev = data->dev; in __psci_enter_domain_idle_state() 64 u32 state; in __psci_enter_domain_idle_state() local [all …]
|
| /OK3568_Linux_fs/kernel/Documentation/admin-guide/pm/ |
| H A 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 …]
|
| H A 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 …]
|
| /OK3568_Linux_fs/kernel/arch/arm/mach-omap2/ |
| H A D | cpuidle34xx.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * linux/arch/arm/mach-omap2/cpuidle34xx.c 5 * OMAP3 CPU IDLE Routines 11 * Karthik Dasu <karthik-dp@ti.com> 17 * Richard Woodruff <r-woodruff2@ti.com> 36 /* Mach specific information to be recorded in the C-state driver_data */ 53 * entering idle. 65 /* In C1 do not allow PER state lower than CORE state */ 102 * omap3_enter_idle - Programs OMAP3 to enter the specified state 105 * @index: the index of state to be entered [all …]
|
| H A D | omap_hwmod.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (C) 2009-2011 Nokia Corporation 6 * Copyright (C) 2011-2012 Texas Instruments, Inc. 15 * ------------ 21 * TI's documentation, on-chip devices are referred to as "OMAP 26 * Most of the address and data flow between modules is via OCP-based 28 * interconnects that distribute the hardware clock tree, handle idle 32 * OMAP hwmod provides a consistent way to describe the on-chip 36 * to reset, enable, idle, and disable these hardware blocks. And 42 * ----------- [all …]
|
| H A D | clockdomain.h | 1 /* 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 57 * struct clkdm_autodep - clkdm deps to add when entering/exiting hwsup mode 58 * @clkdm: clockdomain to add wkdep+sleepdep on - set name member only [all …]
|
| H A D | cpuidle44xx.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * OMAP4+ CPU idle Routines 5 * Copyright (C) 2011-2013 Texas Instruments, Inc. 76 * omap_enter_idle_[simple/coupled] - OMAP4PLUS cpuidle entry functions 79 * @index: the index of state to be entered 82 * specified low power state selected by the governor. 83 * Returns the amount of time spent in the low power state. 101 cx->mpu_state_vote++; in omap_enter_idle_smp() 102 if (cx->mpu_state_vote == num_online_cpus()) { in omap_enter_idle_smp() 103 pwrdm_set_logic_retst(mpu_pd, cx->mpu_logic_state); in omap_enter_idle_smp() [all …]
|
| /OK3568_Linux_fs/kernel/tools/power/cpupower/man/ |
| H A D | cpupower-monitor.1 | 1 .TH CPUPOWER\-MONITOR "1" "22/02/2011" "" "cpupower Manual" 2 .SH NAME 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 [all …]
|
| H A D | cpupower-idle-set.1 | 1 .TH "CPUPOWER-IDLE-SET" "1" "0.1" "" "cpupower Manual" 2 .SH "NAME" 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. [all …]
|
| H A D | cpupower-idle-info.1 | 1 .TH "CPUPOWER-IDLE-INFO" "1" "0.1" "" "cpupower Manual" 2 .SH "NAME" 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 [all …]
|
| /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/powerpc/opal/ |
| H A 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 …]
|
| /OK3568_Linux_fs/kernel/drivers/idle/ |
| H A D | intel_idle.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * intel_idle.c - native hardware idle loop for modern Intel processors 5 * Copyright (c) 2013 - 2020, Intel Corporation. 20 * All CPUs have same idle states as boot CPU 23 * for preventing entry into deep C-states 25 * CPU will flush caches as needed when entering a C-state via MWAIT 33 * ACPI has a .suspend hack to turn off deep c-statees during suspend 39 /* un-comment DEBUG to enable pr_debug() statements */ 55 #include <asm/intel-family.h> 56 #include <asm/nospec-branch.h> [all …]
|
| /OK3568_Linux_fs/yocto/poky/scripts/pybootchartgui/pybootchartgui/ |
| H A D | parsing.py | 57 … raise ParseError("empty state: '%s' does not contain a valid bootchart" % ", ".join(paths)) 71 self.duration = self.end_time - self.start_time 82 # Crop the chart to the end of the first idle period after the given 85 idle = self.crop (writer, options.crop_after) 87 idle = None 90 self.times = [ idle ] 104 options.prune, idle, self.taskstats, 159 # re-parent any stray orphans if we can 180 k = min(k, len(util)-1) 185 avgload = sum(u[1] for u in util[j:k+1]) / (k-j+1) [all …]
|
| /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/mux/ |
| H A D | mux-controller.txt | 10 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 …]
|
| /OK3568_Linux_fs/kernel/Documentation/driver-api/pm/ |
| H A 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 …]
|
| /OK3568_Linux_fs/kernel/arch/arm64/boot/dts/qcom/ |
| H A D | sdm630.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 6 #include <dt-bindings/clock/qcom,gcc-sdm660.h> 7 #include <dt-bindings/clock/qcom,rpmcc.h> 8 #include <dt-bindings/gpio/gpio.h> 9 #include <dt-bindings/interrupt-controller/arm-gic.h> 12 interrupt-parent = <&intc>; 14 #address-cells = <2>; 15 #size-cells = <2>; 20 xo_board: xo-board { 21 compatible = "fixed-clock"; [all …]
|
| /OK3568_Linux_fs/kernel/drivers/gpu/drm/i915/gt/ |
| H A D | selftest_context.c | 2 * SPDX-License-Identifier: GPL-2.0 27 rq->sched.attr.priority = I915_PRIORITY_BARRIER; in request_sync() 36 lockdep_unpin_lock(&tl->mutex, rq->cookie); in request_sync() 37 mutex_unlock(&tl->mutex); in request_sync() 47 struct intel_timeline *tl = ce->timeline; in context_sync() 50 mutex_lock(&tl->mutex); in context_sync() 55 if (list_empty(&tl->requests)) in context_sync() 58 rq = list_last_entry(&tl->requests, typeof(*rq), link); in context_sync() 69 mutex_unlock(&tl->mutex); in context_sync() 72 i915_active_unlock_wait(&ce->active); in context_sync() [all …]
|
| /OK3568_Linux_fs/kernel/drivers/infiniband/sw/rxe/ |
| H A D | rxe_task.c | 1 // SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB 18 while ((ret = task->func(task->arg)) == 0) in __rxe_do_task() 21 task->ret = ret; in __rxe_do_task() 39 spin_lock_irqsave(&task->state_lock, flags); in rxe_do_task() 40 switch (task->state) { in rxe_do_task() 42 task->state = TASK_STATE_BUSY; in rxe_do_task() 43 spin_unlock_irqrestore(&task->state_lock, flags); in rxe_do_task() 47 task->state = TASK_STATE_ARMED; in rxe_do_task() 50 spin_unlock_irqrestore(&task->state_lock, flags); in rxe_do_task() 54 spin_unlock_irqrestore(&task->state_lock, flags); in rxe_do_task() [all …]
|
| /OK3568_Linux_fs/kernel/kernel/ |
| H A D | cpu.c | 35 #include <linux/percpu-rwsem.h> 51 * cpuhp_cpu_state - Per cpu hotplug state storage 52 * @state: The current cpu state 53 * @target: The target state 59 * @cb_state: The state for a single callback (install/uninstall) 61 * @done_up: Signal completion to the issuer of the task for cpu-up 62 * @done_down: Signal completion to the issuer of the task for cpu-down 65 enum cpuhp_state state; member 93 STATIC_LOCKDEP_MAP_INIT("cpuhp_state-up", &cpuhp_state_up_map); 95 STATIC_LOCKDEP_MAP_INIT("cpuhp_state-down", &cpuhp_state_down_map); [all …]
|
| /OK3568_Linux_fs/kernel/Documentation/devicetree/bindings/arm/ |
| H A 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 …]
|
| /OK3568_Linux_fs/kernel/arch/powerpc/platforms/4xx/ |
| H A D | cpm.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 8 * Based on arch/powerpc/platforms/44x/idle.c: 26 #include <asm/dcr-native.h> 50 const char *name; member 72 /* return old state, to restore later if needed */ in cpm_set() 80 /* save off initial state */ in cpm_idle_wait() 84 /* set wait state MSR */ in cpm_idle_wait() 87 /* return to initial state */ in cpm_idle_wait() 96 /* update CPM_ER state */ in cpm_idle_sleep() 99 /* go to wait state so that CPM0_ER[CPU] can take effect */ in cpm_idle_sleep() [all …]
|
| /OK3568_Linux_fs/kernel/include/linux/ |
| H A D | cpuidle.h | 2 * cpuidle.h - a generic framework for CPU idle power management 42 unsigned long long rejected; /* Number of times idle entry was rejected */ 50 char name[CPUIDLE_NAME_LEN]; member 67 * CPUs execute ->enter_s2idle with the local tick or entire timekeeping 68 * suspended, so it must not re-enable interrupts at any point (even 71 * This callback may point to the same function as ->enter if all of 79 /* Idle State Flags */ 81 #define CPUIDLE_FLAG_POLLING BIT(0) /* polling state */ 82 #define CPUIDLE_FLAG_COUPLED BIT(1) /* state applies to multiple cpus */ 83 #define CPUIDLE_FLAG_TIMER_STOP BIT(2) /* timer is stopped on this state */ [all …]
|