aboutsummaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c
diff options
context:
space:
mode:
authorAlex Deucher <[email protected]>2017-08-21 11:58:25 -0400
committerAlex Deucher <[email protected]>2017-08-24 11:48:41 -0400
commitdb63042b332ae048ca640b3d1aed508973c40c8c (patch)
treeef9233923f28ae1b69a34eec64fec82fbde5cd9c /drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c
parent871594e78ca1f9a3b3b89a0acc7d8c1330b83779 (diff)
drm/amdgpu: add automatic per asic settings for gart_size
We need a larger gart for asics that do not support GPUVM on all engines (e.g., MM) to make sure we have enough space for all gtt buffers in physical mode. Change the default size based on the asic type. Reviewed-by: Christian König <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c
index 94c1e2e8e34c..b9b9f680fc08 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c
@@ -65,7 +65,21 @@
*/
void amdgpu_gart_set_defaults(struct amdgpu_device *adev)
{
- adev->mc.gart_size = (uint64_t)amdgpu_gart_size << 20;
+ u64 gart_size;
+
+ if (amdgpu_gart_size == -1) {
+ /* make the GART larger for chips that
+ * dont' support VM for all rings
+ */
+ if (adev->asic_type <= CHIP_STONEY)
+ gart_size = 1024;
+ else
+ gart_size = 256;
+ } else {
+ gart_size = amdgpu_gart_size;
+ }
+
+ adev->mc.gart_size = gart_size << 20;
}
/**