The series is to add gpu soft reset: Check gpu status first, if MC/VMC/DISPLAY hang, directly triger full reset. If engine hangs, then triger engine soft reset, if soft reset fails, will fallback to full reset. tests: gfx and sdma engines are tested successfully by soft reset on Fiji. Chunming Zhou (14): drm/amdgpu: add check_soft_reset ip func drm/amdgpu: implement gfx8 check_soft_reset drm/amdgpu: add pre_soft_reset ip func drm/amdgpu: add gfx8 pre soft reset drm/amdgpu: add amdgpu soft reset drm/amdgpu: add post soft reset ip func drm/amdgpu: implement gfx8 post_soft_reset drm/amdgpu: implement sdma3 check/pre/post_soft_reset drm/amdgpu: soft reset at a time drm/amdgpu: implement gmc8 check/pre/post_soft_reset drm/amdgpu: implement vi ih check_soft_reset drm/amdgpu: implement UVD6 check/pre/post_soft_reset drm/amdgpu: implement vce3 check/post_soft_reset drm/amdgpu: add some print for soft reset drivers/gpu/drm/amd/amdgpu/amdgpu.h | 4 + drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 91 ++++++++++++ drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 225 ++++++++++++++++++++++------- drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c | 57 +++++--- drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c | 82 +++++++++-- drivers/gpu/drm/amd/amdgpu/tonga_ih.c | 28 ++-- drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c | 41 +++++- drivers/gpu/drm/amd/amdgpu/vce_v3_0.c | 71 ++++++++- drivers/gpu/drm/amd/amdgpu/vi.c | 61 ++++++++ drivers/gpu/drm/amd/include/amd_shared.h | 6 + 10 files changed, 558 insertions(+), 108 deletions(-) -- 1.9.1