Hi Stephan,
On Thu, 14 Aug 2025 at 14:30, Stephan Gerhold
<stephan.gerhold@linaro.org> wrote:
>
> At the moment, we indirectly rely on the boot firmware to set up the
> pinctrl for the eDP HPD line coming from the internal display. If the boot
> firmware does not configure the display (e.g. because a different display
> is selected for output in the UEFI settings), then the display fails to
> come up and there are several errors in the kernel log:
>
> [drm:dpu_encoder_phys_vid_wait_for_commit_done:544] [dpu error]vblank timeout: 80020041
> [drm:dpu_kms_wait_for_commit_done:524] [dpu error]wait for commit done returned -110
> [drm:dpu_encoder_frame_done_timeout:2715] [dpu error]enc40 frame done timeout
> ...
>
> Fix this by adding the missing pinctrl for gpio119 (func1/edp0_hot and
> bias-disable according to the ACPI DSDT).
>
> Fixes: 7d1cbe2f4985 ("arm64: dts: qcom: Add X1E78100 ThinkPad T14s Gen 6")
> Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
Tested-by: Christopher Obbard <christopher.obbard@linaro.org>
Reviewed-by: Christopher Obbard <christopher.obbard@linaro.org>
> ---
> arch/arm64/boot/dts/qcom/x1e78100-lenovo-thinkpad-t14s.dtsi | 9 +++++++++
> 1 file changed, 9 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..b775110bbcaff165cac259cacc7509a64746b987 100644
> --- a/arch/arm64/boot/dts/qcom/x1e78100-lenovo-thinkpad-t14s.dtsi
> +++ b/arch/arm64/boot/dts/qcom/x1e78100-lenovo-thinkpad-t14s.dtsi
> @@ -1010,6 +1010,9 @@ &mdss_dp1_out {
> &mdss_dp3 {
> /delete-property/ #sound-dai-cells;
>
> + pinctrl-0 = <&edp_hpd_default>;
> + pinctrl-names = "default";
> +
> status = "okay";
>
> aux-bus {
> @@ -1263,6 +1266,12 @@ &tlmm {
> <72 2>, /* Secure EC I2C connection (?) */
> <238 1>; /* UFS Reset */
>
> + edp_hpd_default: edp-hpd-default-state {
> + pins = "gpio119";
> + function = "edp0_hot";
> + bias-disable;
> + };
> +
> eusb3_reset_n: eusb3-reset-n-state {
> pins = "gpio6";
> function = "gpio";
>
> --
> 2.50.1
>