blob: c4808a6d952a4082072c630fc8f2504ac900b2ce (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
From 6f321c19067a90d54596b638262f113110c88646 Mon Sep 17 00:00:00 2001
From: ozeng <oak.zeng@amd.com>
Date: Thu, 4 May 2017 15:55:52 -0500
Subject: [PATCH 1705/4131] drm/amdgpu: Support importation of DGMA dma buffer
Currently only VRAM and GTT domain buffer importation are supported.
This adds support of DGMA domain buffer importation.
Change-Id: I02712dcd9bda171681f84c0a31b60c755601eb58
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com>
Reviewed-by: Junwei Zhang <Jerry.Zhang@amd.com>
---
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
index 2e03bef..ef97cd6 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
@@ -1802,7 +1802,8 @@ int amdgpu_amdkfd_gpuvm_import_dmabuf(struct kgd_dev *kgd,
bo = gem_to_amdgpu_bo(obj);
if (!(bo->prefered_domains & (AMDGPU_GEM_DOMAIN_VRAM |
- AMDGPU_GEM_DOMAIN_GTT)))
+ AMDGPU_GEM_DOMAIN_GTT |
+ AMDGPU_GEM_DOMAIN_DGMA)))
/* Only VRAM and GTT BOs are supported */
return -EINVAL;
@@ -1824,8 +1825,12 @@ int amdgpu_amdkfd_gpuvm_import_dmabuf(struct kgd_dev *kgd,
(*mem)->bo = amdgpu_bo_ref(bo);
(*mem)->va = va;
- (*mem)->domain = (bo->prefered_domains & AMDGPU_GEM_DOMAIN_VRAM) ?
- AMDGPU_GEM_DOMAIN_VRAM : AMDGPU_GEM_DOMAIN_GTT;
+ if (bo->prefered_domains & AMDGPU_GEM_DOMAIN_VRAM)
+ (*mem)->domain = AMDGPU_GEM_DOMAIN_VRAM;
+ else if (bo->prefered_domains & AMDGPU_GEM_DOMAIN_GTT)
+ (*mem)->domain = AMDGPU_GEM_DOMAIN_GTT;
+ else
+ (*mem)->domain = AMDGPU_GEM_DOMAIN_DGMA;
(*mem)->mapped_to_gpu_memory = 0;
(*mem)->process_info = kfd_vm->process_info;
add_kgd_mem_to_kfd_bo_list(*mem, kfd_vm->process_info, false);
--
2.7.4
|