[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <as7pbmhfgsg3ht3s5lu25pfjjamaxyonuohkuohono3kr2mxii@posspuko4vwa>
Date: Fri, 22 Aug 2025 14:01:30 +0300
From: Dmitry Baryshkov <dmitry.baryshkov@....qualcomm.com>
To: Neil Armstrong <neil.armstrong@...aro.org>
Cc: Vinod Koul <vkoul@...nel.org>, Kishon Vijay Abraham I <kishon@...nel.org>,
Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Bjorn Andersson <andersson@...nel.org>,
Konrad Dybcio <konradybcio@...nel.org>, linux-arm-msm@...r.kernel.org,
linux-phy@...ts.infradead.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH RFC 3/3] arm64: dts: qcom: x1e78100-lenovo-thinkpad-t14s:
add HDMI nodes
On Thu, Aug 21, 2025 at 03:53:28PM +0200, Neil Armstrong wrote:
> 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.
>
> Signed-off-by: Neil Armstrong <neil.armstrong@...aro.org>
> ---
> .../dts/qcom/x1e78100-lenovo-thinkpad-t14s.dtsi | 44 ++++++++++++++++++++++
> 1 file changed, 44 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/qcom/x1e78100-lenovo-thinkpad-t14s.dtsi b/arch/arm64/boot/dts/qcom/x1e78100-lenovo-thinkpad-t14s.dtsi
> index 4cf61c2a34e31233b1adc93332bcabef22de3f86..5b62b8c3123633360f249e3ecdc8ea23f44e8e09 100644
> --- a/arch/arm64/boot/dts/qcom/x1e78100-lenovo-thinkpad-t14s.dtsi
> +++ b/arch/arm64/boot/dts/qcom/x1e78100-lenovo-thinkpad-t14s.dtsi
> @@ -62,6 +62,20 @@ switch-lid {
> };
> };
>
> +
> + hdmi-connector {
> + compatible = "hdmi-connector";
> + type = "a";
> + pinctrl-0 = <&hdmi_hpd_default>;
> + pinctrl-names = "default";
If this is a DP HPD signal, it should be a part of the DP device.
> +
> + port {
> + hdmi_con: endpoint {
> + remote-endpoint = <&usb_1_ss2_qmpphy_out>;
Please describe the transparent bridge too. It can be covered by the
simple-bridge.yaml / simple-bridge.c
> + };
> + };
> + };
> +
> pmic-glink {
> compatible = "qcom,x1e80100-pmic-glink",
> "qcom,sm8550-pmic-glink",
> @@ -1007,6 +1021,14 @@ &mdss_dp1_out {
> link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
> };
>
> +&mdss_dp2 {
> + status = "okay";
> +};
> +
> +&mdss_dp2_out {
> + data-lanes = <0 1 2 3>;
> +};
> +
> &mdss_dp3 {
> /delete-property/ #sound-dai-cells;
>
> @@ -1263,6 +1285,12 @@ &tlmm {
> <72 2>, /* Secure EC I2C connection (?) */
> <238 1>; /* UFS Reset */
>
> + hdmi_hpd_default: hdmi-hpd-default-state {
> + pins = "gpio126";
> + function = "usb2_dp";
> + bias-disable;
> + };
> +
> eusb3_reset_n: eusb3-reset-n-state {
> pins = "gpio6";
> function = "gpio";
> @@ -1486,6 +1514,22 @@ &usb_1_ss0_qmpphy_out {
> remote-endpoint = <&retimer_ss0_ss_in>;
> };
>
> +&usb_1_ss2_qmpphy {
> + vdda-phy-supply = <&vreg_l2j_1p2>;
> + vdda-pll-supply = <&vreg_l2d_0p9>;
> +
> + qcom,combo-initial-mode = "dp";
> +
> + /delete-property/ mode-switch;
> + /delete-property/ orientation-switch;
> +
> + status = "okay";
> +};
> +
> +&usb_1_ss2_qmpphy_out {
> + remote-endpoint = <&hdmi_con>;
> +};
> +
> &usb_1_ss1_hsphy {
> vdd-supply = <&vreg_l3j_0p8>;
> vdda12-supply = <&vreg_l2j_1p2>;
>
> --
> 2.34.1
>
--
With best wishes
Dmitry
Powered by blists - more mailing lists