From: Jason Ekstrand Date: Fri, 12 May 2017 20:31:05 +0000 (-0700) Subject: intel/isl: Don't request space for stencil/hiz packets unless needed X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b9b7792d9abc722bc9e267050fc4d1be6caec243;p=mesa.git 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 --- 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 +