summaryrefslogtreecommitdiff
path: root/arch/arm64/boot/dts/rockchip/rk3588-rock-5b-plus.dts
blob: 74c7b6502e4dda4b774f43c704ebaee350703c0d (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
// 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 {
		vcc5v0_host_en: vcc5v0-host-en {
			rockchip,pins = <1 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>;
		};
	};
};

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