On Wed, Sep 28, 2022 at 11:22 AM Graham Sider <Graham.Sider@xxxxxxx> wrote: > > Simplify the logic in amdgpu_gmc_noretry_set by getting rid of the > switch. Also set noretry=1 as default for GFX 10.3.0 and greater since > retry faults are not supported. > > Signed-off-by: Graham Sider <Graham.Sider@xxxxxxx> Acked-by: Alex Deucher <alexander.deucher@xxxxxxx> > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c | 48 +++++-------------------- > 1 file changed, 9 insertions(+), 39 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c > index aebc384531ac..34233a74248c 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c > @@ -572,45 +572,15 @@ void amdgpu_gmc_tmz_set(struct amdgpu_device *adev) > void amdgpu_gmc_noretry_set(struct amdgpu_device *adev) > { > struct amdgpu_gmc *gmc = &adev->gmc; > - > - switch (adev->ip_versions[GC_HWIP][0]) { > - case IP_VERSION(9, 0, 1): > - case IP_VERSION(9, 3, 0): > - case IP_VERSION(9, 4, 0): > - case IP_VERSION(9, 4, 1): > - case IP_VERSION(9, 4, 2): > - case IP_VERSION(10, 3, 3): > - case IP_VERSION(10, 3, 4): > - case IP_VERSION(10, 3, 5): > - case IP_VERSION(10, 3, 6): > - case IP_VERSION(10, 3, 7): > - /* > - * noretry = 0 will cause kfd page fault tests fail > - * for some ASICs, so set default to 1 for these ASICs. > - */ > - if (amdgpu_noretry == -1) > - gmc->noretry = 1; > - else > - gmc->noretry = amdgpu_noretry; > - break; > - default: > - /* Raven currently has issues with noretry > - * regardless of what we decide for other > - * asics, we should leave raven with > - * noretry = 0 until we root cause the > - * issues. > - * > - * default this to 0 for now, but we may want > - * to change this in the future for certain > - * GPUs as it can increase performance in > - * certain cases. > - */ > - if (amdgpu_noretry == -1) > - gmc->noretry = 0; > - else > - gmc->noretry = amdgpu_noretry; > - break; > - } > + uint32_t gc_ver = adev->ip_versions[GC_HWIP][0]; > + bool noretry_default = (gc_ver == IP_VERSION(9, 0, 1) || > + gc_ver == IP_VERSION(9, 3, 0) || > + gc_ver == IP_VERSION(9, 4, 0) || > + gc_ver == IP_VERSION(9, 4, 1) || > + gc_ver == IP_VERSION(9, 4, 2) || > + gc_ver >= IP_VERSION(10, 3, 0)); > + > + gmc->noretry = (amdgpu_noretry == -1) ? noretry_default : amdgpu_noretry; > } > > void amdgpu_gmc_set_vm_fault_masks(struct amdgpu_device *adev, int hub_type, > -- > 2.25.1 >