search for: layout_3d

Displaying 9 results from an estimated 9 matches for "layout_3d".

2014 May 18
0
[PATCH] nv50,nvc0: fix 3d blits with mipmap levels
...y0 *= (float)(1 << nv50_miptree(src)->ms_y); y1 *= (float)(1 << nv50_miptree(src)->ms_y); + /* XXX: multiply by 6 for cube arrays ? */ + dz = (float)info->src.box.depth / (float)info->dst.box.depth; + z = (float)info->src.box.z; + if (nv50_miptree(src)->layout_3d) + z += 0.5f * dz; + if (src->last_level > 0) { /* If there are mip maps, GPU always assumes normalized coordinates. */ const unsigned l = info->src.level; @@ -1151,14 +1157,12 @@ nv50_blit_3d(struct nv50_context *nv50, const struct pipe_blit_info *info) x1 /=...
2014 Jan 15
3
[PATCH] nv50, nvc0: don't crash on a null cbuf
.../* Do we need to clear the old RT settings? */ + if (!fb->cbufs[i]) + continue; + + mt = nv50_miptree(fb->cbufs[i]->texture); + sf = nv50_surface(fb->cbufs[i]); + bo = mt->base.bo; array_size = MIN2(array_size, sf->depth); if (mt->layout_3d) diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c b/src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c index 0ba4bad..9059d76 100644 --- a/src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c @@ -72,9 +72,17 @@ nv...
2014 Jan 23
2
[PATCH v2] nv50, nvc0: clear out RT on a null cbuf
..._fb_set_null_rt(push, i); > + continue; > + } > + > + mt = nv50_miptree(fb->cbufs[i]->texture); > + sf = nv50_surface(fb->cbufs[i]); > + bo = mt->base.bo; > > array_size = MIN2(array_size, sf->depth); > if (mt->layout_3d) > diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c b/src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c > index 0ba4bad..dd71c65 100644 > --- a/src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c > +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c &...
2014 Jan 17
0
[PATCH v2] nv50, nvc0: clear out RT on a null cbuf
...+ if (!fb->cbufs[i]) { + nv50_fb_set_null_rt(push, i); + continue; + } + + mt = nv50_miptree(fb->cbufs[i]->texture); + sf = nv50_surface(fb->cbufs[i]); + bo = mt->base.bo; array_size = MIN2(array_size, sf->depth); if (mt->layout_3d) diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c b/src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c index 0ba4bad..dd71c65 100644 --- a/src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c @@ -2,6 +2,7 @@ #inc...
2014 Jan 23
0
[PATCH v2] nv50, nvc0: clear out RT on a null cbuf
...+ continue; >> + } >> + >> + mt = nv50_miptree(fb->cbufs[i]->texture); >> + sf = nv50_surface(fb->cbufs[i]); >> + bo = mt->base.bo; >> >> array_size = MIN2(array_size, sf->depth); >> if (mt->layout_3d) >> diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c b/src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c >> index 0ba4bad..dd71c65 100644 >> --- a/src/gallium/drivers/nouveau/nvc0/nvc0_state_validate.c >> +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_st...
2014 Sep 01
2
[PATCH 1/3] nv50: set the miptree address when clearing bo's in vp2 init
The mt address is about to be used more, make sure it's set appropriately. Reported-by: Emil Velikov <emil.l.velikov at gmail.com> Tested-by: Emil Velikov <emil.l.velikov at gmail.com> Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu> Cc: "10.2 10.3" <mesa-stable at lists.freedesktop.org> --- src/gallium/drivers/nouveau/nv50/nv84_video.c | 2 ++ 1 file
2014 Feb 13
2
[PATCH] nv50: make sure to clear _all_ layers of all attachments
Unfortunately there's only one RT_ARRAY_MODE setting for all attachments, so clears were previously truncated to the minimum number of layers any attachment had. Instead set the RT_ARRAY_MODE to 512 (the max number of layers) before doing the clear. This fixes gl-3.2-layered-rendering-clear-color-mismatched-layer-count. Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu> ---
2013 Jun 30
0
[PATCH v2] nv50: H.264/MPEG2 decoding support via VP2, available on NV84-NV96, NVA0
...+{ + const struct pipe_resource *pt = &mt->base.base; + const unsigned blocksize = util_format_get_blocksize(pt->format); + + assert(pt->last_level == 0); + assert(mt->ms_x == 0 && mt->ms_y == 0); + assert(!util_format_is_compressed(pt->format)); + + mt->layout_3d = pt->target == PIPE_TEXTURE_3D; + + mt->level[0].tile_mode = 0x20; + mt->level[0].pitch = align(pt->width0 * blocksize, 64); + mt->total_size = align(pt->height0, 16) * mt->level[0].pitch * (mt->layout_3d ? pt->depth0 : 1); + + if (pt->array_size > 1) { +...
2013 Jun 27
4
[PATCH] nv50: H.264/MPEG2 decoding support via VP2, available on NV84-NV96, NVA0
...+{ + const struct pipe_resource *pt = &mt->base.base; + const unsigned blocksize = util_format_get_blocksize(pt->format); + + assert(pt->last_level == 0); + assert(mt->ms_x == 0 && mt->ms_y == 0); + assert(!util_format_is_compressed(pt->format)); + + mt->layout_3d = pt->target == PIPE_TEXTURE_3D; + + mt->level[0].tile_mode = 0x20; + mt->level[0].pitch = align(pt->width0 * blocksize, 64); + mt->total_size = align(pt->height0, 16) * mt->level[0].pitch * (mt->layout_3d ? pt->depth0 : 1); + + if (pt->array_size > 1) { +...