diff options
author | Daniel Vetter <[email protected]> | 2011-03-10 23:04:10 +0100 |
---|---|---|
committer | Daniel Vetter <[email protected]> | 2011-03-10 23:04:10 +0100 |
commit | 6358e6371b31671acbfa7c00336673f62ee928c5 (patch) | |
tree | 17f26ceeed2d57e82e9bcedd7d1d3292061d48bd /src/gallium/drivers/i915/i915_context.h | |
parent | 8c420db1c4763d8d4d71ce8d835fc09a7a269d4c (diff) |
i915g: implement hw clear
Benefits:
- spares us a relocation.
- needed for zone rendering (if that ever happens).
- just awesome.
v2: Rename the debug option. Completely disabling the blitter is
required for Y tiling to work, so this option will cover other
code paths in the future.
v3: Implement suggestions by Jakob Bornecrantz.
Signed-off-by: Daniel Vetter <[email protected]>
Diffstat (limited to 'src/gallium/drivers/i915/i915_context.h')
-rw-r--r-- | src/gallium/drivers/i915/i915_context.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/gallium/drivers/i915/i915_context.h b/src/gallium/drivers/i915/i915_context.h index 1da637d068e..ed3fb4796b3 100644 --- a/src/gallium/drivers/i915/i915_context.h +++ b/src/gallium/drivers/i915/i915_context.h @@ -158,6 +158,8 @@ struct i915_state unsigned dst_buf_vars; uint32_t draw_offset; uint32_t draw_size; + /* for clears */ + uint16_t fb_height, fb_width; unsigned id; /* track lost context events */ }; @@ -326,8 +328,10 @@ void i915_emit_hardware_state(struct i915_context *i915 ); /*********************************************************************** * i915_clear.c: */ -void i915_clear( struct pipe_context *pipe, unsigned buffers, const float *rgba, - double depth, unsigned stencil); +void i915_clear_blitter(struct pipe_context *pipe, unsigned buffers, const float *rgba, + double depth, unsigned stencil); +void i915_clear_render(struct pipe_context *pipe, unsigned buffers, const float *rgba, + double depth, unsigned stencil); /*********************************************************************** |