Skip to content

Commit a1338b3

Browse files
superna9999andersson
authored andcommitted
arm64: dts: qcom: x1e78100-lenovo-thinkpad-t14s: add HDMI nodes
The Thinkpad T14s embeds a transparent 4lanes DP->HDMI transceiver connected to the third QMP Combo PHY 4 lanes. Add all the data routing, disable mode switching and specify the QMP Combo PHY should be in DP-Only mode to route the 4 lanes to the underlying DP phy. Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://lore.kernel.org/r/20251119-topic-x1e80100-hdmi-v7-3-2bee0e66cc1b@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
1 parent b38dd25 commit a1338b3

1 file changed

Lines changed: 81 additions & 0 deletions

File tree

arch/arm64/boot/dts/qcom/x1e78100-lenovo-thinkpad-t14s.dtsi

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,45 @@
6262
};
6363
};
6464

65+
hdmi-bridge {
66+
compatible = "realtek,rtd2171";
67+
68+
pinctrl-0 = <&hdmi_hpd_default>;
69+
pinctrl-names = "default";
70+
71+
ports {
72+
#address-cells = <1>;
73+
#size-cells = <0>;
74+
75+
port@0 {
76+
reg = <0>;
77+
78+
hdmi_bridge_dp_in: endpoint {
79+
remote-endpoint = <&usb_1_ss2_qmpphy_out_dp>;
80+
};
81+
};
82+
83+
port@1 {
84+
reg = <1>;
85+
86+
hdmi_bridge_tmds_out: endpoint {
87+
remote-endpoint = <&hdmi_con>;
88+
};
89+
};
90+
};
91+
};
92+
93+
hdmi-connector {
94+
compatible = "hdmi-connector";
95+
type = "a";
96+
97+
port {
98+
hdmi_con: endpoint {
99+
remote-endpoint = <&hdmi_bridge_tmds_out>;
100+
};
101+
};
102+
};
103+
65104
pmic-glink {
66105
compatible = "qcom,x1e80100-pmic-glink",
67106
"qcom,sm8550-pmic-glink",
@@ -1076,6 +1115,14 @@
10761115
link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
10771116
};
10781117

1118+
&mdss_dp2 {
1119+
status = "okay";
1120+
};
1121+
1122+
&mdss_dp2_out {
1123+
link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
1124+
};
1125+
10791126
&mdss_dp3 {
10801127
/delete-property/ #sound-dai-cells;
10811128

@@ -1371,6 +1418,12 @@
13711418
output-low;
13721419
};
13731420

1421+
hdmi_hpd_default: hdmi-hpd-default-state {
1422+
pins = "gpio126";
1423+
function = "usb2_dp";
1424+
bias-disable;
1425+
};
1426+
13741427
tpad_default: tpad-default-state {
13751428
pins = "gpio3";
13761429
function = "gpio";
@@ -1602,6 +1655,34 @@
16021655
remote-endpoint = <&retimer_ss1_ss_in>;
16031656
};
16041657

1658+
&usb_1_ss2_qmpphy {
1659+
vdda-phy-supply = <&vreg_l2j_1p2>;
1660+
vdda-pll-supply = <&vreg_l2d_0p9>;
1661+
1662+
/delete-property/ mode-switch;
1663+
/delete-property/ orientation-switch;
1664+
1665+
status = "okay";
1666+
1667+
ports {
1668+
port@0 {
1669+
#address-cells = <1>;
1670+
#size-cells = <0>;
1671+
1672+
/delete-node/ endpoint;
1673+
1674+
usb_1_ss2_qmpphy_out_dp: endpoint@0 {
1675+
reg = <0>;
1676+
1677+
data-lanes = <3 2 1 0>;
1678+
remote-endpoint = <&hdmi_bridge_dp_in>;
1679+
};
1680+
1681+
/* No USB3 lanes connected */
1682+
};
1683+
};
1684+
};
1685+
16051686
&usb_2 {
16061687
status = "okay";
16071688
};

0 commit comments

Comments
 (0)