arm64: dts: qcom: x1e80100-romulus: Set up USB Multiport controller
authorKonrad Dybcio <quic_kdybcio@quicinc.com>
Mon, 2 Sep 2024 14:50:34 +0000 (16:50 +0200)
committerBjorn Andersson <andersson@kernel.org>
Sun, 6 Oct 2024 03:15:27 +0000 (22:15 -0500)
The USB MP controller is wired up to the USB-A port on the left side
and to the Surface Connector on the right side. Configure it.

While at it, remove a stray double \n.

Signed-off-by: Konrad Dybcio <quic_kdybcio@quicinc.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/20240902-topic-sl7_updates-v1-2-3ee667e6652d@quicinc.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/x1e80100-microsoft-romulus.dtsi

index 5419d0b02785bb33c596201cc64af03dc28c3889..ac2acf949b708a19b98360dfeaae21cdba264f3f 100644 (file)
 
        status = "okay";
 
-       /* Something @4f */
+       ptn3222: redriver@4f {
+               compatible = "nxp,ptn3222";
+               reg = <0x4f>;
+
+               reset-gpios = <&tlmm 7 GPIO_ACTIVE_LOW>;
+
+               vdd3v3-supply = <&vreg_l13b>;
+               vdd1v8-supply = <&vreg_l4b>;
+
+               #phy-cells = <0>;
+       };
 };
 
 &i2c7 {
        /* PS8830 USB retimer @8 */
 };
 
-
 &mdss {
        status = "okay";
 };
        vdd3-supply = <&vreg_l14b>;
 };
 
+&smb2360_2 {
+       status = "okay";
+};
+
+&smb2360_2_eusb2_repeater {
+       vdd18-supply = <&vreg_l3d>;
+       vdd3-supply = <&vreg_l8b>;
+};
+
 &tlmm {
        gpio-reserved-ranges = <44 4>, /* SPI (TPM) */
                               <238 1>; /* UFS Reset */
 &usb_1_ss1_qmpphy_out {
        remote-endpoint = <&pmic_glink_ss1_ss_in>;
 };
+
+/* MP0 goes to the Surface Connector, MP1 goes to the USB-A port */
+&usb_mp {
+       status = "okay";
+};
+
+&usb_mp_hsphy0 {
+       vdd-supply = <&vreg_l2e>;
+       vdda12-supply = <&vreg_l2j>;
+
+       phys = <&smb2360_2_eusb2_repeater>;
+
+       status = "okay";
+};
+
+&usb_mp_hsphy1 {
+       vdd-supply = <&vreg_l2e>;
+       vdda12-supply = <&vreg_l2j>;
+
+       phys = <&ptn3222>;
+
+       status = "okay";
+};
+
+&usb_mp_qmpphy0 {
+       vdda-phy-supply = <&vreg_l3e>;
+       vdda-pll-supply = <&vreg_l3c>;
+
+       status = "okay";
+};
+
+&usb_mp_qmpphy1 {
+       vdda-phy-supply = <&vreg_l3e>;
+       vdda-pll-supply = <&vreg_l3c>;
+
+       status = "okay";
+};