]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
arm64: dts: qcom: x1e80100: Add pinctrl template for eDP0 HPD
authorStephan Gerhold <stephan.gerhold@linaro.org>
Fri, 22 Aug 2025 09:28:52 +0000 (11:28 +0200)
committerBjorn Andersson <andersson@kernel.org>
Mon, 1 Sep 2025 18:03:32 +0000 (13:03 -0500)
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
 ...

Add a new &edp0_hpd_default pinctrl template that can be used by boards to
set up the eDP HPD pin correctly. All boards upstream so far need the same
configuration; if a board needs a different configuration it can just avoid
using this template and define a custom one in the board DT.

Signed-off-by: Stephan Gerhold <stephan.gerhold@linaro.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20250822-x1e80100-add-edp-hpd-v2-1-6310176239a6@linaro.org
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/x1e80100.dtsi

index b017f47e832f9ffdfc9d3d3cd1c6beed70de3392..737c5dbd1c808300041cc8897ca1f7450e16e019 100644 (file)
                        gpio-ranges = <&tlmm 0 0 239>;
                        wakeup-parent = <&pdc>;
 
+                       edp0_hpd_default: edp0-hpd-default-state {
+                               pins = "gpio119";
+                               function = "edp0_hot";
+                               bias-disable;
+                       };
+
                        qup_i2c0_data_clk: qup-i2c0-data-clk-state {
                                /* SDA, SCL */
                                pins = "gpio0", "gpio1";