isl/gen8+: Allow 1D and 3D auxiliary surfaces
authorTopi Pohjolainen <topi.pohjolainen@intel.com>
Wed, 31 Aug 2016 08:16:12 +0000 (11:16 +0300)
committerTopi Pohjolainen <topi.pohjolainen@intel.com>
Mon, 12 Sep 2016 08:48:29 +0000 (11:48 +0300)
Otherwise once mcs buffer gets allocated without delay for lossless
compression (same as we do for msaa), assert starts to fire in
piglit case: tex3d. The test uses depth of one which is in fact
supported even now.

v2 (Jason): Allow also 1D case as there is nothing in the specs
            constraining it either.

Signed-off-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
src/intel/isl/isl.c

index c7639d0164e14acc2b274c8395d48bd9cf7aad66..3dfdf201d9eaffdc7402afcc70067685447a1755 100644 (file)
@@ -1329,7 +1329,8 @@ isl_surf_get_ccs_surf(const struct isl_device *dev,
    assert(surf->samples == 1 && surf->msaa_layout == ISL_MSAA_LAYOUT_NONE);
    assert(ISL_DEV_GEN(dev) >= 7);
 
-   assert(surf->dim == ISL_SURF_DIM_2D);
+   assert(ISL_DEV_GEN(dev) >= 8 || surf->dim == ISL_SURF_DIM_2D);
+
    assert(surf->logical_level0_px.depth == 1);
 
    /* TODO: More conditions where it can fail. */