From b9b7792d9abc722bc9e267050fc4d1be6caec243 Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Fri, 12 May 2017 13:31:05 -0700 Subject: [PATCH] intel/isl: Don't request space for stencil/hiz packets unless needed On Iron Lake, the packets exist but we never emit them so there's no need for us to ask the driver to make batch space for them. Reviewed-by: Topi Pohjolainen --- src/intel/isl/isl.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/intel/isl/isl.c b/src/intel/isl/isl.c index f89f351c157..f70e1880583 100644 --- a/src/intel/isl/isl.c +++ b/src/intel/isl/isl.c @@ -84,17 +84,16 @@ isl_device_init(struct isl_device *dev, dev->ss.aux_addr_offset = (RENDER_SURFACE_STATE_AuxiliarySurfaceBaseAddress_start(info) & ~31) / 8; - dev->ds.size = - _3DSTATE_DEPTH_BUFFER_length(info) * 4 + - _3DSTATE_STENCIL_BUFFER_length(info) * 4 + - _3DSTATE_HIER_DEPTH_BUFFER_length(info) * 4 + - _3DSTATE_CLEAR_PARAMS_length(info) * 4; - + dev->ds.size = _3DSTATE_DEPTH_BUFFER_length(info) * 4; assert(_3DSTATE_DEPTH_BUFFER_SurfaceBaseAddress_start(info) % 8 == 0); dev->ds.depth_offset = _3DSTATE_DEPTH_BUFFER_SurfaceBaseAddress_start(info) / 8; - if (info->has_hiz_and_separate_stencil) { + if (dev->use_separate_stencil) { + dev->ds.size += _3DSTATE_STENCIL_BUFFER_length(info) * 4 + + _3DSTATE_HIER_DEPTH_BUFFER_length(info) * 4 + + _3DSTATE_CLEAR_PARAMS_length(info) * 4; + assert(_3DSTATE_STENCIL_BUFFER_SurfaceBaseAddress_start(info) % 8 == 0); dev->ds.stencil_offset = _3DSTATE_DEPTH_BUFFER_length(info) * 4 + -- 2.30.2