arm64: dts: rockchip: Add USB-C port details for rk3399 Firefly

Add the initial details for the USB-C port.

Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
Link: https://lore.kernel.org/r/20210613215237.830160-4-pbrobinson@gmail.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
This commit is contained in:
Peter Robinson 2021-06-13 22:52:37 +01:00 committed by Heiko Stuebner
parent 5768c5ff07
commit a406bfda89
1 changed files with 85 additions and 0 deletions

View File

@ -6,6 +6,7 @@
/dts-v1/; /dts-v1/;
#include <dt-bindings/input/linux-event-codes.h> #include <dt-bindings/input/linux-event-codes.h>
#include <dt-bindings/pwm/pwm.h> #include <dt-bindings/pwm/pwm.h>
#include <dt-bindings/usb/pd.h>
#include "rk3399.dtsi" #include "rk3399.dtsi"
#include "rk3399-opp.dtsi" #include "rk3399-opp.dtsi"
@ -220,6 +221,17 @@
vin-supply = <&vcc_sys>; vin-supply = <&vcc_sys>;
}; };
vcc5v0_typec: vcc5v0-typec-regulator {
compatible = "regulator-fixed";
enable-active-high;
gpio = <&gpio1 RK_PA3 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&vcc5v0_typec_en>;
regulator-name = "vcc5v0_typec";
regulator-always-on;
vin-supply = <&vcc_sys>;
};
vcc_sys: vcc-sys { vcc_sys: vcc-sys {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
regulator-name = "vcc_sys"; regulator-name = "vcc_sys";
@ -545,6 +557,53 @@
i2c-scl-falling-time-ns = <20>; i2c-scl-falling-time-ns = <20>;
status = "okay"; status = "okay";
fusb0: typec-portc@22 {
compatible = "fcs,fusb302";
reg = <0x22>;
interrupt-parent = <&gpio1>;
interrupts = <RK_PA2 IRQ_TYPE_LEVEL_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&fusb0_int>;
vbus-supply = <&vcc5v0_typec>;
status = "okay";
connector {
compatible = "usb-c-connector";
data-role = "host";
label = "USB-C";
op-sink-microwatt = <1000000>;
power-role = "dual";
sink-pdos =
<PDO_FIXED(5000, 2500, PDO_FIXED_USB_COMM)>;
source-pdos =
<PDO_FIXED(5000, 1400, PDO_FIXED_USB_COMM)>;
try-power-role = "sink";
ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
usbc_hs: endpoint {
remote-endpoint =
<&u2phy0_typec_hs>;
};
};
port@1 {
reg = <1>;
usbc_ss: endpoint {
remote-endpoint =
<&tcphy0_typec_ss>;
};
};
};
};
};
accelerometer@68 { accelerometer@68 {
compatible = "invensense,mpu6500"; compatible = "invensense,mpu6500";
reg = <0x68>; reg = <0x68>;
@ -602,6 +661,12 @@
}; };
}; };
fusb302x {
fusb0_int: fusb0-int {
rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
ir { ir {
ir_int: ir-int { ir_int: ir-int {
rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>; rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
@ -660,6 +725,12 @@
}; };
}; };
usb-typec {
vcc5v0_typec_en: vcc5v0_typec_en {
rockchip,pins = <1 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>;
};
};
usb2 { usb2 {
vcc5v0_host_en: vcc5v0-host-en { vcc5v0_host_en: vcc5v0-host-en {
rockchip,pins = <1 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>; rockchip,pins = <1 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
@ -753,6 +824,14 @@
status = "okay"; status = "okay";
}; };
&tcphy0_usb3 {
port {
tcphy0_typec_ss: endpoint {
remote-endpoint = <&usbc_ss>;
};
};
};
&tcphy1 { &tcphy1 {
status = "okay"; status = "okay";
}; };
@ -776,6 +855,12 @@
phy-supply = <&vcc5v0_host>; phy-supply = <&vcc5v0_host>;
status = "okay"; status = "okay";
}; };
port {
u2phy0_typec_hs: endpoint {
remote-endpoint = <&usbc_hs>;
};
};
}; };
&u2phy1 { &u2phy1 {