Home
last modified time | relevance | path

Searched +full:wakeup +full:- +full:latency +full:- +full:us (Results 1 – 25 of 99) sorted by relevance

1234

/linux/Documentation/devicetree/bindings/cpu/
H A Didle-states.yaml1 # 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 …]
/linux/drivers/cpuidle/
H A Ddt_idle_states.c1 // 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 …]
/linux/tools/testing/selftests/kvm/
H A Drseq_test.c1 // SPDX-License-Identifier: GPL-2.0-only
33 * Any bug related to task migration is likely to be timing-dependent; perform
89 * is in-progress, while a completely different count indicates in migration_worker()
96 * stable, i.e. while changing affinity is in-progress. in migration_worker()
108 * Wait 1-10us before proceeding to the next iteration and more in migration_worker()
135 * 3. To ensure the read-side makes efficient forward progress, in migration_worker()
136 * e.g. if getcpu() involves a syscall. Stalling the read-side in migration_worker()
138 * to stabilize and less time trying to hit the timing-dependent in migration_worker()
141 * Because any bug in this area is likely to be timing-dependent, in migration_worker()
142 * run with a range of delays at 1us intervals from 1us to 10us in migration_worker()
[all …]
/linux/Documentation/tools/rtla/
H A Drtla-timerlat-top.rst4 rtla-timerlat-top
6 -------------------------------------------
7 Measures the operating system timer latency
8 -------------------------------------------
24 seem with the option **-T**.
37 **--aa-only** *us*
40 Print the auto-analysis if the system hits the stop tracing condition. This option
47 In the example below, the timerlat tracer is dispatched in cpus *1-23* in the
48 automatic trace mode, instructing the tracer to stop if a *40 us* latency or
51 # timerlat -a 40 -c 1-23 -q
[all …]
/linux/Documentation/virt/kvm/
H A Dhalt-polling.rst1 .. 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
15 very quickly by at least saving us a trip through the scheduler, normally on
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
[all …]
/linux/Documentation/trace/
H A Dtimerlat-tracer.rst6 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 …]
/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/drivers/cpuidle/governors/
H A Dteo.c1 // SPDX-License-Identifier: GPL-2.0
5 * Copyright (C) 2018 - 2021 Intel Corporation
10 * DOC: teo-description
14 * other interrupt types, so they are likely to dominate CPU wakeup patterns.
20 * Of course, non-timer wakeup sources are more important in some use cases,
27 * checks if it can select a shallow idle state using wakeup pattern information
29 * at all. For this purpose, it counts CPU wakeup events and looks for an idle
31 * after wakeup) in the majority of relevant recent cases. If the target
51 * sleep length and the idle duration measured after CPU wakeup fall into the
54 * non-timer wakeup events for which the measured idle duration falls into a bin
[all …]
/linux/tools/testing/selftests/bpf/benchs/
H A Dbench_local_storage_rcu_tasks_trace.c1 // SPDX-License-Identifier: GPL-2.0
72 fprintf(stderr, "benchmark doesn't support multi-producer!\n"); in validate()
94 return -1; in kthread_pid_ticks()
169 if (!bpf_program__attach(ctx.skel->progs.get_local)) { in local_storage_tasks_trace_setup()
174 if (!bpf_program__attach(ctx.skel->progs.pregp_step)) { in local_storage_tasks_trace_setup()
179 if (!bpf_program__attach(ctx.skel->progs.postgp)) { in local_storage_tasks_trace_setup()
193 res->gp_ct = atomic_swap(&ctx.skel->bss->gp_hits, 0); in measure()
194 res->gp_ns = atomic_swap(&ctx.skel->bss->gp_times, 0); in measure()
196 res->stime = ticks - ctx.prev_kthread_stime; in measure()
209 if (ctx.skel->bss->unexpected) { in report_progress()
[all …]
/linux/Documentation/driver-api/thermal/
H A Dcpu-idle-cooling.rst1 .. SPDX-License-Identifier: GPL-2.0
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 ----------
58 ---------------
67 latencies as the CPUs will have to wakeup from a deep sleep state.
70 performance penalty and a fixed latency. Mitigation can be increased
78 |------- -------
81 <------>
[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()
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()
66 if (!td->constraint_changed) { in default_suspend_ok()
[all …]
/linux/Documentation/accounting/
H A Dpsi.rst4 PSI - Pressure Stall Information
11 latency spikes, throughput losses, and run the risk of OOM kills.
14 either play it safe and under-utilize their hardware resources, or
23 scarcity aids users in sizing workloads to hardware--or provisioning
38 respective file in /proc/pressure/ -- cpu, memory, and io.
48 The "full" line indicates the share of time in which all non-idle
63 (in us) is tracked and exported as well, to allow detection of latency
75 generate a wakeup event.
83 <some|full> <stall amount in us> <time window in us>
116 Notifications to the userspace are rate-limited to one per tracking window.
[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 …]
/linux/kernel/trace/
H A DKconfig1 # 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
45 See Documentation/trace/ftrace-design.rst
86 See Documentation/trace/ftrace-design.rst
91 Arch supports the gcc options -pg with -mfentry
96 Arch supports the gcc options -pg with -mrecord-mcount and -nop-mcount
101 Arch supports objtool --mcount
106 Arch supports the objtool options --mcount with --mnop.
[all …]
H A Dtrace_osnoise.c1 // SPDX-License-Identifier: GPL-2.0
4 * Timerlat Tracer: measures the wakeup latency of a timer triggered IRQ and thread.
7 * Copyright (C) 2008-2009 Jon Masters, Red Hat, Inc. <jcm@redhat.com>
8 * Copyright (C) 2013-2016 Steven Rostedt, Red Hat, Inc. <srostedt@redhat.com>
12 * DE OLIVEIRA, Daniel Bristot, et al. Demystifying the real-time linux
13 * scheduling latency. In: 32nd Euromicro Conference on Real-Time Systems
14 * (ECRTS 2020). Schloss Dagstuhl-Leibniz-Zentrum fur Informatik, 2020.
92 * osnoise_instance_registered - check if a tr is already registered
101 if (inst->tr == tr) in osnoise_instance_registered()
110 * osnoise_register_instance - register a new trace instance
[all …]
/linux/drivers/usb/host/
H A Dxhci-port.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 /* PORTSC - Port Status and Control Register - port_status_base bitmasks */
9 /* true: port has an over-current condition */
13 /* Port Link State - bits 5:8
35 * 0 - undefined speed - port hasn't be initialized by a reset yet
36 * 1 - full speed
37 * 2 - low speed
38 * 3 - high speed
39 * 4 - super speed
40 * 5-15 reserved
[all …]
/linux/sound/soc/ti/
H A Domap-mcbsp.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * omap-mcbsp.c -- OMAP ALSA SoC DAI driver using McBSP port
23 #include "omap-mcbsp-priv.h"
24 #include "omap-mcbsp.h"
25 #include "sdma-pcm.h"
40 dev_dbg(mcbsp->dev, "**** McBSP%d regs ****\n", mcbsp->id); in omap_mcbsp_dump_reg()
41 dev_dbg(mcbsp->dev, "DRR2: 0x%04x\n", MCBSP_READ(mcbsp, DRR2)); in omap_mcbsp_dump_reg()
42 dev_dbg(mcbsp->dev, "DRR1: 0x%04x\n", MCBSP_READ(mcbsp, DRR1)); in omap_mcbsp_dump_reg()
43 dev_dbg(mcbsp->dev, "DXR2: 0x%04x\n", MCBSP_READ(mcbsp, DXR2)); in omap_mcbsp_dump_reg()
44 dev_dbg(mcbsp->dev, "DXR1: 0x%04x\n", MCBSP_READ(mcbsp, DXR1)); in omap_mcbsp_dump_reg()
[all …]
/linux/tools/tracing/latency/
H A Dlatency-collector.c1 // SPDX-License-Identifier: GPL-2.0
44 C(FUNC_TR, "function-trace"), \
45 C(DISP_GR, "display-graph"), \
134 "No latency tracers are supported by your kernel!\n";
159 "wakeup",
271 count -= r; in write_or_die()
519 future->tv_sec += time_us / USEC_PER_SEC; in get_time_in_future()
520 nsec = future->tv_nse in get_time_in_future()
1079 long us, sec; __print_skipmessage() local
1137 long us, sec; print_tracefile() local
[all...]
/linux/arch/arm/boot/dts/ti/omap/
H A Domap3-n950-n9.dtsi1 // SPDX-License-Identifier: GPL-2.0-only
3 * omap3-n950-n9.dtsi - Device Tree file for Nokia N950 & N9 (common stuff)
13 cpu0-supply = <&vcc>;
23 compatible = "regulator-fixed";
24 regulator-name = "VEMMC";
25 regulator-min-microvolt = <2900000>;
26 regulator-max-microvolt = <2900000>;
28 startup-delay-us = <150>;
29 enable-active-high;
33 compatible = "regulator-fixed";
[all …]
/linux/drivers/usb/core/
H A Dhub.c1 // SPDX-License-Identifier: GPL-2.0
77 /* Protect struct usb_device->state and ->children members
78 * Note: Both are also protected by ->dev.sem, except that ->state can
86 /* synchronize hub-port add/remove and peering operations */
96 * 10 seconds to send reply for the initial 64-byte descriptor request.
98 /* define initial 64-byte descriptor request timeout in milliseconds */
102 "initial 64-byte descriptor request timeout in milliseconds "
103 "(default 5000 - 5.0 seconds)");
147 if (hub_is_superspeedplus(hub->hdev)) in portspeed()
149 if (hub_is_superspeed(hub->hdev)) in portspeed()
[all …]
/linux/tools/perf/bench/
H A Dfutex-requeue.c1 // SPDX-License-Identifier: GPL-2.0
5 * futex-requeue: Block a bunch of threads on futex1 and requeue them
8 * This program is particularly useful to measure the latency of nthread
9 * requeues without waking up any tasks (in the non-pi case) -- thus
20 #include <subcmd/parse-options.h>
45 .nbuckets = -1,
61 OPT_BOOLEAN( 'p', "pi", &params.pi, "Use PI-aware variants of FUTEX_CMP_REQUEUE"),
77 printf("Requeued %d of %d threads in %.4f ms (+-%.2f%%)\n", in print_summary()
90 threads_starting--; in workerfn()
245 * For the regular non-pi case, do not wakeup any tasks in bench_futex_requeue()
[all …]
/linux/arch/arm64/boot/dts/mediatek/
H A Dmt2712e.dtsi5 * SPDX-License-Identifier: (GPL-2.0 OR MIT)
8 #include <dt-bindings/clock/mt2712-clk.h>
9 #include <dt-bindings/interrupt-controller/irq.h>
10 #include <dt-bindings/interrupt-controller/arm-gic.h>
11 #include <dt-bindings/memory/mt2712-larb-port.h>
12 #include <dt-bindings/phy/phy.h>
13 #include <dt-bindings/power/mt2712-power.h>
14 #include "mt2712-pinfunc.h"
18 interrupt-parent = <&sysirq>;
19 #address-cells = <2>;
[all …]
/linux/Documentation/admin-guide/pm/
H A Dintel_idle.rst1 .. SPDX-License-Identifier: GPL-2.0
24 Documentation/admin-guide/pm/cpuidle.rst if you have not done that yet.]
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
55 C-state requests from the OS (e.g., C6 requests) to C1. The idea is that
56 firmware monitors CPU wake-up rate, and if it is higher than a
57 platform-specific threshold, the firmware demotes deep C-state requests
59 wake-ups per second, and it keeps the CPU in C1. When the CPU stays in
63 .. _intel-idle-enumeration-of-states:
71 as C-states (in the ACPI terminology) or idle states. The list of meaningful
[all …]
/linux/arch/x86/pci/
H A Dfixup.c1 // SPDX-License-Identifier: GPL-2.0
3 * Exceptions for specific devices. Usually work-arounds for fatal design flaws.
19 * i450NX -- Find and scan all secondary buses on all PXB's. in pci_fixup_i450nx()
24 dev_warn(&d->dev, "Searching for i450NX host bridges\n"); in pci_fixup_i450nx()
30 dev_dbg(&d->dev, "i450NX PXB %d: %02x/%02x/%02x\n", pxb, busno, in pci_fixup_i450nx()
37 pcibios_last_bus = -1; in pci_fixup_i450nx()
44 * i450GX and i450KX -- Find and scan all secondary buses. in pci_fixup_i450gx()
49 dev_info(&d->dev, "i440KX/GX host bridge; secondary bus %02x\n", busno); in pci_fixup_i450gx()
51 pcibios_last_bus = -1; in pci_fixup_i450gx()
63 dev_warn(&d->dev, "Fixing base address flags\n"); in pci_fixup_umc_ide()
[all …]

1234