diff options
author | Christian König <christian.koenig@amd.com> | 2016-02-01 06:20:25 -0500 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2016-02-10 14:17:22 -0500 |
commit | d71518b5aa7c9c298ffbd12ddd23297e3373a37b (patch) | |
tree | bb548c89c8f21770cdf7086fee8c1c92aea1fa64 /drivers/gpu/drm/amd/amdgpu/amdgpu.h | |
parent | a0332b56f6e03e15946fb9d8813cfe44aeeb0e6c (diff) |
drm/amdgpu: cleanup in kernel job submission
Add a job_alloc_with_ib helper and proper job submission.
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Alex Deucher <alexander.deucer@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu.h')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu.h | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h index 387a26bba65a..6cefde4aab49 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h | |||
@@ -797,14 +797,11 @@ extern struct amd_sched_backend_ops amdgpu_sched_ops; | |||
797 | 797 | ||
798 | int amdgpu_job_alloc(struct amdgpu_device *adev, unsigned num_ibs, | 798 | int amdgpu_job_alloc(struct amdgpu_device *adev, unsigned num_ibs, |
799 | struct amdgpu_job **job); | 799 | struct amdgpu_job **job); |
800 | int amdgpu_job_alloc_with_ib(struct amdgpu_device *adev, unsigned size, | ||
801 | struct amdgpu_job **job); | ||
800 | void amdgpu_job_free(struct amdgpu_job *job); | 802 | void amdgpu_job_free(struct amdgpu_job *job); |
801 | int amdgpu_sched_ib_submit_kernel_helper(struct amdgpu_device *adev, | 803 | int amdgpu_job_submit(struct amdgpu_job *job, struct amdgpu_ring *ring, |
802 | struct amdgpu_ring *ring, | 804 | void *owner, struct fence **f); |
803 | struct amdgpu_ib *ibs, | ||
804 | unsigned num_ibs, | ||
805 | int (*free_job)(struct amdgpu_job *), | ||
806 | void *owner, | ||
807 | struct fence **fence); | ||
808 | 805 | ||
809 | struct amdgpu_ring { | 806 | struct amdgpu_ring { |
810 | struct amdgpu_device *adev; | 807 | struct amdgpu_device *adev; |
@@ -987,7 +984,6 @@ int amdgpu_vm_bo_unmap(struct amdgpu_device *adev, | |||
987 | uint64_t addr); | 984 | uint64_t addr); |
988 | void amdgpu_vm_bo_rmv(struct amdgpu_device *adev, | 985 | void amdgpu_vm_bo_rmv(struct amdgpu_device *adev, |
989 | struct amdgpu_bo_va *bo_va); | 986 | struct amdgpu_bo_va *bo_va); |
990 | int amdgpu_vm_free_job(struct amdgpu_job *job); | ||
991 | 987 | ||
992 | /* | 988 | /* |
993 | * context related structures | 989 | * context related structures |
@@ -1244,7 +1240,6 @@ struct amdgpu_job { | |||
1244 | uint32_t num_ibs; | 1240 | uint32_t num_ibs; |
1245 | void *owner; | 1241 | void *owner; |
1246 | struct amdgpu_user_fence uf; | 1242 | struct amdgpu_user_fence uf; |
1247 | int (*free_job)(struct amdgpu_job *job); | ||
1248 | }; | 1243 | }; |
1249 | #define to_amdgpu_job(sched_job) \ | 1244 | #define to_amdgpu_job(sched_job) \ |
1250 | container_of((sched_job), struct amdgpu_job, base) | 1245 | container_of((sched_job), struct amdgpu_job, base) |