diff options
Diffstat (limited to 'src/gallium')
| -rw-r--r-- | src/gallium/drivers/i915/i915_debug.c | 2 | ||||
| -rw-r--r-- | src/gallium/drivers/i915/i915_screen.c | 7 | ||||
| -rw-r--r-- | src/gallium/drivers/i915/i915_screen.h | 1 | 
3 files changed, 9 insertions, 1 deletions
diff --git a/src/gallium/drivers/i915/i915_debug.c b/src/gallium/drivers/i915/i915_debug.c index d11da83eb2..e0ea025d0e 100644 --- a/src/gallium/drivers/i915/i915_debug.c +++ b/src/gallium/drivers/i915/i915_debug.c @@ -50,11 +50,13 @@ boolean i915_tiling = TRUE;  DEBUG_GET_ONCE_FLAGS_OPTION(i915_debug, "I915_DEBUG", debug_options, 0);  DEBUG_GET_ONCE_BOOL_OPTION(i915_no_tiling, "I915_NO_TILING", FALSE); +DEBUG_GET_ONCE_BOOL_OPTION(i915_lie, "I915_LIE", FALSE);  void i915_debug_init(struct i915_screen *is)  {     i915_debug = debug_get_option_i915_debug();     is->debug.tiling = !debug_get_option_i915_no_tiling(); +   is->debug.lie = debug_get_option_i915_lie();  } diff --git a/src/gallium/drivers/i915/i915_screen.c b/src/gallium/drivers/i915/i915_screen.c index 2260bcecf6..d929eb25bd 100644 --- a/src/gallium/drivers/i915/i915_screen.c +++ b/src/gallium/drivers/i915/i915_screen.c @@ -100,6 +100,8 @@ i915_get_name(struct pipe_screen *screen)  static int  i915_get_param(struct pipe_screen *screen, enum pipe_cap cap)  { +   struct i915_screen *is = i915_screen(screen); +     switch (cap) {     /* Supported features (boolean caps). */     case PIPE_CAP_ANISOTROPIC_FILTER: @@ -123,7 +125,6 @@ i915_get_param(struct pipe_screen *screen, enum pipe_cap cap)     case PIPE_CAP_INDEP_BLEND_ENABLE:     case PIPE_CAP_INDEP_BLEND_FUNC:     case PIPE_CAP_INSTANCED_DRAWING: /* draw module? */ -   case PIPE_CAP_OCCLUSION_QUERY:     case PIPE_CAP_POINT_SPRITE:     case PIPE_CAP_SHADER_STENCIL_EXPORT:     case PIPE_CAP_TEXTURE_MIRROR_CLAMP: @@ -131,6 +132,10 @@ i915_get_param(struct pipe_screen *screen, enum pipe_cap cap)     case PIPE_CAP_TIMER_QUERY:        return 0; +   /* Features we can lie about (boolean caps). */ +   case PIPE_CAP_OCCLUSION_QUERY: +      return is->debug.lie ? 1 : 0; +     /* Texturing. */     case PIPE_CAP_MAX_TEXTURE_IMAGE_UNITS:     case PIPE_CAP_MAX_COMBINED_SAMPLERS: diff --git a/src/gallium/drivers/i915/i915_screen.h b/src/gallium/drivers/i915/i915_screen.h index e76e33ad42..60f0e2971e 100644 --- a/src/gallium/drivers/i915/i915_screen.h +++ b/src/gallium/drivers/i915/i915_screen.h @@ -48,6 +48,7 @@ struct i915_screen     struct {        boolean tiling; +      boolean lie;     } debug;  };  | 
