/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/devicetree/bindings/power/ |
H A D | domain-idle-state.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/power/domain-idle-state.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Ulf Hansson <ulf.hansson@linaro.org> 18 const: domain-idle-states 21 "^(cpu|cluster|domain)-": 29 const: domain-idle-state 31 entry-latency-us: 33 The worst case latency in microseconds required to enter the idle [all …]
|
H A D | power-domain.yaml | 1 # 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 <rjw@rjwysocki.net> 11 - Kevin Hilman <khilman@kernel.org> 12 - Ulf Hansson <ulf.hansson@linaro.org> 24 \#power-domain-cells property in the PM domain provider node. 28 pattern: "^(power-controller|power-domain)([@-].*)?$" 30 domain-idle-states: [all …]
|
/openbmc/linux/tools/tracing/rtla/src/ |
H A D | timerlat_top.c | 1 // SPDX-License-Identifier: GPL-2.0 78 * timerlat_free_top - free runtime data 83 free(data->cpu_data); in timerlat_free_top() 88 * timerlat_alloc_histogram - alloc runtime data 99 data->nr_cpus = nr_cpus; in timerlat_alloc_top() 102 data->cpu_data = calloc(1, sizeof(*data->cpu_data) * nr_cpus); in timerlat_alloc_top() 103 if (!data->cpu_data) in timerlat_alloc_top() 108 data->cpu_data[cpu].min_irq = ~0; in timerlat_alloc_top() 109 data->cpu_data[cpu].min_thread = ~0; in timerlat_alloc_top() 110 data->cpu_data[cpu].min_user = ~0; in timerlat_alloc_top() [all …]
|
H A D | timerlat_hist.c | 1 // SPDX-License-Identifier: GPL-2.0 86 * timerlat_free_histogram - free runtime data 94 for (cpu = 0; cpu < data->nr_cpus; cpu++) { in timerlat_free_histogram() 95 if (data->hist[cpu].irq) in timerlat_free_histogram() 96 free(data->hist[cpu].irq); in timerlat_free_histogram() 98 if (data->hist[cpu].thread) in timerlat_free_histogram() 99 free(data->hist[cpu].thread); in timerlat_free_histogram() 101 if (data->hist[cpu].user) in timerlat_free_histogram() 102 free(data->hist[cpu].user); in timerlat_free_histogram() 107 if (data->hist) in timerlat_free_histogram() [all …]
|
H A D | timerlat_aa.c | 1 // SPDX-License-Identifier: GPL-2.0 25 * Per-cpu data statistics and data. 31 /* timerlat IRQ latency */ 36 /* timerlat Thread latency */ 66 * If now - timestamp is <= latency, it might have influenced 67 * in the timerlat irq latency. Otherwise, ignore it. 137 * timerlat_aa_get_data - Get the per-cpu data from the timerlat context 142 return &taa_ctx->taa_data[cpu]; in timerlat_aa_get_data() 146 * timerlat_aa_irq_latency - Handles timerlat IRQ event 156 taa_data->curr_state = TIMERLAT_WAITING_THREAD; in timerlat_aa_irq_latency() [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/thermal/ |
H A D | thermal-idle.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 4 --- 5 $id: http://devicetree.org/schemas/thermal/thermal-idle.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 11 - Daniel Lezcano <daniel.lezcano@linaro.org> 22 const: thermal-idle 24 A thermal-idle node describes the idle cooling device properties to 27 '#cooling-cells': 31 the cooling-maps reference. The first cell is the minimum cooling state 34 duration-us: [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/Documentation/tools/rtla/ |
H A D | common_timerlat_options.rst | 1 **-a**, **--auto** *us* 4 while debugging the system. It is equivalent to use **-T** *us* **-s** *us* 5 **-t**. By default, *timerlat* tracer uses FIFO:95 for *timerlat* threads, 6 thus equilavent to **-P** *f:95*. 8 **-p**, **--period** *us* 12 **-i**, **--irq** *us* 14 Stop trace if the *IRQ* latency is higher than the argument in us. 16 **-T**, **--thread** *us* 18 Stop trace if the *Thread* latency is higher than the argument in us. 20 **-s**, **--stack** *us* [all …]
|
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/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/devicetree/bindings/arm/ |
H A D | psci.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> 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 40 - description: 44 - description: 52 - const: arm,psci-0.2 [all …]
|
/openbmc/linux/Documentation/devicetree/bindings/arm/msm/ |
H A D | qcom,idle-state.txt | 3 ARM provides idle-state node to define the cpuidle states, as defined in [1]. 4 cpuidle-qcom is the cpuidle driver for Qualcomm SoCs and uses these idle 5 states. Idle states have different enter/exit latency and residency values. 6 The idle states supported by the QCOM SoC are defined as - 31 state. Retention may have a slightly higher latency than Standby. 44 code in the EL for the SoC. On SoCs with write-back L1 cache, the cache has to 50 be flushed, system bus, clocks - lowered, and SoC main XO clock gated and 52 power modes possible at this state is vast, the exit latency and the residency 58 The idle-state for QCOM SoCs are distinguished by the compatible property of 59 the idle-states device node. [all …]
|
/openbmc/linux/arch/arm64/boot/dts/qcom/ |
H A D | sm4450.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 6 #include <dt-bindings/gpio/gpio.h> 7 #include <dt-bindings/interrupt-controller/arm-gic.h> 10 interrupt-parent = <&intc>; 12 #address-cells = <2>; 13 #size-cells = <2>; 18 xo_board: xo-board { 19 compatible = "fixed-clock"; 20 clock-frequency = <76800000>; 21 #clock-cells = <0>; [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/interrupt-controller/arm-gic.h> 12 #include <dt-bindings/power/qcom,rpmhpd.h> 13 #include <dt-bindings/power/qcom-rpmpd.h> 14 #include <dt-bindings/soc/qcom,rpmh-rsc.h> 17 #address-cells = <2>; 18 #size-cells = <2>; 19 interrupt-parent = <&intc>; [all …]
|
H A D | sc7180-firmware-tfa.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 4 * Devices that use SC7180 with TrustedFirmware-A 10 /delete-property/ power-domains; 11 /delete-property/ power-domain-names; 13 cpu-idle-states = <&LITTLE_CPU_SLEEP_0 19 /delete-property/ power-domains; 20 /delete-property/ power-domain-names; 22 cpu-idle-states = <&LITTLE_CPU_SLEEP_0 28 /delete-property/ power-domains; 29 /delete-property/ power-domain-names; [all …]
|
/openbmc/linux/tools/testing/selftests/ftrace/test.d/preemptirq/ |
H A D | irqsoff_tracer.tc | 2 # SPDX-License-Identifier: GPL-2.0 46 grep -q "tracer: preemptoff" trace || fail 49 grep -E -q "5.....us : <stack trace>" trace || fail 51 # Check for 500ms of latency 52 grep -E -q "latency: 5..... us" trace || fail 69 grep -q "tracer: irqsoff" trace || fail 72 grep -E -q "5.....us : <stack trace>" trace || fail 74 # Check for 500ms of latency 75 grep -E -q "latency: 5..... us" trace || fail 78 exit 0
|
/openbmc/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> 38 * 3) Latency tolerance (from pmqos infrastructure) 42 * ----------------------- 43 * C state entry and exit have an energy cost, and a certain amount of time in 45 * provides us this duration in the "target_residency" field. So all that we 70 * Repeatable-interval-detector 71 * ---------------------------- 81 * --------------------------- [all …]
|
/openbmc/linux/tools/testing/selftests/dma/ |
H A D | dma_map_benchmark.c | 1 // SPDX-License-Identifier: GPL-2.0-only 29 int threads = 1, seconds = 20, node = -1; in main() 38 while ((opt = getopt(argc, argv, "t:s:n:b:d:x:g:")) != -1) { in main() 62 return -1; in main() 67 fprintf(stderr, "invalid number of threads, must be in 1-%d\n", in main() 69 exit(1); in main() 73 fprintf(stderr, "invalid number of seconds, must be in 1-%d\n", in main() 75 exit(1); in main() 79 fprintf(stderr, "invalid transmit delay, must be in 0-%ld\n", in main() 81 exit(1); in main() [all …]
|
/openbmc/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() 73 exit(1); in validate() 77 exit(1); in validate() 83 exit(1); in validate() 94 return -1; in kthread_pid_ticks() 112 exit(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() [all …]
|
/openbmc/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 …]
|
/openbmc/linux/arch/arm64/boot/dts/arm/ |
H A D | juno-r2.dts | 9 /dts-v1/; 11 #include <dt-bindings/interrupt-controller/arm-gic.h> 12 #include <dt-bindings/arm/coresight-cti-dt.h> 13 #include "juno-base.dtsi" 14 #include "juno-cs-r1r2.dtsi" 18 compatible = "arm,juno-r2", "arm,juno", "arm,vexpress"; 19 interrupt-parent = <&gic>; 20 #address-cells = <2>; 21 #size-cells = <2>; 28 stdout-path = "serial0:115200n8"; [all …]
|
H A D | juno.dts | 4 * Copyright (c) 2013-2014 ARM Ltd. 9 /dts-v1/; 11 #include <dt-bindings/interrupt-controller/arm-gic.h> 12 #include <dt-bindings/arm/coresight-cti-dt.h> 13 #include "juno-base.dtsi" 18 interrupt-parent = <&gic>; 19 #address-cells = <2>; 20 #size-cells = <2>; 27 stdout-path = "serial0:115200n8"; 31 compatible = "arm,psci-0.2"; [all …]
|
H A D | juno-r1.dts | 9 /dts-v1/; 11 #include <dt-bindings/interrupt-controller/arm-gic.h> 12 #include <dt-bindings/arm/coresight-cti-dt.h> 13 #include "juno-base.dtsi" 14 #include "juno-cs-r1r2.dtsi" 18 compatible = "arm,juno-r1", "arm,juno", "arm,vexpress"; 19 interrupt-parent = <&gic>; 20 #address-cells = <2>; 21 #size-cells = <2>; 28 stdout-path = "serial0:115200n8"; [all …]
|