summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c37
1 files changed, 5 insertions, 32 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
index da6434ea07f1..40583540d855 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
@@ -62,43 +62,16 @@
#define AMDGPU_TTM_VRAM_MAX_DW_READ (size_t)128
-static int amdgpu_ttm_init_vram(struct amdgpu_device *adev)
-{
-
- struct ttm_mem_type_manager *man = &adev->mman.bdev.man[TTM_PL_VRAM];
-
- man->func = &amdgpu_vram_mgr_func;
- man->available_caching = TTM_PL_FLAG_UNCACHED | TTM_PL_FLAG_WC;
- man->default_caching = TTM_PL_FLAG_WC;
-
- return ttm_bo_init_mm(&adev->mman.bdev, TTM_PL_VRAM,
- adev->gmc.real_vram_size >> PAGE_SHIFT);
-}
-
-static int amdgpu_ttm_init_gtt(struct amdgpu_device *adev, uint64_t gtt_size)
-{
- struct ttm_mem_type_manager *man = &adev->mman.bdev.man[TTM_PL_TT];
-
- man->use_tt = true;
- man->func = &amdgpu_gtt_mgr_func;
- man->available_caching = TTM_PL_MASK_CACHING;
- man->default_caching = TTM_PL_FLAG_CACHED;
-
- return ttm_bo_init_mm(&adev->mman.bdev, TTM_PL_TT,
- gtt_size >> PAGE_SHIFT);
-}
-
static int amdgpu_ttm_init_on_chip(struct amdgpu_device *adev,
- unsigned int type,
- uint64_t size)
+ unsigned int type,
+ uint64_t size)
{
struct ttm_mem_type_manager *man = &adev->mman.bdev.man[type];
- man->func = &ttm_bo_manager_func;
man->available_caching = TTM_PL_FLAG_UNCACHED;
man->default_caching = TTM_PL_FLAG_UNCACHED;
- return ttm_bo_init_mm(&adev->mman.bdev, type, size);
+ return ttm_range_man_init(&adev->mman.bdev, man, size >> PAGE_SHIFT);
}
/**
@@ -1883,7 +1856,7 @@ int amdgpu_ttm_init(struct amdgpu_device *adev)
adev->mman.bdev.no_retry = true;
/* Initialize VRAM pool with all of VRAM divided into pages */
- r = amdgpu_ttm_init_vram(adev);
+ r = amdgpu_vram_mgr_init(adev);
if (r) {
DRM_ERROR("Failed initializing VRAM heap.\n");
return r;
@@ -1964,7 +1937,7 @@ int amdgpu_ttm_init(struct amdgpu_device *adev)
gtt_size = (uint64_t)amdgpu_gtt_size << 20;
/* Initialize GTT memory pool */
- r = amdgpu_ttm_init_gtt(adev, gtt_size);
+ r = amdgpu_gtt_mgr_init(adev, gtt_size);
if (r) {
DRM_ERROR("Failed initializing GTT heap.\n");
return r;