xref: /openbmc/u-boot/arch/arm/dts/rk3368-sheep.dts (revision e8f80a5a)
1*83d290c5STom Rini// SPDX-License-Identifier: GPL-2.0+
2e2901ab8SAndy Yan/*
3e2901ab8SAndy Yan * (C) Copyright 2017 Rockchip Electronics Co., Ltd
4e2901ab8SAndy Yan */
5e2901ab8SAndy Yan
6e2901ab8SAndy Yan/dts-v1/;
7e2901ab8SAndy Yan#include "rk3368.dtsi"
8e2901ab8SAndy Yan#include <dt-bindings/input/input.h>
9e2901ab8SAndy Yan
10e2901ab8SAndy Yan/ {
11e2901ab8SAndy Yan	model = "Rockchip sheep board";
12e2901ab8SAndy Yan	compatible = "rockchip,sheep", "rockchip,rk3368";
13e2901ab8SAndy Yan
14e2901ab8SAndy Yan	chosen {
15e2901ab8SAndy Yan		stdout-path = "serial2:115200n8";
16e2901ab8SAndy Yan	};
17e2901ab8SAndy Yan
18e2901ab8SAndy Yan	memory@0 {
19e2901ab8SAndy Yan		device_type = "memory";
20e2901ab8SAndy Yan		reg = <0x0 0x0 0x0 0x80000000>;
21e2901ab8SAndy Yan	};
22e2901ab8SAndy Yan
23e2901ab8SAndy Yan	ext_gmac: gmac-clk {
24e2901ab8SAndy Yan		compatible = "fixed-clock";
25e2901ab8SAndy Yan		clock-frequency = <125000000>;
26e2901ab8SAndy Yan		clock-output-names = "ext_gmac";
27e2901ab8SAndy Yan		#clock-cells = <0>;
28e2901ab8SAndy Yan	};
29e2901ab8SAndy Yan
30e2901ab8SAndy Yan	ir: ir-receiver {
31e2901ab8SAndy Yan		compatible = "gpio-ir-receiver";
32e2901ab8SAndy Yan		gpios = <&gpio3 30 GPIO_ACTIVE_LOW>;
33e2901ab8SAndy Yan		pinctrl-names = "default";
34e2901ab8SAndy Yan		pinctrl-0 = <&ir_int>;
35e2901ab8SAndy Yan	};
36e2901ab8SAndy Yan
37e2901ab8SAndy Yan	keys: gpio-keys {
38e2901ab8SAndy Yan		compatible = "gpio-keys";
39e2901ab8SAndy Yan		pinctrl-names = "default";
40e2901ab8SAndy Yan		pinctrl-0 = <&pwr_key>;
41e2901ab8SAndy Yan
42e2901ab8SAndy Yan		power {
43e2901ab8SAndy Yan			gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
44e2901ab8SAndy Yan			label = "GPIO Power";
45e2901ab8SAndy Yan			linux,code = <KEY_POWER>;
46e2901ab8SAndy Yan			wakeup-source;
47e2901ab8SAndy Yan		};
48e2901ab8SAndy Yan	};
49e2901ab8SAndy Yan
50e2901ab8SAndy Yan	leds: gpio-leds {
51e2901ab8SAndy Yan		compatible = "gpio-leds";
52e2901ab8SAndy Yan
53e2901ab8SAndy Yan		blue {
54e2901ab8SAndy Yan			gpios = <&gpio2 2 GPIO_ACTIVE_HIGH>;
55e2901ab8SAndy Yan			label = "geekbox:blue:led";
56e2901ab8SAndy Yan			default-state = "on";
57e2901ab8SAndy Yan		};
58e2901ab8SAndy Yan
59e2901ab8SAndy Yan		red {
60e2901ab8SAndy Yan			gpios = <&gpio2 3 GPIO_ACTIVE_HIGH>;
61e2901ab8SAndy Yan			label = "geekbox:red:led";
62e2901ab8SAndy Yan			default-state = "off";
63e2901ab8SAndy Yan		};
64e2901ab8SAndy Yan	};
65e2901ab8SAndy Yan
66e2901ab8SAndy Yan	vcc_sys: vcc-sys-regulator {
67e2901ab8SAndy Yan		compatible = "regulator-fixed";
68e2901ab8SAndy Yan		regulator-name = "vcc_sys";
69e2901ab8SAndy Yan		regulator-min-microvolt = <5000000>;
70e2901ab8SAndy Yan		regulator-max-microvolt = <5000000>;
71e2901ab8SAndy Yan		regulator-always-on;
72e2901ab8SAndy Yan		regulator-boot-on;
73e2901ab8SAndy Yan	};
74e2901ab8SAndy Yan};
75e2901ab8SAndy Yan
76e2901ab8SAndy Yan&emmc {
77e2901ab8SAndy Yan	status = "okay";
78e2901ab8SAndy Yan	bus-width = <8>;
79e2901ab8SAndy Yan	cap-mmc-highspeed;
80e2901ab8SAndy Yan	clock-frequency = <150000000>;
81e2901ab8SAndy Yan	disable-wp;
82e2901ab8SAndy Yan	keep-power-in-suspend;
83e2901ab8SAndy Yan	non-removable;
84e2901ab8SAndy Yan	num-slots = <1>;
85e2901ab8SAndy Yan	vmmc-supply = <&vcc_io>;
86e2901ab8SAndy Yan	vqmmc-supply = <&vcc18_flash>;
87e2901ab8SAndy Yan	pinctrl-names = "default";
88e2901ab8SAndy Yan	pinctrl-0 = <&emmc_clk>, <&emmc_cmd>, <&emmc_bus8>;
89e2901ab8SAndy Yan};
90e2901ab8SAndy Yan
91e2901ab8SAndy Yan&gmac {
92e2901ab8SAndy Yan	status = "okay";
93e2901ab8SAndy Yan	phy-supply = <&vcc_lan>;
94e2901ab8SAndy Yan	phy-mode = "rgmii";
95e2901ab8SAndy Yan	clock_in_out = "input";
96e2901ab8SAndy Yan	assigned-clocks = <&cru SCLK_MAC>;
97e2901ab8SAndy Yan	assigned-clock-parents = <&ext_gmac>;
98e2901ab8SAndy Yan	pinctrl-names = "default";
99e2901ab8SAndy Yan	pinctrl-0 = <&rgmii_pins>;
100e2901ab8SAndy Yan	tx_delay = <0x30>;
101e2901ab8SAndy Yan	rx_delay = <0x10>;
102e2901ab8SAndy Yan};
103e2901ab8SAndy Yan
104e2901ab8SAndy Yan&i2c0 {
105e2901ab8SAndy Yan	status = "okay";
106e2901ab8SAndy Yan
107e2901ab8SAndy Yan	rk808: pmic@1b {
108e2901ab8SAndy Yan		compatible = "rockchip,rk808";
109e2901ab8SAndy Yan		reg = <0x1b>;
110e2901ab8SAndy Yan		pinctrl-names = "default";
111e2901ab8SAndy Yan		pinctrl-0 = <&pmic_int>, <&pmic_sleep>;
112e2901ab8SAndy Yan		interrupt-parent = <&gpio0>;
113e2901ab8SAndy Yan		interrupts = <5 IRQ_TYPE_LEVEL_LOW>;
114e2901ab8SAndy Yan		rockchip,system-power-controller;
115e2901ab8SAndy Yan		vcc1-supply = <&vcc_sys>;
116e2901ab8SAndy Yan		vcc2-supply = <&vcc_sys>;
117e2901ab8SAndy Yan		vcc3-supply = <&vcc_sys>;
118e2901ab8SAndy Yan		vcc4-supply = <&vcc_sys>;
119e2901ab8SAndy Yan		vcc6-supply = <&vcc_sys>;
120e2901ab8SAndy Yan		vcc7-supply = <&vcc_sys>;
121e2901ab8SAndy Yan		vcc8-supply = <&vcc_io>;
122e2901ab8SAndy Yan		vcc9-supply = <&vcc_sys>;
123e2901ab8SAndy Yan		vcc10-supply = <&vcc_sys>;
124e2901ab8SAndy Yan		vcc11-supply = <&vcc_sys>;
125e2901ab8SAndy Yan		vcc12-supply = <&vcc_io>;
126e2901ab8SAndy Yan		clock-output-names = "xin32k", "rk808-clkout2";
127e2901ab8SAndy Yan		#clock-cells = <1>;
128e2901ab8SAndy Yan
129e2901ab8SAndy Yan		regulators {
130e2901ab8SAndy Yan			vdd_cpu: DCDC_REG1 {
131e2901ab8SAndy Yan				regulator-always-on;
132e2901ab8SAndy Yan				regulator-boot-on;
133e2901ab8SAndy Yan				regulator-min-microvolt = <700000>;
134e2901ab8SAndy Yan				regulator-max-microvolt = <1500000>;
135e2901ab8SAndy Yan				regulator-name = "vdd_cpu";
136e2901ab8SAndy Yan			};
137e2901ab8SAndy Yan
138e2901ab8SAndy Yan			vdd_log: DCDC_REG2 {
139e2901ab8SAndy Yan				regulator-always-on;
140e2901ab8SAndy Yan				regulator-boot-on;
141e2901ab8SAndy Yan				regulator-min-microvolt = <700000>;
142e2901ab8SAndy Yan				regulator-max-microvolt = <1500000>;
143e2901ab8SAndy Yan				regulator-name = "vdd_log";
144e2901ab8SAndy Yan			};
145e2901ab8SAndy Yan
146e2901ab8SAndy Yan			vcc_ddr: DCDC_REG3 {
147e2901ab8SAndy Yan				regulator-always-on;
148e2901ab8SAndy Yan				regulator-boot-on;
149e2901ab8SAndy Yan				regulator-name = "vcc_ddr";
150e2901ab8SAndy Yan			};
151e2901ab8SAndy Yan
152e2901ab8SAndy Yan			vcc_io: DCDC_REG4 {
153e2901ab8SAndy Yan				regulator-always-on;
154e2901ab8SAndy Yan				regulator-boot-on;
155e2901ab8SAndy Yan				regulator-min-microvolt = <3300000>;
156e2901ab8SAndy Yan				regulator-max-microvolt = <3300000>;
157e2901ab8SAndy Yan				regulator-name = "vcc_io";
158e2901ab8SAndy Yan			};
159e2901ab8SAndy Yan
160e2901ab8SAndy Yan			vcc18_flash: LDO_REG1 {
161e2901ab8SAndy Yan				regulator-always-on;
162e2901ab8SAndy Yan				regulator-boot-on;
163e2901ab8SAndy Yan				regulator-min-microvolt = <1800000>;
164e2901ab8SAndy Yan				regulator-max-microvolt = <1800000>;
165e2901ab8SAndy Yan				regulator-name = "vcc18_flash";
166e2901ab8SAndy Yan			};
167e2901ab8SAndy Yan
168e2901ab8SAndy Yan			vcc33_lcd: LDO_REG2 {
169e2901ab8SAndy Yan				regulator-always-on;
170e2901ab8SAndy Yan				regulator-boot-on;
171e2901ab8SAndy Yan				regulator-min-microvolt = <3300000>;
172e2901ab8SAndy Yan				regulator-max-microvolt = <3300000>;
173e2901ab8SAndy Yan				regulator-name = "vcc33_lcd";
174e2901ab8SAndy Yan			};
175e2901ab8SAndy Yan
176e2901ab8SAndy Yan			vdd_10: LDO_REG3 {
177e2901ab8SAndy Yan				regulator-always-on;
178e2901ab8SAndy Yan				regulator-boot-on;
179e2901ab8SAndy Yan				regulator-min-microvolt = <1000000>;
180e2901ab8SAndy Yan				regulator-max-microvolt = <1000000>;
181e2901ab8SAndy Yan				regulator-name = "vdd_10";
182e2901ab8SAndy Yan			};
183e2901ab8SAndy Yan
184e2901ab8SAndy Yan			vcca_18: LDO_REG4 {
185e2901ab8SAndy Yan				regulator-boot-on;
186e2901ab8SAndy Yan				regulator-min-microvolt = <1800000>;
187e2901ab8SAndy Yan				regulator-max-microvolt = <1800000>;
188e2901ab8SAndy Yan				regulator-name = "vcca_18";
189e2901ab8SAndy Yan			};
190e2901ab8SAndy Yan
191e2901ab8SAndy Yan			vccio_sd: LDO_REG5 {
192e2901ab8SAndy Yan				regulator-always-on;
193e2901ab8SAndy Yan				regulator-boot-on;
194e2901ab8SAndy Yan				regulator-min-microvolt = <1800000>;
195e2901ab8SAndy Yan				regulator-max-microvolt = <3300000>;
196e2901ab8SAndy Yan				regulator-name = "vccio_sd";
197e2901ab8SAndy Yan			};
198e2901ab8SAndy Yan
199e2901ab8SAndy Yan			vdd10_lcd: LDO_REG6 {
200e2901ab8SAndy Yan				regulator-always-on;
201e2901ab8SAndy Yan				regulator-boot-on;
202e2901ab8SAndy Yan				regulator-min-microvolt = <1000000>;
203e2901ab8SAndy Yan				regulator-max-microvolt = <1000000>;
204e2901ab8SAndy Yan				regulator-name = "vdd10_lcd";
205e2901ab8SAndy Yan			};
206e2901ab8SAndy Yan
207e2901ab8SAndy Yan			vcc_18: LDO_REG7 {
208e2901ab8SAndy Yan				regulator-always-on;
209e2901ab8SAndy Yan				regulator-boot-on;
210e2901ab8SAndy Yan				regulator-min-microvolt = <1800000>;
211e2901ab8SAndy Yan				regulator-max-microvolt = <1800000>;
212e2901ab8SAndy Yan				regulator-name = "vcc_18";
213e2901ab8SAndy Yan			};
214e2901ab8SAndy Yan
215e2901ab8SAndy Yan			vcc18_lcd: LDO_REG8 {
216e2901ab8SAndy Yan				regulator-always-on;
217e2901ab8SAndy Yan				regulator-boot-on;
218e2901ab8SAndy Yan				regulator-min-microvolt = <1800000>;
219e2901ab8SAndy Yan				regulator-max-microvolt = <1800000>;
220e2901ab8SAndy Yan				regulator-name = "vcc18_lcd";
221e2901ab8SAndy Yan			};
222e2901ab8SAndy Yan
223e2901ab8SAndy Yan			vcc_sd: SWITCH_REG1 {
224e2901ab8SAndy Yan				regulator-always-on;
225e2901ab8SAndy Yan				regulator-boot-on;
226e2901ab8SAndy Yan				regulator-name = "vcc_sd";
227e2901ab8SAndy Yan			};
228e2901ab8SAndy Yan
229e2901ab8SAndy Yan			vcc_lan: SWITCH_REG2 {
230e2901ab8SAndy Yan				regulator-always-on;
231e2901ab8SAndy Yan				regulator-boot-on;
232e2901ab8SAndy Yan				regulator-name = "vcc_lan";
233e2901ab8SAndy Yan			};
234e2901ab8SAndy Yan		};
235e2901ab8SAndy Yan	};
236e2901ab8SAndy Yan};
237e2901ab8SAndy Yan
238e2901ab8SAndy Yan&pinctrl {
239e2901ab8SAndy Yan	ir {
240e2901ab8SAndy Yan		ir_int: ir-int {
241e2901ab8SAndy Yan			rockchip,pins = <3 30 RK_FUNC_GPIO &pcfg_pull_none>;
242e2901ab8SAndy Yan		};
243e2901ab8SAndy Yan	};
244e2901ab8SAndy Yan
245e2901ab8SAndy Yan	keys {
246e2901ab8SAndy Yan		pwr_key: pwr-key {
247e2901ab8SAndy Yan			rockchip,pins = <0 2 RK_FUNC_GPIO &pcfg_pull_none>;
248e2901ab8SAndy Yan		};
249e2901ab8SAndy Yan	};
250e2901ab8SAndy Yan
251e2901ab8SAndy Yan	pmic {
252e2901ab8SAndy Yan		pmic_sleep: pmic-sleep {
253e2901ab8SAndy Yan			rockchip,pins = <0 0 RK_FUNC_2 &pcfg_pull_none>;
254e2901ab8SAndy Yan		};
255e2901ab8SAndy Yan
256e2901ab8SAndy Yan		pmic_int: pmic-int {
257e2901ab8SAndy Yan			rockchip,pins = <0 5 RK_FUNC_GPIO &pcfg_pull_up>;
258e2901ab8SAndy Yan		};
259e2901ab8SAndy Yan	};
260e2901ab8SAndy Yan};
261e2901ab8SAndy Yan
2626333a3baSDavid Wu&saradc {
2636333a3baSDavid Wu	status = "okay";
2646333a3baSDavid Wu};
2656333a3baSDavid Wu
266e2901ab8SAndy Yan&tsadc {
267e2901ab8SAndy Yan	status = "okay";
268e2901ab8SAndy Yan	rockchip,hw-tshut-mode = <0>; /* CRU */
269e2901ab8SAndy Yan	rockchip,hw-tshut-polarity = <1>; /* high */
270e2901ab8SAndy Yan};
271e2901ab8SAndy Yan
272e2901ab8SAndy Yan&uart4 {
273e2901ab8SAndy Yan	status = "okay";
274e2901ab8SAndy Yan};
275e2901ab8SAndy Yan
276e2901ab8SAndy Yan&usb_host0_ehci {
277e2901ab8SAndy Yan	status = "okay";
278e2901ab8SAndy Yan};
279e2901ab8SAndy Yan
280e2901ab8SAndy Yan&usb_otg {
281e2901ab8SAndy Yan	status = "okay";
282e2901ab8SAndy Yan};
283e2901ab8SAndy Yan
284e2901ab8SAndy Yan&wdt {
285e2901ab8SAndy Yan	status = "okay";
286e2901ab8SAndy Yan};
287