diff options
Diffstat (limited to 'src/gallium/drivers/r600/evergreen_state.c')
-rw-r--r-- | src/gallium/drivers/r600/evergreen_state.c | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/src/gallium/drivers/r600/evergreen_state.c b/src/gallium/drivers/r600/evergreen_state.c index 4eb976849c5..f49c5952104 100644 --- a/src/gallium/drivers/r600/evergreen_state.c +++ b/src/gallium/drivers/r600/evergreen_state.c @@ -1219,7 +1219,7 @@ evergreen_create_sampler_view_custom(struct pipe_context *ctx, view->tex_resource_words[2] = (surflevel[0].offset + r600_resource_va(ctx->screen, texture)) >> 8; /* TEX_RESOURCE_WORD3.MIP_ADDRESS */ - if (texture->nr_samples > 1 && rscreen->msaa_texture_support == MSAA_TEXTURE_COMPRESSED) { + if (texture->nr_samples > 1 && rscreen->has_compressed_msaa_texturing) { if (tmp->is_depth) { /* disable FMASK (0 = disabled) */ view->tex_resource_words[3] = 0; @@ -3537,21 +3537,13 @@ void *evergreen_create_resolve_blend(struct r600_context *rctx) void *evergreen_create_decompress_blend(struct r600_context *rctx) { struct pipe_blend_state blend; + unsigned mode = rctx->screen->has_compressed_msaa_texturing ? + V_028808_CB_FMASK_DECOMPRESS : V_028808_CB_DECOMPRESS; memset(&blend, 0, sizeof(blend)); blend.independent_blend_enable = true; blend.rt[0].colormask = 0xf; - return evergreen_create_blend_state_mode(&rctx->context, &blend, V_028808_CB_DECOMPRESS); -} - -void *evergreen_create_fmask_decompress_blend(struct r600_context *rctx) -{ - struct pipe_blend_state blend; - - memset(&blend, 0, sizeof(blend)); - blend.independent_blend_enable = true; - blend.rt[0].colormask = 0xf; - return evergreen_create_blend_state_mode(&rctx->context, &blend, V_028808_CB_FMASK_DECOMPRESS); + return evergreen_create_blend_state_mode(&rctx->context, &blend, mode); } void *evergreen_create_db_flush_dsa(struct r600_context *rctx) |