forked from Minki/linux
bfb764440d
Pull thermal management updates from Zhang Rui: - Introduce generic ADC thermal driver, based on OF thermal (Laxman Dewangan) - Introduce new thermal driver for Tango chips (Marc Gonzalez) - Rockchip driver support for RK3399, RK3366, and some fixes (Caesar Wang, Elaine Zhang and Shawn Lin) - Add CPU power cooling model to Mediatek thermal driver (Dawei Chien) - Wider usage of dev_thermal_zone_of_sensor_register (Eduardo Valentin) - TI thermal driver gained a new maintainer (Keerthy). - Enabled powerclamp driver by checking CPU feature and package cstate counter instead of CPU whitelist (Jacob Pan) - Various fixes on thermal governor, OF thermal, Tegra, and RCAR * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux: (50 commits) thermal: tango: initialize TEMPSI_CFG thermal: rockchip: use the usleep_range instead of udelay thermal: rockchip: add the notes for better reading thermal: rockchip: Support RK3366 SoCs in the thermal driver thermal: rockchip: handle the power sequence for tsadc controller thermal: rockchip: update the tsadc table for rk3399 thermal: rockchip: fixes the code_to_temp for tsadc driver thermal: rockchip: disable thermal->clk in err case thermal: tegra: add Tegra132 specific SOC_THERM driver thermal: fix ptr_ret.cocci warnings thermal: mediatek: Add cpu dynamic power cooling model. thermal: generic-adc: Add ADC based thermal sensor driver thermal: generic-adc: Add DT binding for ADC based thermal sensor thermal: tegra: fix static checker warning thermal: tegra: mark PM functions __maybe_unused thermal: add temperature sensor support for tango SoC thermal: hisilicon: fix IRQ imbalance enabling thermal: hisilicon: support to use any sensor thermal: rcar: Remove binding docs for r8a7794 thermal: tegra: add PM support ...
68 lines
2.2 KiB
Plaintext
68 lines
2.2 KiB
Plaintext
Tegra124 SOCTHERM thermal management system
|
|
|
|
The SOCTHERM IP block contains thermal sensors, support for polled
|
|
or interrupt-based thermal monitoring, CPU and GPU throttling based
|
|
on temperature trip points, and handling external overcurrent
|
|
notifications. It is also used to manage emergency shutdown in an
|
|
overheating situation.
|
|
|
|
Required properties :
|
|
- compatible : For Tegra124, must contain "nvidia,tegra124-soctherm".
|
|
For Tegra132, must contain "nvidia,tegra132-soctherm".
|
|
For Tegra210, must contain "nvidia,tegra210-soctherm".
|
|
- reg : Should contain 1 entry:
|
|
- SOCTHERM register set
|
|
- interrupts : Defines the interrupt used by SOCTHERM
|
|
- clocks : Must contain an entry for each entry in clock-names.
|
|
See ../clocks/clock-bindings.txt for details.
|
|
- clock-names : Must include the following entries:
|
|
- tsensor
|
|
- soctherm
|
|
- resets : Must contain an entry for each entry in reset-names.
|
|
See ../reset/reset.txt for details.
|
|
- reset-names : Must include the following entries:
|
|
- soctherm
|
|
- #thermal-sensor-cells : Should be 1. See ./thermal.txt for a description
|
|
of this property. See <dt-bindings/thermal/tegra124-soctherm.h> for a
|
|
list of valid values when referring to thermal sensors.
|
|
|
|
Note:
|
|
- the "critical" type trip points will be set to SOC_THERM hardware as the
|
|
shut down temperature. Once the temperature of this thermal zone is higher
|
|
than it, the system will be shutdown or reset by hardware.
|
|
|
|
Example :
|
|
|
|
soctherm@700e2000 {
|
|
compatible = "nvidia,tegra124-soctherm";
|
|
reg = <0x0 0x700e2000 0x0 0x1000>;
|
|
interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>;
|
|
clocks = <&tegra_car TEGRA124_CLK_TSENSOR>,
|
|
<&tegra_car TEGRA124_CLK_SOC_THERM>;
|
|
clock-names = "tsensor", "soctherm";
|
|
resets = <&tegra_car 78>;
|
|
reset-names = "soctherm";
|
|
|
|
#thermal-sensor-cells = <1>;
|
|
};
|
|
|
|
Example: referring to thermal sensors :
|
|
|
|
thermal-zones {
|
|
cpu {
|
|
polling-delay-passive = <1000>;
|
|
polling-delay = <1000>;
|
|
|
|
thermal-sensors =
|
|
<&soctherm TEGRA124_SOCTHERM_SENSOR_CPU>;
|
|
|
|
trips {
|
|
cpu_shutdown_trip: shutdown-trip {
|
|
temperature = <102500>;
|
|
hysteresis = <1000>;
|
|
type = "critical";
|
|
};
|
|
};
|
|
};
|
|
};
|