[Mesa-dev] [PATCH 35/43] i965/gen4: Expose the guts of URB recalculation as a helper
Pohjolainen, Topi
topi.pohjolainen at gmail.com
Thu May 18 06:18:40 UTC 2017
On Tue, May 16, 2017 at 03:45:29PM -0700, Jason Ekstrand wrote:
> ---
> src/mesa/drivers/dri/i965/brw_context.h | 2 ++
> src/mesa/drivers/dri/i965/brw_urb.c | 15 ++++++++++-----
> 2 files changed, 12 insertions(+), 5 deletions(-)
>
> diff --git a/src/mesa/drivers/dri/i965/brw_context.h b/src/mesa/drivers/dri/i965/brw_context.h
> index 22a84e6..ccedecc 100644
> --- a/src/mesa/drivers/dri/i965/brw_context.h
> +++ b/src/mesa/drivers/dri/i965/brw_context.h
> @@ -1361,6 +1361,8 @@ void brw_destroy_shader_time(struct brw_context *brw);
>
> /* brw_urb.c
> */
> +void brw_calculate_urb_fence(struct brw_context *brw, unsigned csize,
> + unsigned vsize, unsigned sfsize);
> void brw_upload_urb_fence(struct brw_context *brw);
>
> /* brw_curbe.c
> diff --git a/src/mesa/drivers/dri/i965/brw_urb.c b/src/mesa/drivers/dri/i965/brw_urb.c
> index 1ba981a..18daf51 100644
> --- a/src/mesa/drivers/dri/i965/brw_urb.c
> +++ b/src/mesa/drivers/dri/i965/brw_urb.c
> @@ -112,12 +112,10 @@ static bool check_urb_layout(struct brw_context *brw)
> /* Most minimal update, forces re-emit of URB fence packet after GS
> * unit turned on/off.
> */
> -static void recalculate_urb_fence( struct brw_context *brw )
> +void
> +brw_calculate_urb_fence(struct brw_context *brw, unsigned csize,
> + unsigned vsize, unsigned sfsize)
> {
> - GLuint csize = brw->curbe.total_size;
> - GLuint vsize = brw_vue_prog_data(brw->vs.base.prog_data)->urb_entry_size;
> - GLuint sfsize = brw->sf.prog_data->urb_entry_size;
> -
> if (csize < limits[CS].min_entry_size)
> csize = limits[CS].min_entry_size;
>
> @@ -208,6 +206,13 @@ done:
> }
> }
>
> +static void recalculate_urb_fence( struct brw_context *brw )
> +{
> + brw_calculate_urb_fence(brw, brw->curbe.total_size,
> + brw_vue_prog_data(brw->vs.base.prog_data)->urb_entry_size,
brw_vue_prog_data(
brw->vs.base.prog_data)->urb_entry_size,
would prevent overflowing the line.
> + brw->sf.prog_data->urb_entry_size);
> +}
> +
>
> const struct brw_tracked_state brw_recalculate_urb_fence = {
> .dirty = {
> --
> 2.5.0.400.gff86faf
>
> _______________________________________________
> 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