summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r600/r600_blit.c
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2013-09-22 13:06:27 +0200
committerMarek Olšák <[email protected]>2013-09-29 15:18:10 +0200
commite64633e8c3a5498998a45ab721bf80edca101cf5 (patch)
tree525282c2cfb50d874c3cdcd5ee55e1587951c90c /src/gallium/drivers/r600/r600_blit.c
parent4069d39465be2a54b52c5de77393603d9a6b3e5a (diff)
r600g,radeonsi: share r600_texture.c
The function r600_choose_tiling is new and needs a review. The only change in functionality is that it enables 2D tiling for compressed textures on SI. It was probably accidentally turned off. v2: don't make scanout buffers linear
Diffstat (limited to 'src/gallium/drivers/r600/r600_blit.c')
-rw-r--r--src/gallium/drivers/r600/r600_blit.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/gallium/drivers/r600/r600_blit.c b/src/gallium/drivers/r600/r600_blit.c
index 20faabd4b4e..5000eaed9ff 100644
--- a/src/gallium/drivers/r600/r600_blit.c
+++ b/src/gallium/drivers/r600/r600_blit.c
@@ -105,12 +105,12 @@ static unsigned u_max_sample(struct pipe_resource *r)
return r->nr_samples ? r->nr_samples - 1 : 0;
}
-void r600_blit_decompress_depth(struct pipe_context *ctx,
- struct r600_texture *texture,
- struct r600_texture *staging,
- unsigned first_level, unsigned last_level,
- unsigned first_layer, unsigned last_layer,
- unsigned first_sample, unsigned last_sample)
+static void r600_blit_decompress_depth(struct pipe_context *ctx,
+ struct r600_texture *texture,
+ struct r600_texture *staging,
+ unsigned first_level, unsigned last_level,
+ unsigned first_layer, unsigned last_layer,
+ unsigned first_sample, unsigned last_sample)
{
struct r600_context *rctx = (struct r600_context *)ctx;
unsigned layer, level, sample, checked_last_layer, max_layer, max_sample;
@@ -444,7 +444,7 @@ static void evergreen_check_alloc_cmask(struct pipe_context *ctx,
if (tex->cmask_buffer)
return;
- r600_texture_init_cmask(rctx->screen, tex);
+ r600_texture_init_cmask(&rctx->screen->b, tex);
/* update colorbuffer state bits */
if (tex->cmask_buffer != NULL) {
@@ -955,4 +955,5 @@ void r600_init_blit_functions(struct r600_context *rctx)
rctx->b.b.blit = r600_blit;
rctx->b.b.flush_resource = r600_flush_resource;
rctx->b.clear_buffer = r600_clear_buffer;
+ rctx->b.blit_decompress_depth = r600_blit_decompress_depth;
}