drm/amdgpu: init/fini hdp v4_0 ras
authorHawking Zhang <Hawking.Zhang@amd.com>
Wed, 28 Apr 2021 14:20:00 +0000 (22:20 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 10 May 2021 22:06:43 +0000 (18:06 -0400)
invoke hdp v4_0 ras init in gmc late_init phase
while ras fini in gmc sw_fini phase

Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com>
Reviewed-by: John Clements <John.Clements@amd.com>
Reviewed-by: Dennis Li <Dennis.Li@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c

index dfa67c2255f2cf4846b161585df9a0f0dbd7f995..697ab26c94346f3dcc33a08f3b6d1affab936d95 100644 (file)
@@ -455,6 +455,13 @@ int amdgpu_gmc_ras_late_init(struct amdgpu_device *adev)
                        return r;
        }
 
+       if (adev->hdp.ras_funcs &&
+           adev->hdp.ras_funcs->ras_late_init) {
+               r = adev->hdp.ras_funcs->ras_late_init(adev);
+               if (r)
+                       return r;
+       }
+
        return 0;
 }
 
@@ -471,6 +478,10 @@ void amdgpu_gmc_ras_fini(struct amdgpu_device *adev)
        if (adev->gmc.xgmi.ras_funcs &&
            adev->gmc.xgmi.ras_funcs->ras_fini)
                adev->gmc.xgmi.ras_funcs->ras_fini(adev);
+
+       if (adev->hdp.ras_funcs &&
+           adev->hdp.ras_funcs->ras_fini)
+               adev->hdp.ras_funcs->ras_fini(adev);
 }
 
        /*