On Mon, Oct 22, 2018 at 5:20 PM Andrey Grodzovsky <andrey.grodzovsky@xxxxxxx> wrote: > > After testing looks like this subset of ASICs has GPU reset > working for the most part. Enable reset due to job timeout. > > Signed-off-by: Andrey Grodzovsky <andrey.grodzovsky@xxxxxxx> > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 24 +++++++++++++++++++----- > 1 file changed, 19 insertions(+), 5 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > index d11489e..75308d2 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > @@ -3292,18 +3292,32 @@ static int amdgpu_device_reset_sriov(struct amdgpu_device *adev, > */ > bool amdgpu_device_should_recover_gpu(struct amdgpu_device *adev) > { > + struct amdgpu_ip_block *ip_block; > + > if (!amdgpu_device_ip_check_soft_reset(adev)) { > DRM_INFO("Timeout, but no hardware hang detected.\n"); > return false; > } > > - if (amdgpu_gpu_recovery == 0 || (amdgpu_gpu_recovery == -1 && > - !amdgpu_sriov_vf(adev))) { > - DRM_INFO("GPU recovery disabled.\n"); > - return false; > - } > + if (amdgpu_gpu_recovery == 0) > + goto disabled; > + > + if (amdgpu_sriov_vf(adev)) > + return true; > + > + ip_block = amdgpu_device_ip_get_ip_block(adev, AMD_IP_BLOCK_TYPE_GFX); > + > + if (amdgpu_gpu_recovery == -1 && > + ((adev->flags & AMD_IS_APU) || > + ip_block->version->major < 8 || > + ip_block->version->major > 9)) > + goto disabled; I would prefer to tie this to asic_type rather than gfx version. E.g., switch (adev->asic_type) { case CHIP_TOPAZ: case CHIP_TONGA: case CHIP_FIJI: case CHIP_POLARIS10: case CHIP_POLARIS11: case CHIP_POLARIS12: case CHIP_VEGAM: case CHIP_VEGA20: case CHIP_VEGA10: case CHIP_VEGA12: break; default: goto disabled; } Alex > > return true; > + > +disabled: > + DRM_INFO("GPU recovery disabled.\n"); > + return false; > } > > /** > -- > 2.7.4 > > _______________________________________________ > 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