diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c | 48 | 
1 files 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, |