From: Jason Ekstrand Date: Fri, 12 May 2017 05:23:36 +0000 (-0700) Subject: i965/gen4: Expose the guts of URB recalculation as a helper X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=79b486f73635df41334da79ce4593bab999895ab;p=mesa.git i965/gen4: Expose the guts of URB recalculation as a helper Reviewed-by: Topi Pohjolainen --- diff --git a/src/mesa/drivers/dri/i965/brw_context.h b/src/mesa/drivers/dri/i965/brw_context.h index 22a84e6197c..ccedeccf309 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 1ba981a5464..18daf5137bd 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->sf.prog_data->urb_entry_size); +} + const struct brw_tracked_state brw_recalculate_urb_fence = { .dirty = {