[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <k6n4ojdhsr2sjxoyrvo7qdoajdxbrjuuxfuhw76wrmpegdyayo@arumyjto7kpp>
Date: Fri, 22 Aug 2025 14:40:38 +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 Fri, Aug 22, 2025 at 01:02:56PM +0200, Neil Armstrong wrote:
> On 22/08/2025 13:01, Dmitry Baryshkov wrote:
> > 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
>
> Ack, indeed it could take the pinctrl thing.
Pinctrl, enables, etc.
But from my POV the HPD pin should be a part of the DP controller
itself.
>
> Neil
>
> >
> >
> > > + };
> > > + };
> > > + };
> > > +
> > > 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