From: Jonas Karlman <jonas@kwiboo.se>
To: Andrzej Hajda <andrzej.hajda@intel.com>,
Neil Armstrong <neil.armstrong@linaro.org>,
Robert Foss <rfoss@kernel.org>,
Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
Maxime Ripard <mripard@kernel.org>,
Thomas Zimmermann <tzimmermann@suse.de>,
David Airlie <airlied@gmail.com>, Simona Vetter <simona@ffwll.ch>,
Laurent Pinchart <Laurent.pinchart@ideasonboard.com>,
Jonas Karlman <jonas@kwiboo.se>,
Jernej Skrabec <jernej.skrabec@gmail.com>,
Lucas Stach <l.stach@pengutronix.de>
Cc: Christian Hewitt <christianshewitt@gmail.com>,
Diederik de Haas <didi.debian@cknow.org>,
Christopher Obbard <chris.obbard@collabora.com>,
dri-devel@lists.freedesktop.org,
linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org
Subject: [PATCH v2 02/10] drm: bridge: dw_hdmi: Only notify connected status on HPD interrupt
Date: Sun, 8 Sep 2024 13:28:04 +0000 [thread overview]
Message-ID: <20240908132823.3308029-3-jonas@kwiboo.se> (raw)
In-Reply-To: <20240908132823.3308029-1-jonas@kwiboo.se>
drm_helper_hpd_irq_event() and drm_bridge_hpd_notify() may incorrectly
be called with a connected status when HPD is high and RX sense is
changed. This typically happen when the HDMI cable is unplugged, shortly
before the HPD is changed to low.
Fix this by only notify connected status on the HPD interrupt when HPD
is going high, not on the RX sense interrupt when RX sense is changed.
Fixes: da09daf88108 ("drm: bridge: dw_hdmi: only trigger hotplug event on link change")
Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
---
v2: New patch
---
drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
index 9e7f86a0bf5c..055fc9848df4 100644
--- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
+++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
@@ -3123,7 +3123,8 @@ static irqreturn_t dw_hdmi_irq(int irq, void *dev_id)
mutex_unlock(&hdmi->cec_notifier_mutex);
}
- if (phy_stat & HDMI_PHY_HPD)
+ if ((intr_stat & HDMI_IH_PHY_STAT0_HPD) &&
+ (phy_stat & HDMI_PHY_HPD))
status = connector_status_connected;
if (!(phy_stat & (HDMI_PHY_HPD | HDMI_PHY_RX_SENSE)))
--
2.46.0
next prev parent reply other threads:[~2024-09-08 13:29 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-08 13:28 [PATCH v2 00/10] drm: bridge: dw_hdmi: Misc enable/disable, CEC and EDID cleanup Jonas Karlman
2024-09-08 13:28 ` [PATCH v2 01/10] drm: bridge: dw_hdmi: Disable scrambler feature when not supported Jonas Karlman
2024-09-09 13:15 ` Neil Armstrong
2024-09-08 13:28 ` Jonas Karlman [this message]
2024-09-09 13:16 ` [PATCH v2 02/10] drm: bridge: dw_hdmi: Only notify connected status on HPD interrupt Neil Armstrong
2024-09-09 15:12 ` Jonas Karlman
2024-09-08 13:28 ` [PATCH v2 03/10] drm: bridge: dw_hdmi: Call poweron/poweroff from atomic enable/disable Jonas Karlman
2024-09-13 8:05 ` Neil Armstrong
2024-09-08 13:28 ` [PATCH v2 04/10] drm: bridge: dw_hdmi: Use passed mode instead of stored previous_mode Jonas Karlman
2024-09-13 8:04 ` Neil Armstrong
2024-09-08 13:28 ` [PATCH v2 05/10] drm: bridge: dw_hdmi: Fold poweron and setup functions Jonas Karlman
2024-09-13 8:06 ` Neil Armstrong
2024-09-08 13:28 ` [PATCH v2 06/10] drm: bridge: dw_hdmi: Remove previous_mode and mode_set Jonas Karlman
2024-09-13 8:03 ` Neil Armstrong
2024-09-08 13:28 ` [PATCH v2 07/10] drm: bridge: dw_hdmi: Invalidate CEC phys addr from connector detect Jonas Karlman
2024-09-08 13:28 ` [PATCH v2 08/10] drm: bridge: dw_hdmi: Remove cec_notifier_mutex Jonas Karlman
2024-09-08 13:28 ` [PATCH v2 09/10] drm: bridge: dw_hdmi: Update EDID during hotplug processing Jonas Karlman
2024-09-13 8:02 ` Neil Armstrong
2024-09-19 20:34 ` Jonas Karlman
2024-09-20 7:04 ` neil.armstrong
2024-09-20 11:51 ` Jonas Karlman
2024-09-08 13:28 ` [PATCH v2 10/10] drm: bridge: dw_hdmi: Use display_info is_hdmi and has_audio Jonas Karlman
2024-09-13 17:30 ` [PATCH v2 00/10] drm: bridge: dw_hdmi: Misc enable/disable, CEC and EDID cleanup Diederik de Haas
2024-10-02 19:38 ` Diederik de Haas
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=20240908132823.3308029-3-jonas@kwiboo.se \
--to=jonas@kwiboo.se \
--cc=Laurent.pinchart@ideasonboard.com \
--cc=airlied@gmail.com \
--cc=andrzej.hajda@intel.com \
--cc=chris.obbard@collabora.com \
--cc=christianshewitt@gmail.com \
--cc=didi.debian@cknow.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=jernej.skrabec@gmail.com \
--cc=l.stach@pengutronix.de \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=maarten.lankhorst@linux.intel.com \
--cc=mripard@kernel.org \
--cc=neil.armstrong@linaro.org \
--cc=rfoss@kernel.org \
--cc=simona@ffwll.ch \
--cc=tzimmermann@suse.de \
/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
all inboxes | Powered by JetHome®