Mesa (main): radeon/vcn: skip create and destroy message for jpeg
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Wed Apr 27 18:01:07 UTC 2022
Module: Mesa
Branch: main
Commit: f17d3a125126dd7e0f1c2072545976cec1eeb1c8
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f17d3a125126dd7e0f1c2072545976cec1eeb1c8
Author: Sathishkumar S <sathishkumar.sundararaju at amd.com>
Date: Wed Apr 20 16:23:06 2022 +0530
radeon/vcn: skip create and destroy message for jpeg
JPEG does not require create and destroy codec messages.
It is not firmware based, so these messages are redundant.
Signed-off-by: Sathishkumar S <sathishkumar.sundararaju at amd.com>
Reviewed-by: Leo Liu <leo.liu at amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16160>
---
src/gallium/drivers/radeonsi/radeon_vcn_dec.c | 25 ++++++++++++++-----------
1 file changed, 14 insertions(+), 11 deletions(-)
diff --git a/src/gallium/drivers/radeonsi/radeon_vcn_dec.c b/src/gallium/drivers/radeonsi/radeon_vcn_dec.c
index fb3b90dc220..c42f6da660d 100755
--- a/src/gallium/drivers/radeonsi/radeon_vcn_dec.c
+++ b/src/gallium/drivers/radeonsi/radeon_vcn_dec.c
@@ -2276,11 +2276,12 @@ static void radeon_dec_destroy(struct pipe_video_codec *decoder)
assert(decoder);
- map_msg_fb_it_probs_buf(dec);
- rvcn_dec_message_destroy(dec);
- send_msg_buf(dec);
-
- flush(dec, 0);
+ if (dec->stream_type != RDECODE_CODEC_JPEG) {
+ map_msg_fb_it_probs_buf(dec);
+ rvcn_dec_message_destroy(dec);
+ send_msg_buf(dec);
+ flush(dec, 0);
+ }
dec->ws->cs_destroy(&dec->cs);
@@ -2638,12 +2639,14 @@ struct pipe_video_codec *radeon_create_decoder(struct pipe_context *context,
goto error;
}
- map_msg_fb_it_probs_buf(dec);
- rvcn_dec_message_create(dec);
- send_msg_buf(dec);
- r = flush(dec, 0);
- if (r)
- goto error;
+ if (dec->stream_type != RDECODE_CODEC_JPEG) {
+ map_msg_fb_it_probs_buf(dec);
+ rvcn_dec_message_create(dec);
+ send_msg_buf(dec);
+ r = flush(dec, 0);
+ if (r)
+ goto error;
+ }
next_buffer(dec);
More information about the mesa-commit
mailing list