/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# 8 title: Thermal idle cooling device 11 - Daniel Lezcano <daniel.lezcano@linaro.org> 14 The thermal idle cooling device allows the system to passively 15 mitigate the temperature on the device by injecting idle cycles, 18 This binding describes the thermal idle node. 22 const: thermal-idle [all …]
|
H A D | thermal-cooling-devices.yaml | 1 # SPDX-License-Identifier: (GPL-2.0) 4 --- 5 $id: http://devicetree.org/schemas/thermal/thermal-cooling-devices.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 8 title: Thermal cooling device 11 - Amit Kucheria <amitk@kernel.org> 14 Thermal management is achieved in devicetree by describing the sensor hardware 15 and the software abstraction of cooling devices and thermal zones required to 16 take appropriate action to mitigate thermal overload. 18 The following node types are used to completely describe a thermal management [all …]
|
/openbmc/linux/drivers/thermal/ |
H A D | cpuidle_cooling.c | 1 // SPDX-License-Identifier: GPL-2.0 18 #include <linux/thermal.h> 21 * struct cpuidle_cooling_device - data for the idle cooling device 22 * @ii_dev: an atomic to keep track of the last task exiting the idle cycle 31 * cpuidle_cooling_runtime - Running time computation 32 * @idle_duration_us: CPU idle time to inject in microseconds 35 * The running duration is computed from the idle injection duration 36 * which is fixed. If we reach 100% of idle injection ratio, that 38 * injection, that means we have equal duration for idle and for 43 * running = idle x ((100 / ratio) - 1) [all …]
|
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 # Generic thermal drivers configuration 6 menuconfig THERMAL config 7 bool "Thermal drivers" 9 Thermal drivers offer a generic mechanism for 10 thermal management. Usually it's made up of one or more thermal 12 Each thermal zone contains its own temperature, trip points, 14 All platforms with ACPI or Open Firmware thermal support can use 18 if THERMAL 21 bool "Thermal netlink management" [all …]
|
H A D | rcar_thermal.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * R-Car THS/TSC thermal sensor driver 20 #include <linux/thermal.h> 101 list_for_each_entry(pos, &common->head, list) 104 #define rcar_priv_to_dev(priv) ((priv)->common->dev) 105 #define rcar_has_irq_support(priv) ((priv)->common->base) 106 #define rcar_id_to_shift(priv) ((priv)->id * 8) 110 .compatible = "renesas,rcar-thermal", 114 .compatible = "renesas,rcar-gen2-thermal", 118 .compatible = "renesas,thermal-r8a774c0", [all …]
|
H A D | cpufreq_cooling.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * linux/drivers/thermal/cpufreq_cooling.c 7 * Copyright (C) 2012-2018 Linaro Limited. 23 #include <linux/thermal.h> 29 * Cooling state <-> CPUFreq frequency 37 * level 0 --> 1st Max Freq 38 * level 1 --> 2nd Max Freq 43 * struct time_in_idle - Idle time stats 44 * @time: previous reading of the absolute time that this cpu was idle 53 * struct cpufreq_cooling_device - data for cooling device with cpufreq [all …]
|
/openbmc/linux/Documentation/admin-guide/thermal/ |
H A D | intel_powerclamp.rst | 6 - Arjan van de Ven <arjan@linux.intel.com> 7 - Jacob Pan <jacob.jun.pan@linux.intel.com> 12 - Goals and Objectives 15 - Idle Injection 16 - Calibration 19 - Effectiveness and Limitations 20 - Power vs Performance 21 - Scalability 22 - Calibration 23 - Comparison with Alternative Techniques [all …]
|
/openbmc/linux/drivers/thermal/intel/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 tristate "Intel PowerClamp idle injection driver" 10 Enable this to enable Intel PowerClamp idle injection driver. This 11 enforce idle time which results in more package C-state residency. The 12 user interface is exposed via generic thermal framework. 23 tristate "X86 package temperature thermal driver" 31 thermal zone. Each package will have its own thermal zone. There are 32 two trip points which can be set by user to get notifications via thermal 47 tristate "Intel SoCs DTS thermal driver" 55 thermal zone. There are two trip points. One of the trip point can [all …]
|
/openbmc/openbmc/meta-ibm/recipes-phosphor/fans/phosphor-fan-control-zone-config/witherspoon/ |
H A D | zones.yaml | 7 - zone_conditions: 8 - name: air_cooled_chassis 11 - zone: 0 13 - air 14 - all 20 - name: xyz.openbmc_project.Control.ThermalMode 22 - name: Supported 25 - value: DEFAULT 27 Default thermal control mode 28 - value: CUSTOM [all …]
|
/openbmc/linux/arch/arm64/boot/dts/qcom/ |
H A D | msm8976.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 3 * Copyright (c) 2016-2022, AngeloGioacchino Del Regno 9 #include <dt-bindings/clock/qcom,gcc-msm8976.h> 10 #include <dt-bindings/clock/qcom,rpmcc.h> 11 #include <dt-bindings/gpio/gpio.h> 12 #include <dt-bindings/interrupt-controller/arm-gic.h> 13 #include <dt-bindings/interrupt-controller/irq.h> 14 #include <dt-bindings/power/qcom-rpmpd.h> 17 interrupt-parent = <&intc>; 18 #address-cells = <2>; [all …]
|
H A D | sm6375.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 6 #include <dt-bindings/clock/qcom,rpmcc.h> 7 #include <dt-bindings/clock/qcom,sm6375-gcc.h> 8 #include <dt-bindings/clock/qcom,sm6375-gpucc.h> 9 #include <dt-bindings/dma/qcom-gpi.h> 10 #include <dt-bindings/firmware/qcom,scm.h> 11 #include <dt-bindings/interconnect/qcom,osm-l3.h> 12 #include <dt-bindings/interrupt-controller/arm-gic.h> 13 #include <dt-bindings/mailbox/qcom-ipcc.h> 14 #include <dt-bindings/power/qcom-rpmpd.h> [all …]
|
H A D | sdm630.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 7 #include <dt-bindings/clock/qcom,gcc-sdm660.h> 8 #include <dt-bindings/clock/qcom,gpucc-sdm660.h> 9 #include <dt-bindings/clock/qcom,mmcc-sdm660.h> 10 #include <dt-bindings/clock/qcom,rpmcc.h> 11 #include <dt-bindings/interconnect/qcom,sdm660.h> 12 #include <dt-bindings/power/qcom-rpmpd.h> 13 #include <dt-bindings/gpio/gpio.h> 14 #include <dt-bindings/interrupt-controller/arm-gic.h> 15 #include <dt-bindings/soc/qcom,apr.h> [all …]
|
H A D | sm6115.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) 6 #include <dt-bindings/clock/qcom,gcc-sm6115.h> 7 #include <dt-bindings/clock/qcom,sm6115-dispcc.h> 8 #include <dt-bindings/clock/qcom,sm6115-gpucc.h> 9 #include <dt-bindings/clock/qcom,rpmcc.h> 10 #include <dt-bindings/dma/qcom-gpi.h> 11 #include <dt-bindings/firmware/qcom,scm.h> 12 #include <dt-bindings/gpio/gpio.h> 13 #include <dt-bindings/interrupt-controller/arm-gic.h> 14 #include <dt-bindings/power/qcom-rpmpd.h> [all …]
|
H A D | msm8998.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 4 #include <dt-bindings/interrupt-controller/arm-gic.h> 5 #include <dt-bindings/clock/qcom,gcc-msm8998.h> 6 #include <dt-bindings/clock/qcom,gpucc-msm8998.h> 7 #include <dt-bindings/clock/qcom,mmcc-msm8998.h> 8 #include <dt-bindings/clock/qcom,rpmcc.h> 9 #include <dt-bindings/power/qcom-rpmpd.h> 10 #include <dt-bindings/gpio/gpio.h> 13 interrupt-parent = <&intc>; 15 qcom,msm-id = <292 0x0>; [all …]
|
H A D | qcm2290.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) 8 #include <dt-bindings/clock/qcom,gcc-qcm2290.h> 9 #include <dt-bindings/clock/qcom,rpmcc.h> 10 #include <dt-bindings/dma/qcom-gpi.h> 11 #include <dt-bindings/firmware/qcom,scm.h> 12 #include <dt-bindings/gpio/gpio.h> 13 #include <dt-bindings/interrupt-controller/arm-gic.h> 14 #include <dt-bindings/power/qcom-rpmpd.h> 17 interrupt-parent = <&intc>; 19 #address-cells = <2>; [all …]
|
H A D | sc7180.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 5 * Copyright (c) 2019-2020, The Linux Foundation. All rights reserved. 8 #include <dt-bindings/clock/qcom,dispcc-sc7180.h> 9 #include <dt-bindings/clock/qcom,gcc-sc7180.h> 10 #include <dt-bindings/clock/qcom,gpucc-sc7180.h> 11 #include <dt-bindings/clock/qcom,lpasscorecc-sc7180.h> 12 #include <dt-bindings/clock/qcom,rpmh.h> 13 #include <dt-bindings/clock/qcom,videocc-sc7180.h> 14 #include <dt-bindings/interconnect/qcom,icc.h> 15 #include <dt-bindings/interconnect/qcom,osm-l3.h> [all …]
|
H A D | sm8550.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 6 #include <dt-bindings/clock/qcom,rpmh.h> 7 #include <dt-bindings/clock/qcom,sm8450-videocc.h> 8 #include <dt-bindings/clock/qcom,sm8550-gcc.h> 9 #include <dt-bindings/clock/qcom,sm8550-gpucc.h> 10 #include <dt-bindings/clock/qcom,sm8550-tcsr.h> 11 #include <dt-bindings/clock/qcom,sm8550-dispcc.h> 12 #include <dt-bindings/dma/qcom-gpi.h> 13 #include <dt-bindings/gpio/gpio.h> 14 #include <dt-bindings/interrupt-controller/arm-gic.h> [all …]
|
H A D | sm8350.dtsi | 1 // SPDX-License-Identifier: BSD-3-Clause 6 #include <dt-bindings/interconnect/qcom,sm8350.h> 7 #include <dt-bindings/interrupt-controller/arm-gic.h> 8 #include <dt-bindings/clock/qcom,dispcc-sm8350.h> 9 #include <dt-bindings/clock/qcom,gcc-sm8350.h> 10 #include <dt-bindings/clock/qcom,gpucc-sm8350.h> 11 #include <dt-bindings/clock/qcom,rpmh.h> 12 #include <dt-bindings/dma/qcom-gpi.h> 13 #include <dt-bindings/gpio/gpio.h> 14 #include <dt-bindings/interconnect/qcom,sm8350.h> [all …]
|
/openbmc/linux/Documentation/driver-api/thermal/ |
H A D | cpu-idle-cooling.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 CPU Idle Cooling 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 ---------- 37 decrease. Acting on the idle state duration or the idle cycle 44 that will result in loss of performance during thermal control and 47 At a specific OPP, we can assume that injecting idle cycle on all CPUs 49 idle state target residency, we lead to dropping the static and the [all …]
|
/openbmc/docs/designs/oem/ibm/ |
H A D | system-power-mode.md | 1 # System Power Mode and Idle Power Saver Support 12 the system power mode and idle power save modes. We need the ability to set and 13 query the system power mode and also the ability to control and set idle power 20 thermal monitoring and control. When a system is powered on, the OCCs will go to 22 send a mode change and idle power saver (IPS) settings to the OCC. It will also 23 need to send the commands if the user changes the mode or idle power save 30 monitoring the systems thermal sensors. For certain error conditions it may be 34 runtime, the BMC will need to send the mode and the idle power saver settings to 42 - Static 43 - Power Saver [all …]
|
/openbmc/linux/drivers/powercap/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 53 bool "Idle injection framework" 57 This enables support for the idle injection framework. It 58 provides a way to force idle periods on a set of specified 59 CPUs for power capping. Idle period can be injected 77 bool "Power capping for Dynamic Thermal Power Management (EXPERIMENTAL)" 81 thermal power management userspace engine.
|
/openbmc/linux/arch/arm/boot/dts/qcom/ |
H A D | qcom-apq8084.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/interrupt-controller/arm-gic.h> 5 #include <dt-bindings/clock/qcom,gcc-apq8084.h> 6 #include <dt-bindings/gpio/gpio.h> 9 #address-cells = <1>; 10 #size-cells = <1>; 13 interrupt-parent = <&intc>; 15 reserved-memory { 16 #address-cells = <1>; [all …]
|
/openbmc/linux/tools/power/x86/turbostat/ |
H A D | turbostat.8 | 3 turbostat \- Report processor frequency and idle statistics 12 .RB [ "\--interval seconds" ] 15 idle power-state statistics, temperature and power on X86 processors. 19 in one-shot upon its completion. 22 The 5-second interval can be changed using the --interval option. 26 Options can be specified with a single or double '-', and only as much of the option 27 name as necessary to disambiguate it from others is necessary. Note that options are case-sensitiv… 29 \fB--add attributes\fP add column with counter having specified 'attributes'. The 'location' attri… 41 MSRs are read as 64-bits, u32 truncates the displayed value to 32-bits. 51 Any string that does not match a key-word above is used [all …]
|
/openbmc/linux/tools/thermal/tmon/ |
H A D | tmon.8 | 2 # SPDX-License-Identifier: GPL-2.0 4 \fBtmon\fP - A monitoring and testing tool for Linux kernel thermal subsystem 12 \fBtmon \fP can be used to visualize thermal relationship and 13 real-time thermal data; tune 14 and test cooling devices and sensors; collect thermal data for offline 21 1. Thermal relationships: 22 - show thermal zone information 23 - show cooling device information 24 - show trip point binding within each thermal zone 25 - show trip point and cooling device instance bindings [all …]
|
/openbmc/linux/tools/ |
H A D | Makefile | 1 # SPDX-License-Identifier: GPL-2.0 12 @echo ' acpi - ACPI tools' 13 @echo ' bpf - misc BPF tools' 14 @echo ' cgroup - cgroup tools' 15 @echo ' counter - counter tools' 16 @echo ' cpupower - a tool for all things x86 CPU power' 17 @echo ' debugging - tools for debugging' 18 @echo ' firewire - the userspace part of nosy, an IEEE-1394 traffic sniffer' 19 @echo ' firmware - Firmware tools' 20 @echo ' freefall - laptop accelerometer program for disk protection' [all …]
|