* 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 */
/* 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);
/* GS requirement */
- assert(!brw->gs.prog_bo);
+ assert(!brw->gs.prog_active);
BEGIN_BATCH(2);
OUT_BATCH(_3DSTATE_PUSH_CONSTANT_ALLOC_VS << 16 | (2 - 2));
.brw = BRW_NEW_CONTEXT,
.cache = (CACHE_NEW_VS_PROG | CACHE_NEW_GS_PROG),
},
- .prepare = prepare_urb,
- .emit = upload_urb,
+ .emit = gen7_upload_urb,
};