summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r600/r600_pipe.h
diff options
context:
space:
mode:
authorDave Airlie <[email protected]>2018-01-19 13:20:36 +1000
committerEmil Velikov <[email protected]>2018-02-05 16:40:59 +0000
commit412c850120a4bb9a1829358bbf8314d5765b02e0 (patch)
tree89af99ef10681605aca269eb12cbe86c4b01af8c /src/gallium/drivers/r600/r600_pipe.h
parent61c42583d9d0fa2e762004a2c4356016f057c514 (diff)
r600/eg: construct proper rat mask for image/buffers.
If the images/buffer bindings had a gap, this produced the wrong values, this should fix that to generate the correct rat mask for mixes of images/buffers/cbs. Reviewed-by: Roland Scheidegger <[email protected]> Cc: "18.0" <[email protected]> Signed-off-by: Dave Airlie <[email protected]> (cherry picked from commit e0e23ea69cab23b9193b1e7c568fd23fc7073071)
Diffstat (limited to 'src/gallium/drivers/r600/r600_pipe.h')
-rw-r--r--src/gallium/drivers/r600/r600_pipe.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/gallium/drivers/r600/r600_pipe.h b/src/gallium/drivers/r600/r600_pipe.h
index 112b5cbb83e..0b4542fb7ee 100644
--- a/src/gallium/drivers/r600/r600_pipe.h
+++ b/src/gallium/drivers/r600/r600_pipe.h
@@ -152,8 +152,8 @@ struct r600_cb_misc_state {
unsigned blend_colormask; /* 8*4 bits for 8 RGBA colorbuffers */
unsigned nr_cbufs;
unsigned nr_ps_color_outputs;
- unsigned nr_image_rats;
- unsigned nr_buffer_rats;
+ unsigned image_rat_enabled_mask;
+ unsigned buffer_rat_enabled_mask;
bool multiwrite;
bool dual_src_blend;
};
@@ -700,6 +700,9 @@ void evergreen_init_color_surface_rat(struct r600_context *rctx,
struct r600_surface *surf);
void evergreen_update_db_shader_control(struct r600_context * rctx);
bool evergreen_adjust_gprs(struct r600_context *rctx);
+
+uint32_t evergreen_construct_rat_mask(struct r600_context *rctx, struct r600_cb_misc_state *a,
+ unsigned nr_cbufs);
/* r600_blit.c */
void r600_init_blit_functions(struct r600_context *rctx);
void r600_decompress_depth_textures(struct r600_context *rctx,