On Tue, Apr 3, 2018 at 6:53 AM, Christian König <ckoenig.leichtzumerken at gmail.com> wrote: > Am 02.04.2018 um 11:24 schrieb Huang Rui: >> >> On Thu, Mar 29, 2018 at 03:01:48PM -0500, Alex Deucher wrote: >>> >>> Allow us to determine at the soc level whether the >>> asic requires full reset or if soft reset will work. >>> >>> Signed-off-by: Alex Deucher <alexander.deucher at amd.com> >> >> Series are Reviewed-by: Huang Rui <ray.huang at amd.com> > > > Reviewed-by: Christian König <christian.koenig at amd.com> except for one line: > >> + case CHIP_FIJI: >> + case CHIP_TONGA: >> + /* XXX: soft reset should work on fiji and tonga */ >> + return true; > > Shouldn't we go ahead and enabled this? Full reset apparently works so I'd rather verify that soft reset works reliably before enabling it. Alex > > Christian. > > >> >>> --- >>> drivers/gpu/drm/amd/amdgpu/amdgpu.h | 3 +++ >>> 1 file changed, 3 insertions(+) >>> >>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h >>> b/drivers/gpu/drm/amd/amdgpu/amdgpu.h >>> index 58ffea7e43bd..2662cfc161af 100644 >>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h >>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h >>> @@ -1203,6 +1203,8 @@ struct amdgpu_asic_funcs { >>> /* invalidate hdp read cache */ >>> void (*invalidate_hdp)(struct amdgpu_device *adev, >>> struct amdgpu_ring *ring); >>> + /* check if the asic needs a full reset of if soft reset will >>> work */ >>> + bool (*need_full_reset)(struct amdgpu_device *adev); >>> }; >>> /* >>> @@ -1772,6 +1774,7 @@ amdgpu_get_sdma_instance(struct amdgpu_ring *ring) >>> #define amdgpu_asic_get_config_memsize(adev) >>> (adev)->asic_funcs->get_config_memsize((adev)) >>> #define amdgpu_asic_flush_hdp(adev, r) >>> (adev)->asic_funcs->flush_hdp((adev), (r)) >>> #define amdgpu_asic_invalidate_hdp(adev, r) >>> (adev)->asic_funcs->invalidate_hdp((adev), (r)) >>> +#define amdgpu_asic_need_full_reset(adev) >>> (adev)->asic_funcs->need_full_reset((adev)) >>> #define amdgpu_gmc_flush_gpu_tlb(adev, vmid) >>> (adev)->gmc.gmc_funcs->flush_gpu_tlb((adev), (vmid)) >>> #define amdgpu_gmc_emit_flush_gpu_tlb(r, vmid, addr) >>> (r)->adev->gmc.gmc_funcs->emit_flush_gpu_tlb((r), (vmid), (addr)) >>> #define amdgpu_gmc_emit_pasid_mapping(r, vmid, pasid) >>> (r)->adev->gmc.gmc_funcs->emit_pasid_mapping((r), (vmid), (pasid)) >>> -- >>> 2.13.6 >>> >>> _______________________________________________ >>> amd-gfx mailing list >>> amd-gfx at lists.freedesktop.org >>> https://lists.freedesktop.org/mailman/listinfo/amd-gfx >> >> _______________________________________________ >> amd-gfx mailing list >> amd-gfx at lists.freedesktop.org >> https://lists.freedesktop.org/mailman/listinfo/amd-gfx > >