summaryrefslogtreecommitdiff
path: root/arch/arm64/boot/dts/rockchip/rk3588-rock-5b-plus.dts
blob: 07a840d9b385959d7e4d07aa70a077b85c444656 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)

/dts-v1/;

#include "rk3588-rock-5b.dtsi"

/ {
	model = "Radxa ROCK 5B+";
	compatible = "radxa,rock-5b-plus", "rockchip,rk3588";

	rfkill-wwan {
		compatible = "rfkill-gpio";
		label = "rfkill-m2-wwan";
		radio-type = "wwan";
		shutdown-gpios = <&gpio3 RK_PA6 GPIO_ACTIVE_HIGH>;
	};

	vcc3v3_4g: regulator-vcc3v3-4g {
		compatible = "regulator-fixed";
		enable-active-high;
		gpios = <&gpio1 RK_PD2 GPIO_ACTIVE_HIGH>;
		/* pinctrl for the GPIO is requested by vcc3v3_pcie2x1l0 */
		regulator-name = "vcc3v3_4g";
		regulator-always-on;
		regulator-boot-on;
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		startup-delay-us = <50000>;
		vin-supply = <&vcc5v0_sys>;
	};

	vcc3v3_wwan_pwr: regulator-vcc3v3-wwan {
		compatible = "regulator-fixed";
		enable-active-high;
		gpios = <&gpio2 RK_PB1 GPIO_ACTIVE_HIGH>;
		pinctrl-names = "default";
		pinctrl-0 = <&wwan_power_en>;
		regulator-name = "vcc3v3_wwan_pwr";
		regulator-always-on;
		regulator-boot-on;
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		vin-supply = <&vcc3v3_4g>;
	};
};

&gpio0 {
	wwan-disable2-n-hog {
		gpios = <RK_PB2 GPIO_ACTIVE_LOW>;
		output-low;
		line-name = "M.2 B-key W_DISABLE2#";
		gpio-hog;
	};
};

&gpio2 {
	wwan-reset-n-hog {
		gpios = <RK_PB3 GPIO_ACTIVE_LOW>;
		output-low;
		line-name = "M.2 B-key RESET#";
		gpio-hog;
	};

	wwan-wake-n-hog {
		gpios = <RK_PB2 GPIO_ACTIVE_LOW>;
		input;
		line-name = "M.2 B-key WoWWAN#";
		gpio-hog;
	};
};

&pcie30phy {
	data-lanes = <1 1 2 2>;
};

&pcie3x2 {
	pinctrl-names = "default";
	pinctrl-0 = <&pcie3x2_rst>;
	reset-gpios = <&gpio4 RK_PB0 GPIO_ACTIVE_HIGH>;
	vpcie3v3-supply = <&vcc3v3_pcie30>;
	status = "okay";
};

&pcie3x4 {
	num-lanes = <2>;
};

&pinctrl {
	wwan {
		wwan_power_en: wwan-pwr-en {
			rockchip,pins = <2 RK_PB1 RK_FUNC_GPIO &pcfg_pull_none>;
		};
	};

	pcie3 {
		pcie3x2_rst: pcie3x2-rst {
			rockchip,pins = <4 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
		};
	};

	usb {
		usbc_sbu_dc: usbc-sbu-dc {
			rockchip,pins = <0 RK_PC4 RK_FUNC_GPIO &pcfg_pull_none>,
					<0 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>;
		};

		vcc5v0_host_en: vcc5v0-host-en {
			rockchip,pins = <1 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>;
		};
	};
};

&usb_con {
	power-role = "dual";
	try-power-role = "sink";
};

&usbdp_phy0 {
	pinctrl-names = "default";
	pinctrl-0 = <&usbc_sbu_dc>;
	sbu1-dc-gpios = <&gpio0 RK_PC4 GPIO_ACTIVE_HIGH>;
	sbu2-dc-gpios = <&gpio0 RK_PC5 GPIO_ACTIVE_HIGH>;
};

&vcc5v0_host {
	enable-active-high;
	gpio = <&gpio1 RK_PA1 GPIO_ACTIVE_HIGH>;
	pinctrl-names = "default";
	pinctrl-0 = <&vcc5v0_host_en>;
};