From: Marek Olšák Date: Mon, 5 Mar 2012 13:13:19 +0000 (+0100) Subject: r600g: don't enable tiling for STAGING and STREAM usage cases X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0d91ddf1d4be712377e80d330480ff560d449c6f;p=mesa.git r600g: don't enable tiling for STAGING and STREAM usage cases Reviewed by: Christian König --- diff --git a/src/gallium/drivers/r600/r600_texture.c b/src/gallium/drivers/r600/r600_texture.c index 6222410f6c3..e55e0d215a4 100644 --- a/src/gallium/drivers/r600/r600_texture.c +++ b/src/gallium/drivers/r600/r600_texture.c @@ -623,12 +623,13 @@ struct pipe_resource *r600_texture_create(struct pipe_screen *screen, unsigned array_mode = 0; int r; - if (!(templ->flags & R600_RESOURCE_FLAG_TRANSFER) && - !(templ->bind & PIPE_BIND_SCANOUT)) { - if (rscreen->use_surface_alloc) { - if (permit_hardware_blit(screen, templ)) { - array_mode = V_038000_ARRAY_2D_TILED_THIN1; - } + if (!(templ->flags & R600_RESOURCE_FLAG_TRANSFER)) { + if (rscreen->use_surface_alloc && + !(templ->bind & PIPE_BIND_SCANOUT) && + templ->usage != PIPE_USAGE_STAGING && + templ->usage != PIPE_USAGE_STREAM && + permit_hardware_blit(screen, templ)) { + array_mode = V_038000_ARRAY_2D_TILED_THIN1; } else if (util_format_is_compressed(templ->format)) { array_mode = V_038000_ARRAY_1D_TILED_THIN1; }