linux-arm-msm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jessica Zhang <jessica.zhang@oss.qualcomm.com>
To: Rob Clark <robin.clark@oss.qualcomm.com>,
	Abhinav Kumar <abhinav.kumar@linux.dev>,
	Dmitry Baryshkov <lumag@kernel.org>, Sean Paul <sean@poorly.run>,
	Marijn Suijten <marijn.suijten@somainline.org>,
	David Airlie <airlied@gmail.com>, Simona Vetter <simona@ffwll.ch>,
	Jessica Zhang <jessica.zhang@oss.qualcomm.com>
Cc: linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org,
	freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org,
	Yongxing Mou <quic_yongmou@quicinc.com>,
	Abhinav Kumar <quic_abhinavk@quicinc.com>
Subject: [PATCH 02/19] drm/msm/dp: remove redundant checks related to ST_DISPLAY_OFF in plug/irq_ipd handlers
Date: Fri, 11 Jul 2025 17:58:07 -0700	[thread overview]
Message-ID: <20250711-hpd-refactor-v1-2-33cbac823f34@oss.qualcomm.com> (raw)
In-Reply-To: <20250711-hpd-refactor-v1-0-33cbac823f34@oss.qualcomm.com>

From: Abhinav Kumar <quic_abhinavk@quicinc.com>

