diff options
author | Monk Liu <monk.liu@amd.com> | 2016-01-14 06:07:38 -0500 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2016-05-02 15:11:09 -0400 |
commit | 03ccf481980f8d3363263e73c64473d8f2779dc0 (patch) | |
tree | df0cad433591814429cc700ad4a013d51bdaec53 /drivers/gpu/drm/amd/amdgpu/amdgpu.h | |
parent | 128cff1af68689cf4d85d3ba948c86a194dee30f (diff) |
drm/amdgpu: patch cond exec for SDMA
More ground work for conditional execution on SDMA
necessary for preemption.
Signed-off-by: Monk Liu <monk.liu@amd.com>
Reviewed-by: Christian König <christian.koenig@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 | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h index 49adb451c3bc..412fc2f39fa5 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h | |||
@@ -302,6 +302,8 @@ struct amdgpu_ring_funcs { | |||
302 | void (*insert_nop)(struct amdgpu_ring *ring, uint32_t count); | 302 | void (*insert_nop)(struct amdgpu_ring *ring, uint32_t count); |
303 | /* pad the indirect buffer to the necessary number of dw */ | 303 | /* pad the indirect buffer to the necessary number of dw */ |
304 | void (*pad_ib)(struct amdgpu_ring *ring, struct amdgpu_ib *ib); | 304 | void (*pad_ib)(struct amdgpu_ring *ring, struct amdgpu_ib *ib); |
305 | unsigned (*init_cond_exec)(struct amdgpu_ring *ring); | ||
306 | void (*patch_cond_exec)(struct amdgpu_ring *ring, unsigned offset); | ||
305 | }; | 307 | }; |
306 | 308 | ||
307 | /* | 309 | /* |
@@ -2182,6 +2184,8 @@ amdgpu_get_sdma_instance(struct amdgpu_ring *ring) | |||
2182 | #define amdgpu_ring_emit_hdp_flush(r) (r)->funcs->emit_hdp_flush((r)) | 2184 | #define amdgpu_ring_emit_hdp_flush(r) (r)->funcs->emit_hdp_flush((r)) |
2183 | #define amdgpu_ring_emit_hdp_invalidate(r) (r)->funcs->emit_hdp_invalidate((r)) | 2185 | #define amdgpu_ring_emit_hdp_invalidate(r) (r)->funcs->emit_hdp_invalidate((r)) |
2184 | #define amdgpu_ring_pad_ib(r, ib) ((r)->funcs->pad_ib((r), (ib))) | 2186 | #define amdgpu_ring_pad_ib(r, ib) ((r)->funcs->pad_ib((r), (ib))) |
2187 | #define amdgpu_ring_init_cond_exec(r) (r)->funcs->init_cond_exec((r)) | ||
2188 | #define amdgpu_ring_patch_cond_exec(r,o) (r)->funcs->patch_cond_exec((r),(o)) | ||
2185 | #define amdgpu_ih_get_wptr(adev) (adev)->irq.ih_funcs->get_wptr((adev)) | 2189 | #define amdgpu_ih_get_wptr(adev) (adev)->irq.ih_funcs->get_wptr((adev)) |
2186 | #define amdgpu_ih_decode_iv(adev, iv) (adev)->irq.ih_funcs->decode_iv((adev), (iv)) | 2190 | #define amdgpu_ih_decode_iv(adev, iv) (adev)->irq.ih_funcs->decode_iv((adev), (iv)) |
2187 | #define amdgpu_ih_set_rptr(adev) (adev)->irq.ih_funcs->set_rptr((adev)) | 2191 | #define amdgpu_ih_set_rptr(adev) (adev)->irq.ih_funcs->set_rptr((adev)) |