Mesa (master): radeon/uvd: use more sane defaults for bitstream buffer size

Christian König deathsimple at kemper.freedesktop.org
Thu Sep 12 13:16:57 UTC 2013


Module: Mesa
Branch: master
Commit: 56be937d42b2f18fff072854122dbe5e0a95dd16
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=56be937d42b2f18fff072854122dbe5e0a95dd16

Author: Christian König <christian.koenig at amd.com>
Date:   Sat Sep  7 11:40:34 2013 -0600

radeon/uvd: use more sane defaults for bitstream buffer size

Signed-off-by: Christian König <christian.koenig at amd.com>
Reviewed-by: Alex Deucher <alexander.deucher at amd.com>

---

 src/gallium/drivers/radeon/radeon_uvd.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/src/gallium/drivers/radeon/radeon_uvd.c b/src/gallium/drivers/radeon/radeon_uvd.c
index 5e7eedb..981d5c5 100644
--- a/src/gallium/drivers/radeon/radeon_uvd.c
+++ b/src/gallium/drivers/radeon/radeon_uvd.c
@@ -823,6 +823,7 @@ struct pipe_video_codec *ruvd_create_decoder(struct pipe_context *context,
 {
 	unsigned dpb_size = calc_dpb_size(templ);
 	unsigned width = templ->width, height = templ->height;
+	unsigned bs_buf_size;
 	struct radeon_info info;
 	struct ruvd_decoder *dec;
 	struct ruvd_msg msg;
@@ -873,6 +874,7 @@ struct pipe_video_codec *ruvd_create_decoder(struct pipe_context *context,
 		goto error;
 	}
 
+	bs_buf_size = width * height * 512 / (16 * 16);
 	for (i = 0; i < NUM_BUFFERS; ++i) {
 		unsigned msg_fb_size = align(sizeof(struct ruvd_msg), 0x1000) + 0x1000;
 		if (!create_buffer(dec, &dec->msg_fb_buffers[i], msg_fb_size)) {
@@ -880,7 +882,7 @@ struct pipe_video_codec *ruvd_create_decoder(struct pipe_context *context,
 			goto error;
 		}
 
-		if (!create_buffer(dec, &dec->bs_buffers[i], 4096)) {
+		if (!create_buffer(dec, &dec->bs_buffers[i], bs_buf_size)) {
 			RUVD_ERR("Can't allocated bitstream buffers.\n");
 			goto error;
 		}




More information about the mesa-commit mailing list