[Mesa-dev] [PATCH 1/2] radeonsi: remove the shader parameter from si_set_ring_buffer

Bas Nieuwenhuizen bas at basnieuwenhuizen.nl
Thu Apr 21 16:06:04 UTC 2016


On Thu, Apr 21, 2016 at 5:58 PM, Marek Olšák <maraeo at gmail.com> wrote:
> From: Marek Olšák <marek.olsak at amd.com>
>
> not used anymore
>
> this is a follow-up to the RW buffer cleanup.

Thanks. This series is

Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>

as well as patch 2 from the original series.

- Bas

> ---
>  src/gallium/drivers/radeonsi/si_descriptors.c   |  5 +----
>  src/gallium/drivers/radeonsi/si_state.h         |  2 +-
>  src/gallium/drivers/radeonsi/si_state_shaders.c | 19 +++++++++----------
>  3 files changed, 11 insertions(+), 15 deletions(-)
>
> diff --git a/src/gallium/drivers/radeonsi/si_descriptors.c b/src/gallium/drivers/radeonsi/si_descriptors.c
> index 6da65df..343874c 100644
> --- a/src/gallium/drivers/radeonsi/si_descriptors.c
> +++ b/src/gallium/drivers/radeonsi/si_descriptors.c
> @@ -907,7 +907,7 @@ static void si_set_shader_buffers(struct pipe_context *ctx, unsigned shader,
>
>  /* RING BUFFERS */
>
> -void si_set_ring_buffer(struct pipe_context *ctx, uint shader, uint slot,
> +void si_set_ring_buffer(struct pipe_context *ctx, uint slot,
>                         struct pipe_resource *buffer,
>                         unsigned stride, unsigned num_records,
>                         bool add_tid, bool swizzle,
> @@ -916,9 +916,6 @@ void si_set_ring_buffer(struct pipe_context *ctx, uint shader, uint slot,
>         struct si_context *sctx = (struct si_context *)ctx;
>         struct si_buffer_resources *buffers = &sctx->rw_buffers;
>
> -       if (shader >= SI_NUM_SHADERS)
> -               return;
> -
>         /* The stride field in the resource descriptor has 14 bits */
>         assert(stride < (1 << 14));
>
> diff --git a/src/gallium/drivers/radeonsi/si_state.h b/src/gallium/drivers/radeonsi/si_state.h
> index ef9f864..ed3a1fe 100644
> --- a/src/gallium/drivers/radeonsi/si_state.h
> +++ b/src/gallium/drivers/radeonsi/si_state.h
> @@ -248,7 +248,7 @@ struct si_buffer_resources {
>
>  /* si_descriptors.c */
>  void si_ce_enable_loads(struct radeon_winsys_cs *ib);
> -void si_set_ring_buffer(struct pipe_context *ctx, uint shader, uint slot,
> +void si_set_ring_buffer(struct pipe_context *ctx, uint slot,
>                         struct pipe_resource *buffer,
>                         unsigned stride, unsigned num_records,
>                         bool add_tid, bool swizzle,
> diff --git a/src/gallium/drivers/radeonsi/si_state_shaders.c b/src/gallium/drivers/radeonsi/si_state_shaders.c
> index 3bec4e9..88e9b7e 100644
> --- a/src/gallium/drivers/radeonsi/si_state_shaders.c
> +++ b/src/gallium/drivers/radeonsi/si_state_shaders.c
> @@ -1565,15 +1565,15 @@ static bool si_update_gs_ring_buffers(struct si_context *sctx)
>
>         /* Set ring bindings. */
>         if (sctx->esgs_ring) {
> -               si_set_ring_buffer(&sctx->b.b, PIPE_SHADER_VERTEX, SI_ES_RING_ESGS,
> +               si_set_ring_buffer(&sctx->b.b, SI_ES_RING_ESGS,
>                                    sctx->esgs_ring, 0, sctx->esgs_ring->width0,
>                                    true, true, 4, 64, 0);
> -               si_set_ring_buffer(&sctx->b.b, PIPE_SHADER_GEOMETRY, SI_GS_RING_ESGS,
> +               si_set_ring_buffer(&sctx->b.b, SI_GS_RING_ESGS,
>                                    sctx->esgs_ring, 0, sctx->esgs_ring->width0,
>                                    false, false, 0, 0, 0);
>         }
>         if (sctx->gsvs_ring)
> -               si_set_ring_buffer(&sctx->b.b, PIPE_SHADER_VERTEX, SI_VS_RING_GSVS,
> +               si_set_ring_buffer(&sctx->b.b, SI_VS_RING_GSVS,
>                                    sctx->gsvs_ring, 0, sctx->gsvs_ring->width0,
>                                    false, false, 0, 0, 0);
>         return true;
> @@ -1589,22 +1589,22 @@ static void si_update_gsvs_ring_bindings(struct si_context *sctx)
>
>         sctx->last_gsvs_itemsize = gsvs_itemsize;
>
> -       si_set_ring_buffer(&sctx->b.b, PIPE_SHADER_GEOMETRY, SI_GS_RING_GSVS0,
> +       si_set_ring_buffer(&sctx->b.b, SI_GS_RING_GSVS0,
>                            sctx->gsvs_ring, gsvs_itemsize,
>                            64, true, true, 4, 16, 0);
>
>         offset = gsvs_itemsize * 64;
> -       si_set_ring_buffer(&sctx->b.b, PIPE_SHADER_GEOMETRY, SI_GS_RING_GSVS1,
> +       si_set_ring_buffer(&sctx->b.b, SI_GS_RING_GSVS1,
>                            sctx->gsvs_ring, gsvs_itemsize,
>                            64, true, true, 4, 16, offset);
>
>         offset = (gsvs_itemsize * 2) * 64;
> -       si_set_ring_buffer(&sctx->b.b, PIPE_SHADER_GEOMETRY, SI_GS_RING_GSVS2,
> +       si_set_ring_buffer(&sctx->b.b, SI_GS_RING_GSVS2,
>                            sctx->gsvs_ring, gsvs_itemsize,
>                            64, true, true, 4, 16, offset);
>
>         offset = (gsvs_itemsize * 3) * 64;
> -       si_set_ring_buffer(&sctx->b.b, PIPE_SHADER_GEOMETRY, SI_GS_RING_GSVS3,
> +       si_set_ring_buffer(&sctx->b.b, SI_GS_RING_GSVS3,
>                            sctx->gsvs_ring, gsvs_itemsize,
>                            64, true, true, 4, 16, offset);
>  }
> @@ -1792,9 +1792,8 @@ static void si_init_tess_factor_ring(struct si_context *sctx)
>         sctx->b.initial_gfx_cs_size = 0; /* force flush */
>         si_context_gfx_flush(sctx, RADEON_FLUSH_ASYNC, NULL);
>
> -       si_set_ring_buffer(&sctx->b.b, PIPE_SHADER_TESS_CTRL,
> -                          SI_HS_RING_TESS_FACTOR, sctx->tf_ring, 0,
> -                          sctx->tf_ring->width0, false, false, 0, 0, 0);
> +       si_set_ring_buffer(&sctx->b.b, SI_HS_RING_TESS_FACTOR, sctx->tf_ring,
> +                          0, sctx->tf_ring->width0, false, false, 0, 0, 0);
>  }
>
>  /**
> --
> 2.5.0
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list