diff options
author | Christian König <christian.koenig@amd.com> | 2016-10-12 08:46:26 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2017-03-29 23:55:24 -0400 |
commit | 67003a15b736988bcb0c5f871be353d702a862ba (patch) | |
tree | 4e5bd94dd90fafc737feca291ef9f316f41bd65c /drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h | |
parent | 8437a097fe604c81a0fda71017837d0f7e7df8b0 (diff) |
drm/amdgpu: generalize page table level
No functional change, but the base for multi level page tables.
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h index e56df942af8e..6c8380d89148 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h | |||
@@ -79,6 +79,10 @@ struct amdgpu_bo_list_entry; | |||
79 | struct amdgpu_vm_pt { | 79 | struct amdgpu_vm_pt { |
80 | struct amdgpu_bo *bo; | 80 | struct amdgpu_bo *bo; |
81 | uint64_t addr; | 81 | uint64_t addr; |
82 | |||
83 | /* array of page tables, one for each directory entry */ | ||
84 | struct amdgpu_vm_pt *entries; | ||
85 | unsigned last_entry_used; | ||
82 | }; | 86 | }; |
83 | 87 | ||
84 | struct amdgpu_vm { | 88 | struct amdgpu_vm { |
@@ -98,14 +102,10 @@ struct amdgpu_vm { | |||
98 | struct list_head freed; | 102 | struct list_head freed; |
99 | 103 | ||
100 | /* contains the page directory */ | 104 | /* contains the page directory */ |
101 | struct amdgpu_bo *page_directory; | 105 | struct amdgpu_vm_pt root; |
102 | unsigned max_pde_used; | ||
103 | struct dma_fence *last_dir_update; | 106 | struct dma_fence *last_dir_update; |
104 | uint64_t last_eviction_counter; | 107 | uint64_t last_eviction_counter; |
105 | 108 | ||
106 | /* array of page tables, one for each page directory entry */ | ||
107 | struct amdgpu_vm_pt *page_tables; | ||
108 | |||
109 | /* for id and flush management per ring */ | 109 | /* for id and flush management per ring */ |
110 | struct amdgpu_vm_id *ids[AMDGPU_MAX_RINGS]; | 110 | struct amdgpu_vm_id *ids[AMDGPU_MAX_RINGS]; |
111 | 111 | ||