summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJordan Justen <jordan.l.justen@intel.com>2021-08-12 15:09:16 -0700
committerJordan Justen <jordan.l.justen@intel.com>2021-12-02 16:30:44 -0800
commit5b87f5c88ac6155f7c9de9dbb29738ba36a0f951 (patch)
treebcb85cba8d64702f2a674a857208834a56bd9d90
parent0634cb741b55b74b7d673c56bc8fa39204ead621 (diff)
iris: Add iris_init_batches
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12692>
-rw-r--r--src/gallium/drivers/iris/iris_batch.c10
-rw-r--r--src/gallium/drivers/iris/iris_batch.h4
-rw-r--r--src/gallium/drivers/iris/iris_context.c4
3 files changed, 11 insertions, 7 deletions
diff --git a/src/gallium/drivers/iris/iris_batch.c b/src/gallium/drivers/iris/iris_batch.c
index 0e78c834e0c..58149e08b08 100644
--- a/src/gallium/drivers/iris/iris_batch.c
+++ b/src/gallium/drivers/iris/iris_batch.c
@@ -173,7 +173,7 @@ decode_batch(struct iris_batch *batch)
batch->exec_bos[0]->address, false);
}
-void
+static void
iris_init_batch(struct iris_context *ice,
enum iris_batch_name name,
int priority)
@@ -240,6 +240,14 @@ iris_init_batch(struct iris_context *ice,
iris_batch_reset(batch);
}
+void
+iris_init_batches(struct iris_context *ice, int priority)
+{
+ for (int i = 0; i < IRIS_BATCH_COUNT; i++) {
+ iris_init_batch(ice, (enum iris_batch_name) i, priority);
+ }
+}
+
static int
find_exec_index(struct iris_batch *batch, struct iris_bo *bo)
{
diff --git a/src/gallium/drivers/iris/iris_batch.h b/src/gallium/drivers/iris/iris_batch.h
index 0d3d597839c..b568239a4e1 100644
--- a/src/gallium/drivers/iris/iris_batch.h
+++ b/src/gallium/drivers/iris/iris_batch.h
@@ -176,9 +176,7 @@ struct iris_batch {
struct iris_measure_batch *measure;
};
-void iris_init_batch(struct iris_context *ice,
- enum iris_batch_name name,
- int priority);
+void iris_init_batches(struct iris_context *ice, int priority);
void iris_chain_to_new_batch(struct iris_batch *batch);
void iris_batch_free(struct iris_batch *batch);
void iris_batch_maybe_flush(struct iris_batch *batch, unsigned estimate);
diff --git a/src/gallium/drivers/iris/iris_context.c b/src/gallium/drivers/iris/iris_context.c
index 2b3e312c9b6..30fd7a2aada 100644
--- a/src/gallium/drivers/iris/iris_context.c
+++ b/src/gallium/drivers/iris/iris_context.c
@@ -362,9 +362,7 @@ iris_create_context(struct pipe_screen *pscreen, void *priv, unsigned flags)
if (INTEL_DEBUG(DEBUG_BATCH))
ice->state.sizes = _mesa_hash_table_u64_create(ice);
- for (int i = 0; i < IRIS_BATCH_COUNT; i++) {
- iris_init_batch(ice, (enum iris_batch_name) i, priority);
- }
+ iris_init_batches(ice, priority);
screen->vtbl.init_render_context(&ice->batches[IRIS_BATCH_RENDER]);
screen->vtbl.init_compute_context(&ice->batches[IRIS_BATCH_COMPUTE]);