[PATCH v4] arm64: dts: ti: k3-am625: Enable Type-C port for USB0

From: Roger Quadros
Date: Tue May 23 2023 - 08:34:01 EST


USB0 is a Type-C port with dual data role and power sink.

Signed-off-by: Roger Quadros <rogerq@xxxxxxxxxx>
---

Changelog:
v4:
- Rebase on v6.4-rc2
- Drop interrupt patch as it will break Type-C role switch on older boards.

v3:
- include Type-C support for am62-lp-sk
- split interrupts properties for Type-C chip into am625-sk

v2:
- rebase off [1]
- add fixes tag to patch 1

[1] - https://lore.kernel.org/all/20230321-am62-lp-sk-v2-0-0a56e1694804@xxxxxx/

arch/arm64/boot/dts/ti/k3-am625-sk.dts | 2 +-
.../arm64/boot/dts/ti/k3-am62x-sk-common.dtsi | 35 ++++++++++++++++++-
2 files changed, 35 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/ti/k3-am625-sk.dts b/arch/arm64/boot/dts/ti/k3-am625-sk.dts
index 2a1adda9bff6..729f95e19042 100644
--- a/arch/arm64/boot/dts/ti/k3-am625-sk.dts
+++ b/arch/arm64/boot/dts/ti/k3-am625-sk.dts
@@ -161,7 +161,7 @@ exp1: gpio@22 {
"UART1_FET_BUF_EN", "WL_LT_EN",
"GPIO_HDMI_RSTn", "CSI_GPIO1",
"CSI_GPIO2", "PRU_3V3_EN",
- "HDMI_INTn", "TEST_GPIO2",
+ "HDMI_INTn", "PD_I2C_IRQ",
"MCASP1_FET_EN", "MCASP1_BUF_BT_EN",
"MCASP1_FET_SEL", "UART1_FET_SEL",
"TSINT#", "IO_EXP_TEST_LED";
diff --git a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
index 976f8303c84f..b6667c0ff826 100644
--- a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
@@ -242,6 +242,30 @@ &main_i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&main_i2c0_pins_default>;
clock-frequency = <400000>;
+
+ typec_pd0: tps6598x@3f {
+ compatible = "ti,tps6598x";
+ reg = <0x3f>;
+
+ connector {
+ compatible = "usb-c-connector";
+ label = "USB-C";
+ self-powered;
+ data-role = "dual";
+ power-role = "sink";
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+ usb_con_hs: endpoint {
+ remote-endpoint = <&usb0_hs_ep>;
+ };
+ };
+ };
+ };
+ };
};

&main_i2c1 {
@@ -321,7 +345,16 @@ &usbss1 {
};

&usb0 {
- dr_mode = "peripheral";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ usb-role-switch;
+
+ port@0 {
+ reg = <0>;
+ usb0_hs_ep: endpoint {
+ remote-endpoint = <&usb_con_hs>;
+ };
+ };
};

&usb1 {
--
2.34.1