From 26e047dec8dce96b7895feb8b77391c4a58a3895 Mon Sep 17 00:00:00 2001 From: Maarten Lankhorst Date: Sat, 8 Jun 2013 20:09:25 +0200 Subject: [PATCH] nvc0: fix up video buffer alignment requirements Signed-off-by: Maarten Lankhorst --- src/gallium/drivers/nvc0/nvc0_video.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/gallium/drivers/nvc0/nvc0_video.c b/src/gallium/drivers/nvc0/nvc0_video.c index 3c5001674c9..462637b1a8b 100644 --- a/src/gallium/drivers/nvc0/nvc0_video.c +++ b/src/gallium/drivers/nvc0/nvc0_video.c @@ -558,8 +558,6 @@ nvc0_video_buffer_create(struct pipe_context *pipe, buffer = CALLOC_STRUCT(nvc0_video_buffer); if (!buffer) return NULL; - assert(!(templat->height % 4)); - assert(!(templat->width % 2)); buffer->base.buffer_format = templat->buffer_format; buffer->base.context = pipe; @@ -578,7 +576,7 @@ nvc0_video_buffer_create(struct pipe_context *pipe, templ.bind = PIPE_BIND_SAMPLER_VIEW | PIPE_BIND_RENDER_TARGET; templ.format = PIPE_FORMAT_R8_UNORM; templ.width0 = buffer->base.width; - templ.height0 = buffer->base.height/2; + templ.height0 = (buffer->base.height + 1)/2; templ.flags = NVC0_RESOURCE_FLAG_VIDEO; templ.array_size = 2; @@ -588,8 +586,8 @@ nvc0_video_buffer_create(struct pipe_context *pipe, templ.format = PIPE_FORMAT_R8G8_UNORM; buffer->num_planes = 2; - templ.width0 /= 2; - templ.height0 /= 2; + templ.width0 = (templ.width0 + 1) / 2; + templ.height0 = (templ.height0 + 1) / 2; for (i = 1; i < buffer->num_planes; ++i) { buffer->resources[i] = pipe->screen->resource_create(pipe->screen, &templ); if (!buffer->resources[i]) -- 2.30.2