[PATCH] drm/amdgpu: Fix RLC safe mode test in gfx_v9_0_enter_rlc_safe_mode
Zhang, Jerry (Junwei)
Jerry.Zhang at amd.com
Mon Jul 23 06:33:12 UTC 2018
On 07/21/2018 12:33 AM, Michel Dänzer wrote:
> From: Michel Dänzer <michel.daenzer at amd.com>
>
> We were testing the register offset, instead of the value stored in the
> register, therefore always timing out the loop.
>
> This reduces suspend time of the system in the bug report below by ~600
> ms.
>
> Bugzilla: https://bugs.freedesktop.org/107277
> Tested-by: Paul Menzel <pmenzel at molgen.mpg.de>
> Signed-off-by: Michel Dänzer <michel.daenzer at amd.com>
Good catch.
Reviewed-by: Junwei Zhang <Jerry.Zhang at amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
> index 9ab39117cc4e..ef00d14f8645 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
> @@ -3490,7 +3490,7 @@ static void gfx_v9_0_enter_rlc_safe_mode(struct amdgpu_device *adev)
>
> /* wait for RLC_SAFE_MODE */
> for (i = 0; i < adev->usec_timeout; i++) {
> - if (!REG_GET_FIELD(SOC15_REG_OFFSET(GC, 0, mmRLC_SAFE_MODE), RLC_SAFE_MODE, CMD))
> + if (!REG_GET_FIELD(RREG32_SOC15(GC, 0, mmRLC_SAFE_MODE), RLC_SAFE_MODE, CMD))
> break;
> udelay(1);
> }
>
More information about the amd-gfx
mailing list