• Louis Li's avatar
    drm/amdgpu: fix ring test failure issue during s3 in vce 3.0 (V2) · ce0e22f5
    Louis Li authored
    [What]
    vce ring test fails consistently during resume in s3 cycle, due to
    mismatch read & write pointers.
    On debug/analysis its found that rptr to be compared is not being
    correctly updated/read, which leads to this failure.
    Below is the failure signature:
    	[drm:amdgpu_vce_ring_test_ring] *ERROR* amdgpu: ring 12 test failed
    	[drm:amdgpu_device_ip_resume_phase2] *ERROR* resume of IP block <vce_v3_0> failed -110
    	[drm:amdgpu_device_resume] *ERROR* amdgpu_device_ip_resume failed (-110).
    
    [How]
    fetch rptr appropriately, meaning move its read location further down
    in the code flow.
    With this patch applied the s3 failure is no more seen for >5k s3 cycles,
    which otherwise is pretty consistent.
    
    V2: remove reduntant fetch of rptr
    Signed-off-by: default avatarLouis Li <Ching-shih.Li@amd.com>
    Reviewed-by: default avatarChristian König <christian.koenig@amd.com>
    Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    Cc: stable@vger.kernel.org
    ce0e22f5
amdgpu_vce.c 27.2 KB