aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu.h')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu.h19
1 files changed, 7 insertions, 12 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
index d4c1eb7816f0..2a009c398dcb 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
@@ -368,13 +368,6 @@ struct amdgpu_fence_driver {
368#define AMDGPU_FENCE_FLAG_64BIT (1 << 0) 368#define AMDGPU_FENCE_FLAG_64BIT (1 << 0)
369#define AMDGPU_FENCE_FLAG_INT (1 << 1) 369#define AMDGPU_FENCE_FLAG_INT (1 << 1)
370 370
371struct amdgpu_user_fence {
372 /* write-back bo */
373 struct amdgpu_bo *bo;
374 /* write-back address offset to bo start */
375 uint32_t offset;
376};
377
378int amdgpu_fence_driver_init(struct amdgpu_device *adev); 371int amdgpu_fence_driver_init(struct amdgpu_device *adev);
379void amdgpu_fence_driver_fini(struct amdgpu_device *adev); 372void amdgpu_fence_driver_fini(struct amdgpu_device *adev);
380void amdgpu_fence_driver_force_completion(struct amdgpu_device *adev); 373void amdgpu_fence_driver_force_completion(struct amdgpu_device *adev);
@@ -741,10 +734,7 @@ struct amdgpu_ib {
741 uint32_t length_dw; 734 uint32_t length_dw;
742 uint64_t gpu_addr; 735 uint64_t gpu_addr;
743 uint32_t *ptr; 736 uint32_t *ptr;
744 struct amdgpu_user_fence *user;
745 uint32_t flags; 737 uint32_t flags;
746 /* resulting sequence number */
747 uint64_t sequence;
748}; 738};
749 739
750enum amdgpu_ring_type { 740enum amdgpu_ring_type {
@@ -1219,7 +1209,7 @@ void amdgpu_ring_fini(struct amdgpu_ring *ring);
1219struct amdgpu_cs_chunk { 1209struct amdgpu_cs_chunk {
1220 uint32_t chunk_id; 1210 uint32_t chunk_id;
1221 uint32_t length_dw; 1211 uint32_t length_dw;
1222 uint32_t *kdata; 1212 void *kdata;
1223}; 1213};
1224 1214
1225struct amdgpu_cs_parser { 1215struct amdgpu_cs_parser {
@@ -1263,7 +1253,12 @@ struct amdgpu_job {
1263 uint32_t gds_base, gds_size; 1253 uint32_t gds_base, gds_size;
1264 uint32_t gws_base, gws_size; 1254 uint32_t gws_base, gws_size;
1265 uint32_t oa_base, oa_size; 1255 uint32_t oa_base, oa_size;
1266 struct amdgpu_user_fence uf; 1256
1257 /* user fence handling */
1258 struct amdgpu_bo *uf_bo;
1259 uint32_t uf_offset;
1260 uint64_t uf_sequence;
1261
1267}; 1262};
1268#define to_amdgpu_job(sched_job) \ 1263#define to_amdgpu_job(sched_job) \
1269 container_of((sched_job), struct amdgpu_job, base) 1264 container_of((sched_job), struct amdgpu_job, base)