drm/amdgpu/gmc10: properly set BANK_SELECT and FRAGMENT_SIZE
These were not aligned for optimal performance for GPUVM. Acked-by: Christian König <christian.koenig@amd.com> Reviewed-by: Tianci Yin <tianci.yin@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Cc: stable@vger.kernel.org
This commit is contained in:
		
							parent
							
								
									e6f4e274c1
								
							
						
					
					
						commit
						30ef5c7eab
					
				| @ -151,6 +151,15 @@ static void gfxhub_v2_0_init_cache_regs(struct amdgpu_device *adev) | ||||
| 	WREG32_SOC15(GC, 0, mmGCVM_L2_CNTL2, tmp); | ||||
| 
 | ||||
| 	tmp = mmGCVM_L2_CNTL3_DEFAULT; | ||||
| 	if (adev->gmc.translate_further) { | ||||
| 		tmp = REG_SET_FIELD(tmp, GCVM_L2_CNTL3, BANK_SELECT, 12); | ||||
| 		tmp = REG_SET_FIELD(tmp, GCVM_L2_CNTL3, | ||||
| 				    L2_CACHE_BIGK_FRAGMENT_SIZE, 9); | ||||
| 	} else { | ||||
| 		tmp = REG_SET_FIELD(tmp, GCVM_L2_CNTL3, BANK_SELECT, 9); | ||||
| 		tmp = REG_SET_FIELD(tmp, GCVM_L2_CNTL3, | ||||
| 				    L2_CACHE_BIGK_FRAGMENT_SIZE, 6); | ||||
| 	} | ||||
| 	WREG32_SOC15(GC, 0, mmGCVM_L2_CNTL3, tmp); | ||||
| 
 | ||||
| 	tmp = mmGCVM_L2_CNTL4_DEFAULT; | ||||
|  | ||||
| @ -137,6 +137,15 @@ static void mmhub_v2_0_init_cache_regs(struct amdgpu_device *adev) | ||||
| 	WREG32_SOC15(MMHUB, 0, mmMMVM_L2_CNTL2, tmp); | ||||
| 
 | ||||
| 	tmp = mmMMVM_L2_CNTL3_DEFAULT; | ||||
| 	if (adev->gmc.translate_further) { | ||||
| 		tmp = REG_SET_FIELD(tmp, MMVM_L2_CNTL3, BANK_SELECT, 12); | ||||
| 		tmp = REG_SET_FIELD(tmp, MMVM_L2_CNTL3, | ||||
| 				    L2_CACHE_BIGK_FRAGMENT_SIZE, 9); | ||||
| 	} else { | ||||
| 		tmp = REG_SET_FIELD(tmp, MMVM_L2_CNTL3, BANK_SELECT, 9); | ||||
| 		tmp = REG_SET_FIELD(tmp, MMVM_L2_CNTL3, | ||||
| 				    L2_CACHE_BIGK_FRAGMENT_SIZE, 6); | ||||
| 	} | ||||
| 	WREG32_SOC15(MMHUB, 0, mmMMVM_L2_CNTL3, tmp); | ||||
| 
 | ||||
| 	tmp = mmMMVM_L2_CNTL4_DEFAULT; | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user