[Mesa-dev] [PATCH 04/10] radeonsi: move the buffer descriptor to the end of the image descriptor
Ilia Mirkin
imirkin at alum.mit.edu
Sun Feb 1 09:50:12 PST 2015
On Sun, Feb 1, 2015 at 12:37 PM, Marek Olšák <maraeo at gmail.com> wrote:
> From: Marek Olšák <marek.olsak at amd.com>
>
> This will allow supporting NULL textures.
> ---
> src/gallium/drivers/radeonsi/si_descriptors.c | 2 +-
> src/gallium/drivers/radeonsi/si_pipe.h | 2 ++
> src/gallium/drivers/radeonsi/si_shader.c | 4 ++--
> src/gallium/drivers/radeonsi/si_state.c | 8 ++++----
> 4 files changed, 9 insertions(+), 7 deletions(-)
>
> diff --git a/src/gallium/drivers/radeonsi/si_descriptors.c b/src/gallium/drivers/radeonsi/si_descriptors.c
> index 573787a..15b4da1 100644
> --- a/src/gallium/drivers/radeonsi/si_descriptors.c
> +++ b/src/gallium/drivers/radeonsi/si_descriptors.c
> @@ -1063,7 +1063,7 @@ static void si_invalidate_buffer(struct pipe_context *ctx, struct pipe_resource
> /* Texture buffers - update virtual addresses in sampler view descriptors. */
> LIST_FOR_EACH_ENTRY(view, &sctx->b.texture_buffers, list) {
> if (view->base.texture == buf) {
> - si_desc_reset_buffer_offset(ctx, view->state, old_va, buf);
> + si_desc_reset_buffer_offset(ctx, &view->state[4], old_va, buf);
> }
> }
> /* Texture buffers - update bindings. */
> diff --git a/src/gallium/drivers/radeonsi/si_pipe.h b/src/gallium/drivers/radeonsi/si_pipe.h
> index b88f154..d2edcdf 100644
> --- a/src/gallium/drivers/radeonsi/si_pipe.h
> +++ b/src/gallium/drivers/radeonsi/si_pipe.h
> @@ -90,6 +90,8 @@ struct si_sampler_view {
> struct pipe_sampler_view base;
> struct list_head list;
> struct r600_resource *resource;
> + /* [0..7] = image descriptor
Did you mean 0..3?
> + * [4..7] = buffer descriptor */
> uint32_t state[8];
> uint32_t fmask_state[8];
> };
More information about the mesa-dev
mailing list