We need to handle the runpm case as well as GPU reset.

Signed-off-by: Alex Deucher <[email protected]>
---
 drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c 
b/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c
index 3b3ec5666051..08b6ba39a6d7 100644
--- a/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c
+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c
@@ -487,15 +487,16 @@ static int vega20_setup_asic_task(struct pp_hwmgr *hwmgr)
 {
        struct amdgpu_device *adev = (struct amdgpu_device *)(hwmgr->adev);
        int ret = 0;
+       bool use_baco = (adev->in_gpu_reset &&
+                        (amdgpu_asic_reset_method(adev) == 
AMD_RESET_METHOD_BACO)) ||
+               (adev->in_runpm && amdgpu_asic_supports_baco(adev));
 
        ret = vega20_init_sclk_threshold(hwmgr);
        PP_ASSERT_WITH_CODE(!ret,
                        "Failed to init sclk threshold!",
                        return ret);
 
-       if (adev->in_gpu_reset &&
-           (amdgpu_asic_reset_method(adev) == AMD_RESET_METHOD_BACO)) {
-
+       if (use_baco) {
                ret = vega20_baco_apply_vdci_flush_workaround(hwmgr);
                if (ret)
                        pr_err("Failed to apply vega20 baco workaround!\n");
-- 
2.24.1

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to