drm/amdgpu: only set DPM_FLAG_NEVER_SKIP for legacy ATPX BOCO
authorAlex Deucher <alexander.deucher@amd.com>
Thu, 7 May 2020 16:06:03 +0000 (12:06 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 8 May 2020 18:33:32 +0000 (14:33 -0400)
We only need to set DPM_FLAG_NEVER_SKIP for the legacy ATPX
BOCO case.  D3cold and BACO work as expected.

Acked-by: Evan Quan <evan.quan@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c

index df9260a..682a514 100644 (file)
@@ -189,7 +189,10 @@ int amdgpu_driver_load_kms(struct drm_device *dev, unsigned long flags)
                dev_dbg(&dev->pdev->dev, "Error during ACPI methods call\n");
 
        if (adev->runpm) {
-               dev_pm_set_driver_flags(dev->dev, DPM_FLAG_NEVER_SKIP);
+               /* only need to skip on ATPX */
+               if (amdgpu_device_supports_boco(dev) &&
+                   !amdgpu_is_atpx_hybrid())
+                       dev_pm_set_driver_flags(dev->dev, DPM_FLAG_NEVER_SKIP);
                pm_runtime_use_autosuspend(dev->dev);
                pm_runtime_set_autosuspend_delay(dev->dev, 5000);
                pm_runtime_allow(dev->dev);