[PATCH] drm/amdgpu: always reset the asic in suspend

Alex Deucher alexdeucher at gmail.com
Fri Nov 12 16:19:59 UTC 2021


Actually, ignore this for now.  This will likely cause problems with S0ix.

Alex

On Fri, Nov 12, 2021 at 11:18 AM Alex Deucher <alexander.deucher at amd.com> wrote:
>
> If the platform suspend happens to fail and the power rail
> is not turned off, the GPU will be in an unknown state on
> resume, so reset the asic so that it will be in a known
> good state on resume even if the platform suspend failed.
>
> Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
> index 1db76429a673..42af3d88e0ba 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
> @@ -2165,8 +2165,9 @@ static int amdgpu_pmops_suspend(struct device *dev)
>         adev->in_s3 = true;
>         r = amdgpu_device_suspend(drm_dev, true);
>         adev->in_s3 = false;
> -
> -       return r;
> +       if (r)
> +               return r;
> +       return amdgpu_asic_reset(adev);
>  }
>
>  static int amdgpu_pmops_resume(struct device *dev)
> --
> 2.31.1
>


More information about the amd-gfx mailing list