summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers
diff options
context:
space:
mode:
authorPierre-Eric Pelloux-Prayer <[email protected]>2019-07-22 16:14:20 +0200
committerMarek Olšák <[email protected]>2019-07-23 14:42:20 -0400
commite9cf8c1d3010e9eada5a7921239ad7895f249b5c (patch)
treef1fc5d01e6d21a64650af3cd9e2bae5ae5dc36de /src/gallium/drivers
parentd811446e6cf0a3e9ad0cc4f5898db33031698c32 (diff)
u_blitter: add a msaa parameter to util_blitter_clear
Fixes: ea5b7de138b ("radeonsi: make gl_SampleMaskIn = 0x1 when MSAA is disabled") Tested-by: Michel Dänzer <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r--src/gallium/drivers/r300/r300_blit.c3
-rw-r--r--src/gallium/drivers/r600/r600_blit.c3
-rw-r--r--src/gallium/drivers/radeonsi/si_clear.c3
-rw-r--r--src/gallium/drivers/svga/svga_pipe_clear.c3
-rw-r--r--src/gallium/drivers/v3d/v3dx_draw.c3
-rw-r--r--src/gallium/drivers/vc4/vc4_draw.c3
6 files changed, 12 insertions, 6 deletions
diff --git a/src/gallium/drivers/r300/r300_blit.c b/src/gallium/drivers/r300/r300_blit.c
index 4ac2589a9a7..cda702e78f2 100644
--- a/src/gallium/drivers/r300/r300_blit.c
+++ b/src/gallium/drivers/r300/r300_blit.c
@@ -366,7 +366,8 @@ static void r300_clear(struct pipe_context* pipe,
/* Clear using the blitter. */
r300_blitter_begin(r300, R300_CLEAR);
util_blitter_clear(r300->blitter, width, height, 1,
- buffers, color, depth, stencil);
+ buffers, color, depth, stencil,
+ util_framebuffer_get_num_samples(fb) > 1);
r300_blitter_end(r300);
} else if (r300->zmask_clear.dirty ||
r300->hiz_clear.dirty ||
diff --git a/src/gallium/drivers/r600/r600_blit.c b/src/gallium/drivers/r600/r600_blit.c
index 34075f687af..84f265b189b 100644
--- a/src/gallium/drivers/r600/r600_blit.c
+++ b/src/gallium/drivers/r600/r600_blit.c
@@ -522,7 +522,8 @@ static void r600_clear(struct pipe_context *ctx, unsigned buffers,
r600_blitter_begin(ctx, R600_CLEAR);
util_blitter_clear(rctx->blitter, fb->width, fb->height,
util_framebuffer_get_num_layers(fb),
- buffers, color, depth, stencil);
+ buffers, color, depth, stencil,
+ util_framebuffer_get_num_samples(fb) > 1);
r600_blitter_end(ctx);
/* disable fast clear */
diff --git a/src/gallium/drivers/radeonsi/si_clear.c b/src/gallium/drivers/radeonsi/si_clear.c
index 0e8808b6c13..a83f65c6f1b 100644
--- a/src/gallium/drivers/radeonsi/si_clear.c
+++ b/src/gallium/drivers/radeonsi/si_clear.c
@@ -663,7 +663,8 @@ static void si_clear(struct pipe_context *ctx, unsigned buffers,
si_blitter_begin(sctx, SI_CLEAR);
util_blitter_clear(sctx->blitter, fb->width, fb->height,
util_framebuffer_get_num_layers(fb),
- buffers, color, depth, stencil);
+ buffers, color, depth, stencil,
+ sctx->framebuffer.nr_samples > 1);
si_blitter_end(sctx);
if (sctx->db_depth_clear) {
diff --git a/src/gallium/drivers/svga/svga_pipe_clear.c b/src/gallium/drivers/svga/svga_pipe_clear.c
index d1287178c56..6aa74d5b69a 100644
--- a/src/gallium/drivers/svga/svga_pipe_clear.c
+++ b/src/gallium/drivers/svga/svga_pipe_clear.c
@@ -77,7 +77,8 @@ clear_buffers_with_quad(struct svga_context *svga,
fb->width, fb->height,
1, /* num_layers */
clear_buffers, color,
- depth, stencil);
+ depth, stencil,
+ util_framebuffer_get_num_samples(fb) > 1);
}
diff --git a/src/gallium/drivers/v3d/v3dx_draw.c b/src/gallium/drivers/v3d/v3dx_draw.c
index 744d0c9c211..ff34b8d049b 100644
--- a/src/gallium/drivers/v3d/v3dx_draw.c
+++ b/src/gallium/drivers/v3d/v3dx_draw.c
@@ -947,7 +947,8 @@ v3d_draw_clear(struct v3d_context *v3d,
v3d->framebuffer.width,
v3d->framebuffer.height,
util_framebuffer_get_num_layers(&v3d->framebuffer),
- buffers, color, depth, stencil);
+ buffers, color, depth, stencil,
+ util_framebuffer_get_num_samples(&v3d->framebuffer) > 1);
}
/**
diff --git a/src/gallium/drivers/vc4/vc4_draw.c b/src/gallium/drivers/vc4/vc4_draw.c
index df95c313f34..5ac658c27ae 100644
--- a/src/gallium/drivers/vc4/vc4_draw.c
+++ b/src/gallium/drivers/vc4/vc4_draw.c
@@ -578,7 +578,8 @@ vc4_clear(struct pipe_context *pctx, unsigned buffers,
vc4->framebuffer.height,
1,
zsclear,
- &dummy_color, depth, stencil);
+ &dummy_color, depth, stencil,
+ false);
buffers &= ~zsclear;
if (!buffers)
return;