Commit | Line | Data |
---|---|---|
f1722d7d AM |
1 | /* |
2 | * Device tree sources for Exynos5422 thermal zone | |
3 | * | |
4 | * Copyright (c) 2015 Lukasz Majewski <l.majewski@samsung.com> | |
5 | * Anand Moon <linux.amoon@gmail.com> | |
6 | * | |
7 | * This program is free software; you can redistribute it and/or modify | |
8 | * it under the terms of the GNU General Public License version 2 as | |
9 | * published by the Free Software Foundation. | |
10 | * | |
11 | */ | |
12 | ||
13 | #include <dt-bindings/thermal/thermal.h> | |
14 | ||
15 | / { | |
16 | thermal-zones { | |
17 | cpu0_thermal: cpu0-thermal { | |
18 | thermal-sensors = <&tmu_cpu0 0>; | |
52e8e592 | 19 | polling-delay-passive = <250>; |
f1722d7d AM |
20 | polling-delay = <0>; |
21 | trips { | |
22 | cpu_alert0: cpu-alert-0 { | |
23 | temperature = <50000>; /* millicelsius */ | |
24 | hysteresis = <5000>; /* millicelsius */ | |
25 | type = "active"; | |
26 | }; | |
27 | cpu_alert1: cpu-alert-1 { | |
28 | temperature = <60000>; /* millicelsius */ | |
29 | hysteresis = <5000>; /* millicelsius */ | |
30 | type = "active"; | |
31 | }; | |
32 | cpu_alert2: cpu-alert-2 { | |
33 | temperature = <70000>; /* millicelsius */ | |
34 | hysteresis = <5000>; /* millicelsius */ | |
35 | type = "active"; | |
36 | }; | |
37 | cpu_crit0: cpu-crit-0 { | |
38 | temperature = <120000>; /* millicelsius */ | |
39 | hysteresis = <0>; /* millicelsius */ | |
40 | type = "critical"; | |
41 | }; | |
52e8e592 KK |
42 | /* |
43 | * Exyunos542x support only 4 trip-points | |
44 | * so for these polling mode is required. | |
45 | * Start polling at temperature level of last | |
46 | * interrupt-driven trip: cpu_alert2 | |
47 | */ | |
48 | cpu_alert3: cpu-alert-3 { | |
49 | temperature = <70000>; /* millicelsius */ | |
50 | hysteresis = <10000>; /* millicelsius */ | |
51 | type = "passive"; | |
52 | }; | |
53 | cpu_alert4: cpu-alert-4 { | |
54 | temperature = <85000>; /* millicelsius */ | |
55 | hysteresis = <10000>; /* millicelsius */ | |
56 | type = "passive"; | |
57 | }; | |
58 | ||
f1722d7d AM |
59 | }; |
60 | cooling-maps { | |
61 | map0 { | |
62 | trip = <&cpu_alert0>; | |
63 | cooling-device = <&fan0 0 1>; | |
64 | }; | |
65 | map1 { | |
66 | trip = <&cpu_alert1>; | |
67 | cooling-device = <&fan0 1 2>; | |
68 | }; | |
69 | map2 { | |
70 | trip = <&cpu_alert2>; | |
71 | cooling-device = <&fan0 2 3>; | |
72 | }; | |
52e8e592 KK |
73 | /* |
74 | * When reaching cpu_alert3, reduce CPU | |
75 | * by 2 steps. On Exynos5422/5800 that would | |
76 | * be: 1500 MHz and 1100 MHz. | |
77 | */ | |
78 | map3 { | |
79 | trip = <&cpu_alert3>; | |
80 | cooling-device = <&cpu0 0 2>; | |
81 | }; | |
82 | map4 { | |
83 | trip = <&cpu_alert3>; | |
84 | cooling-device = <&cpu4 0 2>; | |
85 | }; | |
86 | ||
87 | /* | |
88 | * When reaching cpu_alert4, reduce CPU | |
89 | * further, down to 600 MHz (11 steps for big, | |
90 | * 7 steps for LITTLE). | |
91 | */ | |
92 | map5 { | |
93 | trip = <&cpu_alert4>; | |
94 | cooling-device = <&cpu0 3 7>; | |
95 | }; | |
96 | map6 { | |
97 | trip = <&cpu_alert4>; | |
98 | cooling-device = <&cpu4 3 11>; | |
99 | }; | |
f1722d7d AM |
100 | }; |
101 | }; | |
102 | }; | |
103 | }; |