From 6ff4c24fdd3ea078da5eba7c71fcbdf4c481d440 Mon Sep 17 00:00:00 2001 From: Nanley Chery Date: Fri, 30 Sep 2016 10:28:18 -0700 Subject: [PATCH] anv/cmd_buffer: Clarify HZ rectangle behavior This behavior differs from what's described in the PRMs and was observed by analyzing CTS test results. Signed-off-by: Nanley Chery Reviewed-by: Jason Ekstrand --- src/intel/vulkan/gen8_cmd_buffer.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/intel/vulkan/gen8_cmd_buffer.c b/src/intel/vulkan/gen8_cmd_buffer.c index f1dfe7b..0b1d5bf 100644 --- a/src/intel/vulkan/gen8_cmd_buffer.c +++ b/src/intel/vulkan/gen8_cmd_buffer.c @@ -481,9 +481,10 @@ genX(cmd_buffer_emit_hz_op)(struct anv_cmd_buffer *cmd_buffer, hzp.ClearRectangleXMax = align_u32(iview->extent.width, 8); hzp.ClearRectangleYMax = align_u32(iview->extent.height, 4); } else { - /* This clear rectangle is aligned */ + /* Contrary to the HW docs both fields are inclusive */ hzp.ClearRectangleXMin = cmd_state->render_area.offset.x; hzp.ClearRectangleYMin = cmd_state->render_area.offset.y; + /* Contrary to the HW docs both fields are exclusive */ hzp.ClearRectangleXMax = cmd_state->render_area.offset.x + align_u32(cmd_state->render_area.extent.width, px_dim.width); hzp.ClearRectangleYMax = cmd_state->render_area.offset.y + -- 2.7.4