1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2018 Collabora Ltd.
4 * Copyright (c) 2018 Fuzhou Rockchip Electronics Co., Ltd.
5 *
6 * Schematics available at https://dl.vamrs.com/products/ficus/docs/hw
7 */
8
9/dts-v1/;
10#include "rk3399-rock960.dtsi"
11
12/ {
13	model = "96boards RK3399 Ficus";
14	compatible = "vamrs,ficus", "rockchip,rk3399";
15
16	aliases {
17		ethernet0 = &gmac;
18	};
19
20	chosen {
21		stdout-path = "serial2:1500000n8";
22	};
23
24	clkin_gmac: external-gmac-clock {
25		compatible = "fixed-clock";
26		clock-frequency = <125000000>;
27		clock-output-names = "clkin_gmac";
28		#clock-cells = <0>;
29	};
30
31	leds {
32		compatible = "gpio-leds";
33		pinctrl-names = "default";
34		pinctrl-0 = <&user_led1_pin>, <&user_led2_pin>,
35			    <&user_led3_pin>, <&user_led4_pin>,
36			    <&wlan_led_pin>, <&bt_led_pin>;
37
38		user_led1: led-1 {
39			label = "red:user1";
40			gpios = <&gpio4 25 0>;
41			linux,default-trigger = "heartbeat";
42		};
43
44		user_led2: led-2 {
45			label = "red:user2";
46			gpios = <&gpio4 26 0>;
47			linux,default-trigger = "mmc0";
48		};
49
50		user_led3: led-3 {
51			label = "red:user3";
52			gpios = <&gpio4 30 0>;
53			linux,default-trigger = "mmc1";
54		};
55
56		user_led4: led-4 {
57			label = "red:user4";
58			gpios = <&gpio1 0 0>;
59			panic-indicator;
60			linux,default-trigger = "none";
61		};
62
63		wlan_active_led: led-5 {
64			label = "red:wlan";
65			gpios = <&gpio1 1 0>;
66			linux,default-trigger = "phy0tx";
67			default-state = "off";
68		};
69
70		bt_active_led: led-6 {
71			label = "red:bt";
72			gpios = <&gpio1 4 0>;
73			linux,default-trigger = "hci0-power";
74			default-state = "off";
75		};
76	};
77};
78
79&gmac {
80	assigned-clocks = <&cru SCLK_RMII_SRC>;
81	assigned-clock-parents = <&clkin_gmac>;
82	clock_in_out = "input";
83	phy-supply = <&vcc3v3_sys>;
84	phy-mode = "rgmii";
85	pinctrl-names = "default";
86	pinctrl-0 = <&rgmii_pins>;
87	snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
88	snps,reset-active-low;
89	snps,reset-delays-us = <0 10000 50000>;
90	tx_delay = <0x28>;
91	rx_delay = <0x11>;
92	status = "okay";
93};
94
95&pcie0 {
96	ep-gpios = <&gpio4 RK_PD4 GPIO_ACTIVE_HIGH>;
97};
98
99&pinctrl {
100	gmac {
101		rgmii_sleep_pins: rgmii-sleep-pins {
102			rockchip,pins =
103				<3 RK_PB7 RK_FUNC_GPIO &pcfg_output_low>;
104		};
105	};
106
107	pcie {
108		pcie_drv: pcie-drv {
109			rockchip,pins =
110				<1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>;
111			};
112	};
113
114	usb2 {
115		host_vbus_drv: host-vbus-drv {
116			rockchip,pins =
117				<4 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
118		};
119	};
120
121	leds {
122		user_led1_pin: user-led1-pin {
123			rockchip,pins =
124				<4 RK_PD1 RK_FUNC_GPIO &pcfg_pull_none>;
125		};
126
127		user_led2_pin: user-led2-pin {
128			rockchip,pins =
129				<4 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
130		};
131
132		user_led3_pin: user-led3-pin {
133			rockchip,pins =
134				<4 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>;
135		};
136
137		user_led4_pin: user-led4-pin {
138			rockchip,pins =
139				<1 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
140		};
141
142		wlan_led_pin: wlan-led-pin {
143			rockchip,pins =
144				<1 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>;
145		};
146
147		bt_led_pin: bt-led-pin {
148			rockchip,pins =
149				<1 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
150		};
151	};
152};
153
154&spi1 {
155	/* On both Low speed and High speed expansion */
156	cs-gpios = <0>, <&gpio4 RK_PA6 0>, <&gpio4 RK_PA7 0>;
157	status = "okay";
158};
159
160&usbdrd_dwc3_0 {
161	dr_mode = "host";
162};
163
164&usbdrd_dwc3_1 {
165	dr_mode = "host";
166};
167
168&vcc3v3_pcie {
169	gpio = <&gpio1 24 GPIO_ACTIVE_HIGH>;
170};
171
172&vcc5v0_host {
173	gpio = <&gpio4 27 GPIO_ACTIVE_HIGH>;
174};
175