Commit fd42c8ec authored by Neil Armstrong's avatar Neil Armstrong Committed by Bjorn Andersson
Browse files

arm64: dts: qcom: sm8550-qrd: add pmic glink port/endpoints



Add nodes to support Type-C USB/DP functionality.

On this platform, a Type-C redriver is added to the
SuperSpeed graph.

Signed-off-by: default avatarNeil Armstrong <neil.armstrong@linaro.org>
Reviewed-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20230601-topic-sm8550-upstream-type-c-v5-6-9221cd300903@linaro.org


Signed-off-by: default avatarBjorn Andersson <andersson@kernel.org>
parent 7a69845b
Loading
Loading
Loading
Loading
+89 −2
Original line number Diff line number Diff line
@@ -98,7 +98,15 @@ port@1 {
					reg = <1>;

					pmic_glink_ss_in: endpoint {
						remote-endpoint = <&usb_1_dwc3_ss>;
						remote-endpoint = <&redriver_ss_out>;
					};
				};

				port@2 {
					reg = <2>;

					pmic_glink_sbu: endpoint {
						remote-endpoint = <&fsa4480_sbu_mux>;
					};
				};
			};
@@ -518,6 +526,62 @@ vreg_l3g_1p2: ldo3 {
	};
};

&i2c_master_hub_0 {
	status = "okay";
};

&i2c_hub_2 {
	status = "okay";

	typec-retimer@1c {
		compatible = "onnn,nb7vpq904m";
		reg = <0x1c>;

		vcc-supply = <&vreg_l15b_1p8>;

		retimer-switch;
		orientation-switch;

		ports {
			#address-cells = <1>;
			#size-cells = <0>;

			port@0 {
				reg = <0>;

				redriver_ss_out: endpoint {
					remote-endpoint = <&pmic_glink_ss_in>;
				};
			};

			port@1 {
				reg = <1>;

				redriver_ss_in: endpoint {
					data-lanes = <3 2 1 0>;
					remote-endpoint = <&usb_dp_qmpphy_out>;
				};
			};
		};
	};

	typec-mux@42 {
		compatible = "fcs,fsa4480";
		reg = <0x42>;

		vcc-supply = <&vreg_bob1>;

		mode-switch;
		orientation-switch;

		port {
			fsa4480_sbu_mux: endpoint {
				remote-endpoint = <&pmic_glink_sbu>;
			};
		};
	};
};

&gcc {
	clocks = <&bi_tcxo_div2>, <&sleep_clk>,
		 <&pcie0_phy>,
@@ -587,6 +651,15 @@ &mdss_dsi0_phy {
	status = "okay";
};

&mdss_dp0 {
	status = "okay";
};

&mdss_dp0_out {
	data-lanes = <0 1>;
	remote-endpoint = <&usb_dp_qmpphy_dp_in>;
};

&pcie_1_phy_aux_clk {
	status = "disabled";
};
@@ -843,7 +916,7 @@ &usb_1_dwc3_hs {
};

&usb_1_dwc3_ss {
	remote-endpoint = <&pmic_glink_ss_in>;
	remote-endpoint = <&usb_dp_qmpphy_usb_ss_in>;
};

&usb_1_hsphy {
@@ -859,9 +932,23 @@ &usb_dp_qmpphy {
	vdda-phy-supply = <&vreg_l3e_1p2>;
	vdda-pll-supply = <&vreg_l3f_0p88>;

	orientation-switch;

	status = "okay";
};

&usb_dp_qmpphy_dp_in {
	remote-endpoint = <&mdss_dp0_out>;
};

&usb_dp_qmpphy_out {
	remote-endpoint = <&redriver_ss_in>;
};

&usb_dp_qmpphy_usb_ss_in {
	remote-endpoint = <&usb_1_dwc3_ss>;
};

&xo_board {
	clock-frequency = <76800000>;
};