1*c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2*c66ec88fSEmmanuel Vadot/*
3*c66ec88fSEmmanuel Vadot * Copyright (c) 2018 Linaro Ltd.
4*c66ec88fSEmmanuel Vadot */
5*c66ec88fSEmmanuel Vadot
6*c66ec88fSEmmanuel Vadot/dts-v1/;
7*c66ec88fSEmmanuel Vadot#include "rk3399-rock960.dtsi"
8*c66ec88fSEmmanuel Vadot
9*c66ec88fSEmmanuel Vadot/ {
10*c66ec88fSEmmanuel Vadot	model = "96boards Rock960";
11*c66ec88fSEmmanuel Vadot	compatible = "vamrs,rock960", "rockchip,rk3399";
12*c66ec88fSEmmanuel Vadot
13*c66ec88fSEmmanuel Vadot	chosen {
14*c66ec88fSEmmanuel Vadot		stdout-path = "serial2:1500000n8";
15*c66ec88fSEmmanuel Vadot	};
16*c66ec88fSEmmanuel Vadot
17*c66ec88fSEmmanuel Vadot	leds {
18*c66ec88fSEmmanuel Vadot		compatible = "gpio-leds";
19*c66ec88fSEmmanuel Vadot		pinctrl-names = "default";
20*c66ec88fSEmmanuel Vadot		pinctrl-0 = <&user_led1_pin>, <&user_led2_pin>,
21*c66ec88fSEmmanuel Vadot			    <&user_led3_pin>, <&user_led4_pin>,
22*c66ec88fSEmmanuel Vadot			    <&wlan_led_pin>, <&bt_led_pin>;
23*c66ec88fSEmmanuel Vadot
24*c66ec88fSEmmanuel Vadot		user_led1: led-1 {
25*c66ec88fSEmmanuel Vadot			label = "green:user1";
26*c66ec88fSEmmanuel Vadot			gpios = <&gpio4 RK_PC2 0>;
27*c66ec88fSEmmanuel Vadot			linux,default-trigger = "heartbeat";
28*c66ec88fSEmmanuel Vadot		};
29*c66ec88fSEmmanuel Vadot
30*c66ec88fSEmmanuel Vadot		user_led2: led-2 {
31*c66ec88fSEmmanuel Vadot			label = "green:user2";
32*c66ec88fSEmmanuel Vadot			gpios = <&gpio4 RK_PC6 0>;
33*c66ec88fSEmmanuel Vadot			linux,default-trigger = "mmc0";
34*c66ec88fSEmmanuel Vadot		};
35*c66ec88fSEmmanuel Vadot
36*c66ec88fSEmmanuel Vadot		user_led3: led-3 {
37*c66ec88fSEmmanuel Vadot			label = "green:user3";
38*c66ec88fSEmmanuel Vadot			gpios = <&gpio4 RK_PD0 0>;
39*c66ec88fSEmmanuel Vadot			linux,default-trigger = "mmc1";
40*c66ec88fSEmmanuel Vadot		};
41*c66ec88fSEmmanuel Vadot
42*c66ec88fSEmmanuel Vadot		user_led4: led-4 {
43*c66ec88fSEmmanuel Vadot			label = "green:user4";
44*c66ec88fSEmmanuel Vadot			gpios = <&gpio4 RK_PD4 0>;
45*c66ec88fSEmmanuel Vadot			panic-indicator;
46*c66ec88fSEmmanuel Vadot			linux,default-trigger = "none";
47*c66ec88fSEmmanuel Vadot		};
48*c66ec88fSEmmanuel Vadot
49*c66ec88fSEmmanuel Vadot		wlan_active_led: led-5 {
50*c66ec88fSEmmanuel Vadot			label = "yellow:wlan";
51*c66ec88fSEmmanuel Vadot			gpios = <&gpio4 RK_PD5 0>;
52*c66ec88fSEmmanuel Vadot			linux,default-trigger = "phy0tx";
53*c66ec88fSEmmanuel Vadot			default-state = "off";
54*c66ec88fSEmmanuel Vadot		};
55*c66ec88fSEmmanuel Vadot
56*c66ec88fSEmmanuel Vadot		bt_active_led: led-6 {
57*c66ec88fSEmmanuel Vadot			label = "blue:bt";
58*c66ec88fSEmmanuel Vadot			gpios = <&gpio4 RK_PD6 0>;
59*c66ec88fSEmmanuel Vadot			linux,default-trigger = "hci0-power";
60*c66ec88fSEmmanuel Vadot			default-state = "off";
61*c66ec88fSEmmanuel Vadot		};
62*c66ec88fSEmmanuel Vadot	};
63*c66ec88fSEmmanuel Vadot
64*c66ec88fSEmmanuel Vadot};
65*c66ec88fSEmmanuel Vadot
66*c66ec88fSEmmanuel Vadot&pcie0 {
67*c66ec88fSEmmanuel Vadot	ep-gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_HIGH>;
68*c66ec88fSEmmanuel Vadot};
69*c66ec88fSEmmanuel Vadot
70*c66ec88fSEmmanuel Vadot&pinctrl {
71*c66ec88fSEmmanuel Vadot	leds {
72*c66ec88fSEmmanuel Vadot		user_led1_pin: user-led1-pin {
73*c66ec88fSEmmanuel Vadot			rockchip,pins =
74*c66ec88fSEmmanuel Vadot				<4 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
75*c66ec88fSEmmanuel Vadot		};
76*c66ec88fSEmmanuel Vadot
77*c66ec88fSEmmanuel Vadot		user_led2_pin: user-led2-pin {
78*c66ec88fSEmmanuel Vadot			rockchip,pins =
79*c66ec88fSEmmanuel Vadot				<4 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
80*c66ec88fSEmmanuel Vadot		};
81*c66ec88fSEmmanuel Vadot
82*c66ec88fSEmmanuel Vadot		user_led3_pin: user-led3-pin {
83*c66ec88fSEmmanuel Vadot			rockchip,pins =
84*c66ec88fSEmmanuel Vadot				<4 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>;
85*c66ec88fSEmmanuel Vadot		};
86*c66ec88fSEmmanuel Vadot
87*c66ec88fSEmmanuel Vadot		user_led4_pin: user-led4-pin {
88*c66ec88fSEmmanuel Vadot			rockchip,pins =
89*c66ec88fSEmmanuel Vadot				<4 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>;
90*c66ec88fSEmmanuel Vadot		};
91*c66ec88fSEmmanuel Vadot
92*c66ec88fSEmmanuel Vadot		wlan_led_pin: wlan-led-pin {
93*c66ec88fSEmmanuel Vadot			rockchip,pins =
94*c66ec88fSEmmanuel Vadot				<4 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>;
95*c66ec88fSEmmanuel Vadot		};
96*c66ec88fSEmmanuel Vadot
97*c66ec88fSEmmanuel Vadot		bt_led_pin: bt-led-pin {
98*c66ec88fSEmmanuel Vadot			rockchip,pins =
99*c66ec88fSEmmanuel Vadot				<4 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>;
100*c66ec88fSEmmanuel Vadot		};
101*c66ec88fSEmmanuel Vadot	};
102*c66ec88fSEmmanuel Vadot
103*c66ec88fSEmmanuel Vadot	pcie {
104*c66ec88fSEmmanuel Vadot		pcie_drv: pcie-drv {
105*c66ec88fSEmmanuel Vadot			rockchip,pins =
106*c66ec88fSEmmanuel Vadot				<2 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
107*c66ec88fSEmmanuel Vadot			};
108*c66ec88fSEmmanuel Vadot	};
109*c66ec88fSEmmanuel Vadot
110*c66ec88fSEmmanuel Vadot	usb2 {
111*c66ec88fSEmmanuel Vadot		host_vbus_drv: host-vbus-drv {
112*c66ec88fSEmmanuel Vadot			rockchip,pins =
113*c66ec88fSEmmanuel Vadot				<4 RK_PD1 RK_FUNC_GPIO &pcfg_pull_none>;
114*c66ec88fSEmmanuel Vadot		};
115*c66ec88fSEmmanuel Vadot	};
116*c66ec88fSEmmanuel Vadot};
117*c66ec88fSEmmanuel Vadot
118*c66ec88fSEmmanuel Vadot&spi0 {
119*c66ec88fSEmmanuel Vadot	/* On Low speed expansion (LS-SPI0) */
120*c66ec88fSEmmanuel Vadot	status = "okay";
121*c66ec88fSEmmanuel Vadot};
122*c66ec88fSEmmanuel Vadot
123*c66ec88fSEmmanuel Vadot&spi4 {
124*c66ec88fSEmmanuel Vadot	/* On High speed expansion (HS-SPI1) */
125*c66ec88fSEmmanuel Vadot	status = "okay";
126*c66ec88fSEmmanuel Vadot};
127*c66ec88fSEmmanuel Vadot
128*c66ec88fSEmmanuel Vadot&thermal_zones {
129*c66ec88fSEmmanuel Vadot	cpu_thermal: cpu {
130*c66ec88fSEmmanuel Vadot		polling-delay-passive = <100>;
131*c66ec88fSEmmanuel Vadot		polling-delay = <1000>;
132*c66ec88fSEmmanuel Vadot		thermal-sensors = <&tsadc 0>;
133*c66ec88fSEmmanuel Vadot		sustainable-power = <1550>;
134*c66ec88fSEmmanuel Vadot
135*c66ec88fSEmmanuel Vadot		trips {
136*c66ec88fSEmmanuel Vadot			cpu_alert0: cpu_alert0 {
137*c66ec88fSEmmanuel Vadot				    temperature = <65000>;
138*c66ec88fSEmmanuel Vadot				    hysteresis = <2000>;
139*c66ec88fSEmmanuel Vadot				    type = "passive";
140*c66ec88fSEmmanuel Vadot			};
141*c66ec88fSEmmanuel Vadot
142*c66ec88fSEmmanuel Vadot			cpu_alert1: cpu_alert1 {
143*c66ec88fSEmmanuel Vadot				    temperature = <75000>;
144*c66ec88fSEmmanuel Vadot				    hysteresis = <2000>;
145*c66ec88fSEmmanuel Vadot				    type = "passive";
146*c66ec88fSEmmanuel Vadot			};
147*c66ec88fSEmmanuel Vadot
148*c66ec88fSEmmanuel Vadot			cpu_crit: cpu_crit {
149*c66ec88fSEmmanuel Vadot				  temperature = <95000>;
150*c66ec88fSEmmanuel Vadot				  hysteresis = <2000>;
151*c66ec88fSEmmanuel Vadot				  type = "critical";
152*c66ec88fSEmmanuel Vadot			};
153*c66ec88fSEmmanuel Vadot		};
154*c66ec88fSEmmanuel Vadot
155*c66ec88fSEmmanuel Vadot		cooling-maps {
156*c66ec88fSEmmanuel Vadot			     map0 {
157*c66ec88fSEmmanuel Vadot
158*c66ec88fSEmmanuel Vadot			     trip = <&cpu_alert1>;
159*c66ec88fSEmmanuel Vadot			     cooling-device =
160*c66ec88fSEmmanuel Vadot					<&cpu_b0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
161*c66ec88fSEmmanuel Vadot					<&cpu_b1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
162*c66ec88fSEmmanuel Vadot			};
163*c66ec88fSEmmanuel Vadot		};
164*c66ec88fSEmmanuel Vadot	};
165*c66ec88fSEmmanuel Vadot};
166*c66ec88fSEmmanuel Vadot
167*c66ec88fSEmmanuel Vadot&usbdrd_dwc3_0 {
168*c66ec88fSEmmanuel Vadot	dr_mode = "otg";
169*c66ec88fSEmmanuel Vadot};
170*c66ec88fSEmmanuel Vadot
171*c66ec88fSEmmanuel Vadot&usbdrd_dwc3_1 {
172*c66ec88fSEmmanuel Vadot	dr_mode = "host";
173*c66ec88fSEmmanuel Vadot};
174*c66ec88fSEmmanuel Vadot
175*c66ec88fSEmmanuel Vadot&vcc3v3_pcie {
176*c66ec88fSEmmanuel Vadot	gpio = <&gpio2 5 GPIO_ACTIVE_HIGH>;
177*c66ec88fSEmmanuel Vadot};
178*c66ec88fSEmmanuel Vadot
179*c66ec88fSEmmanuel Vadot&vcc5v0_host {
180*c66ec88fSEmmanuel Vadot	gpio = <&gpio4 25 GPIO_ACTIVE_HIGH>;
181*c66ec88fSEmmanuel Vadot};
182