i965: Fold the gen6/7 URB state prepare()/emit() together.
authorEric Anholt <eric@anholt.net>
Sat, 22 Oct 2011 18:17:27 +0000 (11:17 -0700)
committerEric Anholt <eric@anholt.net>
Sat, 29 Oct 2011 19:16:49 +0000 (12:16 -0700)
No other unit cares about the prepare state, unlike gen4-5.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Acked-by: Paul Berry <stereotype441@gmail.com>
src/mesa/drivers/dri/i965/gen6_urb.c
src/mesa/drivers/dri/i965/gen7_urb.c

index b4105111c8c842dba4dfedbb763df03fc341f64a..d045bf28ec2222cde2ba8e1430a68671e958bea5 100644 (file)
@@ -32,8 +32,9 @@
 #include "brw_defines.h"
 
 static void
-prepare_urb( struct brw_context *brw )
+gen6_upload_urb( struct brw_context *brw )
 {
+   struct intel_context *intel = &brw->intel;
    int nr_vs_entries;
 
    /* CACHE_NEW_VS_PROG */
@@ -53,12 +54,6 @@ prepare_urb( struct brw_context *brw )
     */
    brw->urb.nr_gs_entries = 0;
    brw->urb.gs_size = 1; /* Incorrect, but with 0 GS entries it doesn't matter. */
-}
-
-static void
-upload_urb(struct brw_context *brw)
-{
-   struct intel_context *intel = &brw->intel;
 
    assert(brw->urb.nr_vs_entries >= 24);
    assert(brw->urb.nr_vs_entries % 4 == 0);
@@ -81,6 +76,5 @@ const struct brw_tracked_state gen6_urb = {
       .brw = BRW_NEW_CONTEXT,
       .cache = (CACHE_NEW_VS_PROG | CACHE_NEW_GS_PROG),
    },
-   .prepare = prepare_urb,
-   .emit = upload_urb,
+   .emit = gen6_upload_urb,
 };
index 2b650e9bc453b12da4327e1190982e73ee46df81..e53fcb77356dc5e57638db2b084d8f8d9e4ae81b 100644 (file)
@@ -51,8 +51,9 @@
  * See "Volume 2a: 3D Pipeline," section 1.8.
  */
 static void
-prepare_urb(struct brw_context *brw)
+gen7_upload_urb(struct brw_context *brw)
 {
+   struct intel_context *intel = &brw->intel;
    /* Total space for entries is URB size - 16kB for push constants */
    int handle_region_size = (brw->urb.size - 16) * 1024; /* bytes */
 
@@ -68,12 +69,6 @@ prepare_urb(struct brw_context *brw)
 
    /* URB Starting Addresses are specified in multiples of 8kB. */
    brw->urb.vs_start = 2; /* skip over push constants */
-}
-
-static void
-upload_urb(struct brw_context *brw)
-{
-   struct intel_context *intel = &brw->intel;
 
    assert(brw->urb.nr_vs_entries % 8 == 0);
    assert(brw->urb.nr_gs_entries % 8 == 0);
@@ -123,6 +118,5 @@ const struct brw_tracked_state gen7_urb = {
       .brw = BRW_NEW_CONTEXT,
       .cache = (CACHE_NEW_VS_PROG | CACHE_NEW_GS_PROG),
    },
-   .prepare = prepare_urb,
-   .emit = upload_urb,
+   .emit = gen7_upload_urb,
 };