xref: /OK3568_Linux_fs/kernel/arch/arm64/boot/dts/rockchip/rk3399pro-npu-evb-v10.dts (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2/*
3 * Copyright (c) 2018 Fuzhou Rockchip Electronics Co., Ltd
4 */
5
6/dts-v1/;
7#include <dt-bindings/gpio/gpio.h>
8#include <dt-bindings/pinctrl/rockchip.h>
9#include "rk3399pro-npu.dtsi"
10
11/ {
12	model = "Rockchip RK3399pro-npu EVB V10 Board";
13	compatible = "rockchip,rk3399pro-npu-evb-v10", "rockchip,rk3399pro-npu";
14
15	chosen {
16		bootargs = "earlycon=uart8250,mmio32,0xff550000 console=ttyFIQ0 init=/init kpti=0";
17	};
18
19	keys: gpio-keys {
20		compatible = "gpio-keys";
21		pinctrl-names = "default";
22		pinctrl-0 = <&pwr_key>;
23
24		power {
25			gpios = <&gpio0 RK_PB0 GPIO_ACTIVE_HIGH>;
26			label = "GPIO Power";
27			linux,code = <116>;
28			wakeup-source;
29		};
30	};
31
32	fiq-debugger {
33		compatible = "rockchip,fiq-debugger";
34		rockchip,serial-id = <2>;
35		rockchip,wake-irq = <0>;
36		/* If enable uart uses irq instead of fiq */
37		rockchip,irq-mode-enable = <0>;
38		rockchip,baudrate = <1500000>;  /* Only 115200 and 1500000 */
39		interrupts = <GIC_SPI 242 IRQ_TYPE_LEVEL_HIGH>;
40		pinctrl-names = "default";
41		pinctrl-0 = <&uart2m0_xfer>;
42		status = "okay";
43	};
44
45	vdd_cpu: vdd-cpu {
46		compatible = "regulator-fixed";
47		regulator-name = "vdd_cpu";
48		regulator-always-on;
49		regulator-boot-on;
50		regulator-min-microvolt = <850000>;
51		regulator-max-microvolt = <850000>;
52	};
53
54	vcc5v0_sys: vcc5v0-sys {
55		compatible = "regulator-fixed";
56		regulator-name = "vcc5v0_sys";
57		regulator-always-on;
58		regulator-boot-on;
59		regulator-min-microvolt = <5000000>;
60		regulator-max-microvolt = <5000000>;
61	};
62};
63
64&cpu0 {
65	cpu-supply = <&vdd_cpu>;
66};
67
68&cpu1 {
69	cpu-supply = <&vdd_cpu>;
70};
71
72&i2c1 {
73	status = "okay";
74
75	vdd_npu: tcs4525@1c {
76		compatible = "tcs,tcs4525";
77		reg = <0x1c>;
78		vin-supply = <&vcc5v0_sys>;
79		regulator-compatible = "fan53555-reg";
80		pinctrl-0 = <&vsel_gpio>;
81		vsel-gpios = <&gpio0 RK_PC6 GPIO_ACTIVE_HIGH>;
82		regulator-name = "vdd_npu";
83		regulator-min-microvolt = <750000>;
84		regulator-max-microvolt = <800000>;
85		regulator-ramp-delay = <2300>;
86		fcs,suspend-voltage-selector = <1>;
87		regulator-always-on;
88		regulator-boot-on;
89		regulator-initial-state = <3>;
90		regulator-state-mem {
91			regulator-off-in-suspend;
92		};
93	};
94};
95
96&npu {
97	npu-supply = <&vdd_npu>;
98	status = "okay";
99};
100
101&combphy {
102	status = "okay";
103};
104
105&u2phy {
106	status = "okay";
107};
108
109&u2phy_otg {
110	status = "okay";
111};
112
113&usbdrd3 {
114	status = "okay";
115};
116
117&usbdrd_dwc3 {
118	status = "okay";
119};
120
121&tsadc {
122	rockchip,hw-tshut-mode = <1>; /* tshut mode 0:CRU 1:GPIO */
123	rockchip,hw-tshut-polarity = <1>; /* tshut polarity 0:LOW 1:HIGH */
124	pinctrl-names = "init", "default";
125	pinctrl-0 = <&tsadc_otp_gpio>;
126	pinctrl-1 = <&tsadc_otp_out>;
127	status = "okay";
128};
129
130&pinctrl {
131	vsel_gpio: vsel-gpio {
132		rockchip,pins =
133			<0 RK_PC6 RK_FUNC_GPIO &pcfg_pull_down>;
134	};
135
136	pwr_key: pwr-key {
137		rockchip,pins =
138			<0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
139	};
140};
141