forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/…
…rzhang/linux Pull thermal management update from Zhang Rui: "Summary: - of-thermal extension to allow drivers to register and use its functionality in a better way, without exploiting thermal core. From Lukasz Majewski. - Fix a bug in intel_soc_dts_thermal driver which calls a sleep function in interrupt handler. From Maurice Petallo. - add a thermal UAPI header file for exporting the thermal generic netlink information to user-space. From Florian Fainelli. - First round of refactoring in Exynos driver. Bartlomiej and Lukasz are attempting to make it lean and easier to understand. - New thermal driver for Rockchip (rk3288), with support for DT thermal. From Caesar Wang. - New thermal driver for Nvidia, Tegra124 SOCTHERM driver, with support for DT thermal. From Mikko Perttunen. - New cooling device, based on common clock framework. From Eduardo Valentin. - a couple of small fixes in thermal core framework. From Srinivas Pandruvada, Javi Merino, Luis Henriques. - Dropping Armada A375-Z1 SoC thermal support as the chip is not in the market, armada folks decided to drop its support. - a couple of small fixes and cleanups in int340x thermal driver" * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux: (58 commits) thermal: provide an UAPI header file Thermal/int340x: Clear the error value of the last acpi_bus_get_device() call thermal/powerclamp: add id for braswell cpu thermal: Intel SoC DTS: Don't do thermal zone update inside spin_lock Thermal: fix platform_no_drv_owner.cocci warnings Thermal/int340x: avoid unnecessary pointer casting thermal: int3403: Delete a check before thermal_zone_device_unregister() thermal/int3400: export uuids thermal: of: Extend current of-thermal.c code to allow setting emulated temp thermal: of: Extend of-thermal to export table of trip points thermal: of: Rename struct __thermal_trip to struct thermal_trip thermal: of: Extend of-thermal.c to provide check if trip point is valid thermal: of: Extend of-thermal.c to provide number of trip points thermal: Fix error path in thermal_init() thermal: lock the thermal zone when switching governors thermal: core: ignore invalid trip temperature thermal: armada: Remove support for A375-Z1 SoC thermal: rockchip: add driver for thermal dt-bindings: document Rockchip thermal thermal: exynos: remove exynos_tmu_data.h include ...
- Loading branch information
Showing
34 changed files
with
2,787 additions
and
858 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
68 changes: 68 additions & 0 deletions
68
Documentation/devicetree/bindings/thermal/rockchip-thermal.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,68 @@ | ||
* Temperature Sensor ADC (TSADC) on rockchip SoCs | ||
|
||
Required properties: | ||
- compatible : "rockchip,rk3288-tsadc" | ||
- reg : physical base address of the controller and length of memory mapped | ||
region. | ||
- interrupts : The interrupt number to the cpu. The interrupt specifier format | ||
depends on the interrupt controller. | ||
- clocks : Must contain an entry for each entry in clock-names. | ||
- clock-names : Shall be "tsadc" for the converter-clock, and "apb_pclk" for | ||
the peripheral clock. | ||
- resets : Must contain an entry for each entry in reset-names. | ||
See ../reset/reset.txt for details. | ||
- reset-names : Must include the name "tsadc-apb". | ||
- #thermal-sensor-cells : Should be 1. See ./thermal.txt for a description. | ||
- rockchip,hw-tshut-temp : The hardware-controlled shutdown temperature value. | ||
- rockchip,hw-tshut-mode : The hardware-controlled shutdown mode 0:CRU 1:GPIO. | ||
- rockchip,hw-tshut-polarity : The hardware-controlled active polarity 0:LOW | ||
1:HIGH. | ||
|
||
Exiample: | ||
tsadc: tsadc@ff280000 { | ||
compatible = "rockchip,rk3288-tsadc"; | ||
reg = <0xff280000 0x100>; | ||
interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; | ||
clocks = <&cru SCLK_TSADC>, <&cru PCLK_TSADC>; | ||
clock-names = "tsadc", "apb_pclk"; | ||
resets = <&cru SRST_TSADC>; | ||
reset-names = "tsadc-apb"; | ||
pinctrl-names = "default"; | ||
pinctrl-0 = <&otp_out>; | ||
#thermal-sensor-cells = <1>; | ||
rockchip,hw-tshut-temp = <95000>; | ||
rockchip,hw-tshut-mode = <0>; | ||
rockchip,hw-tshut-polarity = <0>; | ||
}; | ||
|
||
Example: referring to thermal sensors: | ||
thermal-zones { | ||
cpu_thermal: cpu_thermal { | ||
polling-delay-passive = <1000>; /* milliseconds */ | ||
polling-delay = <5000>; /* milliseconds */ | ||
|
||
/* sensor ID */ | ||
thermal-sensors = <&tsadc 1>; | ||
|
||
trips { | ||
cpu_alert0: cpu_alert { | ||
temperature = <70000>; /* millicelsius */ | ||
hysteresis = <2000>; /* millicelsius */ | ||
type = "passive"; | ||
}; | ||
cpu_crit: cpu_crit { | ||
temperature = <90000>; /* millicelsius */ | ||
hysteresis = <2000>; /* millicelsius */ | ||
type = "critical"; | ||
}; | ||
}; | ||
|
||
cooling-maps { | ||
map0 { | ||
trip = <&cpu_alert0>; | ||
cooling-device = | ||
<&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; | ||
}; | ||
}; | ||
}; | ||
}; |
53 changes: 53 additions & 0 deletions
53
Documentation/devicetree/bindings/thermal/tegra-soctherm.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
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 : "nvidia,tegra124-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. | ||
|
||
|
||
Example : | ||
|
||
soctherm@0,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>; | ||
}; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.