[PATCH v2 11/12] drm/msm/dp: drop the entire HPD state machine
Dmitry Baryshkov
dmitry.baryshkov at oss.qualcomm.com
Sat Aug 9 07:26:06 UTC 2025
On Fri, Aug 08, 2025 at 05:35:23PM -0700, Jessica Zhang wrote:
> Since internal HPD IRQ event handling has been moved to being handled by
> the DRM framework detect() and hpd_notify() callbacks, there is no need
> for the MSM driver to track the HPD state separately.
>
> Drop all references to the HPD state machine and replace existing checks
> with checks for link_ready or sink_count.
After this patch there should no more difference between 'internal_hpd'
and 'external_hpd' cases. However, the code still tries to make the
difference for some reason. There are several places where the driver
calls msm_dp_display_send_hpd_notification(), e.g.
msm_dp_hpd_unplug_handle(), msm_dp_display_process_hpd_high(), etc.
These functions are called from msm_dp_bridge_hpd_notify(), which means
that we can end up with the lock ups because of the event loops.
>
> Signed-off-by: Jessica Zhang <jessica.zhang at oss.qualcomm.com>
> ---
> drivers/gpu/drm/msm/dp/dp_ctrl.c | 22 ------
> drivers/gpu/drm/msm/dp/dp_ctrl.h | 1 -
> drivers/gpu/drm/msm/dp/dp_display.c | 148 +++++++++---------------------------
> 3 files changed, 34 insertions(+), 137 deletions(-)
>
--
With best wishes
Dmitry
More information about the dri-devel
mailing list