lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1635386088-18089-7-git-send-email-quic_sbillaka@quicinc.com>
Date:   Thu, 28 Oct 2021 07:24:48 +0530
From:   Sankeerth Billakanti <quic_sbillaka@...cinc.com>
To:     <dri-devel@...ts.freedesktop.org>, <linux-arm-msm@...r.kernel.org>,
        <freedreno@...ts.freedesktop.org>, <linux-kernel@...r.kernel.org>
CC:     Sankeerth Billakanti <quic_sbillaka@...cinc.com>,
        <robdclark@...il.com>, <seanpaul@...omium.org>,
        <swboyd@...omium.org>, <kalyan_t@...eaurora.org>,
        <abhinavk@...eaurora.org>, <dianders@...omium.org>,
        <khsieh@...eaurora.org>, <mkrishn@...eaurora.org>,
        <sbillaka@...eaurora.org>
Subject: [PATCH v3 6/6] drm/msm/dp: Remove the hpd init delay for eDP

DP driver needs a 10 second delay before phy_init so that
the usb combo phy initializes and sets up the necessary
clocks for usb devices such as keyboard and mouse.

eDP controller uses a standalone phy and need not wait for
phy initialization from any other component. This change
will remove the delay for eDP controller.

Signed-off-by: Sankeerth Billakanti <quic_sbillaka@...cinc.com>
---
 drivers/gpu/drm/msm/dp/dp_display.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/msm/dp/dp_display.c b/drivers/gpu/drm/msm/dp/dp_display.c
index 61385d6..de6a1fd 100644
--- a/drivers/gpu/drm/msm/dp/dp_display.c
+++ b/drivers/gpu/drm/msm/dp/dp_display.c
@@ -1430,6 +1430,7 @@ void __exit msm_dp_unregister(void)
 void msm_dp_irq_postinstall(struct msm_dp *dp_display)
 {
 	struct dp_display_private *dp;
+	u8 delay;
 
 	if (!dp_display)
 		return;
@@ -1438,7 +1439,15 @@ void msm_dp_irq_postinstall(struct msm_dp *dp_display)
 
 	dp_hpd_event_setup(dp);
 
-	dp_add_event(dp, EV_HPD_INIT_SETUP, 0, 100);
+	if (dp->dp_display.connector_type == DRM_MODE_CONNECTOR_eDP) {
+		/* eDP does not need any delay before phy init */
+		delay = 0;
+	} else {
+		/* DP needs 10 second delay to let usb combo phy initialize */
+		delay = 100;
+	}
+
+	dp_add_event(dp, EV_HPD_INIT_SETUP, 0, delay);
 }
 
 void msm_dp_debugfs_init(struct msm_dp *dp_display, struct drm_minor *minor)
-- 
2.7.4

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