}
}
-bool
-isl_surf_supports_hiz_ccs_wt(const struct gen_device_info *dev,
- const struct isl_surf *surf,
- enum isl_aux_usage aux_usage)
-{
- return aux_usage == ISL_AUX_USAGE_HIZ_CCS &&
- surf->samples == 1 &&
- surf->usage & ISL_SURF_USAGE_TEXTURE_BIT;
-}
-
bool
isl_swizzle_supports_rendering(const struct gen_device_info *devinfo,
struct isl_swizzle swizzle)
isl_surf_get_depth_format(const struct isl_device *dev,
const struct isl_surf *surf);
-/**
- * @brief determines if a surface supports writing through HIZ to the CCS.
- */
-bool
-isl_surf_supports_hiz_ccs_wt(const struct gen_device_info *dev,
- const struct isl_surf *surf,
- enum isl_aux_usage aux_usage);
-
/**
* @brief performs a copy from linear to tiled surface
*
hiz.SurfacePitch = info->hiz_surf->row_pitch_B - 1;
#if GEN_GEN >= 12
hiz.HierarchicalDepthBufferWriteThruEnable =
- isl_surf_supports_hiz_ccs_wt(dev->info, info->depth_surf,
- info->hiz_usage) ||
info->hiz_usage == ISL_AUX_USAGE_HIZ_CCS_WT;
/* The bspec docs for this bit are fairly unclear about exactly what is
*/
assert(!(info->view->usage & ISL_SURF_USAGE_STORAGE_BIT));
+ if (isl_surf_usage_is_depth(info->surf->usage))
+ assert(isl_aux_usage_has_hiz(info->aux_usage));
+
if (isl_aux_usage_has_hiz(info->aux_usage)) {
/* For Gen8-10, there are some restrictions around sampling from HiZ.
* The Skylake PRM docs for RENDER_SURFACE_STATE::AuxiliarySurfaceMode