radeonsi: remove r600_pipe_common::decompress_dcc
Acked-by: Timothy Arceri <tarceri@itsqueeze.com>
This commit is contained in:
parent
9d7f809c03
commit
e04389cc2a
|
@ -492,9 +492,6 @@ struct r600_common_context {
|
||||||
unsigned first_level, unsigned last_level,
|
unsigned first_level, unsigned last_level,
|
||||||
unsigned first_layer, unsigned last_layer,
|
unsigned first_layer, unsigned last_layer,
|
||||||
unsigned first_sample, unsigned last_sample);
|
unsigned first_sample, unsigned last_sample);
|
||||||
|
|
||||||
void (*decompress_dcc)(struct pipe_context *ctx,
|
|
||||||
struct r600_texture *rtex);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/* r600_buffer_common.c */
|
/* r600_buffer_common.c */
|
||||||
|
|
|
@ -480,7 +480,7 @@ bool si_texture_disable_dcc(struct r600_common_context *rctx,
|
||||||
mtx_lock(&sscreen->aux_context_lock);
|
mtx_lock(&sscreen->aux_context_lock);
|
||||||
|
|
||||||
/* Decompress DCC. */
|
/* Decompress DCC. */
|
||||||
rctx->decompress_dcc(&rctx->b, rtex);
|
si_decompress_dcc(&rctx->b, rtex);
|
||||||
rctx->b.flush(&rctx->b, NULL, 0);
|
rctx->b.flush(&rctx->b, NULL, 0);
|
||||||
|
|
||||||
if (&rctx->b == sscreen->aux_context)
|
if (&rctx->b == sscreen->aux_context)
|
||||||
|
@ -1974,7 +1974,7 @@ void vi_disable_dcc_if_incompatible_format(struct r600_common_context *rctx,
|
||||||
|
|
||||||
if (vi_dcc_formats_are_incompatible(tex, level, view_format))
|
if (vi_dcc_formats_are_incompatible(tex, level, view_format))
|
||||||
if (!si_texture_disable_dcc(rctx, (struct r600_texture*)tex))
|
if (!si_texture_disable_dcc(rctx, (struct r600_texture*)tex))
|
||||||
rctx->decompress_dcc(&rctx->b, rtex);
|
si_decompress_dcc(&rctx->b, rtex);
|
||||||
}
|
}
|
||||||
|
|
||||||
struct pipe_surface *si_create_surface_custom(struct pipe_context *pipe,
|
struct pipe_surface *si_create_surface_custom(struct pipe_context *pipe,
|
||||||
|
|
|
@ -1325,8 +1325,7 @@ static void si_flush_resource(struct pipe_context *ctx,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void si_decompress_dcc(struct pipe_context *ctx,
|
void si_decompress_dcc(struct pipe_context *ctx, struct r600_texture *rtex)
|
||||||
struct r600_texture *rtex)
|
|
||||||
{
|
{
|
||||||
if (!rtex->dcc_offset)
|
if (!rtex->dcc_offset)
|
||||||
return;
|
return;
|
||||||
|
@ -1343,5 +1342,4 @@ void si_init_blit_functions(struct si_context *sctx)
|
||||||
sctx->b.b.flush_resource = si_flush_resource;
|
sctx->b.b.flush_resource = si_flush_resource;
|
||||||
sctx->b.b.generate_mipmap = si_generate_mipmap;
|
sctx->b.b.generate_mipmap = si_generate_mipmap;
|
||||||
sctx->b.blit_decompress_depth = si_blit_decompress_depth;
|
sctx->b.blit_decompress_depth = si_blit_decompress_depth;
|
||||||
sctx->b.decompress_dcc = si_decompress_dcc;
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -444,7 +444,7 @@ static void si_set_sampler_view_desc(struct si_context *sctx,
|
||||||
if (unlikely(!is_buffer && sview->dcc_incompatible)) {
|
if (unlikely(!is_buffer && sview->dcc_incompatible)) {
|
||||||
if (vi_dcc_enabled(rtex, view->u.tex.first_level))
|
if (vi_dcc_enabled(rtex, view->u.tex.first_level))
|
||||||
if (!si_texture_disable_dcc(&sctx->b, rtex))
|
if (!si_texture_disable_dcc(&sctx->b, rtex))
|
||||||
sctx->b.decompress_dcc(&sctx->b.b, rtex);
|
si_decompress_dcc(&sctx->b.b, rtex);
|
||||||
|
|
||||||
sview->dcc_incompatible = false;
|
sview->dcc_incompatible = false;
|
||||||
}
|
}
|
||||||
|
@ -732,7 +732,7 @@ static void si_set_shader_image_desc(struct si_context *ctx,
|
||||||
* has been decompressed already.
|
* has been decompressed already.
|
||||||
*/
|
*/
|
||||||
if (!si_texture_disable_dcc(&ctx->b, tex))
|
if (!si_texture_disable_dcc(&ctx->b, tex))
|
||||||
ctx->b.decompress_dcc(&ctx->b.b, tex);
|
si_decompress_dcc(&ctx->b.b, tex);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ctx->b.chip_class >= GFX9) {
|
if (ctx->b.chip_class >= GFX9) {
|
||||||
|
|
|
@ -660,6 +660,7 @@ void si_resource_copy_region(struct pipe_context *ctx,
|
||||||
struct pipe_resource *src,
|
struct pipe_resource *src,
|
||||||
unsigned src_level,
|
unsigned src_level,
|
||||||
const struct pipe_box *src_box);
|
const struct pipe_box *src_box);
|
||||||
|
void si_decompress_dcc(struct pipe_context *ctx, struct r600_texture *rtex);
|
||||||
|
|
||||||
/* si_clear.c */
|
/* si_clear.c */
|
||||||
void vi_dcc_clear_level(struct si_context *sctx,
|
void vi_dcc_clear_level(struct si_context *sctx,
|
||||||
|
|
|
@ -2761,7 +2761,7 @@ static void si_set_framebuffer_state(struct pipe_context *ctx,
|
||||||
|
|
||||||
if (vi_dcc_enabled(rtex, surf->base.u.tex.level))
|
if (vi_dcc_enabled(rtex, surf->base.u.tex.level))
|
||||||
if (!si_texture_disable_dcc(&sctx->b, rtex))
|
if (!si_texture_disable_dcc(&sctx->b, rtex))
|
||||||
sctx->b.decompress_dcc(ctx, rtex);
|
si_decompress_dcc(ctx, rtex);
|
||||||
|
|
||||||
surf->dcc_incompatible = false;
|
surf->dcc_incompatible = false;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue