Make the special d3cold paths completely separate from the rest of the
runtime pm calls.

The intel_dmc_wl_flush_release_work() call right after
xe_display_pm_suspend_late() might be completely redundant, but this
avoids any functional changes.

Signed-off-by: Jani Nikula <[email protected]>
---
 drivers/gpu/drm/xe/display/xe_display.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/xe/display/xe_display.c 
b/drivers/gpu/drm/xe/display/xe_display.c
index b153bf9c83d8..0fadc62e1cdd 100644
--- a/drivers/gpu/drm/xe/display/xe_display.c
+++ b/drivers/gpu/drm/xe/display/xe_display.c
@@ -373,8 +373,11 @@ void xe_display_pm_runtime_suspend_late(struct xe_device 
*xe)
        if (!xe->info.probe_display)
                return;
 
-       if (xe->d3cold.allowed)
+       if (xe->d3cold.allowed) {
                xe_display_pm_suspend_late(xe);
+               intel_dmc_wl_flush_release_work(display);
+               return;
+       }
 
        /*
         * If xe_display_pm_suspend_late() is not called, it is likely
-- 
2.47.3

Reply via email to