mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-06 00:10:20 +01:00
isl: Move a CCS restriction in GFX 12.x
3D+MSAA is not supported and depth-stencil formats are all 32bpp or less. Move this restriction into single-sample case. Suggested-by: Nanley Chery <nanley.g.chery@intel.com> Signed-off-by: Jianxun Zhang <jianxun.zhang@intel.com> Reviewed-by: Nanley Chery <nanley.g.chery@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31496>
This commit is contained in:
parent
ab56a9eecd
commit
8db71c95e1
1 changed files with 16 additions and 16 deletions
|
|
@ -3204,23 +3204,23 @@ isl_surf_supports_ccs(const struct isl_device *dev,
|
|||
if (surf->row_pitch_B % 512 != 0)
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/* BSpec 44930: (Gfx12, Gfx12.5)
|
||||
*
|
||||
* "Compression of 3D Ys surfaces with 64 or 128 bpp is not supported
|
||||
* in Gen12. Moreover, "Render Target Fast-clear Enable" command is
|
||||
* not supported for any 3D Ys surfaces. except when Surface is a
|
||||
* Procdural Texture."
|
||||
*
|
||||
* Since the note applies to MTL, we apply this to TILE64 too.
|
||||
*/
|
||||
uint32_t format_bpb = isl_format_get_layout(surf->format)->bpb;
|
||||
if (surf->dim == ISL_SURF_DIM_3D &&
|
||||
(surf->tiling == ISL_TILING_ICL_Ys ||
|
||||
isl_tiling_is_64(surf->tiling)) &&
|
||||
(format_bpb == 64 || format_bpb == 128))
|
||||
return false;
|
||||
/* BSpec 44930: (Gfx12, Gfx12.5)
|
||||
*
|
||||
* "Compression of 3D Ys surfaces with 64 or 128 bpp is not supported
|
||||
* in Gen12. Moreover, "Render Target Fast-clear Enable" command is
|
||||
* not supported for any 3D Ys surfaces. except when Surface is a
|
||||
* Procdural Texture."
|
||||
*
|
||||
* Since the note applies to MTL, we apply this to TILE64 too.
|
||||
*/
|
||||
uint32_t format_bpb = isl_format_get_layout(surf->format)->bpb;
|
||||
if (surf->dim == ISL_SURF_DIM_3D &&
|
||||
(surf->tiling == ISL_TILING_ICL_Ys ||
|
||||
isl_tiling_is_64(surf->tiling)) &&
|
||||
(format_bpb == 64 || format_bpb == 128))
|
||||
return false;
|
||||
}
|
||||
} else if (ISL_GFX_VER(dev) < 12) {
|
||||
if (surf->samples > 1)
|
||||
return false;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue