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