dGPUs that will be using BACO or BOCO shouldn't be put into S3
when the system is being put into s2idle.

Cc: Peter Kopec <peko...@redhat.com>
Signed-off-by: Mario Limonciello <mario.limoncie...@amd.com>
---
v1->v2:
 * Whitespace
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c
index 25e902077caf..711f2a1bf525 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c
@@ -1038,8 +1038,12 @@ void amdgpu_acpi_detect(void)
  */
 bool amdgpu_acpi_is_s3_active(struct amdgpu_device *adev)
 {
-       return !(adev->flags & AMD_IS_APU) ||
-               (pm_suspend_target_state == PM_SUSPEND_MEM);
+       if (pm_suspend_target_state == PM_SUSPEND_MEM)
+               return true;
+       if (adev->flags & AMD_IS_APU)
+               return false;
+       return !amdgpu_device_supports_baco(&adev->ddev) &&
+               !amdgpu_device_supports_boco(&adev->ddev);
 }
 
 /**
-- 
2.34.1

Reply via email to