BACO - Bus Active, Chip Off

Everything is in place now.  Not enabled by default yet.  You
still have to specify runpm=1.

Reviewed-by: Evan Quan <evan.q...@amd.com>
Signed-off-by: Alex Deucher <alexander.deuc...@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
index 06dae1de71d0..cdb9b1caa962 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
@@ -157,10 +157,6 @@ int amdgpu_driver_load_kms(struct drm_device *dev, 
unsigned long flags)
            !pci_is_thunderbolt_attached(dev->pdev))
                flags |= AMD_IS_PX;
 
-       if ((amdgpu_runtime_pm != 0) &&
-           (flags & AMD_IS_PX))
-               adev->runpm = true;
-
        /* amdgpu_device_init should report only fatal error
         * like memory allocation failure or iomapping failure,
         * or memory manager initialization failure, it must
@@ -173,6 +169,13 @@ int amdgpu_driver_load_kms(struct drm_device *dev, 
unsigned long flags)
                goto out;
        }
 
+       if (amdgpu_device_supports_boco(dev) &&
+           (amdgpu_runtime_pm != 0)) /* enable runpm by default */
+               adev->runpm = true;
+       else if (amdgpu_device_supports_baco(dev) &&
+                (amdgpu_runtime_pm > 0)) /* enable runpm if runpm=1 */
+               adev->runpm = true;
+
        /* Call ACPI methods: require modeset init
         * but failure is not fatal
         */
-- 
2.23.0

_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to