RE: [PATCH] drm/amdgpu/psp: move psp version specific function pointers to early_init

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Reviewed-by: Amber Lin <Amber.Lin@xxxxxxx>

-----Original Message-----
From: amd-gfx <amd-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf Of Christian König
Sent: Thursday, May 9, 2019 10:25 AM
To: Alex Deucher <alexdeucher@xxxxxxxxx>; amd-gfx@xxxxxxxxxxxxxxxxxxxxx
Cc: Deucher, Alexander <Alexander.Deucher@xxxxxxx>
Subject: Re: [PATCH] drm/amdgpu/psp: move psp version specific function pointers to early_init

Am 09.05.19 um 16:23 schrieb Alex Deucher:
> In case we need to use them for GPU reset prior initializing the asic.  
> Fixes a crash if the driver attempts to reset the GPU at driver load 
> time.
>
> Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>

Acked-by: Christian König <christian.koenig@xxxxxxx>

> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 19 ++++++++++---------
>   1 file changed, 10 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c 
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
> index 905cce1814f3..05897b05766b 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
> @@ -38,18 +38,10 @@ static void psp_set_funcs(struct amdgpu_device *adev);
>   static int psp_early_init(void *handle)
>   {
>       struct amdgpu_device *adev = (struct amdgpu_device *)handle;
> +     struct psp_context *psp = &adev->psp;
>
>       psp_set_funcs(adev);
>
> -     return 0;
> -}
> -
> -static int psp_sw_init(void *handle)
> -{
> -     struct amdgpu_device *adev = (struct amdgpu_device *)handle;
> -     struct psp_context *psp = &adev->psp;
> -     int ret;
> -
>       switch (adev->asic_type) {
>       case CHIP_VEGA10:
>       case CHIP_VEGA12:
> @@ -67,6 +59,15 @@ static int psp_sw_init(void *handle)
>
>       psp->adev = adev;
>
> +     return 0;
> +}
> +
> +static int psp_sw_init(void *handle)
> +{
> +     struct amdgpu_device *adev = (struct amdgpu_device *)handle;
> +     struct psp_context *psp = &adev->psp;
> +     int ret;
> +
>       ret = psp_init_microcode(psp);
>       if (ret) {
>               DRM_ERROR("Failed to load psp firmware!\n");

_______________________________________________
amd-gfx mailing list
amd-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
_______________________________________________
amd-gfx mailing list
amd-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/amd-gfx




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux