diff options
author | Kenneth Graunke <[email protected]> | 2011-05-23 14:40:51 -0700 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2011-06-08 14:50:38 -0700 |
commit | 53b53a141ee4da9bf03b42d6381823520cd2e980 (patch) | |
tree | d8b02f7fb0ee972fdcd86960e9e88d0af3e0b70f /src/mesa/drivers/dri/i965/gen7_misc_state.c | |
parent | a00ca90815d8df3c087c49a2a7685f739d2d5c0a (diff) |
i965/gen7: Add a prepare_depthbuffer function.
We need to call add_validated_bo to do proper aperture space accounting.
Signed-off-by: Kenneth Graunke <[email protected]>
Reviewed-by: Eric Anholt <[email protected]>
Diffstat (limited to 'src/mesa/drivers/dri/i965/gen7_misc_state.c')
-rw-r--r-- | src/mesa/drivers/dri/i965/gen7_misc_state.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/gen7_misc_state.c b/src/mesa/drivers/dri/i965/gen7_misc_state.c index 0364b61b75b..024021185ac 100644 --- a/src/mesa/drivers/dri/i965/gen7_misc_state.c +++ b/src/mesa/drivers/dri/i965/gen7_misc_state.c @@ -56,6 +56,20 @@ gen7_depth_format(struct brw_context *brw) return 0; } +static void prepare_depthbuffer(struct brw_context *brw) +{ + struct intel_context *intel = &brw->intel; + struct gl_context *ctx = &intel->ctx; + struct gl_framebuffer *fb = ctx->DrawBuffer; + struct intel_renderbuffer *drb = intel_get_renderbuffer(fb, BUFFER_DEPTH); + struct intel_renderbuffer *srb = intel_get_renderbuffer(fb, BUFFER_STENCIL); + + if (drb) + brw_add_validated_bo(brw, drb->region->buffer); + if (srb) + brw_add_validated_bo(brw, srb->region->buffer); +} + static void emit_depthbuffer(struct brw_context *brw) { struct intel_context *intel = &brw->intel; @@ -138,5 +152,6 @@ const struct brw_tracked_state gen7_depthbuffer = { .brw = BRW_NEW_BATCH, .cache = 0, }, + .prepare = prepare_depthbuffer, .emit = emit_depthbuffer, }; |