1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Hardkernel Odroid HC1 board device tree source
4 *
5 * Copyright (c) 2017 Marek Szyprowski
6 * Copyright (c) 2017 Samsung Electronics Co., Ltd.
7 *		http://www.samsung.com
8 */
9
10/dts-v1/;
11#include "exynos5422-odroid-core.dtsi"
12
13/ {
14	model = "Hardkernel Odroid HC1";
15	compatible = "hardkernel,odroid-hc1", "samsung,exynos5800", \
16		     "samsung,exynos5";
17
18	pwmleds {
19		compatible = "pwm-leds";
20
21		blueled {
22			label = "blue:heartbeat";
23			pwms = <&pwm 2 2000000 0>;
24			pwm-names = "pwm2";
25			max_brightness = <255>;
26			linux,default-trigger = "heartbeat";
27		};
28	};
29
30	thermal-zones {
31		cpu0_thermal: cpu0-thermal {
32			thermal-sensors = <&tmu_cpu0 0>;
33			trips {
34				cpu0_alert0: cpu-alert-0 {
35					temperature = <70000>; /* millicelsius */
36					hysteresis = <10000>; /* millicelsius */
37					type = "active";
38				};
39				cpu0_alert1: cpu-alert-1 {
40					temperature = <85000>; /* millicelsius */
41					hysteresis = <10000>; /* millicelsius */
42					type = "active";
43				};
44				cpu0_crit0: cpu-crit-0 {
45					temperature = <120000>; /* millicelsius */
46					hysteresis = <0>; /* millicelsius */
47					type = "critical";
48				};
49			};
50
51			cooling-maps {
52				/*
53				 * When reaching cpu0_alert0, reduce CPU
54				 * by 2 steps. On Exynos5422/5800 that would
55				 * be: 1600 MHz and 1100 MHz.
56				 */
57				map0 {
58					trip = <&cpu0_alert0>;
59					cooling-device = <&cpu0 0 2>,
60							 <&cpu1 0 2>,
61							 <&cpu2 0 2>,
62							 <&cpu3 0 2>,
63							 <&cpu4 0 2>,
64							 <&cpu5 0 2>,
65							 <&cpu6 0 2>,
66							 <&cpu7 0 2>;
67				};
68				/*
69				 * When reaching cpu0_alert1, reduce CPU
70				 * further, down to 600 MHz (12 steps for big,
71				 * 7 steps for LITTLE).
72				 */
73				map1 {
74					trip = <&cpu0_alert1>;
75					cooling-device = <&cpu0 3 7>,
76							 <&cpu1 3 7>,
77							 <&cpu2 3 7>,
78							 <&cpu3 3 7>,
79							 <&cpu4 3 12>,
80							 <&cpu5 3 12>,
81							 <&cpu6 3 12>,
82							 <&cpu7 3 12>;
83				};
84			};
85		};
86		cpu1_thermal: cpu1-thermal {
87			thermal-sensors = <&tmu_cpu1 0>;
88			trips {
89				cpu1_alert0: cpu-alert-0 {
90					temperature = <70000>;
91					hysteresis = <10000>;
92					type = "active";
93				};
94				cpu1_alert1: cpu-alert-1 {
95					temperature = <85000>;
96					hysteresis = <10000>;
97					type = "active";
98				};
99				cpu1_crit0: cpu-crit-0 {
100					temperature = <120000>;
101					hysteresis = <0>;
102					type = "critical";
103				};
104			};
105			cooling-maps {
106				map0 {
107					trip = <&cpu1_alert0>;
108					cooling-device = <&cpu0 0 2>,
109							 <&cpu1 0 2>,
110							 <&cpu2 0 2>,
111							 <&cpu3 0 2>,
112							 <&cpu4 0 2>,
113							 <&cpu5 0 2>,
114							 <&cpu6 0 2>,
115							 <&cpu7 0 2>;
116				};
117				map1 {
118					trip = <&cpu1_alert1>;
119					cooling-device = <&cpu0 3 7>,
120							 <&cpu1 3 7>,
121							 <&cpu2 3 7>,
122							 <&cpu3 3 7>,
123							 <&cpu4 3 12>,
124							 <&cpu5 3 12>,
125							 <&cpu6 3 12>,
126							 <&cpu7 3 12>;
127				};
128			};
129		};
130		cpu2_thermal: cpu2-thermal {
131			thermal-sensors = <&tmu_cpu2 0>;
132			trips {
133				cpu2_alert0: cpu-alert-0 {
134					temperature = <70000>;
135					hysteresis = <10000>;
136					type = "active";
137				};
138				cpu2_alert1: cpu-alert-1 {
139					temperature = <85000>;
140					hysteresis = <10000>;
141					type = "active";
142				};
143				cpu2_crit0: cpu-crit-0 {
144					temperature = <120000>;
145					hysteresis = <0>;
146					type = "critical";
147				};
148			};
149			cooling-maps {
150				map0 {
151					trip = <&cpu2_alert0>;
152					cooling-device = <&cpu0 0 2>,
153							 <&cpu1 0 2>,
154							 <&cpu2 0 2>,
155							 <&cpu3 0 2>,
156							 <&cpu4 0 2>,
157							 <&cpu5 0 2>,
158							 <&cpu6 0 2>,
159							 <&cpu7 0 2>;
160				};
161				map1 {
162					trip = <&cpu2_alert1>;
163					cooling-device = <&cpu0 3 7>,
164							 <&cpu1 3 7>,
165							 <&cpu2 3 7>,
166							 <&cpu3 3 7>,
167							 <&cpu4 3 12>,
168							 <&cpu5 3 12>,
169							 <&cpu6 3 12>,
170							 <&cpu7 3 12>;
171				};
172			};
173		};
174		cpu3_thermal: cpu3-thermal {
175			thermal-sensors = <&tmu_cpu3 0>;
176			trips {
177				cpu3_alert0: cpu-alert-0 {
178					temperature = <70000>;
179					hysteresis = <10000>;
180					type = "active";
181				};
182				cpu3_alert1: cpu-alert-1 {
183					temperature = <85000>;
184					hysteresis = <10000>;
185					type = "active";
186				};
187				cpu3_crit0: cpu-crit-0 {
188					temperature = <120000>;
189					hysteresis = <0>;
190					type = "critical";
191				};
192			};
193			cooling-maps {
194				map0 {
195					trip = <&cpu3_alert0>;
196					cooling-device = <&cpu0 0 2>,
197							 <&cpu1 0 2>,
198							 <&cpu2 0 2>,
199							 <&cpu3 0 2>,
200							 <&cpu4 0 2>,
201							 <&cpu5 0 2>,
202							 <&cpu6 0 2>,
203							 <&cpu7 0 2>;
204				};
205				map1 {
206					trip = <&cpu3_alert1>;
207					cooling-device = <&cpu0 3 7>,
208							 <&cpu1 3 7>,
209							 <&cpu2 3 7>,
210							 <&cpu3 3 7>,
211							 <&cpu4 3 12>,
212							 <&cpu5 3 12>,
213							 <&cpu6 3 12>,
214							 <&cpu7 3 12>;
215				};
216			};
217		};
218	};
219
220};
221
222&pwm {
223	/*
224	 * PWM 2 -- Blue LED
225	 */
226	pinctrl-0 = <&pwm2_out>;
227	pinctrl-names = "default";
228	samsung,pwm-outputs = <2>;
229	status = "okay";
230};
231
232&usbdrd_dwc3_1 {
233	dr_mode = "host";
234};
235