From: Marek Olšák <marek.ol...@amd.com>

Cc: 10.0 10.1 mesa-sta...@lists.freedesktop.org
---
 src/gallium/drivers/radeon/r600_texture.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/gallium/drivers/radeon/r600_texture.c 
b/src/gallium/drivers/radeon/r600_texture.c
index c410543..55caece 100644
--- a/src/gallium/drivers/radeon/r600_texture.c
+++ b/src/gallium/drivers/radeon/r600_texture.c
@@ -289,6 +289,12 @@ void r600_texture_get_fmask_info(struct r600_common_screen 
*rscreen,
        fmask.nsamples = 1;
        fmask.flags |= RADEON_SURF_FMASK;
 
+       /* Force 2D tiling if it wasn't set. This may occur when creating
+        * FMASK for MSAA resolve on R6xx. On R6xx, the single-sample
+        * destination buffer must have an FMASK too. */
+       fmask.flags = RADEON_SURF_CLR(fmask.flags, MODE);
+       fmask.flags |= RADEON_SURF_SET(RADEON_SURF_MODE_2D, MODE);
+
        if (rscreen->chip_class >= SI) {
                fmask.flags |= RADEON_SURF_HAS_TILE_MODE_INDEX;
        }
-- 
1.8.3.2

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to