mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-04-24 09:20:49 +02:00
intel/isl: Only assert surface addresses on gfx9+
Restrict the surface address assertions to platforms with soft-pin. We
technically could check for (gfx8+ && !CHV), but we choose to use the
simpler condition instead.
Fixes: 8e96b516ca ("intel/isl: Assert alignments of surface addresses")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11331
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/38905>
This commit is contained in:
parent
49446a62c0
commit
d2f336c108
2 changed files with 10 additions and 0 deletions
|
|
@ -169,7 +169,9 @@ isl_genX(emit_depth_stencil_hiz_s)(const struct isl_device *dev, void *batch,
|
|||
#if GFX_VER >= 7
|
||||
db.DepthWriteEnable = true;
|
||||
#endif
|
||||
#if GFX_VER >= 9
|
||||
assert(info->depth_address % info->depth_surf->alignment_B == 0);
|
||||
#endif
|
||||
db.SurfaceBaseAddress = info->depth_address;
|
||||
|
||||
#if GFX_VERx10 >= 125
|
||||
|
|
@ -271,7 +273,9 @@ isl_genX(emit_depth_stencil_hiz_s)(const struct isl_device *dev, void *batch,
|
|||
#elif GFX_VERx10 >= 75
|
||||
sb.StencilBufferEnable = true;
|
||||
#endif
|
||||
#if GFX_VER >= 9
|
||||
assert(info->stencil_address % info->stencil_surf->alignment_B == 0);
|
||||
#endif
|
||||
sb.SurfaceBaseAddress = info->stencil_address;
|
||||
sb.SurfacePitch = info->stencil_surf->row_pitch_B - 1;
|
||||
#if GFX_VER >= 8
|
||||
|
|
@ -313,7 +317,9 @@ isl_genX(emit_depth_stencil_hiz_s)(const struct isl_device *dev, void *batch,
|
|||
assert(GFX_VER >= 12 || info->hiz_usage == ISL_AUX_USAGE_HIZ);
|
||||
db.HierarchicalDepthBufferEnable = true;
|
||||
|
||||
#if GFX_VER >= 9
|
||||
assert(info->hiz_address % info->hiz_surf->alignment_B == 0);
|
||||
#endif
|
||||
hiz.SurfaceBaseAddress = info->hiz_address;
|
||||
hiz.SurfacePitch = info->hiz_surf->row_pitch_B - 1;
|
||||
|
||||
|
|
|
|||
|
|
@ -641,7 +641,9 @@ isl_genX(surf_fill_state_s)(const struct isl_device *dev, void *state,
|
|||
assert(isl_swizzle_is_identity(info->view->swizzle));
|
||||
#endif
|
||||
|
||||
#if GFX_VER >= 9
|
||||
assert(info->address % info->surf->alignment_B == 0);
|
||||
#endif
|
||||
s.SurfaceBaseAddress = info->address;
|
||||
|
||||
#if GFX_VER >= 6
|
||||
|
|
@ -875,7 +877,9 @@ isl_genX(surf_fill_state_s)(const struct isl_device *dev, void *state,
|
|||
uint32_t pitch_in_tiles =
|
||||
info->aux_surf->row_pitch_B / tile_info.phys_extent_B.width;
|
||||
|
||||
#if GFX_VER >= 9
|
||||
assert(info->aux_address % info->aux_surf->alignment_B == 0);
|
||||
#endif
|
||||
s.AuxiliarySurfaceBaseAddress = info->aux_address;
|
||||
s.AuxiliarySurfacePitch = pitch_in_tiles - 1;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue