summaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/drivers/svga/svga_screen.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/src/gallium/drivers/svga/svga_screen.c b/src/gallium/drivers/svga/svga_screen.c
index 12ea4af824f..32eec038ada 100644
--- a/src/gallium/drivers/svga/svga_screen.c
+++ b/src/gallium/drivers/svga/svga_screen.c
@@ -402,25 +402,29 @@ static int svga_get_shader_param(struct pipe_screen *screen, unsigned shader, en
}
+/**
+ * Implemnt pipe_screen::is_format_supported().
+ * \param bindings bitmask of PIPE_BIND_x flags
+ */
static boolean
svga_is_format_supported( struct pipe_screen *screen,
enum pipe_format format,
enum pipe_texture_target target,
unsigned sample_count,
- unsigned tex_usage)
+ unsigned bindings)
{
struct svga_screen *ss = svga_screen(screen);
SVGA3dSurfaceFormat svga_format;
SVGA3dSurfaceFormatCaps caps;
SVGA3dSurfaceFormatCaps mask;
- assert(tex_usage);
+ assert(bindings);
if (sample_count > 1) {
return FALSE;
}
- svga_format = svga_translate_format(ss, format, tex_usage);
+ svga_format = svga_translate_format(ss, format, bindings);
if (svga_format == SVGA3D_FORMAT_INVALID) {
return FALSE;
}
@@ -430,7 +434,7 @@ svga_is_format_supported( struct pipe_screen *screen,
* visuals for all virtual hardware implementations.
*/
- if (tex_usage & PIPE_BIND_DISPLAY_TARGET) {
+ if (bindings & PIPE_BIND_DISPLAY_TARGET) {
switch (svga_format) {
case SVGA3D_A8R8G8B8:
case SVGA3D_X8R8G8B8:
@@ -456,13 +460,13 @@ svga_is_format_supported( struct pipe_screen *screen,
svga_get_format_cap(ss, svga_format, &caps);
mask.value = 0;
- if (tex_usage & PIPE_BIND_RENDER_TARGET) {
+ if (bindings & PIPE_BIND_RENDER_TARGET) {
mask.offscreenRenderTarget = 1;
}
- if (tex_usage & PIPE_BIND_DEPTH_STENCIL) {
+ if (bindings & PIPE_BIND_DEPTH_STENCIL) {
mask.zStencil = 1;
}
- if (tex_usage & PIPE_BIND_SAMPLER_VIEW) {
+ if (bindings & PIPE_BIND_SAMPLER_VIEW) {
mask.texture = 1;
}