summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2012-09-13 20:20:46 +0200
committerMarek Olšák <[email protected]>2012-09-13 20:26:21 +0200
commitee50d365ead2654c4a477ae2c2322883009a65b1 (patch)
tree952e78f9491e134828ff27031d2053c7039f229e
parente386972f5bcb59a37489ea627030315bf8961fd4 (diff)
radeonsi: don't use a staging resource for large transfers
It kills performance if the resource is linear.
-rw-r--r--src/gallium/drivers/radeonsi/r600_texture.c10
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