summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/v3d/v3d_context.h
diff options
context:
space:
mode:
authorIago Toral Quiroga <itoral@igalia.com>2019-10-29 10:27:23 +0100
committerIago Toral Quiroga <itoral@igalia.com>2019-12-16 08:42:37 +0100
commit74a59fdc6e8c4f9c51454a6d1a5b8998083014b5 (patch)
treeadd466d61fbb718e8f7a34f970cfed4918de52ee /src/gallium/drivers/v3d/v3d_context.h
parenta0c94c70ee9aa74c7ff05acffc43c8e92b0c0e1e (diff)
v3d: support rendering to multi-layered framebuffers
When doing layered rendering the binning stage will prepare per-tile lists for each layer in the framebuffer, so we need to make sure we allocate enough space for them . We also need to emit the NUMBER_OF_LAYERS packet. This is required even when the number of layers is only 1, otherwise the simulator detects buffer overflows in the tile_state BO during some CTS test cases involving layered FBOs. When rendering, we need to emit commands for each layer of the framebuffer separately and make sure we address the correct layers for each one. v2: fixed typo in comment (Alejandro) Reviewed-by: Alejandro PiƱeiro <apinheiro@igalia.com>
Diffstat (limited to 'src/gallium/drivers/v3d/v3d_context.h')
-rw-r--r--src/gallium/drivers/v3d/v3d_context.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gallium/drivers/v3d/v3d_context.h b/src/gallium/drivers/v3d/v3d_context.h
index 738c1f82319..f8d146847de 100644
--- a/src/gallium/drivers/v3d/v3d_context.h
+++ b/src/gallium/drivers/v3d/v3d_context.h
@@ -354,6 +354,8 @@ struct v3d_job {
*/
uint32_t draw_width;
uint32_t draw_height;
+ uint32_t num_layers;
+
/** @} */
/** @{ Tile information, depending on MSAA and float color buffer. */
uint32_t draw_tiles_x; /** @< Number of tiles wide for framebuffer. */