On runtime suspend (regardless of d3cold), there's no need to perform the display power sequences before we disable the GT and IRQ.
In a matter of fact, the i915 runtime suspend needs to disable power, which asserts that IRQs are disabled. So, before the runtime_pm sequences can be reconciled, it is needed to ensure that the Xe's IRQ are disabled before the display. Reviewed-by: Jonathan Cavitt <jonathan.cav...@intel.com> Signed-off-by: Rodrigo Vivi <rodrigo.v...@intel.com> --- drivers/gpu/drm/xe/xe_pm.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/gpu/drm/xe/xe_pm.c b/drivers/gpu/drm/xe/xe_pm.c index 12200be7b43d..58a62ee0cfaf 100644 --- a/drivers/gpu/drm/xe/xe_pm.c +++ b/drivers/gpu/drm/xe/xe_pm.c @@ -413,8 +413,6 @@ int xe_pm_runtime_suspend(struct xe_device *xe) xe_bo_runtime_pm_release_mmap_offset(bo); mutex_unlock(&xe->mem_access.vram_userfault.lock); - xe_display_pm_runtime_suspend(xe); - if (xe->d3cold.allowed) { err = xe_bo_evict_all(xe); if (err) @@ -429,6 +427,7 @@ int xe_pm_runtime_suspend(struct xe_device *xe) xe_irq_suspend(xe); + xe_display_pm_runtime_suspend(xe); xe_display_pm_runtime_suspend_late(xe); xe_rpm_lockmap_release(xe); -- 2.48.1