In commit 8ede2ecc3e5ee ("drm/msm/dp: Add DP compliance tests on Snapdragon
Chipsets"), checks were introduced to avoid handling any plug or irq hpd
events in ST_DISPLAY_OFF state.

Even if we do get hpd events, after the bridge was disabled,
it should get handled. Moreover, its unclear under what circumstances
these events will fire because ST_DISPLAY_OFF means that the link was
still connected but only the bridge was disabled. If the link was
untouched, then interrupts shouldn't fire.

Even in the case of the DP compliance equipment, it should be raising these
interrupts during the start of the test which is usually accompanied with
either a HPD pulse or a IRQ HPD but after the bridge is disabled it should
be fine to handle these anyway. In the absence of a better reason to keep
these checks, drop these and if any other issues do arise, it should be
handled in a different way.

Signed-off-by: Abhinav Kumar <quic_abhinavk@quicinc.com>
Signed-off-by: Jessica Zhang <jessica.zhang@oss.qualcomm.com>
---
Note: Taken from https://patchwork.freedesktop.org/series/142010/
---
 drivers/gpu/drm/msm/dp/dp_display.c | 10 ----------
 1 file changed, 10 deletions(-)

diff --git a/drivers/gpu/drm/msm/dp/dp_display.c b/drivers/gpu/drm/msm/dp/dp_display.c
index 6945df782f7b..1072b5fc00ae 100644
--- a/drivers/gpu/drm/msm/dp/dp_display.c
+++ b/drivers/gpu/drm/msm/dp/dp_display.c
@@ -595,11 +595,6 @@ static int msm_dp_hpd_plug_handle(struct msm_dp_display_private *dp, u32 data)
 	drm_dbg_dp(dp->drm_dev, "Before, type=%d hpd_state=%d\n",
 			dp->msm_dp_display.connector_type, state);
 
-	if (state == ST_DISPLAY_OFF) {
-		mutex_unlock(&dp->event_mutex);
-		return 0;
-	}
-
 	if (state == ST_MAINLINK_READY || state == ST_CONNECTED) {
 		mutex_unlock(&dp->event_mutex);
 		return 0;
@@ -728,11 +723,6 @@ static int msm_dp_irq_hpd_handle(struct msm_dp_display_private *dp, u32 data)
 	drm_dbg_dp(dp->drm_dev, "Before, type=%d hpd_state=%d\n",
 			dp->msm_dp_display.connector_type, state);
 
-	if (state == ST_DISPLAY_OFF) {
-		mutex_unlock(&dp->event_mutex);
-		return 0;
-	}
-
 	if (state == ST_MAINLINK_READY || state == ST_DISCONNECT_PENDING) {
 		/* wait until ST_CONNECTED */
 		msm_dp_add_event(dp, EV_IRQ_HPD_INT, 0, 1); /* delay = 1 */

-- 
2.50.1


  parent reply	other threads:[~2025-07-12  0:58 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-07-12  0:58 [PATCH 00/19] drm/msm/dp: Drop the HPD state machine Jessica Zhang
2025-07-12  0:58 ` [PATCH 01/19] drm/msm/dp: Track when DP is physically plugged in Jessica Zhang
2025-07-14 11:42   ` Dmitry Baryshkov
2025-07-12  0:58 ` Jessica Zhang [this message]
2025-07-12  0:58 ` [PATCH 03/19] drm/msm/dp: Return early from atomic_enable() if cable is not connected Jessica Zhang
2025-07-14 11:47   ` Dmitry Baryshkov
2025-07-12  0:58 ` [PATCH 04/19] drm/msm/dp: replace ST_DISPLAY_OFF with power_on in msm_dp_hpd_unplug_handle() Jessica Zhang
2025-07-14 12:27   ` Dmitry Baryshkov
2025-07-14 20:38     ` Jessica Zhang
2025-07-14 22:28       ` Dmitry Baryshkov
2025-07-14 20:47     ` Jessica Zhang
2025-07-12  0:58 ` [PATCH 05/19] drm/msm/dp: Replace ST_MAINLINK_READY with link_ready in plug/hpd_irq handlers Jessica Zhang
2025-07-12  0:58 ` [PATCH 06/19] drm/msm/dp: Replace ST_DISCONNECTED with checks for connected Jessica Zhang
2025-07-12  0:58 ` [PATCH 07/19] drm/msm/dp: Rework unplug handling Jessica Zhang
2025-07-12  0:58 ` [PATCH 08/19] drm/msm/dp: Don't delay plug-in handling when ST_DISCONNECT_PENDING Jessica Zhang
2025-07-12  0:58 ` [PATCH 09/19] drm/msm/dp: Replace ST_DISPLAY_OFF with power_on in atomic_enable() Jessica Zhang
2025-07-12  0:58 ` [PATCH 10/19] drm/msm/dp: Check if DP is disconnected in atomic post_disable() Jessica Zhang
2025-07-12  0:58 ` [PATCH 11/19] drm/msm/dp: remove ST_DISPLAY_OFF as a hpd_state Jessica Zhang
2025-07-12  0:58 ` [PATCH 12/19] drm/msm/dp: Drop ST_MAINLINK_READY hpd_state Jessica Zhang
2025-07-12  0:58 ` [PATCH 13/19] drm/msm/dp: Drop ST_DISCONNECTED Jessica Zhang
2025-07-12  0:58 ` [PATCH 14/19] drm/msm/dp: Drop ST_CONNECTED Jessica Zhang
2025-07-12  0:58 ` [PATCH 15/19] drm/msm/dp: Drop ST_DISCONNECT_PENDING Jessica Zhang
2025-07-12  0:58 ` [PATCH 16/19] drm/msm/dp: Drop hpd_state from msm_dp Jessica Zhang
2025-07-12  0:58 ` [PATCH 17/19] drm/msm/dp: Use drm_bridge_hpd_notify() Jessica Zhang
2025-07-14 12:25   ` Dmitry Baryshkov
2025-07-12  0:58 ` [PATCH 18/19] drm/msm/dp: Move link training to atomic_enable() Jessica Zhang
2025-07-14 11:54   ` Dmitry Baryshkov
2025-08-01 23:58     ` Jessica Zhang
2025-08-02 10:18       ` Dmitry Baryshkov
2025-07-12  0:58 ` [PATCH 19/19] drm/msm/dp: Log connected and link_ready for event handling Jessica Zhang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250711-hpd-refactor-v1-2-33cbac823f34@oss.qualcomm.com \
    --to=jessica.zhang@oss.qualcomm.com \
    --cc=abhinav.kumar@linux.dev \
    --cc=airlied@gmail.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=freedreno@lists.freedesktop.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lumag@kernel.org \
    --cc=marijn.suijten@somainline.org \
    --cc=quic_abhinavk@quicinc.com \
    --cc=quic_yongmou@quicinc.com \
    --cc=robin.clark@oss.qualcomm.com \
    --cc=sean@poorly.run \
    --cc=simona@ffwll.ch \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).