summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers
diff options
context:
space:
mode:
authorMaarten Lankhorst <[email protected]>2013-05-04 20:56:02 +0200
committerMaarten Lankhorst <[email protected]>2013-05-04 20:56:23 +0200
commitc4150123aa9c2a71a62fed800d7c4424e9b948f2 (patch)
tree0a80bb27a9bae71d83aa0ebcd0983c93cf3202a4 /src/gallium/drivers
parent8c347d4e5762b41320a80acf474284b5c096fd0d (diff)
nvc0: fixup video decoding with 2D_ARRAY
Signed-off-by: Maarten Lankhorst <[email protected]>
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r--src/gallium/drivers/nvc0/nvc0_video.c7
-rw-r--r--src/gallium/drivers/nvc0/nvc0_video_ppp.c2
2 files changed, 4 insertions, 5 deletions
diff --git a/src/gallium/drivers/nvc0/nvc0_video.c b/src/gallium/drivers/nvc0/nvc0_video.c
index 64cfa3a1fb9..3c5001674c9 100644
--- a/src/gallium/drivers/nvc0/nvc0_video.c
+++ b/src/gallium/drivers/nvc0/nvc0_video.c
@@ -573,15 +573,14 @@ nvc0_video_buffer_create(struct pipe_context *pipe,
buffer->base.interlaced = true;
memset(&templ, 0, sizeof(templ));
- templ.target = PIPE_TEXTURE_3D;
- templ.depth0 = 2;
+ templ.target = PIPE_TEXTURE_2D_ARRAY;
+ templ.depth0 = 1;
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.flags = NVC0_RESOURCE_FLAG_VIDEO;
- templ.last_level = 0;
- templ.array_size = 1;
+ templ.array_size = 2;
buffer->resources[0] = pipe->screen->resource_create(pipe->screen, &templ);
if (!buffer->resources[0])
diff --git a/src/gallium/drivers/nvc0/nvc0_video_ppp.c b/src/gallium/drivers/nvc0/nvc0_video_ppp.c
index 837ec4b29db..35cea62d3dd 100644
--- a/src/gallium/drivers/nvc0/nvc0_video_ppp.c
+++ b/src/gallium/drivers/nvc0/nvc0_video_ppp.c
@@ -69,7 +69,7 @@ nvc0_decoder_setup_ppp(struct nvc0_decoder *dec, struct nvc0_video_buffer *targe
struct nv50_miptree *mt = (struct nv50_miptree *)target->resources[i];
PUSH_DATA (push, mt->base.address >> 8);
- PUSH_DATA (push, (mt->base.address + mt->total_size/2/mt->base.base.array_size) >> 8);
+ PUSH_DATA (push, (mt->base.address + mt->total_size/2) >> 8);
mt->base.status |= NOUVEAU_BUFFER_STATUS_GPU_WRITING;
}
}