summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/iris/iris_batch.h
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2018-01-21 00:16:15 -0800
committerKenneth Graunke <[email protected]>2019-02-21 10:26:05 -0800
commitff5c886fb3e974af3f5b57dddfec40218b086a70 (patch)
treee296868a2361310a2f21c7acf5ebb6b04134db4b /src/gallium/drivers/iris/iris_batch.h
parent7bfc8f7d7d031268d4ac8419275e1d3c9600841f (diff)
iris: move MAX defines to iris_batch.h
for SBA
Diffstat (limited to 'src/gallium/drivers/iris/iris_batch.h')
-rw-r--r--src/gallium/drivers/iris/iris_batch.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/gallium/drivers/iris/iris_batch.h b/src/gallium/drivers/iris/iris_batch.h
index 2074b058061..47da23baeb1 100644
--- a/src/gallium/drivers/iris/iris_batch.h
+++ b/src/gallium/drivers/iris/iris_batch.h
@@ -27,6 +27,15 @@
#include <stdint.h>
#include <stdbool.h>
+/* The kernel assumes batchbuffers are smaller than 256kB. */
+#define MAX_BATCH_SIZE (256 * 1024)
+
+/* 3DSTATE_BINDING_TABLE_POINTERS has a U16 offset from Surface State Base
+ * Address, which means that we can't put binding tables beyond 64kB. This
+ * effectively limits the maximum statebuffer size to 64kB.
+ */
+#define MAX_STATE_SIZE (64 * 1024)
+
struct iris_address {
struct iris_bo *bo;
unsigned reloc_flags;