r600g: always put tiled textures in VRAM
authorMarek Olšák <maraeo@gmail.com>
Tue, 14 Aug 2012 00:22:13 +0000 (02:22 +0200)
committerMarek Olšák <maraeo@gmail.com>
Thu, 16 Aug 2012 18:44:53 +0000 (20:44 +0200)
src/gallium/drivers/r600/r600_texture.c

index 8252da35004c29aac41ecb8569f580fb181fd7bc..7cb1d5f781aa3948bf978507f97c20df2e9b207b 100644 (file)
@@ -290,8 +290,9 @@ r600_texture_create_object(struct pipe_screen *screen,
        /* Now create the backing buffer. */
        if (!buf && alloc_bo) {
                unsigned base_align = rtex->surface.bo_alignment;
+               unsigned usage = R600_TEX_IS_TILED(rtex, 0) ? PIPE_USAGE_STATIC : base->usage;
 
-               if (!r600_init_resource(rscreen, resource, rtex->size, base_align, base->bind, base->usage)) {
+               if (!r600_init_resource(rscreen, resource, rtex->size, base_align, base->bind, usage)) {
                        FREE(rtex);
                        return NULL;
                }