drm/amdgpu: correct comment to clear up the confusion
[linux-2.6-microblaze.git] / drivers / gpu / drm / amd / amdgpu / gfx_v9_0.c
index 90f64b8..b33a4eb 100644 (file)
@@ -4374,9 +4374,17 @@ static int gfx_v9_0_ecc_late_init(void *handle)
        struct amdgpu_device *adev = (struct amdgpu_device *)handle;
        int r;
 
-       r = gfx_v9_0_do_edc_gds_workarounds(adev);
-       if (r)
-               return r;
+       /*
+        * Temp workaround to fix the issue that CP firmware fails to
+        * update read pointer when CPDMA is writing clearing operation
+        * to GDS in suspend/resume sequence on several cards. So just
+        * limit this operation in cold boot sequence.
+        */
+       if (!adev->in_suspend) {
+               r = gfx_v9_0_do_edc_gds_workarounds(adev);
+               if (r)
+                       return r;
+       }
 
        /* requires IBs so do in late init after IB pool is initialized */
        r = gfx_v9_0_do_edc_gpr_workarounds(adev);