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