iris: Disable fast clear when surface height is 16k
If surface height during fast clear is 16k, as per bspec the height programmed should be "value - 1" i.e. 0x3FFF. However, HW adds "1" to it but ignores overflow bit[14]. HW performs OOB check based on bit[13:0] which is 0 and drops failed transactions. This patch passes the following failing test on LNL: "PIGLIT_PLATFORM=gbm PIGLIT_DEFAULT_SIZE=16384x16384 shader_runner fast-slow-clear-interaction.shader_test -auto -fbo" Signed-off-by: Aditya Swarup <aditya.swarup@intel.com> Reviewed-by: Nanley Chery <nanley.g.chery@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29182>
This commit is contained in:
@@ -157,6 +157,12 @@ can_fast_clear_color(struct iris_context *ice,
|
||||
return false;
|
||||
}
|
||||
|
||||
/* Wa_16021232440: Disable fast clear when height is 16k */
|
||||
if (intel_needs_workaround(devinfo, 16021232440) &&
|
||||
res->surf.logical_level0_px.h == 16 * 1024) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user