]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commitdiff
drm/amdgpu: add mmhub ras error reset callback for aldebaran
authorHawking Zhang <Hawking.Zhang@amd.com>
Thu, 19 Nov 2020 08:40:16 +0000 (16:40 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 24 Mar 2021 02:55:44 +0000 (22:55 -0400)
The callback will be invoked to reset mmhub ras error
counters when needed.

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

index 340ba8b5b3795e7af41b898cc440ede803e85f53..c94060ca4a10f00fe5f23962a57d541f7020da4f 100644 (file)
@@ -1231,9 +1231,21 @@ static void mmhub_v1_7_query_ras_error_count(struct amdgpu_device *adev,
        err_data->ue_count += ded_count;
 }
 
+static void mmhub_v1_7_reset_ras_error_count(struct amdgpu_device *adev)
+{
+       uint32_t i;
+
+       /* write 0 to reset the edc counters */
+       if (amdgpu_ras_is_supported(adev, AMDGPU_RAS_BLOCK__MMHUB)) {
+               for (i = 0; i < ARRAY_SIZE(mmhub_v1_7_edc_cnt_regs); i++)
+                       WREG32(SOC15_REG_ENTRY_OFFSET(mmhub_v1_7_edc_cnt_regs[i]), 0);
+       }
+}
+
 const struct amdgpu_mmhub_funcs mmhub_v1_7_funcs = {
        .ras_late_init = amdgpu_mmhub_ras_late_init,
        .query_ras_error_count = mmhub_v1_7_query_ras_error_count,
+       .reset_ras_error_count = mmhub_v1_7_reset_ras_error_count,
        .get_fb_location = mmhub_v1_7_get_fb_location,
        .init = mmhub_v1_7_init,
        .gart_enable = mmhub_v1_7_gart_enable,