Introduce required child nodes to enable the PMIC based USB type C driver.
This consits of connector and endpoint nodes to drivers, which manage the
type C mux and the USB role switch.

Signed-off-by: Wesley Cheng <wch...@codeaurora.org>
---
 arch/arm64/boot/dts/qcom/sm8150-mtp.dts | 40 ++++++++++++++++++++++++-
 1 file changed, 39 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/qcom/sm8150-mtp.dts 
b/arch/arm64/boot/dts/qcom/sm8150-mtp.dts
index ba3b5b802954..06ad01dde080 100644
--- a/arch/arm64/boot/dts/qcom/sm8150-mtp.dts
+++ b/arch/arm64/boot/dts/qcom/sm8150-mtp.dts
@@ -413,6 +413,31 @@ &pm8150b_vbus {
        status = "okay";
 };
 
+&pm8150b_typec {
+       status = "okay";
+       connector {
+               compatible = "usb-c-connector";
+               power-role = "dual";
+               data-role = "dual";
+               ports {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       port@1 {
+                               reg = <1>;
+                               usb3_data_ss: endpoint@0 {
+                                       remote-endpoint = <&qmp_ss_mux>;
+                               };
+                       };
+               };
+       };
+
+       port {
+               usb3_role: endpoint {
+                       remote-endpoint = <&dwc3_drd_switch>;
+               };
+       };
+};
+
 &usb_1_hsphy {
        status = "okay";
        vdda-pll-supply = <&vdd_usb_hs_core>;
@@ -424,12 +449,25 @@ &usb_1_qmpphy {
        status = "okay";
        vdda-phy-supply = <&vreg_l3c_1p2>;
        vdda-pll-supply = <&vdda_usb_ss_dp_core_1>;
+       orientation-switch;
+       port {
+               qmp_ss_mux: endpoint@0 {
+                       remote-endpoint = <&usb3_data_ss>;
+               };
+       };
 };
 
 &usb_1 {
        status = "okay";
+       usb-role-switch;
+       port {
+               dwc3_drd_switch: endpoint@0 {
+                       remote-endpoint = <&usb3_role>;
+               };
+       };
 };
 
 &usb_1_dwc3 {
-       dr_mode = "peripheral";
+       dr_mode = "otg";
+       usb-role-switch;
 };
-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project

Reply via email to