drm/xe/display: handle HPD polling in display runtime suspend/resume
authorVinod Govindapillai <vinod.govindapillai@intel.com>
Fri, 23 Aug 2024 11:21:48 +0000 (14:21 +0300)
committerVinod Govindapillai <vinod.govindapillai@intel.com>
Fri, 23 Aug 2024 19:10:55 +0000 (22:10 +0300)
commit66a0f6b9f5fc205272035b6ffa4830be51e3f787
tree028f983d5b5430f753acf1ee38ac72d74895c5ca
parent122824165471ea492d8b07d15384345940aababb
drm/xe/display: handle HPD polling in display runtime suspend/resume

In XE, display runtime suspend / resume routines are called only
if d3cold is allowed. This makes the driver unable to detect any
HPDs once the device goes into runtime suspend state in platforms
like LNL. Update the display runtime suspend / resume routines
to include HPD polling regardless of d3cold status.

While xe_display_pm_suspend/resume() performs steps during runtime
suspend/resume that shouldn't happen, like suspending MST and they
are missing other steps like enabling DC9, this patchset is meant
to keep the current behavior wrt. these, leaving the corresponding
updates for a follow-up

v2: have a separate function for display runtime s/r (Rodrigo)

v3: better streamlining of system s/r and runtime s/r calls (Imre)

v4: rebased

Reviewed-by: Arun R Murthy <arun.r.murthy@intel.com>
Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240823112148.327015-4-vinod.govindapillai@intel.com
drivers/gpu/drm/xe/display/xe_display.c
drivers/gpu/drm/xe/display/xe_display.h
drivers/gpu/drm/xe/xe_pm.c