aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
diff options
context:
space:
mode:
authorChristian König <christian.koenig@amd.com>2018-01-12 09:26:08 -0500
committerAlex Deucher <alexander.deucher@amd.com>2018-02-19 14:17:44 -0500
commit132f34e4b558488cc8d153a1d18833054a76e44c (patch)
treef3395e8c95a922f65b43d6d3185c082d2f7f039c /drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
parent770d13b19fdf365a99e559f1d47f1380910a947d (diff)
drm/amdgpu: move struct gart_funcs into amdgpu_gmc.h
And rename it to struct gmc_funcs. Signed-off-by: Christian König <christian.koenig@amd.com> Reviewed-by: Samuel Li <Samuel.Li@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
index 988ccb248b54..da634ae6ca8f 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
@@ -679,8 +679,8 @@ static void amdgpu_vm_cpu_set_ptes(struct amdgpu_pte_update_params *params,
679 value = params->pages_addr ? 679 value = params->pages_addr ?
680 amdgpu_vm_map_gart(params->pages_addr, addr) : 680 amdgpu_vm_map_gart(params->pages_addr, addr) :
681 addr; 681 addr;
682 amdgpu_gart_set_pte_pde(params->adev, (void *)(uintptr_t)pe, 682 amdgpu_gmc_set_pte_pde(params->adev, (void *)(uintptr_t)pe,
683 i, value, flags); 683 i, value, flags);
684 addr += incr; 684 addr += incr;
685 } 685 }
686} 686}
@@ -738,7 +738,7 @@ static void amdgpu_vm_update_pde(struct amdgpu_pte_update_params *params,
738 level += params->adev->vm_manager.root_level; 738 level += params->adev->vm_manager.root_level;
739 pt = amdgpu_bo_gpu_offset(bo); 739 pt = amdgpu_bo_gpu_offset(bo);
740 flags = AMDGPU_PTE_VALID; 740 flags = AMDGPU_PTE_VALID;
741 amdgpu_gart_get_vm_pde(params->adev, level, &pt, &flags); 741 amdgpu_gmc_get_vm_pde(params->adev, level, &pt, &flags);
742 if (shadow) { 742 if (shadow) {
743 pde = shadow_addr + (entry - parent->entries) * 8; 743 pde = shadow_addr + (entry - parent->entries) * 8;
744 params->func(params, pde, pt, 1, 0, flags); 744 params->func(params, pde, pt, 1, 0, flags);
@@ -967,8 +967,7 @@ static void amdgpu_vm_handle_huge_pages(struct amdgpu_pte_update_params *p,
967 } 967 }
968 968
969 entry->huge = true; 969 entry->huge = true;
970 amdgpu_gart_get_vm_pde(p->adev, AMDGPU_VM_PDB0, 970 amdgpu_gmc_get_vm_pde(p->adev, AMDGPU_VM_PDB0, &dst, &flags);
971 &dst, &flags);
972 971
973 if (p->func == amdgpu_vm_cpu_set_ptes) { 972 if (p->func == amdgpu_vm_cpu_set_ptes) {
974 pd_addr = (unsigned long)amdgpu_bo_kptr(parent->base.bo); 973 pd_addr = (unsigned long)amdgpu_bo_kptr(parent->base.bo);
@@ -1485,7 +1484,7 @@ static void amdgpu_vm_update_prt_state(struct amdgpu_device *adev)
1485 1484
1486 spin_lock_irqsave(&adev->vm_manager.prt_lock, flags); 1485 spin_lock_irqsave(&adev->vm_manager.prt_lock, flags);
1487 enable = !!atomic_read(&adev->vm_manager.num_prt_users); 1486 enable = !!atomic_read(&adev->vm_manager.num_prt_users);
1488 adev->gart.gart_funcs->set_prt(adev, enable); 1487 adev->gmc.gmc_funcs->set_prt(adev, enable);
1489 spin_unlock_irqrestore(&adev->vm_manager.prt_lock, flags); 1488 spin_unlock_irqrestore(&adev->vm_manager.prt_lock, flags);
1490} 1489}
1491 1490
@@ -1494,7 +1493,7 @@ static void amdgpu_vm_update_prt_state(struct amdgpu_device *adev)
1494 */ 1493 */
1495static void amdgpu_vm_prt_get(struct amdgpu_device *adev) 1494static void amdgpu_vm_prt_get(struct amdgpu_device *adev)
1496{ 1495{
1497 if (!adev->gart.gart_funcs->set_prt) 1496 if (!adev->gmc.gmc_funcs->set_prt)
1498 return; 1497 return;
1499 1498
1500 if (atomic_inc_return(&adev->vm_manager.num_prt_users) == 1) 1499 if (atomic_inc_return(&adev->vm_manager.num_prt_users) == 1)
@@ -1529,7 +1528,7 @@ static void amdgpu_vm_add_prt_cb(struct amdgpu_device *adev,
1529{ 1528{
1530 struct amdgpu_prt_cb *cb; 1529 struct amdgpu_prt_cb *cb;
1531 1530
1532 if (!adev->gart.gart_funcs->set_prt) 1531 if (!adev->gmc.gmc_funcs->set_prt)
1533 return; 1532 return;
1534 1533
1535 cb = kmalloc(sizeof(struct amdgpu_prt_cb), GFP_KERNEL); 1534 cb = kmalloc(sizeof(struct amdgpu_prt_cb), GFP_KERNEL);
@@ -2405,7 +2404,7 @@ static void amdgpu_vm_free_levels(struct amdgpu_device *adev,
2405void amdgpu_vm_fini(struct amdgpu_device *adev, struct amdgpu_vm *vm) 2404void amdgpu_vm_fini(struct amdgpu_device *adev, struct amdgpu_vm *vm)
2406{ 2405{
2407 struct amdgpu_bo_va_mapping *mapping, *tmp; 2406 struct amdgpu_bo_va_mapping *mapping, *tmp;
2408 bool prt_fini_needed = !!adev->gart.gart_funcs->set_prt; 2407 bool prt_fini_needed = !!adev->gmc.gmc_funcs->set_prt;
2409 struct amdgpu_bo *root; 2408 struct amdgpu_bo *root;
2410 u64 fault; 2409 u64 fault;
2411 int i, r; 2410 int i, r;