drm/amdgpu: add ras_late_init and ras_fini for sdma v4
authorHawking Zhang <Hawking.Zhang@amd.com>
Wed, 8 Jan 2020 13:33:49 +0000 (21:33 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 14 Jan 2020 15:18:08 +0000 (10:18 -0500)
move ras_late_init and ras_fini to sdma_ras_funcs table

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

index 3cdf12284ef908efda695e2150b7290536e331dc..485335267d780de5b082c78a288f41f570212a2b 100644 (file)
@@ -51,6 +51,9 @@ struct amdgpu_sdma_instance {
 };
 
 struct amdgpu_sdma_ras_funcs {
+       int (*ras_late_init)(struct amdgpu_device *adev,
+                       void *ras_ih_info);
+       void (*ras_fini)(struct amdgpu_device *adev);
        int (*query_ras_error_count)(struct amdgpu_device *adev,
                        uint32_t instance, void *ras_error_status);
 };
index be5f7f61b86395c7671131d6069a9274058782e3..1e0767e88d196b93d37a7694ec6c7bd8e342ad3f 100644 (file)
@@ -1802,7 +1802,7 @@ static int sdma_v4_0_late_init(void *handle)
                .cb = sdma_v4_0_process_ras_data_cb,
        };
 
-       return amdgpu_sdma_ras_late_init(adev, &ih_info);
+       return adev->sdma.funcs->ras_late_init(adev, &ih_info);
 }
 
 static int sdma_v4_0_sw_init(void *handle)
@@ -1874,7 +1874,7 @@ static int sdma_v4_0_sw_fini(void *handle)
        struct amdgpu_device *adev = (struct amdgpu_device *)handle;
        int i;
 
-       amdgpu_sdma_ras_fini(adev);
+       adev->sdma.funcs->ras_fini(adev);
 
        for (i = 0; i < adev->sdma.num_instances; i++) {
                amdgpu_ring_fini(&adev->sdma.instance[i].ring);
@@ -2562,6 +2562,8 @@ static int sdma_v4_0_query_ras_error_count(struct amdgpu_device *adev,
 };
 
 static const struct amdgpu_sdma_ras_funcs sdma_v4_0_ras_funcs = {
+       .ras_late_init = amdgpu_sdma_ras_late_init,
+       .ras_fini = amdgpu_sdma_ras_fini,
        .query_ras_error_count = sdma_v4_0_query_ras_error_count,
 };