1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
3 * Copyright (c) 2019 Fuzhou Rockchip Electronics Co., Ltd
4 * Copyright (c) 2019 Vamrs Limited
5 * Copyright (c) 2019 Amarula Solutions(India)
8 #include <dt-bindings/gpio/gpio.h>
9 #include <dt-bindings/pinctrl/rockchip.h>
10 #include <dt-bindings/pwm/pwm.h>
13 compatible = "vamrs,rk3399pro-vmarc-som", "rockchip,rk3399pro";
21 vcc3v3_pcie: vcc-pcie-regulator {
22 compatible = "regulator-fixed";
24 gpio = <&gpio4 RK_PD4 GPIO_ACTIVE_HIGH>;
25 pinctrl-names = "default";
26 pinctrl-0 = <&pcie_pwr>;
27 regulator-name = "vcc3v3_pcie";
30 vin-supply = <&vcc5v0_sys>;
35 cpu-supply = <&vdd_cpu_l>;
39 cpu-supply = <&vdd_cpu_l>;
43 cpu-supply = <&vdd_cpu_l>;
47 cpu-supply = <&vdd_cpu_l>;
55 assigned-clocks = <&cru SCLK_RMII_SRC>;
56 phy-supply = <&vcc_lan>;
57 snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
61 ddc-i2c-bus = <&i2c3>;
62 pinctrl-names = "default";
63 pinctrl-0 = <&hdmi_cec>;
67 clock-frequency = <400000>;
68 i2c-scl-falling-time-ns = <30>;
69 i2c-scl-rising-time-ns = <180>;
73 compatible = "rockchip,rk809";
75 interrupt-parent = <&gpio1>;
76 interrupts = <RK_PC2 IRQ_TYPE_LEVEL_LOW>;
78 clock-output-names = "rk808-clkout1", "rk808-clkout2";
79 pinctrl-names = "default";
80 pinctrl-0 = <&pmic_int_l>;
81 rockchip,system-power-controller;
84 vcc1-supply = <&vcc5v0_sys>;
85 vcc2-supply = <&vcc5v0_sys>;
86 vcc3-supply = <&vcc5v0_sys>;
87 vcc4-supply = <&vcc5v0_sys>;
88 vcc5-supply = <&vcc_buck5>;
89 vcc6-supply = <&vcc_buck5>;
90 vcc7-supply = <&vcc5v0_sys>;
91 vcc8-supply = <&vcc3v3_sys>;
92 vcc9-supply = <&vcc5v0_sys>;
96 regulator-name = "vdd_log";
99 regulator-min-microvolt = <750000>;
100 regulator-max-microvolt = <1350000>;
101 regulator-initial-mode = <0x2>;
102 regulator-state-mem {
103 regulator-off-in-suspend;
104 regulator-suspend-microvolt = <900000>;
108 vdd_cpu_l: DCDC_REG2 {
109 regulator-name = "vdd_cpu_l";
112 regulator-min-microvolt = <750000>;
113 regulator-max-microvolt = <1350000>;
114 regulator-ramp-delay = <6001>;
115 regulator-initial-mode = <0x2>;
116 regulator-state-mem {
117 regulator-off-in-suspend;
122 regulator-name = "vcc_ddr";
125 regulator-initial-mode = <0x2>;
126 regulator-state-mem {
127 regulator-on-in-suspend;
131 vcc3v3_sys: DCDC_REG4 {
132 regulator-name = "vcc3v3_sys";
135 regulator-min-microvolt = <3300000>;
136 regulator-max-microvolt = <3300000>;
137 regulator-initial-mode = <0x2>;
138 regulator-state-mem {
139 regulator-on-in-suspend;
140 regulator-suspend-microvolt = <3300000>;
144 vcc_buck5: DCDC_REG5 {
145 regulator-name = "vcc_buck5";
148 regulator-min-microvolt = <2200000>;
149 regulator-max-microvolt = <2200000>;
150 regulator-state-mem {
151 regulator-on-in-suspend;
152 regulator-suspend-microvolt = <2200000>;
157 regulator-name = "vcca_0v9";
160 regulator-min-microvolt = <900000>;
161 regulator-max-microvolt = <900000>;
162 regulator-state-mem {
163 regulator-on-in-suspend;
164 regulator-suspend-microvolt = <900000>;
169 regulator-name = "vcc_1v8";
172 regulator-min-microvolt = <1800000>;
173 regulator-max-microvolt = <1800000>;
174 regulator-state-mem {
175 regulator-on-in-suspend;
176 regulator-suspend-microvolt = <1800000>;
181 regulator-name = "vcc_0v9";
184 regulator-min-microvolt = <900000>;
185 regulator-max-microvolt = <900000>;
186 regulator-state-mem {
187 regulator-on-in-suspend;
188 regulator-suspend-microvolt = <900000>;
193 regulator-name = "vcca_1v8";
196 regulator-min-microvolt = <1850000>;
197 regulator-max-microvolt = <1850000>;
198 regulator-state-mem {
199 regulator-on-in-suspend;
200 regulator-suspend-microvolt = <1850000>;
205 * As per BSP, but schematic not showing any regulator
208 vdd1v5_dvp: LDO_REG5 {
209 regulator-name = "vdd1v5_dvp";
212 regulator-min-microvolt = <1500000>;
213 regulator-max-microvolt = <1500000>;
214 regulator-state-mem {
215 regulator-off-in-suspend;
220 regulator-name = "vcc_1v5";
223 regulator-min-microvolt = <1500000>;
224 regulator-max-microvolt = <1500000>;
225 regulator-state-mem {
226 regulator-off-in-suspend;
230 vccio_3v0: LDO_REG7 {
231 regulator-name = "vccio_3v0";
234 regulator-min-microvolt = <3000000>;
235 regulator-max-microvolt = <3000000>;
236 regulator-state-mem {
237 regulator-off-in-suspend;
242 regulator-name = "vccio_sd";
245 regulator-min-microvolt = <1800000>;
246 regulator-max-microvolt = <3300000>;
247 regulator-state-mem {
248 regulator-off-in-suspend;
253 * As per BSP, but schematic not showing any regulator
257 regulator-name = "vcc_sd";
260 regulator-min-microvolt = <3300000>;
261 regulator-max-microvolt = <3300000>;
262 regulator-state-mem {
263 regulator-off-in-suspend;
267 vcc5v0_usb2: SWITCH_REG1 {
268 regulator-name = "vcc5v0_usb2";
269 regulator-min-microvolt = <5000000>;
270 regulator-max-microvolt = <5000000>;
271 regulator-state-mem {
272 regulator-on-in-suspend;
273 regulator-suspend-microvolt = <5000000>;
277 vccio_3v3: vcc_lan: SWITCH_REG2 {
278 regulator-name = "vccio_3v3";
281 regulator-min-microvolt = <3300000>;
282 regulator-max-microvolt = <3300000>;
283 regulator-state-mem {
284 regulator-off-in-suspend;
292 i2c-scl-falling-time-ns = <30>;
293 i2c-scl-rising-time-ns = <140>;
298 clock-frequency = <400000>;
302 compatible = "haoyu,hym8563";
305 clock-output-names = "hym8563";
306 pinctrl-names = "default";
307 pinctrl-0 = <&hym8563_int>;
308 interrupt-parent = <&gpio4>;
309 interrupts = <RK_PD6 IRQ_TYPE_LEVEL_LOW>;
314 i2c-scl-rising-time-ns = <450>;
315 i2c-scl-falling-time-ns = <15>;
321 bt656-supply = <&vcca_1v8>;
322 gpio1830-supply = <&vccio_3v0>;
323 sdmmc-supply = <&vccio_sd>;
331 ep-gpios = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>;
333 pinctrl-0 = <&pcie_clkreqnb_cpm>;
334 pinctrl-names = "default";
335 vpcie0v9-supply = <&vcca_0v9>; /* VCC_0V9_S0 */
336 vpcie1v8-supply = <&vcca_1v8>; /* VCC_1V8_S0 */
337 vpcie3v3-supply = <&vcc3v3_pcie>;
343 hym8563_int: hym8563-int {
344 rockchip,pins = <4 RK_PD6 0 &pcfg_pull_up>;
350 rockchip,pins = <4 RK_PD4 RK_FUNC_GPIO &pcfg_pull_up>;
355 pmic_int_l: pmic-int-l {
356 rockchip,pins = <1 RK_PC2 0 &pcfg_pull_up>;
361 wifi_enable_h: wifi-enable-h {
362 rockchip,pins = <2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
367 usb1_en_oc: usb1-en-oc {
368 rockchip,pins = <4 RK_PD1 RK_FUNC_GPIO &pcfg_pull_up>;
373 usb0_en_oc: usb0-en-oc {
374 rockchip,pins = <4 RK_PD2 RK_FUNC_GPIO &pcfg_pull_up>;
381 pmu1830-supply = <&vcc_1v8>;
386 * On the module itself this is one of these (depending
387 * on the actual card populated):
388 * - SDIO_RESET_L_WL_REG_ON
389 * - PDN (power down when low)
391 reset-gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_LOW>;
397 mmc-hs400-enhanced-strobe;
403 cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>;
404 max-frequency = <150000000>;
412 rockchip,hw-tshut-mode = <1>;
413 rockchip,hw-tshut-polarity = <1>;
420 u2phy0_otg: otg-port {
421 phy-supply = <&vbus_typec>;
425 u2phy0_host: host-port {
426 phy-supply = <&vbus_host>;
435 u2phy1_host: host-port {
436 phy-supply = <&vbus_host>;
467 gpio = <&gpio4 RK_PD1 GPIO_ACTIVE_HIGH>; /* USB1_EN_OC# */
468 pinctrl-names = "default";
469 pinctrl-0 = <&usb1_en_oc>;
474 gpio = <&gpio4 RK_PD2 GPIO_ACTIVE_HIGH>; /* USB0_EN_OC# */
475 pinctrl-names = "default";
476 pinctrl-0 = <&usb0_en_oc>;