Skip to content

Commit bba679c

Browse files
committed
Merge tag 'drm-msm-fixes-2024-02-28' of https://gitlab.freedesktop.org/drm/msm into drm-fixes
Fixes for v6.8-rc7 DP: - Revert a change which was causing a HDP regression Signed-off-by: Dave Airlie <airlied@redhat.com> From: Rob Clark <robdclark@gmail.com> Link: https://patchwork.freedesktop.org/patch/msgid/CAF6AEGvhWvHiPGQ1pRD2XPAQoHEM2M35kjhrsSAEtzh8AMSRvg@mail.gmail.com
2 parents aa5fe42 + 664bad6 commit bba679c

1 file changed

Lines changed: 18 additions & 2 deletions

File tree

drivers/gpu/drm/msm/dp/dp_display.c

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -329,10 +329,26 @@ static const struct component_ops dp_display_comp_ops = {
329329
.unbind = dp_display_unbind,
330330
};
331331

332+
static void dp_display_send_hpd_event(struct msm_dp *dp_display)
333+
{
334+
struct dp_display_private *dp;
335+
struct drm_connector *connector;
336+
337+
dp = container_of(dp_display, struct dp_display_private, dp_display);
338+
339+
connector = dp->dp_display.connector;
340+
drm_helper_hpd_irq_event(connector->dev);
341+
}
342+
332343
static int dp_display_send_hpd_notification(struct dp_display_private *dp,
333344
bool hpd)
334345
{
335-
struct drm_bridge *bridge = dp->dp_display.bridge;
346+
if ((hpd && dp->dp_display.link_ready) ||
347+
(!hpd && !dp->dp_display.link_ready)) {
348+
drm_dbg_dp(dp->drm_dev, "HPD already %s\n",
349+
(hpd ? "on" : "off"));
350+
return 0;
351+
}
336352

337353
/* reset video pattern flag on disconnect */
338354
if (!hpd) {
@@ -348,7 +364,7 @@ static int dp_display_send_hpd_notification(struct dp_display_private *dp,
348364

349365
drm_dbg_dp(dp->drm_dev, "type=%d hpd=%d\n",
350366
dp->dp_display.connector_type, hpd);
351-
drm_bridge_hpd_notify(bridge, dp->dp_display.link_ready);
367+
dp_display_send_hpd_event(&dp->dp_display);
352368

353369
return 0;
354370
}

0 commit comments

Comments
 (0)