diff options
author | Oded Gabbay <oded.gabbay@amd.com> | 2014-10-26 03:53:10 -0400 |
---|---|---|
committer | Oded Gabbay <oded.gabbay@amd.com> | 2015-01-09 15:26:08 -0500 |
commit | 36b5c08f099a7b4d72a08784ab3efff592de2463 (patch) | |
tree | 7d5a4b35beca46b7534b2fcdaef6133cc7f1714d /drivers/gpu/drm/amd/amdkfd/kfd_priv.h | |
parent | ceae881bfa4906db895f2e30872e737a49246830 (diff) |
drm/amdkfd: Add gtt sa related data to kfd_dev struct
This patch adds new fields to kfd_dev struct that are necessary for the new kfd
gtt sa module
Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
Reviewed-by: Alexey Skidanov <Alexey.skidanov@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdkfd/kfd_priv.h')
-rw-r--r-- | drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h index 87735d8df8e2..2be9405bea1d 100644 --- a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h +++ b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h | |||
@@ -111,6 +111,13 @@ struct kfd_device_info { | |||
111 | uint16_t mqd_size_aligned; | 111 | uint16_t mqd_size_aligned; |
112 | }; | 112 | }; |
113 | 113 | ||
114 | struct kfd_mem_obj { | ||
115 | uint32_t range_start; | ||
116 | uint32_t range_end; | ||
117 | uint64_t gpu_addr; | ||
118 | uint32_t *cpu_ptr; | ||
119 | }; | ||
120 | |||
114 | struct kfd_dev { | 121 | struct kfd_dev { |
115 | struct kgd_dev *kgd; | 122 | struct kgd_dev *kgd; |
116 | 123 | ||
@@ -136,6 +143,14 @@ struct kfd_dev { | |||
136 | 143 | ||
137 | struct kgd2kfd_shared_resources shared_resources; | 144 | struct kgd2kfd_shared_resources shared_resources; |
138 | 145 | ||
146 | void *gtt_mem; | ||
147 | uint64_t gtt_start_gpu_addr; | ||
148 | void *gtt_start_cpu_ptr; | ||
149 | void *gtt_sa_bitmap; | ||
150 | struct mutex gtt_sa_lock; | ||
151 | unsigned int gtt_sa_chunk_size; | ||
152 | unsigned int gtt_sa_num_of_chunks; | ||
153 | |||
139 | void *interrupt_ring; | 154 | void *interrupt_ring; |
140 | size_t interrupt_ring_size; | 155 | size_t interrupt_ring_size; |
141 | atomic_t interrupt_ring_rptr; | 156 | atomic_t interrupt_ring_rptr; |
@@ -163,12 +178,6 @@ void kgd2kfd_device_exit(struct kfd_dev *kfd); | |||
163 | 178 | ||
164 | extern const struct kfd2kgd_calls *kfd2kgd; | 179 | extern const struct kfd2kgd_calls *kfd2kgd; |
165 | 180 | ||
166 | struct kfd_mem_obj { | ||
167 | void *bo; | ||
168 | uint64_t gpu_addr; | ||
169 | uint32_t *cpu_ptr; | ||
170 | }; | ||
171 | |||
172 | enum kfd_mempool { | 181 | enum kfd_mempool { |
173 | KFD_MEMPOOL_SYSTEM_CACHEABLE = 1, | 182 | KFD_MEMPOOL_SYSTEM_CACHEABLE = 1, |
174 | KFD_MEMPOOL_SYSTEM_WRITECOMBINE = 2, | 183 | KFD_MEMPOOL_SYSTEM_WRITECOMBINE = 2, |