summaryrefslogtreecommitdiffstats
path: root/src/intel/vulkan
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2016-11-14 23:45:16 -0800
committerKenneth Graunke <[email protected]>2016-11-19 11:39:45 -0800
commit58c09e72b15768524e5b76b55eae506391b663d8 (patch)
tree2010b211a1d2fdca23a19829ce94d2db26698396 /src/intel/vulkan
parent2acfd364798fcefe09acffabb106c9732d403e6c (diff)
intel: Convert devinfo->urb.max_*_entries into an array.
Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Topi Pohjolainen <[email protected]>
Diffstat (limited to 'src/intel/vulkan')
-rw-r--r--src/intel/vulkan/genX_pipeline.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/intel/vulkan/genX_pipeline.c b/src/intel/vulkan/genX_pipeline.c
index 8cb8de06cc9..7e263f826bf 100644
--- a/src/intel/vulkan/genX_pipeline.c
+++ b/src/intel/vulkan/genX_pipeline.c
@@ -237,7 +237,8 @@ genX(emit_urb_setup)(struct anv_device *device, struct anv_batch *batch,
ALIGN(device->info.urb.min_vs_entries * vs_entry_size_bytes,
chunk_size_bytes) / chunk_size_bytes;
unsigned vs_wants =
- ALIGN(device->info.urb.max_vs_entries * vs_entry_size_bytes,
+ ALIGN(device->info.urb.max_entries[MESA_SHADER_VERTEX] *
+ vs_entry_size_bytes,
chunk_size_bytes) / chunk_size_bytes - vs_chunks;
unsigned gs_chunks = 0;
@@ -254,7 +255,8 @@ genX(emit_urb_setup)(struct anv_device *device, struct anv_batch *batch,
gs_chunks = ALIGN(MAX2(gs_granularity, 2) * gs_entry_size_bytes,
chunk_size_bytes) / chunk_size_bytes;
gs_wants =
- ALIGN(device->info.urb.max_gs_entries * gs_entry_size_bytes,
+ ALIGN(device->info.urb.max_entries[MESA_SHADER_GEOMETRY] *
+ gs_entry_size_bytes,
chunk_size_bytes) / chunk_size_bytes - gs_chunks;
}
@@ -289,8 +291,10 @@ genX(emit_urb_setup)(struct anv_device *device, struct anv_batch *batch,
/* Since we rounded up when computing *_wants, this may be slightly more
* than the maximum allowed amount, so correct for that.
*/
- nr_vs_entries = MIN2(nr_vs_entries, device->info.urb.max_vs_entries);
- nr_gs_entries = MIN2(nr_gs_entries, device->info.urb.max_gs_entries);
+ nr_vs_entries = MIN2(nr_vs_entries,
+ device->info.urb.max_entries[MESA_SHADER_VERTEX]);
+ nr_gs_entries = MIN2(nr_gs_entries,
+ device->info.urb.max_entries[MESA_SHADER_GEOMETRY]);
/* Ensure that we program a multiple of the granularity. */
nr_vs_entries = ROUND_DOWN_TO(nr_vs_entries, vs_granularity);