Mesa (master): r600g: enable MSAA on r6xx by default

Marek Olšák mareko at kemper.freedesktop.org
Thu Aug 30 17:45:04 UTC 2012


Module: Mesa
Branch: master
Commit: c2e9dd0276464ed61d48d3d80b9be8228767dfe2
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=c2e9dd0276464ed61d48d3d80b9be8228767dfe2

Author: Marek Olšák <maraeo at gmail.com>
Date:   Sun Aug 26 23:03:51 2012 +0200

r600g: enable MSAA on r6xx by default

DRM 2.22.0 is required though. Also require the new DRM for r700, as
there are some important fixes for that generation too.

---

 src/gallium/drivers/r600/r600_state.c |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/gallium/drivers/r600/r600_state.c b/src/gallium/drivers/r600/r600_state.c
index e7ed239..26db24b 100644
--- a/src/gallium/drivers/r600/r600_state.c
+++ b/src/gallium/drivers/r600/r600_state.c
@@ -584,9 +584,12 @@ boolean r600_is_format_supported(struct pipe_screen *screen,
 		return FALSE;
 
 	if (sample_count > 1) {
-		if (rscreen->info.drm_minor < 21)
+		if (rscreen->info.drm_minor < 22)
 			return FALSE;
-		if (rscreen->chip_class != R700)
+
+		/* R11G11B10 is broken on R6xx. */
+		if (rscreen->chip_class == R600 &&
+		    format == PIPE_FORMAT_R11G11B10_FLOAT)
 			return FALSE;
 
 		switch (sample_count) {
@@ -602,7 +605,7 @@ boolean r600_is_format_supported(struct pipe_screen *screen,
 		if (util_format_is_depth_or_stencil(format)) {
 			usage |= PIPE_BIND_DEPTH_STENCIL;
 		} else if (util_format_is_pure_integer(format)) {
-			return FALSE;
+			return FALSE; /* no integer textures */
 		} else {
 			usage |= PIPE_BIND_RENDER_TARGET;
 		}




More information about the mesa-commit mailing list