2013-05-08 22:03:21 +00:00
|
|
|
diff --git a/src/gallium/drivers/llvmpipe/lp_screen.c b/src/gallium/drivers/llvmpipe/lp_screen.c
|
|
|
|
index 5ec1df6..a0406fc 100644
|
|
|
|
--- a/src/gallium/drivers/llvmpipe/lp_screen.c
|
|
|
|
+++ b/src/gallium/drivers/llvmpipe/lp_screen.c
|
2013-06-12 22:12:04 +00:00
|
|
|
@@ -306,6 +306,13 @@ llvmpipe_is_format_supported( struct pipe_screen *_screen,
|
2013-05-08 22:03:21 +00:00
|
|
|
if (!format_desc)
|
|
|
|
return FALSE;
|
|
|
|
|
|
|
|
+ if ((bind & PIPE_BIND_RENDER_TARGET) &&
|
|
|
|
+ format != PIPE_FORMAT_R9G9B9E5_FLOAT &&
|
|
|
|
+ format != PIPE_FORMAT_R11G11B10_FLOAT &&
|
|
|
|
+ util_format_is_float(format)) {
|
|
|
|
+ return FALSE;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
assert(target == PIPE_BUFFER ||
|
|
|
|
target == PIPE_TEXTURE_1D ||
|
|
|
|
target == PIPE_TEXTURE_1D_ARRAY ||
|
|
|
|
diff --git a/src/gallium/drivers/softpipe/sp_screen.c b/src/gallium/drivers/softpipe/sp_screen.c
|
|
|
|
index 937035e..2f5e571 100644
|
|
|
|
--- a/src/gallium/drivers/softpipe/sp_screen.c
|
|
|
|
+++ b/src/gallium/drivers/softpipe/sp_screen.c
|
2013-06-12 22:12:04 +00:00
|
|
|
@@ -291,6 +291,13 @@ softpipe_is_format_supported( struct pipe_screen *screen,
|
2013-05-08 22:03:21 +00:00
|
|
|
if (!format_desc)
|
|
|
|
return FALSE;
|
|
|
|
|
|
|
|
+ if ((bind & PIPE_BIND_RENDER_TARGET) &&
|
|
|
|
+ format != PIPE_FORMAT_R9G9B9E5_FLOAT &&
|
|
|
|
+ format != PIPE_FORMAT_R11G11B10_FLOAT &&
|
|
|
|
+ util_format_is_float(format)) {
|
|
|
|
+ return FALSE;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
if (sample_count > 1)
|
|
|
|
return FALSE;
|
|
|
|
|