summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r300/r300_screen.c
diff options
context:
space:
mode:
authorCorbin Simpson <[email protected]>2010-06-16 10:51:04 -0700
committerCorbin Simpson <[email protected]>2010-06-16 10:54:09 -0700
commit8ecca392da70eb0137117e73448fe610a5638ae7 (patch)
tree6c44c6ff07bd87868c0e7cac177d0ca85c9d82d9 /src/gallium/drivers/r300/r300_screen.c
parent68cefb423a1bd7cb2bee6375cae8e9c46b1211c5 (diff)
r300g: Don't multisample non-32-bpp render targets.
Diffstat (limited to 'src/gallium/drivers/r300/r300_screen.c')
-rw-r--r--src/gallium/drivers/r300/r300_screen.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/gallium/drivers/r300/r300_screen.c b/src/gallium/drivers/r300/r300_screen.c
index c599f76e564..8f7c96b829c 100644
--- a/src/gallium/drivers/r300/r300_screen.c
+++ b/src/gallium/drivers/r300/r300_screen.c
@@ -278,10 +278,16 @@ static boolean r300_is_format_supported(struct pipe_screen* screen,
switch (sample_count) {
case 0:
case 1:
+ break;
case 2:
case 3:
case 4:
case 6:
+ if (usage != PIPE_BIND_RENDER_TARGET ||
+ !util_format_is_rgba8_variant(
+ util_format_description(format))) {
+ return FALSE;
+ }
break;
default:
return FALSE;