diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-11 17:26:21 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-11 17:26:21 -0400 |
| commit | c31c24b8251fd44962a9b0bf82c770653bf07f6e (patch) | |
| tree | 6ada195fecaa54a37c11aa8da11b8ee327f00938 /Documentation | |
| parent | 7f33e7241d3dbad3c0563fd1fc79fc9380b5c351 (diff) | |
| parent | 63745aa72ed16154b82a0c9ed22a88001d6ea0fa (diff) | |
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux
Pull thermal management update from Zhang Rui:
"Specifics:
- fix a bug in Exynos thermal driver, which overwrites the hardware
trip point threshold when updating software trigger levels and
results in emergency shutdown. From: Tushar Behera.
- add thermal sensor support for Armada 375 and 38x SoCs. From
Ezequiel Garcia.
- add TMU (Thermal Management Unit) support for Exynos5260 and
Exynos5420 SoCs. From Naveen Krishna Chatradhi.
- add support for the additional digital temperature sensors in the
Intel SoCs like Bay Trail. From: Srinivas Pandruvada.
- a couple of cleanups and small fixes from Jingoo Han, Bartlomiej
Zolnierkiewicz, Geert Uytterhoeven, Jacob Pan, Paul Walmsley and
Lan,Tianyu"
* 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux: (21 commits)
thermal: spear: remove unnecessary OOM messages
thermal: exynos: remove unnecessary OOM messages
thermal: rcar: remove unnecessary OOM messages
thermal: armada: Support Armada 380 SoC
thermal: armada: Support Armada 375 SoC
thermal: armada: Allow to specify an 'inverted readout' sensor
thermal: armada: Pass the platform_device to init_sensor()
thermal: armada: Add generic infrastructure to handle the sensor
thermal: armada: Add infrastructure to support generic formulas
thermal: armada: Rename armada_thermal_ops struct
thermal/intel_powerclamp: add newer cpu ids
thermal: rcar: Use pm_runtime_put() i.s.o. pm_runtime_put_sync()
thermal: samsung: Only update available threshold limits
Thermal/int3403: Fix thermal hysteresis unit conversion
thermal: Intel SoC DTS thermal
thermal: samsung: Add TMU support for Exynos5260 SoCs
thermal: samsung: Add TMU support for Exynos5420 SoCs
thermal: samsung: change base_common to more meaningful base_second
thermal: samsung: replace inten_ bit fields with intclr_
thermal: offer Samsung thermal support only when ARCH_EXYNOS is defined
...
Diffstat (limited to 'Documentation')
| -rw-r--r-- | Documentation/devicetree/bindings/thermal/armada-thermal.txt | 12 | ||||
| -rw-r--r-- | Documentation/devicetree/bindings/thermal/exynos-thermal.txt | 50 |
2 files changed, 58 insertions, 4 deletions
diff --git a/Documentation/devicetree/bindings/thermal/armada-thermal.txt b/Documentation/devicetree/bindings/thermal/armada-thermal.txt index fff93d5f92de..4cf024929a3f 100644 --- a/Documentation/devicetree/bindings/thermal/armada-thermal.txt +++ b/Documentation/devicetree/bindings/thermal/armada-thermal.txt | |||
| @@ -1,11 +1,21 @@ | |||
| 1 | * Marvell Armada 370/XP thermal management | 1 | * Marvell Armada 370/375/380/XP thermal management |
| 2 | 2 | ||
| 3 | Required properties: | 3 | Required properties: |
| 4 | 4 | ||
| 5 | - compatible: Should be set to one of the following: | 5 | - compatible: Should be set to one of the following: |
| 6 | marvell,armada370-thermal | 6 | marvell,armada370-thermal |
| 7 | marvell,armada375-thermal | ||
| 8 | marvell,armada375-z1-thermal | ||
| 9 | marvell,armada380-thermal | ||
| 7 | marvell,armadaxp-thermal | 10 | marvell,armadaxp-thermal |
| 8 | 11 | ||
| 12 | Note: As the name suggests, "marvell,armada375-z1-thermal" | ||
| 13 | applies for the SoC Z1 stepping only. On such stepping | ||
| 14 | some quirks need to be done and the register offset differs | ||
| 15 | from the one in the A0 stepping. | ||
| 16 | The operating system may auto-detect the SoC stepping and | ||
| 17 | update the compatible and register offsets at runtime. | ||
| 18 | |||
| 9 | - reg: Device's register space. | 19 | - reg: Device's register space. |
| 10 | Two entries are expected, see the examples below. | 20 | Two entries are expected, see the examples below. |
| 11 | The first one is required for the sensor register; | 21 | The first one is required for the sensor register; |
diff --git a/Documentation/devicetree/bindings/thermal/exynos-thermal.txt b/Documentation/devicetree/bindings/thermal/exynos-thermal.txt index 284f5300fd8b..c94909215c07 100644 --- a/Documentation/devicetree/bindings/thermal/exynos-thermal.txt +++ b/Documentation/devicetree/bindings/thermal/exynos-thermal.txt | |||
| @@ -6,16 +6,35 @@ | |||
| 6 | "samsung,exynos4412-tmu" | 6 | "samsung,exynos4412-tmu" |
| 7 | "samsung,exynos4210-tmu" | 7 | "samsung,exynos4210-tmu" |
| 8 | "samsung,exynos5250-tmu" | 8 | "samsung,exynos5250-tmu" |
| 9 | "samsung,exynos5260-tmu" | ||
| 10 | "samsung,exynos5420-tmu" for TMU channel 0, 1 on Exynos5420 | ||
| 11 | "samsung,exynos5420-tmu-ext-triminfo" for TMU channels 2, 3 and 4 | ||
| 12 | Exynos5420 (Must pass triminfo base and triminfo clock) | ||
| 9 | "samsung,exynos5440-tmu" | 13 | "samsung,exynos5440-tmu" |
| 10 | - interrupt-parent : The phandle for the interrupt controller | 14 | - interrupt-parent : The phandle for the interrupt controller |
| 11 | - reg : Address range of the thermal registers. For soc's which has multiple | 15 | - reg : Address range of the thermal registers. For soc's which has multiple |
| 12 | instances of TMU and some registers are shared across all TMU's like | 16 | instances of TMU and some registers are shared across all TMU's like |
| 13 | interrupt related then 2 set of register has to supplied. First set | 17 | interrupt related then 2 set of register has to supplied. First set |
| 14 | belongs to each instance of TMU and second set belongs to common TMU | 18 | belongs to register set of TMU instance and second set belongs to |
| 15 | registers. | 19 | registers shared with the TMU instance. |
| 20 | |||
| 21 | NOTE: On Exynos5420, the TRIMINFO register is misplaced for TMU | ||
| 22 | channels 2, 3 and 4 | ||
| 23 | Use "samsung,exynos5420-tmu-ext-triminfo" in cases, there is a misplaced | ||
| 24 | register, also provide clock to access that base. | ||
| 25 | |||
| 26 | TRIMINFO at 0x1006c000 contains data for TMU channel 3 | ||
| 27 | TRIMINFO at 0x100a0000 contains data for TMU channel 4 | ||
| 28 | TRIMINFO at 0x10068000 contains data for TMU channel 2 | ||
| 29 | |||
| 16 | - interrupts : Should contain interrupt for thermal system | 30 | - interrupts : Should contain interrupt for thermal system |
| 17 | - clocks : The main clock for TMU device | 31 | - clocks : The main clocks for TMU device |
| 32 | -- 1. operational clock for TMU channel | ||
| 33 | -- 2. optional clock to access the shared registers of TMU channel | ||
| 18 | - clock-names : Thermal system clock name | 34 | - clock-names : Thermal system clock name |
| 35 | -- "tmu_apbif" operational clock for current TMU channel | ||
| 36 | -- "tmu_triminfo_apbif" clock to access the shared triminfo register | ||
| 37 | for current TMU channel | ||
| 19 | - vtmu-supply: This entry is optional and provides the regulator node supplying | 38 | - vtmu-supply: This entry is optional and provides the regulator node supplying |
| 20 | voltage to TMU. If needed this entry can be placed inside | 39 | voltage to TMU. If needed this entry can be placed inside |
| 21 | board/platform specific dts file. | 40 | board/platform specific dts file. |
| @@ -43,6 +62,31 @@ Example 2): | |||
| 43 | clock-names = "tmu_apbif"; | 62 | clock-names = "tmu_apbif"; |
| 44 | }; | 63 | }; |
| 45 | 64 | ||
| 65 | Example 3): (In case of Exynos5420 "with misplaced TRIMINFO register") | ||
| 66 | tmu_cpu2: tmu@10068000 { | ||
| 67 | compatible = "samsung,exynos5420-tmu-ext-triminfo"; | ||
| 68 | reg = <0x10068000 0x100>, <0x1006c000 0x4>; | ||
| 69 | interrupts = <0 184 0>; | ||
| 70 | clocks = <&clock 318>, <&clock 318>; | ||
| 71 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; | ||
| 72 | }; | ||
| 73 | |||
| 74 | tmu_cpu3: tmu@1006c000 { | ||
| 75 | compatible = "samsung,exynos5420-tmu-ext-triminfo"; | ||
| 76 | reg = <0x1006c000 0x100>, <0x100a0000 0x4>; | ||
| 77 | interrupts = <0 185 0>; | ||
| 78 | clocks = <&clock 318>, <&clock 319>; | ||
| 79 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; | ||
| 80 | }; | ||
| 81 | |||
| 82 | tmu_gpu: tmu@100a0000 { | ||
| 83 | compatible = "samsung,exynos5420-tmu-ext-triminfo"; | ||
| 84 | reg = <0x100a0000 0x100>, <0x10068000 0x4>; | ||
| 85 | interrupts = <0 215 0>; | ||
| 86 | clocks = <&clock 319>, <&clock 318>; | ||
| 87 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; | ||
| 88 | }; | ||
| 89 | |||
| 46 | Note: For multi-instance tmu each instance should have an alias correctly | 90 | Note: For multi-instance tmu each instance should have an alias correctly |
| 47 | numbered in "aliases" node. | 91 | numbered in "aliases" node. |
| 48 | 92 | ||
