| /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 …]
|
| /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 …]
|
| /linux/tools/testing/selftests/kvm/ |
| H A D | rseq_test.c | 1 // 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 D | rtla-timerlat-top.rst | 4 rtla-timerlat-top 6 ------------------------------------------- 7 Measures the operating system timer latency 8 ------------------------------------------- 24 seen 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/trace/ |
| 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 …]
|
| 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 …]
|
| /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 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/arch/arm64/boot/dts/exynos/google/ |
| H A D | gs101.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright 2019-2023 Google LLC 6 * Copyright 2023 Linaro Ltd - <peter.griffin@linaro.org> 9 #include <dt-bindings/clock/google,gs101.h> 10 #include <dt-bindings/clock/google,gs101-acpm.h> 11 #include <dt-bindings/gpio/gpio.h> 12 #include <dt-bindings/interrupt-controller/arm-gic.h> 13 #include <dt-bindings/soc/samsung,exynos-usi.h> 17 #address-cells = <2>; 18 #size-cells = <1>; [all …]
|
| /linux/arch/arm64/boot/dts/freescale/ |
| H A D | imx943.dtsi | 1 // 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 …]
|
| H A D | fsl-ls1012a.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 3 * Device Tree Include file for NXP Layerscape-1012A family SoC. 6 * Copyright 2019-2020 NXP 10 #include <dt-bindings/clock/fsl,qoriq-clockgen.h> 11 #include <dt-bindings/interrupt-controller/arm-gic.h> 12 #include <dt-bindings/thermal/thermal.h> 16 interrupt-parent = <&gic>; 17 #address-cells = <2>; 18 #size-cells = <2>; 23 rtic-a = &rtic_a; [all …]
|
| /linux/drivers/cpuidle/governors/ |
| H A D | menu.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * menu.c - the menu idle governor 5 * Copyright (C) 2006-2007 Adam Belay <abelay@novell.com> 35 * 2) Latency tolerance (from pmqos infrastructure) 39 * ----------------------- 42 * provides us this duration in the "target_residency" field. So all that we 61 * Repeatable-interval-detector 62 * ---------------------------- 102 /* Update the repeating-pattern data. */ in menu_update_intervals() 103 data->intervals[data->interval_ptr++] = interval_us; in menu_update_intervals() [all …]
|
| /linux/tools/testing/selftests/bpf/benchs/ |
| H A D | bench_local_storage_rcu_tasks_trace.c | 1 // 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 D | cpu-idle-cooling.rst | 1 .. 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/Documentation/accounting/ |
| H A D | psi.rst | 4 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 D | sm4450.dtsi | 1 // 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 D | sdx75.dtsi | 1 // 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 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 45 See Documentation/trace/ftrace-design.rst 92 See Documentation/trace/ftrace-design.rst 97 Arch supports the gcc options -pg with -mfentry 102 Arch supports the gcc options -pg with -mrecord-mcount and -nop-mcount 107 Arch supports objtool --mcount 112 Arch supports the objtool options --mcount with --mnop. [all …]
|
| H A D | trace_osnoise.c | 1 // 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 D | xhci-port.h | 1 /* 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 D | omap-mcbsp.c | 1 // 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 D | latency-collector.c | 1 // 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_nsec + (time_us * NSEC_PER_USEC) % NSEC_PER_SEC; in get_time_in_future() 522 future->tv_nsec = nsec % NSEC_PER_SEC; in get_time_in_future() 523 future->tv_sec += 1; in get_time_in_future() [all …]
|
| /linux/arch/arm/boot/dts/ti/omap/ |
| H A D | omap3-n950-n9.dtsi | 1 // 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 D | hub.c | 1 // SPDX-License-Identifier: GPL-2.0 79 /* Protect struct usb_device->state and ->children members 80 * Note: Both are also protected by ->dev.sem, except that ->state can 88 /* synchronize hub-port add/remove and peering operations */ 98 * 10 seconds to send reply for the initial 64-byte descriptor request. 100 /* define initial 64-byte descriptor request timeout in milliseconds */ 104 "initial 64-byte descriptor request timeout in milliseconds " 105 "(default 5000 - 5.0 seconds)"); 149 if (hub_is_superspeedplus(hub->hdev)) in portspeed() 151 if (hub_is_superspeed(hub->hdev)) in portspeed() [all …]
|
| /linux/tools/perf/bench/ |
| H A D | futex-requeue.c | 1 // 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", ¶ms.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 D | mt2712e.dtsi | 5 * 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 …]
|