radeonsi/vcn: Implement fence_wait
Reviewed-by: Leo Liu <leo.liu@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31442>
This commit is contained in:
@@ -2644,10 +2644,10 @@ static void radeon_dec_flush(struct pipe_video_codec *decoder)
|
||||
{
|
||||
}
|
||||
|
||||
static int radeon_dec_get_decoder_fence(struct pipe_video_codec *decoder,
|
||||
struct pipe_fence_handle *fence,
|
||||
uint64_t timeout) {
|
||||
|
||||
static int radeon_dec_fence_wait(struct pipe_video_codec *decoder,
|
||||
struct pipe_fence_handle *fence,
|
||||
uint64_t timeout)
|
||||
{
|
||||
struct radeon_decoder *dec = (struct radeon_decoder *)decoder;
|
||||
|
||||
return dec->ws->fence_wait(dec->ws, fence, timeout);
|
||||
@@ -2782,7 +2782,8 @@ struct pipe_video_codec *radeon_create_decoder(struct pipe_context *context,
|
||||
dec->base.decode_bitstream = radeon_dec_decode_bitstream;
|
||||
dec->base.end_frame = radeon_dec_end_frame;
|
||||
dec->base.flush = radeon_dec_flush;
|
||||
dec->base.get_decoder_fence = radeon_dec_get_decoder_fence;
|
||||
dec->base.get_decoder_fence = radeon_dec_fence_wait;
|
||||
dec->base.fence_wait = radeon_dec_fence_wait;
|
||||
dec->base.destroy_fence = radeon_dec_destroy_fence;
|
||||
dec->base.update_decoder_target = radeon_dec_update_render_list;
|
||||
|
||||
|
||||
@@ -1713,9 +1713,9 @@ static void radeon_enc_get_feedback(struct pipe_video_codec *encoder, void *feed
|
||||
RADEON_ENC_DESTROY_VIDEO_BUFFER(fb);
|
||||
}
|
||||
|
||||
static int radeon_enc_get_feedback_fence(struct pipe_video_codec *encoder,
|
||||
struct pipe_fence_handle *fence,
|
||||
uint64_t timeout)
|
||||
static int radeon_enc_fence_wait(struct pipe_video_codec *encoder,
|
||||
struct pipe_fence_handle *fence,
|
||||
uint64_t timeout)
|
||||
{
|
||||
struct radeon_encoder *enc = (struct radeon_encoder *)encoder;
|
||||
|
||||
@@ -1759,7 +1759,8 @@ struct pipe_video_codec *radeon_create_encoder(struct pipe_context *context,
|
||||
enc->base.end_frame = radeon_enc_end_frame;
|
||||
enc->base.flush = radeon_enc_flush;
|
||||
enc->base.get_feedback = radeon_enc_get_feedback;
|
||||
enc->base.get_feedback_fence = radeon_enc_get_feedback_fence;
|
||||
enc->base.get_feedback_fence = radeon_enc_fence_wait;
|
||||
enc->base.fence_wait = radeon_enc_fence_wait;
|
||||
enc->base.destroy_fence = radeon_enc_destroy_fence;
|
||||
enc->get_buffer = get_buffer;
|
||||
enc->bits_in_shifter = 0;
|
||||
|
||||
Reference in New Issue
Block a user