* [PATCH] nv50: enable texture compression
@ 2015-01-02 2:56 Tobias Klausmann
[not found] ` <1420167363-3297-1-git-send-email-tobias.johannes.klausmann-AqjdNwhu20eELgA04lAiVw@public.gmane.org>
0 siblings, 1 reply; 6+ messages in thread
From: Tobias Klausmann @ 2015-01-02 2:56 UTC (permalink / raw)
To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW
We enable compression only for some supported formats
Suggested-by: Ilia Mirkin <imirkin@alum.mit.edu>
Signed-off-by: Tobias Klausmann <tobias.johannes.klausmann@mni.thm.de>
---
src/gallium/drivers/nouveau/nv50/nv50_miptree.c | 4 ++--
src/gallium/drivers/nouveau/nv50/nv50_screen.c | 11 +++++++++--
2 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/src/gallium/drivers/nouveau/nv50/nv50_miptree.c b/src/gallium/drivers/nouveau/nv50/nv50_miptree.c
index 1aacaec..a40e6d3 100644
--- a/src/gallium/drivers/nouveau/nv50/nv50_miptree.c
+++ b/src/gallium/drivers/nouveau/nv50/nv50_miptree.c
@@ -65,8 +65,7 @@ nv50_tex_choose_tile_dims(unsigned nx, unsigned ny, unsigned nz)
static uint32_t
nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed)
{
- const unsigned ms = mt->ms_x + mt->ms_y;
-
+ const unsigned ms = util_logbase2(mt->base.base.nr_samples);
uint32_t tile_flags;
if (unlikely(mt->base.base.flags & NOUVEAU_RESOURCE_FLAG_LINEAR))
@@ -96,6 +95,7 @@ nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed)
tile_flags = 0x60 + ms;
break;
default:
+ compressed = false;
switch (util_format_get_blocksizebits(mt->base.base.format)) {
case 128:
assert(ms < 3);
diff --git a/src/gallium/drivers/nouveau/nv50/nv50_screen.c b/src/gallium/drivers/nouveau/nv50/nv50_screen.c
index 2d8347b..8d759a7 100644
--- a/src/gallium/drivers/nouveau/nv50/nv50_screen.c
+++ b/src/gallium/drivers/nouveau/nv50/nv50_screen.c
@@ -391,7 +391,7 @@ nv50_screen_fence_update(struct pipe_screen *pscreen)
}
static void
-nv50_screen_init_hwctx(struct nv50_screen *screen)
+nv50_screen_init_hwctx(struct nouveau_device *dev, struct nv50_screen *screen)
{
struct nouveau_pushbuf *push = screen->base.pushbuf;
struct nv04_fifo *fifo;
@@ -449,6 +449,13 @@ nv50_screen_init_hwctx(struct nv50_screen *screen)
PUSH_DATA (push, 0x18);
}
+ BEGIN_NV04(push, NV50_3D(ZETA_COMP_ENABLE), 1);
+ PUSH_DATA(push, dev->drm_version >= 0x01000101);
+
+ BEGIN_NV04(push, NV50_3D(RT_COMP_ENABLE(0)), 8);
+ for (i = 0; i < 8; ++i)
+ PUSH_DATA(push, dev->drm_version >= 0x01000101);
+
BEGIN_NV04(push, NV50_3D(RT_CONTROL), 1);
PUSH_DATA (push, 1);
@@ -871,7 +878,7 @@ nv50_screen_create(struct nouveau_device *dev)
if (!nv50_blitter_create(screen))
goto fail;
- nv50_screen_init_hwctx(screen);
+ nv50_screen_init_hwctx(dev, screen);
nouveau_fence_new(&screen->base, &screen->base.fence.current, FALSE);
--
2.2.1
_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau
^ permalink raw reply related [flat|nested] 6+ messages in thread[parent not found: <1420167363-3297-1-git-send-email-tobias.johannes.klausmann-AqjdNwhu20eELgA04lAiVw@public.gmane.org>]
* Re: [PATCH] nv50: enable texture compression [not found] ` <1420167363-3297-1-git-send-email-tobias.johannes.klausmann-AqjdNwhu20eELgA04lAiVw@public.gmane.org> @ 2015-01-02 3:26 ` Ilia Mirkin [not found] ` <CAKb7UviwHNX-+bvzrafi13dnsJdm1fiA95miPTGdgTn7Oh_9kg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 0 siblings, 1 reply; 6+ messages in thread From: Ilia Mirkin @ 2015-01-02 3:26 UTC (permalink / raw) To: Tobias Klausmann Cc: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org As I mentioned on IRC, I think that some color formats are compressible. Would be nice to figure out which... e.g. trace the blob, or just try stuff. On Thu, Jan 1, 2015 at 9:56 PM, Tobias Klausmann <tobias.johannes.klausmann@mni.thm.de> wrote: > We enable compression only for some supported formats > > Suggested-by: Ilia Mirkin <imirkin@alum.mit.edu> > Signed-off-by: Tobias Klausmann <tobias.johannes.klausmann@mni.thm.de> > --- > src/gallium/drivers/nouveau/nv50/nv50_miptree.c | 4 ++-- > src/gallium/drivers/nouveau/nv50/nv50_screen.c | 11 +++++++++-- > 2 files changed, 11 insertions(+), 4 deletions(-) > > diff --git a/src/gallium/drivers/nouveau/nv50/nv50_miptree.c b/src/gallium/drivers/nouveau/nv50/nv50_miptree.c > index 1aacaec..a40e6d3 100644 > --- a/src/gallium/drivers/nouveau/nv50/nv50_miptree.c > +++ b/src/gallium/drivers/nouveau/nv50/nv50_miptree.c > @@ -65,8 +65,7 @@ nv50_tex_choose_tile_dims(unsigned nx, unsigned ny, unsigned nz) > static uint32_t > nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed) > { > - const unsigned ms = mt->ms_x + mt->ms_y; > - > + const unsigned ms = util_logbase2(mt->base.base.nr_samples); > uint32_t tile_flags; > > if (unlikely(mt->base.base.flags & NOUVEAU_RESOURCE_FLAG_LINEAR)) > @@ -96,6 +95,7 @@ nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed) > tile_flags = 0x60 + ms; > break; > default: > + compressed = false; > switch (util_format_get_blocksizebits(mt->base.base.format)) { > case 128: > assert(ms < 3); > diff --git a/src/gallium/drivers/nouveau/nv50/nv50_screen.c b/src/gallium/drivers/nouveau/nv50/nv50_screen.c > index 2d8347b..8d759a7 100644 > --- a/src/gallium/drivers/nouveau/nv50/nv50_screen.c > +++ b/src/gallium/drivers/nouveau/nv50/nv50_screen.c > @@ -391,7 +391,7 @@ nv50_screen_fence_update(struct pipe_screen *pscreen) > } > > static void > -nv50_screen_init_hwctx(struct nv50_screen *screen) > +nv50_screen_init_hwctx(struct nouveau_device *dev, struct nv50_screen *screen) > { > struct nouveau_pushbuf *push = screen->base.pushbuf; > struct nv04_fifo *fifo; > @@ -449,6 +449,13 @@ nv50_screen_init_hwctx(struct nv50_screen *screen) > PUSH_DATA (push, 0x18); > } > > + BEGIN_NV04(push, NV50_3D(ZETA_COMP_ENABLE), 1); > + PUSH_DATA(push, dev->drm_version >= 0x01000101); screen->base.device And then no need to pass dev in, I think. > + > + BEGIN_NV04(push, NV50_3D(RT_COMP_ENABLE(0)), 8); > + for (i = 0; i < 8; ++i) > + PUSH_DATA(push, dev->drm_version >= 0x01000101); > + > BEGIN_NV04(push, NV50_3D(RT_CONTROL), 1); > PUSH_DATA (push, 1); > > @@ -871,7 +878,7 @@ nv50_screen_create(struct nouveau_device *dev) > if (!nv50_blitter_create(screen)) > goto fail; > > - nv50_screen_init_hwctx(screen); > + nv50_screen_init_hwctx(dev, screen); > > nouveau_fence_new(&screen->base, &screen->base.fence.current, FALSE); > > -- > 2.2.1 > > _______________________________________________ > Nouveau mailing list > Nouveau@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/nouveau _______________________________________________ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau ^ permalink raw reply [flat|nested] 6+ messages in thread
[parent not found: <CAKb7UviwHNX-+bvzrafi13dnsJdm1fiA95miPTGdgTn7Oh_9kg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>]
* [PATCH v2] nv50: enable texture compression [not found] ` <CAKb7UviwHNX-+bvzrafi13dnsJdm1fiA95miPTGdgTn7Oh_9kg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> @ 2015-01-02 23:09 ` Tobias Klausmann [not found] ` <1420240193-16070-1-git-send-email-tobias.johannes.klausmann-AqjdNwhu20eELgA04lAiVw@public.gmane.org> 0 siblings, 1 reply; 6+ messages in thread From: Tobias Klausmann @ 2015-01-02 23:09 UTC (permalink / raw) To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW We enable compression only for some supported formats Suggested-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Tobias Klausmann <tobias.johannes.klausmann@mni.thm.de> --- src/gallium/drivers/nouveau/nv50/nv50_miptree.c | 23 +++++++++++++++++++++-- src/gallium/drivers/nouveau/nv50/nv50_screen.c | 7 +++++++ 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/src/gallium/drivers/nouveau/nv50/nv50_miptree.c b/src/gallium/drivers/nouveau/nv50/nv50_miptree.c index 1aacaec..13ed8a3 100644 --- a/src/gallium/drivers/nouveau/nv50/nv50_miptree.c +++ b/src/gallium/drivers/nouveau/nv50/nv50_miptree.c @@ -65,8 +65,7 @@ nv50_tex_choose_tile_dims(unsigned nx, unsigned ny, unsigned nz) static uint32_t nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed) { - const unsigned ms = mt->ms_x + mt->ms_y; - + const unsigned ms = util_logbase2(mt->base.base.nr_samples); uint32_t tile_flags; if (unlikely(mt->base.base.flags & NOUVEAU_RESOURCE_FLAG_LINEAR)) @@ -96,6 +95,26 @@ nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed) tile_flags = 0x60 + ms; break; default: + switch (mt->base.base.format) { + case PIPE_FORMAT_R16G16B16A16_FLOAT: + case PIPE_FORMAT_R16G16B16X16_FLOAT: + case PIPE_FORMAT_R8G8B8A8_UNORM: + case PIPE_FORMAT_R8G8B8A8_SRGB: + case PIPE_FORMAT_B8G8R8A8_UNORM: + case PIPE_FORMAT_B8G8R8A8_SRGB: + case PIPE_FORMAT_R10G10B10A2_UNORM: + case PIPE_FORMAT_B10G10R10A2_UNORM: + case PIPE_FORMAT_R11G11B10_FLOAT: + case PIPE_FORMAT_B8G8R8X8_UNORM: + case PIPE_FORMAT_B8G8R8X8_SRGB: + case PIPE_FORMAT_R8G8B8X8_UNORM: + case PIPE_FORMAT_R8G8B8X8_SRGB: + /* Allow compression for these formats if desired */ + break; + default: + compressed = false; + break; + } switch (util_format_get_blocksizebits(mt->base.base.format)) { case 128: assert(ms < 3); diff --git a/src/gallium/drivers/nouveau/nv50/nv50_screen.c b/src/gallium/drivers/nouveau/nv50/nv50_screen.c index 2d8347b..da237f9 100644 --- a/src/gallium/drivers/nouveau/nv50/nv50_screen.c +++ b/src/gallium/drivers/nouveau/nv50/nv50_screen.c @@ -449,6 +449,13 @@ nv50_screen_init_hwctx(struct nv50_screen *screen) PUSH_DATA (push, 0x18); } + BEGIN_NV04(push, NV50_3D(ZETA_COMP_ENABLE), 1); + PUSH_DATA(push, screen->base.device->drm_version >= 0x01000101); + + BEGIN_NV04(push, NV50_3D(RT_COMP_ENABLE(0)), 8); + for (i = 0; i < 8; ++i) + PUSH_DATA(push, screen->base.device->drm_version >= 0x01000101); + BEGIN_NV04(push, NV50_3D(RT_CONTROL), 1); PUSH_DATA (push, 1); -- 2.2.1 _______________________________________________ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau ^ permalink raw reply related [flat|nested] 6+ messages in thread
[parent not found: <1420240193-16070-1-git-send-email-tobias.johannes.klausmann-AqjdNwhu20eELgA04lAiVw@public.gmane.org>]
* Re: [PATCH v2] nv50: enable texture compression [not found] ` <1420240193-16070-1-git-send-email-tobias.johannes.klausmann-AqjdNwhu20eELgA04lAiVw@public.gmane.org> @ 2015-01-02 23:20 ` Ilia Mirkin [not found] ` <CAKb7UviGAYm-mfT7DyZ-5iFW1V=hyAR8GqfZ=rNFMV0pVJ0Ggw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 0 siblings, 1 reply; 6+ messages in thread From: Ilia Mirkin @ 2015-01-02 23:20 UTC (permalink / raw) To: Tobias Klausmann Cc: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org On Fri, Jan 2, 2015 at 6:09 PM, Tobias Klausmann <tobias.johannes.klausmann@mni.thm.de> wrote: > We enable compression only for some supported formats > > Suggested-by: Ilia Mirkin <imirkin@alum.mit.edu> > Signed-off-by: Tobias Klausmann <tobias.johannes.klausmann@mni.thm.de> > --- > src/gallium/drivers/nouveau/nv50/nv50_miptree.c | 23 +++++++++++++++++++++-- > src/gallium/drivers/nouveau/nv50/nv50_screen.c | 7 +++++++ > 2 files changed, 28 insertions(+), 2 deletions(-) > > diff --git a/src/gallium/drivers/nouveau/nv50/nv50_miptree.c b/src/gallium/drivers/nouveau/nv50/nv50_miptree.c > index 1aacaec..13ed8a3 100644 > --- a/src/gallium/drivers/nouveau/nv50/nv50_miptree.c > +++ b/src/gallium/drivers/nouveau/nv50/nv50_miptree.c > @@ -65,8 +65,7 @@ nv50_tex_choose_tile_dims(unsigned nx, unsigned ny, unsigned nz) > static uint32_t > nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed) The caller of this currently always says true. However it should probably be drm_version >= whatever. > { > - const unsigned ms = mt->ms_x + mt->ms_y; > - > + const unsigned ms = util_logbase2(mt->base.base.nr_samples); > uint32_t tile_flags; > > if (unlikely(mt->base.base.flags & NOUVEAU_RESOURCE_FLAG_LINEAR)) > @@ -96,6 +95,26 @@ nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed) > tile_flags = 0x60 + ms; > break; > default: > + switch (mt->base.base.format) { You're already switching on the format. You could be all clever and do default: compressed = false; /* fallthrough */ case PIPE_FORMAT_A: case PIPE_FORMAT_B: switch (blocksize) { ... } It's a bit unusual to have the default case in the middle, but I'm pretty sure it works. BTW, I assume that there was no dmesg spam or piglit regressions with this change? -ilia _______________________________________________ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau ^ permalink raw reply [flat|nested] 6+ messages in thread
[parent not found: <CAKb7UviGAYm-mfT7DyZ-5iFW1V=hyAR8GqfZ=rNFMV0pVJ0Ggw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>]
* Re: [PATCH v2] nv50: enable texture compression [not found] ` <CAKb7UviGAYm-mfT7DyZ-5iFW1V=hyAR8GqfZ=rNFMV0pVJ0Ggw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> @ 2015-01-02 23:50 ` Tobias Klausmann [not found] ` <54A72EDD.8020501-AqjdNwhu20eELgA04lAiVw@public.gmane.org> 0 siblings, 1 reply; 6+ messages in thread From: Tobias Klausmann @ 2015-01-02 23:50 UTC (permalink / raw) To: Ilia Mirkin; +Cc: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org On 03.01.2015 00:20, Ilia Mirkin wrote: > On Fri, Jan 2, 2015 at 6:09 PM, Tobias Klausmann > <tobias.johannes.klausmann@mni.thm.de> wrote: >> We enable compression only for some supported formats >> >> Suggested-by: Ilia Mirkin <imirkin@alum.mit.edu> >> Signed-off-by: Tobias Klausmann <tobias.johannes.klausmann@mni.thm.de> >> --- >> src/gallium/drivers/nouveau/nv50/nv50_miptree.c | 23 +++++++++++++++++++++-- >> src/gallium/drivers/nouveau/nv50/nv50_screen.c | 7 +++++++ >> 2 files changed, 28 insertions(+), 2 deletions(-) >> >> diff --git a/src/gallium/drivers/nouveau/nv50/nv50_miptree.c b/src/gallium/drivers/nouveau/nv50/nv50_miptree.c >> index 1aacaec..13ed8a3 100644 >> --- a/src/gallium/drivers/nouveau/nv50/nv50_miptree.c >> +++ b/src/gallium/drivers/nouveau/nv50/nv50_miptree.c >> @@ -65,8 +65,7 @@ nv50_tex_choose_tile_dims(unsigned nx, unsigned ny, unsigned nz) >> static uint32_t >> nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed) > The caller of this currently always says true. However it should > probably be drm_version >= whatever. Oh sure, i'll add it! > >> { >> - const unsigned ms = mt->ms_x + mt->ms_y; >> - >> + const unsigned ms = util_logbase2(mt->base.base.nr_samples); >> uint32_t tile_flags; >> >> if (unlikely(mt->base.base.flags & NOUVEAU_RESOURCE_FLAG_LINEAR)) >> @@ -96,6 +95,26 @@ nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed) >> tile_flags = 0x60 + ms; >> break; >> default: >> + switch (mt->base.base.format) { > You're already switching on the format. You could be all clever and do > > default: > compressed = false; > /* fallthrough */ > case PIPE_FORMAT_A: > case PIPE_FORMAT_B: > switch (blocksize) { ... } > > It's a bit unusual to have the default case in the middle, but I'm > pretty sure it works. We talked about broken compilers, hope we don't hit one here :D > > BTW, I assume that there was no dmesg spam or piglit regressions with > this change? Indeed! > > -ilia _______________________________________________ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau ^ permalink raw reply [flat|nested] 6+ messages in thread
[parent not found: <54A72EDD.8020501-AqjdNwhu20eELgA04lAiVw@public.gmane.org>]
* [PATCH v3] nv50: enable texture compression [not found] ` <54A72EDD.8020501-AqjdNwhu20eELgA04lAiVw@public.gmane.org> @ 2015-01-03 0:00 ` Tobias Klausmann 0 siblings, 0 replies; 6+ messages in thread From: Tobias Klausmann @ 2015-01-03 0:00 UTC (permalink / raw) To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW We enable compression only for some supported formats Suggested-by: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Tobias Klausmann <tobias.johannes.klausmann@mni.thm.de> --- v2: add more formats for compression v3: only enable compression if supported by drm src/gallium/drivers/nouveau/nv50/nv50_miptree.c | 21 ++++++++++++++++++--- src/gallium/drivers/nouveau/nv50/nv50_screen.c | 7 +++++++ 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/nouveau/nv50/nv50_miptree.c b/src/gallium/drivers/nouveau/nv50/nv50_miptree.c index 1aacaec..cc1ad65 100644 --- a/src/gallium/drivers/nouveau/nv50/nv50_miptree.c +++ b/src/gallium/drivers/nouveau/nv50/nv50_miptree.c @@ -65,8 +65,7 @@ nv50_tex_choose_tile_dims(unsigned nx, unsigned ny, unsigned nz) static uint32_t nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed) { - const unsigned ms = mt->ms_x + mt->ms_y; - + const unsigned ms = util_logbase2(mt->base.base.nr_samples); uint32_t tile_flags; if (unlikely(mt->base.base.flags & NOUVEAU_RESOURCE_FLAG_LINEAR)) @@ -96,6 +95,21 @@ nv50_mt_choose_storage_type(struct nv50_miptree *mt, boolean compressed) tile_flags = 0x60 + ms; break; default: + compressed = false; + /* fallthrough */ + case PIPE_FORMAT_R16G16B16A16_FLOAT: + case PIPE_FORMAT_R16G16B16X16_FLOAT: + case PIPE_FORMAT_R8G8B8A8_UNORM: + case PIPE_FORMAT_R8G8B8A8_SRGB: + case PIPE_FORMAT_B8G8R8A8_UNORM: + case PIPE_FORMAT_B8G8R8A8_SRGB: + case PIPE_FORMAT_R10G10B10A2_UNORM: + case PIPE_FORMAT_B10G10R10A2_UNORM: + case PIPE_FORMAT_R11G11B10_FLOAT: + case PIPE_FORMAT_B8G8R8X8_UNORM: + case PIPE_FORMAT_B8G8R8X8_SRGB: + case PIPE_FORMAT_R8G8B8X8_UNORM: + case PIPE_FORMAT_R8G8B8X8_SRGB: switch (util_format_get_blocksizebits(mt->base.base.format)) { case 128: assert(ms < 3); @@ -318,6 +332,7 @@ nv50_miptree_create(struct pipe_screen *pscreen, struct nouveau_device *dev = nouveau_screen(pscreen)->device; struct nv50_miptree *mt = CALLOC_STRUCT(nv50_miptree); struct pipe_resource *pt = &mt->base.base; + boolean compressed = dev->drm_version >= 0x01000101; int ret; union nouveau_bo_config bo_config; uint32_t bo_flags; @@ -333,7 +348,7 @@ nv50_miptree_create(struct pipe_screen *pscreen, if (pt->bind & PIPE_BIND_LINEAR) pt->flags |= NOUVEAU_RESOURCE_FLAG_LINEAR; - bo_config.nv50.memtype = nv50_mt_choose_storage_type(mt, TRUE); + bo_config.nv50.memtype = nv50_mt_choose_storage_type(mt, compressed); if (!nv50_miptree_init_ms_mode(mt)) { FREE(mt); diff --git a/src/gallium/drivers/nouveau/nv50/nv50_screen.c b/src/gallium/drivers/nouveau/nv50/nv50_screen.c index 2d8347b..da237f9 100644 --- a/src/gallium/drivers/nouveau/nv50/nv50_screen.c +++ b/src/gallium/drivers/nouveau/nv50/nv50_screen.c @@ -449,6 +449,13 @@ nv50_screen_init_hwctx(struct nv50_screen *screen) PUSH_DATA (push, 0x18); } + BEGIN_NV04(push, NV50_3D(ZETA_COMP_ENABLE), 1); + PUSH_DATA(push, screen->base.device->drm_version >= 0x01000101); + + BEGIN_NV04(push, NV50_3D(RT_COMP_ENABLE(0)), 8); + for (i = 0; i < 8; ++i) + PUSH_DATA(push, screen->base.device->drm_version >= 0x01000101); + BEGIN_NV04(push, NV50_3D(RT_CONTROL), 1); PUSH_DATA (push, 1); -- 2.2.1 _______________________________________________ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau ^ permalink raw reply related [flat|nested] 6+ messages in thread
end of thread, other threads:[~2015-01-03 0:00 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-01-02 2:56 [PATCH] nv50: enable texture compression Tobias Klausmann
[not found] ` <1420167363-3297-1-git-send-email-tobias.johannes.klausmann-AqjdNwhu20eELgA04lAiVw@public.gmane.org>
2015-01-02 3:26 ` Ilia Mirkin
[not found] ` <CAKb7UviwHNX-+bvzrafi13dnsJdm1fiA95miPTGdgTn7Oh_9kg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-01-02 23:09 ` [PATCH v2] " Tobias Klausmann
[not found] ` <1420240193-16070-1-git-send-email-tobias.johannes.klausmann-AqjdNwhu20eELgA04lAiVw@public.gmane.org>
2015-01-02 23:20 ` Ilia Mirkin
[not found] ` <CAKb7UviGAYm-mfT7DyZ-5iFW1V=hyAR8GqfZ=rNFMV0pVJ0Ggw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-01-02 23:50 ` Tobias Klausmann
[not found] ` <54A72EDD.8020501-AqjdNwhu20eELgA04lAiVw@public.gmane.org>
2015-01-03 0:00 ` [PATCH v3] " Tobias Klausmann
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.