diff options
author | Kenneth Graunke <[email protected]> | 2018-12-07 18:13:07 -0800 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2019-02-21 10:26:12 -0800 |
commit | 3c979b0e6d9e4d7a880cebcee514238ecb6baf61 (patch) | |
tree | 1b83a4598fbbb13ae8251b3d7faaf98e683584d0 /src/gallium/drivers/iris/iris_context.h | |
parent | 53c484ba8acdce11224e98a1d15e5619b8fcb554 (diff) |
iris: add some draw resolve hooks
Diffstat (limited to 'src/gallium/drivers/iris/iris_context.h')
-rw-r--r-- | src/gallium/drivers/iris/iris_context.h | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/gallium/drivers/iris/iris_context.h b/src/gallium/drivers/iris/iris_context.h index 13dd091ded8..1f8e000bd67 100644 --- a/src/gallium/drivers/iris/iris_context.h +++ b/src/gallium/drivers/iris/iris_context.h @@ -503,6 +503,12 @@ struct iris_context { /** Reference to the SURFACE_STATE for the compute grid resource */ struct iris_state_ref grid_surf_state; + /** + * Array of aux usages for drawing, altered to account for any + * self-dependencies from resources bound for sampling and rendering. + */ + enum isl_aux_usage draw_aux_usage[BRW_MAX_DRAW_BUFFERS]; + /** Bitfield of whether color blending is enabled for RT[i] */ uint8_t blend_enables; @@ -697,10 +703,13 @@ uint64_t iris_timebase_scale(const struct gen_device_info *devinfo, /* iris_resolve.c */ -void iris_predraw_resolve_inputs(struct iris_batch *batch, - struct iris_shader_state *shs); +void iris_predraw_resolve_inputs(struct iris_context *ice, + struct iris_batch *batch, + struct iris_shader_state *shs, + bool *draw_aux_buffer_disabled); void iris_predraw_resolve_framebuffer(struct iris_context *ice, - struct iris_batch *batch); + struct iris_batch *batch, + bool *draw_aux_buffer_disabled); void iris_postdraw_update_resolve_tracking(struct iris_context *ice, struct iris_batch *batch); void iris_cache_sets_clear(struct iris_batch *batch); |