xref: /freebsd/sys/contrib/device-tree/src/arm64/exynos/exynos5433-tmu.dtsi (revision 95eb4b873b6a8b527c5bd78d7191975dfca38998)
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Device tree sources for Exynos5433 thermal zone
4 *
5 * Copyright (c) 2016 Chanwoo Choi <cw00.choi@samsung.com>
6 */
7
8#include <dt-bindings/thermal/thermal.h>
9
10/ {
11thermal-zones {
12	atlas0_thermal: atlas0-thermal {
13		thermal-sensors = <&tmu_atlas0>;
14		polling-delay-passive = <0>;
15		polling-delay = <0>;
16		trips {
17			atlas0_alert_0: atlas0-alert-0 {
18				temperature = <65000>;	/* millicelsius */
19				hysteresis = <1000>;	/* millicelsius */
20				type = "active";
21			};
22			atlas0_alert_1: atlas0-alert-1 {
23				temperature = <70000>;	/* millicelsius */
24				hysteresis = <1000>;	/* millicelsius */
25				type = "active";
26			};
27			atlas0_alert_2: atlas0-alert-2 {
28				temperature = <75000>;	/* millicelsius */
29				hysteresis = <1000>;	/* millicelsius */
30				type = "active";
31			};
32			atlas0_alert_3: atlas0-alert-3 {
33				temperature = <80000>;	/* millicelsius */
34				hysteresis = <1000>;	/* millicelsius */
35				type = "active";
36			};
37			atlas0_alert_4: atlas0-alert-4 {
38				temperature = <85000>;	/* millicelsius */
39				hysteresis = <1000>;	/* millicelsius */
40				type = "active";
41			};
42			atlas0_alert_5: atlas0-alert-5 {
43				temperature = <90000>;	/* millicelsius */
44				hysteresis = <1000>;	/* millicelsius */
45				type = "active";
46			};
47			atlas0_alert_6: atlas0-alert-6 {
48				temperature = <95000>;	/* millicelsius */
49				hysteresis = <1000>;	/* millicelsius */
50				type = "active";
51			};
52		};
53
54		cooling-maps {
55			map0 {
56				/* Set maximum frequency as 1800MHz  */
57				trip = <&atlas0_alert_0>;
58				cooling-device = <&cpu4 1 2>, <&cpu5 1 2>,
59						 <&cpu6 1 2>, <&cpu7 1 2>;
60			};
61			map1 {
62				/* Set maximum frequency as 1700MHz  */
63				trip = <&atlas0_alert_1>;
64				cooling-device = <&cpu4 2 3>, <&cpu5 2 3>,
65						 <&cpu6 2 3>, <&cpu7 2 3>;
66			};
67			map2 {
68				/* Set maximum frequency as 1600MHz  */
69				trip = <&atlas0_alert_2>;
70				cooling-device = <&cpu4 3 4>, <&cpu5 3 4>,
71						 <&cpu6 3 4>, <&cpu7 3 4>;
72			};
73			map3 {
74				/* Set maximum frequency as 1500MHz  */
75				trip = <&atlas0_alert_3>;
76				cooling-device = <&cpu4 4 5>, <&cpu5 4 5>,
77						 <&cpu6 4 5>, <&cpu7 4 5>;
78			};
79			map4 {
80				/* Set maximum frequency as 1400MHz  */
81				trip = <&atlas0_alert_4>;
82				cooling-device = <&cpu4 5 7>, <&cpu5 5 7>,
83						 <&cpu6 5 7>, <&cpu7 5 7>;
84			};
85			map5 {
86				/* Set maximum frequencyas 1200MHz  */
87				trip = <&atlas0_alert_5>;
88				cooling-device = <&cpu4 7 9>, <&cpu5 7 9>,
89						 <&cpu6 7 9>, <&cpu7 7 9>;
90			};
91			map6 {
92				/* Set maximum frequency as 1000MHz  */
93				trip = <&atlas0_alert_6>;
94				cooling-device = <&cpu4 9 14>, <&cpu5 9 14>,
95						 <&cpu6 9 14>, <&cpu7 9 14>;
96			};
97		};
98	};
99
100	atlas1_thermal: atlas1-thermal {
101		thermal-sensors = <&tmu_atlas1>;
102		polling-delay-passive = <0>;
103		polling-delay = <0>;
104		trips {
105			atlas1_alert_0: atlas1-alert-0 {
106				temperature = <65000>;	/* millicelsius */
107				hysteresis = <1000>;	/* millicelsius */
108				type = "active";
109			};
110			atlas1_alert_1: atlas1-alert-1 {
111				temperature = <70000>;	/* millicelsius */
112				hysteresis = <1000>;	/* millicelsius */
113				type = "active";
114			};
115			atlas1_alert_2: atlas1-alert-2 {
116				temperature = <75000>;	/* millicelsius */
117				hysteresis = <1000>;	/* millicelsius */
118				type = "active";
119			};
120			atlas1_alert_3: atlas1-alert-3 {
121				temperature = <80000>;	/* millicelsius */
122				hysteresis = <1000>;	/* millicelsius */
123				type = "active";
124			};
125			atlas1_alert_4: atlas1-alert-4 {
126				temperature = <85000>;	/* millicelsius */
127				hysteresis = <1000>;	/* millicelsius */
128				type = "active";
129			};
130			atlas1_alert_5: atlas1-alert-5 {
131				temperature = <90000>;	/* millicelsius */
132				hysteresis = <1000>;	/* millicelsius */
133				type = "active";
134			};
135			atlas1_alert_6: atlas1-alert-6 {
136				temperature = <95000>;	/* millicelsius */
137				hysteresis = <1000>;	/* millicelsius */
138				type = "active";
139			};
140		};
141	};
142
143	g3d_thermal: g3d-thermal {
144		thermal-sensors = <&tmu_g3d>;
145		polling-delay-passive = <0>;
146		polling-delay = <0>;
147		trips {
148			g3d_alert_0: g3d-alert-0 {
149				temperature = <70000>;	/* millicelsius */
150				hysteresis = <1000>;	/* millicelsius */
151				type = "active";
152			};
153			g3d_alert_1: g3d-alert-1 {
154				temperature = <75000>;	/* millicelsius */
155				hysteresis = <1000>;	/* millicelsius */
156				type = "active";
157			};
158			g3d_alert_2: g3d-alert-2 {
159				temperature = <80000>;	/* millicelsius */
160				hysteresis = <1000>;	/* millicelsius */
161				type = "active";
162			};
163			g3d_alert_3: g3d-alert-3 {
164				temperature = <85000>;	/* millicelsius */
165				hysteresis = <1000>;	/* millicelsius */
166				type = "active";
167			};
168			g3d_alert_4: g3d-alert-4 {
169				temperature = <90000>;	/* millicelsius */
170				hysteresis = <1000>;	/* millicelsius */
171				type = "active";
172			};
173			g3d_alert_5: g3d-alert-5 {
174				temperature = <95000>;	/* millicelsius */
175				hysteresis = <1000>;	/* millicelsius */
176				type = "active";
177			};
178			g3d_alert_6: g3d-alert-6 {
179				temperature = <100000>;	/* millicelsius */
180				hysteresis = <1000>;	/* millicelsius */
181				type = "active";
182			};
183		};
184	};
185
186	apollo_thermal: apollo-thermal {
187		thermal-sensors = <&tmu_apollo>;
188		polling-delay-passive = <0>;
189		polling-delay = <0>;
190		trips {
191			apollo_alert_0: apollo-alert-0 {
192				temperature = <65000>;	/* millicelsius */
193				hysteresis = <1000>;	/* millicelsius */
194				type = "active";
195			};
196			apollo_alert_1: apollo-alert-1 {
197				temperature = <70000>;	/* millicelsius */
198				hysteresis = <1000>;	/* millicelsius */
199				type = "active";
200			};
201			apollo_alert_2: apollo-alert-2 {
202				temperature = <75000>;	/* millicelsius */
203				hysteresis = <1000>;	/* millicelsius */
204				type = "active";
205			};
206			apollo_alert_3: apollo-alert-3 {
207				temperature = <80000>;	/* millicelsius */
208				hysteresis = <1000>;	/* millicelsius */
209				type = "active";
210			};
211			apollo_alert_4: apollo-alert-4 {
212				temperature = <85000>;	/* millicelsius */
213				hysteresis = <1000>;	/* millicelsius */
214				type = "active";
215			};
216			apollo_alert_5: apollo-alert-5 {
217				temperature = <90000>;	/* millicelsius */
218				hysteresis = <1000>;	/* millicelsius */
219				type = "active";
220			};
221			apollo_alert_6: apollo-alert-6 {
222				temperature = <95000>;	/* millicelsius */
223				hysteresis = <1000>;	/* millicelsius */
224				type = "active";
225			};
226		};
227
228		cooling-maps {
229			map0 {
230				/* Set maximum frequency as 1200MHz  */
231				trip = <&apollo_alert_2>;
232				cooling-device = <&cpu0 1 2>, <&cpu1 1 2>,
233						 <&cpu2 1 2>, <&cpu3 1 2>;
234			};
235			map1 {
236				/* Set maximum frequency as 1100MHz  */
237				trip = <&apollo_alert_3>;
238				cooling-device = <&cpu0 2 3>, <&cpu1 2 3>,
239						 <&cpu2 2 3>, <&cpu3 2 3>;
240			};
241			map2 {
242				/* Set maximum frequency as 1000MHz  */
243				trip = <&apollo_alert_4>;
244				cooling-device = <&cpu0 3 4>, <&cpu1 3 4>,
245						 <&cpu2 3 4>, <&cpu3 3 4>;
246			};
247			map3 {
248				/* Set maximum frequency as 900MHz  */
249				trip = <&apollo_alert_5>;
250				cooling-device = <&cpu0 4 5>, <&cpu1 4 5>,
251						 <&cpu2 4 5>, <&cpu3 4 5>;
252			};
253			map4 {
254				/* Set maximum frequency as 800MHz  */
255				trip = <&apollo_alert_6>;
256				cooling-device = <&cpu0 5 9>, <&cpu1 5 9>,
257						 <&cpu2 5 9>, <&cpu3 5 9>;
258			};
259		};
260	};
261
262	isp_thermal: isp-thermal {
263		thermal-sensors = <&tmu_isp>;
264		polling-delay-passive = <0>;
265		polling-delay = <0>;
266		trips {
267			isp_alert_0: isp-alert-0 {
268				temperature = <80000>;	/* millicelsius */
269				hysteresis = <1000>;	/* millicelsius */
270				type = "active";
271			};
272			isp_alert_1: isp-alert-1 {
273				temperature = <85000>;	/* millicelsius */
274				hysteresis = <1000>;	/* millicelsius */
275				type = "active";
276			};
277			isp_alert_2: isp-alert-2 {
278				temperature = <90000>;	/* millicelsius */
279				hysteresis = <1000>;	/* millicelsius */
280				type = "active";
281			};
282			isp_alert_3: isp-alert-3 {
283				temperature = <95000>;	/* millicelsius */
284				hysteresis = <1000>;	/* millicelsius */
285				type = "active";
286			};
287			isp_alert_4: isp-alert-4 {
288				temperature = <100000>;	/* millicelsius */
289				hysteresis = <1000>;	/* millicelsius */
290				type = "active";
291			};
292			isp_alert_5: isp-alert-5 {
293				temperature = <105000>;	/* millicelsius */
294				hysteresis = <1000>;	/* millicelsius */
295				type = "active";
296			};
297			isp_alert_6: isp-alert-6 {
298				temperature = <110000>;	/* millicelsius */
299				hysteresis = <1000>;	/* millicelsius */
300				type = "active";
301			};
302		};
303	};
304};
305};
306