[PATCH 3/4] drm/amdgpu: add ras_late_init and ras_fini for sdma v4

Alex Deucher alexdeucher at gmail.com
Wed Jan 8 16:26:44 UTC 2020


On Wed, Jan 8, 2020 at 11:18 AM Hawking Zhang <Hawking.Zhang at amd.com> wrote:
>
> move ras_late_init and ras_fini to sdma_ras_funcs table
>
> Change-Id: If3a6c0defde4d23f81d2ff7ff79daa98a732efde
> Signed-off-by: Hawking Zhang <Hawking.Zhang at amd.com>

Reviewed-by: Alex Deucher <alexander.deucher at amd.com>

> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.h | 3 +++
>  drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c   | 6 ++++--
>  2 files changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.h
> index 9e87a97f81fb..ee0ca996da0d 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.h
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.h
> @@ -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);
>  };
> diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c b/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c
> index a00b85934b04..fd20594b6d6e 100644
> --- a/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c
> @@ -1803,7 +1803,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)
> @@ -1875,7 +1875,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);
> @@ -2565,6 +2565,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,
>  };
>
> --
> 2.17.1
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx


More information about the amd-gfx mailing list