diff options
author | Marek Olšák <[email protected]> | 2012-09-13 20:20:46 +0200 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2012-09-13 20:26:21 +0200 |
commit | ee50d365ead2654c4a477ae2c2322883009a65b1 (patch) | |
tree | 952e78f9491e134828ff27031d2053c7039f229e /src | |
parent | e386972f5bcb59a37489ea627030315bf8961fd4 (diff) |
radeonsi: don't use a staging resource for large transfers
It kills performance if the resource is linear.
Diffstat (limited to 'src')
-rw-r--r-- | src/gallium/drivers/radeonsi/r600_texture.c | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/src/gallium/drivers/radeonsi/r600_texture.c b/src/gallium/drivers/radeonsi/r600_texture.c index 0b908c8898d..e6f72c88b05 100644 --- a/src/gallium/drivers/radeonsi/r600_texture.c +++ b/src/gallium/drivers/radeonsi/r600_texture.c @@ -254,13 +254,6 @@ static void r600_texture_destroy(struct pipe_screen *screen, FREE(rtex); } -/* Needs adjustment for pixelformat: - */ -static INLINE unsigned u_box_volume( const struct pipe_box *box ) -{ - return box->width * box->depth * box->height; -}; - static struct pipe_transfer* si_texture_get_transfer(struct pipe_context *ctx, struct pipe_resource *texture, unsigned level, @@ -284,9 +277,6 @@ static struct pipe_transfer* si_texture_get_transfer(struct pipe_context *ctx, rtex->surface.level[level].mode != RADEON_SURF_MODE_LINEAR) use_staging_texture = TRUE; - if ((usage & PIPE_TRANSFER_READ) && u_box_volume(box) > 1024) - use_staging_texture = TRUE; - /* XXX: Use a staging texture for uploads if the underlying BO * is busy. No interface for checking that currently? so do * it eagerly whenever the transfer doesn't require a readback |