diff options
author | Nicolai Hähnle <nicolai.haehnle@amd.com> | 2016-06-03 14:50:42 +0200 |
---|---|---|
committer | Nicolai Hähnle <nicolai.haehnle@amd.com> | 2016-06-03 15:28:04 +0200 |
commit | 6feef8a64611a7af8053fb4459d7853557b917f2 (patch) | |
tree | 8a8682cd48bd089dcc4ac2d16e912378df975347 | |
parent | 260f35b2233233b5aaab6e0d85197fe9c9b58ccf (diff) |
radeonsi: move descriptor set begin_new_cs handling into a separate function
-rw-r--r-- | src/gallium/drivers/radeonsi/si_descriptors.c | 36 |
1 files changed, 15 insertions, 21 deletions
diff --git a/src/gallium/drivers/radeonsi/si_descriptors.c b/src/gallium/drivers/radeonsi/si_descriptors.c index e24281bd20..b076052f83 100644 --- a/src/gallium/drivers/radeonsi/si_descriptors.c +++ b/src/gallium/drivers/radeonsi/si_descriptors.c @@ -249,6 +249,18 @@ static bool si_upload_descriptors(struct si_context *sctx, return true; } +static void +si_descriptors_begin_new_cs(struct si_context *sctx, struct si_descriptors *desc) +{ + desc->ce_ram_dirty = true; + + if (!desc->buffer) + return; + + radeon_add_to_buffer_list(&sctx->b, &sctx->b.gfx, desc->buffer, + RADEON_USAGE_READ, RADEON_PRIO_DESCRIPTORS); +} + /* SAMPLER VIEWS */ static void si_release_sampler_views(struct si_sampler_views *views) @@ -287,12 +299,7 @@ static void si_sampler_views_begin_new_cs(struct si_context *sctx, RADEON_USAGE_READ); } - views->desc.ce_ram_dirty = true; - - if (!views->desc.buffer) - return; - radeon_add_to_buffer_list(&sctx->b, &sctx->b.gfx, views->desc.buffer, - RADEON_USAGE_READWRITE, RADEON_PRIO_DESCRIPTORS); + si_descriptors_begin_new_cs(sctx, &views->desc); } void si_set_mutable_tex_desc_fields(struct r600_texture *tex, @@ -489,14 +496,7 @@ si_image_views_begin_new_cs(struct si_context *sctx, struct si_images_info *imag RADEON_USAGE_READWRITE); } - images->desc.ce_ram_dirty = true; - - if (images->desc.buffer) { - radeon_add_to_buffer_list(&sctx->b, &sctx->b.gfx, - images->desc.buffer, - RADEON_USAGE_READ, - RADEON_PRIO_DESCRIPTORS); - } + si_descriptors_begin_new_cs(sctx, &images->desc); } static void @@ -737,13 +737,7 @@ static void si_buffer_resources_begin_new_cs(struct si_context *sctx, buffers->shader_usage, buffers->priority); } - buffers->desc.ce_ram_dirty = true; - - if (!buffers->desc.buffer) - return; - radeon_add_to_buffer_list(&sctx->b, &sctx->b.gfx, - buffers->desc.buffer, RADEON_USAGE_READWRITE, - RADEON_PRIO_DESCRIPTORS); + si_descriptors_begin_new_cs(sctx, &buffers->desc); } /* VERTEX BUFFERS */ |