summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Paul <brianp@vmware.com>2010-03-17 16:33:29 -0600
committerBrian Paul <brianp@vmware.com>2010-03-17 16:35:29 -0600
commit6dd4054ca544952393f74eee1b37406404d7d823 (patch)
tree91ae6a4b5fb2834ac4c7ab6c1339f7fc5e441705
parent1bfc314596256b039df59f751d59dac82e3ceba1 (diff)
cell: be more conservative in cell_is_format_supported()
This fixes a regression from commit a84575cdc0c8193b2c7858734e2ec6b1ec4511b2 which changed the depth/stencil format we were trying to use.
-rw-r--r--src/gallium/drivers/cell/ppu/cell_screen.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/gallium/drivers/cell/ppu/cell_screen.c b/src/gallium/drivers/cell/ppu/cell_screen.c
index a43f8638dcd..eada62181af 100644
--- a/src/gallium/drivers/cell/ppu/cell_screen.c
+++ b/src/gallium/drivers/cell/ppu/cell_screen.c
@@ -134,12 +134,16 @@ cell_is_format_supported( struct pipe_screen *screen,
unsigned tex_usage,
unsigned geom_flags )
{
- /* cell supports most formats, XXX for now anyway */
- if (format == PIPE_FORMAT_DXT5_RGBA ||
- format == PIPE_FORMAT_A8B8G8R8_SRGB)
- return FALSE;
- else
+ /* only a few formats are known to work at this time */
+ switch (format) {
+ case PIPE_FORMAT_Z24S8_UNORM:
+ case PIPE_FORMAT_Z24X8_UNORM:
+ case PIPE_FORMAT_B8G8R8A8_UNORM:
+ case PIPE_FORMAT_I8_UNORM:
return TRUE;
+ default:
+ return FALSE;
+ }
}