/openbmc/linux/Documentation/devicetree/bindings/cpu/ |
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/cpu/idle-states.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 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 22 run-time, can be specified through device tree bindings representing the [all …]
|
/openbmc/linux/Documentation/arch/arm/omap/ |
H A D | omap_pm.rst | 6 authors use these functions to communicate minimum latency or 13 - support the range of power management parameters present in the TI SRF; 15 - separate the drivers from the underlying PM parameter 17 latency framework or something else; 19 - specify PM parameters in terms of fundamental units, such as 20 latency and throughput, rather than units which are specific to OMAP 23 - allow drivers which are shared with other architectures (e.g., 24 DaVinci) to add these constraints in a way which won't affect non-OMAP 27 - can be implemented immediately with minimal disruption of other 34 1. Set the maximum MPU wakeup latency:: [all …]
|
/openbmc/linux/Documentation/ABI/testing/ |
H A D | sysfs-devices-power | 9 What: /sys/devices/.../power/wakeup 13 The /sys/devices/.../power/wakeup attribute allows the user 19 Some devices support "wakeup" events, which are hardware signals 21 have one of the following two values for the sysfs power/wakeup 31 For the devices that are not capable of generating system wakeup 40 space to control the run-time power management of the device. 61 with the main suspend/resume thread) during system-wide power 85 of signaled wakeup events associated with the device. This 86 attribute is read-only. If the device is not capable to wake up 96 number of times the processing of wakeup events associated with [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/net/ |
H A D | marvell-bt-8xxx.txt | 2 ------ 9 - compatible : should be one of the following: 10 * "marvell,sd8897-bt" (for SDIO) 11 * "marvell,sd8997-bt" (for SDIO) 16 - marvell,cal-data: Calibration data downloaded to the device during 20 - marvell,wakeup-pin: It represents wakeup pin number of the bluetooth chip. 21 firmware will use the pin to wakeup host system (u16). 22 - marvell,wakeup-gap-ms: wakeup gap represents wakeup latency of the host 25 - interrupt-names: Used only for USB based devices (See below) 26 - interrupts : specifies the interrupt pin number to the cpu. For SDIO, the [all …]
|
/openbmc/linux/tools/perf/scripts/perl/bin/ |
H A D | wakeup-latency-report | 2 # description: system-wide min/max/avg wakeup latency 3 perf script $@ -s "$PERF_EXEC_PATH"/scripts/perl/wakeup-latency.pl
|
/openbmc/linux/Documentation/virt/kvm/ |
H A D | halt-polling.rst | 1 .. SPDX-License-Identifier: GPL-2.0 7 The KVM halt polling system provides a feature within KVM whereby the latency 11 vcpus of a single vcore have ceded, the host kernel polls for wakeup conditions 14 Polling provides a latency advantage in cases where the guest can be run again 16 the order of a few micro-seconds, although performance benefits are workload 17 dependent. In the event that no wakeup source arrives during the polling 20 wakeup periods where the time spent halt polling is minimised and the time 27 The powerpc kvm-hv specific case is implemented in: 39 kvm_vcpu->halt_poll_ns 41 or in the case of powerpc kvm-hv, in the vcore struct: [all …]
|
/openbmc/linux/Documentation/admin-guide/pm/ |
H A D | cpuidle.rst | 1 .. SPDX-License-Identifier: GPL-2.0 27 CPU idle time management is an energy-efficiency feature concerned about using 31 ------------ 37 software as individual single-core processors. In other words, a CPU is an 46 Second, if the processor is multi-core, each core in it is able to follow at 61 Finally, each core in a multi-core processor may be able to follow more than one 66 multiple individual single-core "processors", referred to as *hardware threads* 67 (or hyper-threads specifically on Intel hardware), that each can follow one 78 --------- 107 next wakeup event, or there are strict latency constraints preventing any of the [all …]
|
H A D | sleep-states.rst | 1 .. SPDX-License-Identifier: GPL-2.0 13 Sleep states are global low-power states of the entire system in which user 28 Suspend-to-Idle 29 --------------- 31 This is a generic, pure software, light-weight variant of system suspend (also 34 I/O devices into low-power states (possibly lower-power than available in the 38 The system is woken up from this state by in-band interrupts, so theoretically 40 also be set up as wakeup devices for S2Idle. 43 or :ref:`suspend-to-RAM <s2ram>`, or it can be used in addition to any of the 44 deeper system suspend variants to provide reduced resume latency. It is always [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/iio/accel/ |
H A D | lis302.txt | 8 - compatible: should be set to "st,lis3lv02d-spi" 9 - reg: the chipselect index 10 - spi-max-frequency: maximal bus speed, should be set to 1000000 unless 12 - interrupts: the interrupt generated by the device 15 - compatible: should be set to "st,lis3lv02d" 16 - reg: i2c slave address 17 - Vdd-supply: The input supply for Vdd 18 - Vdd_IO-supply: The input supply for Vdd_IO 23 - st,click-single-{x,y,z}: if present, tells the device to issue an 26 - st,click-double-{x,y,z}: if present, tells the device to issue an [all …]
|
/openbmc/linux/arch/arm/boot/dts/ti/omap/ |
H A D | omap3-gta04a3.dts | 1 // SPDX-License-Identifier: GPL-2.0-only 6 #include "omap3-gta04.dtsi" 18 interrupt-parent = <&gpio3>; 20 Vdd-supply = <&vaux2>; 21 Vdd_IO-supply = <&vaux2>; 23 st,click-single-x; 24 st,click-single-y; 25 st,click-single-z; 26 st,click-thresh-x = <8>; 27 st,click-thresh-y = <8>; [all …]
|
/openbmc/linux/drivers/cpuidle/ |
H A D | dt_idle_states.c | 1 // SPDX-License-Identifier: GPL-2.0-only 9 #define pr_fmt(fmt) "DT idle-states: " fmt 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() 50 return -EINVAL; in init_state_node() 53 err = of_property_read_u32(state_node, "exit-latency-us", in init_state_node() [all …]
|
H A D | cpuidle-pseries.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * cpuidle-pseries - idle state cpuidle driver. 47 dev->poll_time_limit = false; in snooze_loop() 58 dev->poll_time_limit = true; in snooze_loop() 80 * were soft-disabled in check_and_cede_processor() 94 * "ibm,get-systems-parameter" RTAS call with the token 100 * table with all the parameters to ibm,get-system-parameters. 101 * CEDE_LATENCY_TOKEN corresponds to the token value for Cede Latency 107 * If the platform supports the cede latency settings information system 111 * a. The first byte is the length “N” of each cede latency setting record minus [all …]
|
/openbmc/linux/Documentation/tools/rtla/ |
H A D | common_timerlat_description.rst | 2 *timerlat* tracer dispatches a kernel thread per-cpu. These threads 4 the wakeup, they collect and generate useful information for the 5 debugging of operating system timer latency. 8 prints the timer latency at the timer *IRQ* handler and the *Thread*
|
H A D | rtla-timerlat-top.rst | 2 rtla-timerlat-top 4 ------------------------------------------- 5 Measures the operating system timer latency 6 ------------------------------------------- 22 seem with the option **-T**. 35 **--aa-only** *us* 38 Print the auto-analysis if the system hits the stop tracing condition. This option 45 In the example below, the timerlat tracer is dispatched in cpus *1-23* in the 46 automatic trace mode, instructing the tracer to stop if a *40 us* latency or 49 # timerlat -a 40 -c 1-23 -q [all …]
|
/openbmc/linux/Documentation/trace/ |
H A D | timerlat-tracer.rst | 6 find sources of wakeup latencies of real-time threads. Like cyclictest, 8 computes a *wakeup latency* value as the difference between the *current 13 ----- 28 # _-----=> irqs-off 29 # / _----=> need-resched 30 # | / _---=> hardirq/softirq 31 # || / _--=> preempt-depth 34 # TASK-PID CPU# |||| TIMESTAMP ID CONTEXT LATENCY 36 <idle>-0 [000] d.h1 54.029328: #1 context irq timer_latency 932 ns 37 <...>-867 [000] .... 54.029339: #1 context thread timer_latency 11700 ns [all …]
|
H A D | ftrace.rst | 2 ftrace - Function Tracer 13 - Written for: 2.6.28-rc2 14 - Updated for: 3.10 15 - Updated for: 4.13 - Copyright 2017 VMware Inc. Steven Rostedt 16 - Converted to rst format - Changbin Du <changbin.du@intel.com> 19 ------------ 24 performance issues that take place outside of user-space. 28 There's latency tracing to examine what occurs between interrupts 41 ---------------------- 43 See Documentation/trace/ftrace-design.rst for details for arch porters and such. [all …]
|
/openbmc/u-boot/arch/arm/dts/ |
H A D | fsl-imx8-ca53.dtsi | 17 #address-cells = <2>; 18 #size-cells = <0>; 20 idle-states { 21 entry-method = "psci"; 23 CPU_SLEEP: cpu-sleep { 24 compatible = "arm,idle-state"; 25 local-timer-stop; 26 arm,psci-suspend-param = <0x0000000>; 27 entry-latency-us = <700>; 28 exit-latency-us = <250>; [all …]
|
/openbmc/linux/drivers/cpuidle/governors/ |
H A D | teo.c | 1 // SPDX-License-Identifier: GPL-2.0 6 * Copyright (C) 2018 - 2021 Intel Corporation 9 * Util-awareness mechanism: 15 * DOC: teo-description 27 * Of course, non-timer wakeup sources are more important in some use cases 54 * sleep length and the idle duration measured after CPU wakeup fall into the 67 * steps (modulo the possible latency constraint that must be taken into account 74 * - The sum of the "hits" and "intercepts" metrics for the candidate state 79 * - The sum of the "intercepts" metrics for all of the idle states shallower 84 * - The sum of the numbers of recent intercepts for all of the idle states [all …]
|
/openbmc/linux/tools/perf/bench/ |
H A D | futex-wake-parallel.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Block a bunch of threads and let parallel waker threads wakeup an 6 * equal amount of them. The program output reflects the avg latency 28 #include <subcmd/parse-options.h> 48 /* all threads will block on the same futex -- hash bucket chaos ;) */ 73 "perf bench futex wake-parallel <options>", 86 waker->nwoken = futex_wake(&futex, nwakes, futex_flag); in waking_workerfn() 87 if (waker->nwoken != nwakes) in waking_workerfn() 88 warnx("couldn't wakeup all tasks (%d/%d)", in waking_workerfn() 89 waker->nwoken, nwakes); in waking_workerfn() [all …]
|
/openbmc/linux/drivers/base/power/ |
H A D | domain_governor.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * drivers/base/power/domain_governor.c - Governors for device PM domains. 20 if (dev->power.subsys_data && dev->power.subsys_data->domain_data) { in dev_update_qos_constraint() 21 struct gpd_timing_data *td = dev_gpd_data(dev)->td; in dev_update_qos_constraint() 24 * Only take suspend-time QoS constraints of devices into in dev_update_qos_constraint() 30 constraint_ns = td ? td->effective_constraint_ns : in dev_update_qos_constraint() 50 * default_suspend_ok - Default PM domain governor routine to suspend devices. 55 struct gpd_timing_data *td = dev_gpd_data(dev)->td; in default_suspend_ok() 61 spin_lock_irqsave(&dev->power.lock, flags); in default_suspend_ok() 63 if (!td->constraint_changed) { in default_suspend_ok() [all …]
|
/openbmc/linux/tools/perf/Documentation/ |
H A D | perf-sched.txt | 1 perf-sched(1) 5 ---- 6 perf-sched - Tool to trace/measure scheduler properties (latencies) 9 -------- 11 'perf sched' {record|latency|map|replay|script|timehist} 14 ----------- 20 'perf sched latency' to report the per task scheduling latencies 30 of the workload as it occurred when it was recorded - and can repeat 33 'perf sched map' to print a textual context-switching outline of 35 individual CPUs, and the two-letter shortcuts stand for tasks that [all …]
|
/openbmc/linux/drivers/i2c/busses/ |
H A D | i2c-omap.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 7 * Copyright (C) 2004 - 2007 Texas Instruments. 30 #include <linux/platform_data/i2c-omap.h> 52 /* For OMAP3 I2C_IV has changed to I2C_WE (wakeup enable) */ 103 /* I2C WE wakeup enable register */ 105 #define OMAP_I2C_WE_RDR_WE (1 << 13) /* RX drain wakeup */ 106 #define OMAP_I2C_WE_AAS_WE (1 << 9) /* Address as slave wakeup*/ 107 #define OMAP_I2C_WE_BF_WE (1 << 8) /* Bus free wakeup */ 108 #define OMAP_I2C_WE_STC_WE (1 << 6) /* Start condition wakeup */ 109 #define OMAP_I2C_WE_GC_WE (1 << 5) /* General call wakeup */ [all …]
|
/openbmc/linux/kernel/trace/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 21 API, which will be used by other function-entry hooking 27 See Documentation/trace/ftrace-design.rst 32 See Documentation/trace/ftrace-design.rst 40 See Documentation/trace/ftrace-design.rst 69 See Documentation/trace/ftrace-design.rst 74 See Documentation/trace/ftrace-design.rst 79 Arch supports the gcc options -pg with -mfentry 84 Arch supports the gcc options -pg with -mrecord-mcount and -nop-mcount 89 Arch supports objtool --mcount [all …]
|
/openbmc/linux/arch/arm64/boot/dts/freescale/ |
H A D | imx8dxl.dtsi | 1 // SPDX-License-Identifier: GPL-2.0+ 6 #include <dt-bindings/clock/imx8-clock.h> 7 #include <dt-bindings/firmware/imx/rsrc.h> 8 #include <dt-bindings/gpio/gpio.h> 9 #include <dt-bindings/interrupt-controller/arm-gic.h> 10 #include <dt-bindings/input/input.h> 11 #include <dt-bindings/pinctrl/pads-imx8dxl.h> 12 #include <dt-bindings/thermal/thermal.h> 15 interrupt-parent = <&gic>; 16 #address-cells = <2>; [all …]
|
/openbmc/linux/kernel/locking/ |
H A D | lock_events_list.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 28 LOCK_EVENT(pv_latency_kick) /* Average latency (ns) of vCPU kick */ 29 LOCK_EVENT(pv_latency_wake) /* Average latency (ns) of kick-to-wakeup */ 31 LOCK_EVENT(pv_spurious_wakeup) /* # of spurious wakeups in non-head vCPUs */ 35 LOCK_EVENT(pv_wait_node) /* # of vCPU wait's at non-head queue node */ 59 LOCK_EVENT(rwsem_opt_lock) /* # of opt-acquired write locks */
|