r600g: introduce a per-driver resource flag for transfers.

this is to be used to decide not to tile a surface being used for transfers.
This commit is contained in:
Dave Airlie 2010-10-21 13:36:01 +10:00
parent 91e513044d
commit 92ed84d115
2 changed files with 5 additions and 2 deletions

View File

@ -25,6 +25,9 @@
#include "util/u_transfer.h"
/* flag to indicate a resource is to be used as a transfer so should not be tiled */
#define R600_RESOURCE_FLAG_TRANSFER PIPE_RESOURCE_FLAG_DRV_PRIV
/* Texture transfer. */
struct r600_transfer {
/* Base class. */

View File

@ -361,7 +361,7 @@ int r600_texture_depth_flush(struct pipe_context *ctx,
resource.nr_samples = 0;
resource.usage = PIPE_USAGE_DYNAMIC;
resource.bind = 0;
resource.flags = 0;
resource.flags = R600_RESOURCE_FLAG_TRANSFER;
resource.bind |= PIPE_BIND_DEPTH_STENCIL;
@ -412,7 +412,7 @@ struct pipe_transfer* r600_texture_get_transfer(struct pipe_context *ctx,
resource.nr_samples = 0;
resource.usage = PIPE_USAGE_DYNAMIC;
resource.bind = 0;
resource.flags = 0;
resource.flags = R600_RESOURCE_FLAG_TRANSFER;
/* For texture reading, the temporary (detiled) texture is used as
* a render target when blitting from a tiled texture. */
if (usage & PIPE_TRANSFER_READ) {