According to the RENDER_SURFACE_STATE internal documentation, the
R32G32B32_FLOAT restriction is marked "IVB" only. We choose to apply
it to Ivybridge and Baytrail, but not Haswell.
Apparently fixes KHR-GL46.texture_size_promotion.functional on Haswell.
Changes these tests from crashing to skipping on Haswell:
- KHR-GL46.direct_state_access.textures_storage_multisample_2d_rgb32f
- KHR-GL46.direct_state_access.textures_storage_multisample_3d_rgb32f
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
* (0x190)
*
* - VALIGN_4 is not supported for surface format R32G32B32_FLOAT.
+ *
+ * The R32G32B32_FLOAT restriction is dropped on Haswell.
*/
return isl_format_is_yuv(format) ||
- format == ISL_FORMAT_R32G32B32_FLOAT;
+ (format == ISL_FORMAT_R32G32B32_FLOAT && !ISL_DEV_IS_HASWELL(dev));
}
bool