]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
arm64: dts: qcom: monaco-evk: add lt8713sx bridge with displayport
authorVishnu Saini <vishnu.saini@oss.qualcomm.com>
Wed, 18 Mar 2026 19:08:19 +0000 (00:38 +0530)
committerBjorn Andersson <andersson@kernel.org>
Thu, 26 Mar 2026 14:40:49 +0000 (09:40 -0500)
Monaco-evk has LT8713sx which act as DP to 3 DP output
converter. Edp PHY from monaco soc is connected to lt8713sx
as input and output of lt8713sx is connected to 3 mini DP ports.

Two ports are available in mainboard and one port
is available on Mezz board.

lt8713sx is connected to soc over i2c0 and with reset gpio
connected to pin6 of ioexpander5.

Enable the edp nodes from monaco and enable lontium lt8713sx
bridge node.

Co-developed-by: Prahlad Valluru <vvalluru@qti.qualcomm.com>
Signed-off-by: Prahlad Valluru <vvalluru@qti.qualcomm.com>
Signed-off-by: Vishnu Saini <vishnu.saini@oss.qualcomm.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20260319-lt8713sx-bridge-linux-for-next-v4-1-da886ec78fe3@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/monaco-evk.dts
arch/arm64/boot/dts/qcom/monaco.dtsi

index fb687309decd05df4bd259363e19adb52fb42382..3858872e97d995a309d19861f920be0da8d0e3c7 100644 (file)
                #sound-dai-cells = <0>;
        };
 
+       dp-connector-0 {
+               compatible = "dp-connector";
+               label = "DP0";
+               type = "mini";
+
+               port {
+                       dp0_connector_in: endpoint {
+                               remote-endpoint = <&lt8713sx_dp0_out>;
+                       };
+               };
+       };
+
+       dp-connector-1 {
+               compatible = "dp-connector";
+               label = "DP1";
+               type = "mini";
+
+               port {
+                       dp1_connector_in: endpoint {
+                               remote-endpoint = <&lt8713sx_dp1_out>;
+                       };
+               };
+       };
+
        usb2_vbus: regulator-usb2-vbus {
                compatible = "regulator-fixed";
                regulator-name = "usb2_vbus";
        firmware-name = "qcom/qcs8300/a623_zap.mbn";
 };
 
+&i2c0 {
+       status = "okay";
+
+       bridge@4f {
+               compatible = "lontium,lt8713sx";
+               reg = <0x4f>;
+               reset-gpios = <&expander5 6 GPIO_ACTIVE_LOW>;
+
+               ports {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+
+                       port@0 {
+                               reg = <0>;
+
+                               lt8713sx_dp_in: endpoint {
+                                       remote-endpoint = <&mdss_dp0_out>;
+                               };
+                       };
+
+                       port@1 {
+                               reg = <1>;
+
+                               lt8713sx_dp0_out: endpoint {
+                                       remote-endpoint = <&dp0_connector_in>;
+                               };
+                       };
+
+                       port@2 {
+                               reg = <2>;
+
+                               lt8713sx_dp1_out: endpoint {
+                                       remote-endpoint = <&dp1_connector_in>;
+                               };
+                       };
+               };
+       };
+};
+
 &i2c1 {
        pinctrl-0 = <&qup_i2c1_default>;
        pinctrl-names = "default";
        status = "okay";
 };
 
+&mdss {
+       status = "okay";
+};
+
+&mdss_dp0 {
+       pinctrl-0 = <&dp_hot_plug_det>;
+       pinctrl-names = "default";
+
+       status = "okay";
+};
+
+&mdss_dp0_out {
+       data-lanes = <0 1 2 3>;
+       link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
+       remote-endpoint = <&lt8713sx_dp_in>;
+};
+
+&mdss_dp0_phy {
+       vdda-phy-supply = <&vreg_l5a>;
+       vdda-pll-supply = <&vreg_l4a>;
+
+       status = "okay";
+};
+
 &pcie0 {
        pinctrl-0 = <&pcie0_default_state>;
        pinctrl-names = "default";
        };
 };
 
+&qup_i2c0_data_clk {
+       drive-strength = <2>;
+       bias-pull-up;
+};
+
 &qupv3_id_0 {
        firmware-name = "qcom/qcs8300/qupv3fw.elf";
        status = "okay";
index 3b00b81aeaf155be6b581541a3b915d35aa87c9c..de528b4615f8eb5f0e007d162d80e92ba1348402 100644 (file)
                                };
                        };
 
+                       dp_hot_plug_det: dp-hot-plug-det-state {
+                               pins = "gpio94";
+                               function = "edp0_hot";
+                               bias-disable;
+                       };
+
                        hs0_mi2s_active: hs0-mi2s-active-state {
                                pins = "gpio106", "gpio107", "gpio108", "gpio109";
                                function = "hs0_mi2s";