Introduce PME support for PME capable devices and avoid
HPD polling on runtime suspend. For PME capable devices
HPD will trigger PME which will wakeup the system. And
rest of the runtime resume call is same as before.
v2: Instead of plumbing keep_hpd and pme_capability to
the existing interfaces, a separate helper function to
set and get pme capability is added.
HPD polling is handled directly inside the
intel_hpd_poll_enable() based on the pme capability
flag
Vinod Govindapillai (5):
drm/xe/pm: initialize the device's system wakeup capabilities
drm/i915/hotplug: add helpers to track HPDs can generate PME
drm/i915/irq: conditional HPD IRQ resets based on PME capability
drm/i915/hotplug: avoid HPD polling if the device is PME capable
drm/xe/pm: handle the PME capability and runtime pm routines
.../gpu/drm/i915/display/intel_display_core.h | 2 ++
.../gpu/drm/i915/display/intel_display_irq.c | 20 ++++++++++++-------
drivers/gpu/drm/i915/display/intel_hotplug.c | 15 ++++++++++++++
drivers/gpu/drm/i915/display/intel_hotplug.h | 3 +++
drivers/gpu/drm/xe/display/xe_display.c | 10 ++++++++++
drivers/gpu/drm/xe/display/xe_display.h | 4 ++++
drivers/gpu/drm/xe/xe_pci.c | 20 ++++++++++++++++++-
7 files changed, 66 insertions(+), 8 deletions(-)
--
2.43.0