svga: add, use SVGA3D_SURFACE_HINT_VOLUME flag
authorBrian Paul <brianp@vmware.com>
Thu, 31 Jan 2013 00:43:57 +0000 (17:43 -0700)
committerBrian Paul <brianp@vmware.com>
Fri, 1 Feb 2013 15:00:28 +0000 (08:00 -0700)
Reviewed-by: Reviewed-by: José Fonseca <jfonseca@vmware.com>
src/gallium/drivers/svga/include/svga3d_reg.h
src/gallium/drivers/svga/svga_resource_texture.c

index 67f7218b6cf456144a5ceada5beaa112d959e6f8..05b83c69c6cad8582bd5f6f6c326fb031999359e 100644 (file)
@@ -1147,6 +1147,7 @@ typedef enum {
    SVGA3D_SURFACE_HINT_WRITEONLY       = (1 << 8),
    SVGA3D_SURFACE_MASKABLE_ANTIALIAS   = (1 << 9),
    SVGA3D_SURFACE_AUTOGENMIPMAPS       = (1 << 10),
+   SVGA3D_SURFACE_HINT_VOLUME          = (1 << 15),
 } SVGA3dSurfaceFlags;
 
 typedef
index b703179d04e0e8f8b2fc8cfdf16e8b4249b248aa..7f36da811ff0534156710bde257e23c66d076e8d 100644 (file)
@@ -415,6 +415,10 @@ svga_texture_create(struct pipe_screen *screen,
       tex->key.numFaces = 1;
    }
 
+   if (template->target == PIPE_TEXTURE_3D) {
+      tex->key.flags |= SVGA3D_SURFACE_HINT_VOLUME;
+   }
+
    tex->key.cachable = 1;
 
    if (template->bind & PIPE_BIND_SAMPLER_VIEW)