aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/iris/iris_batch.h
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2017-12-27 02:25:20 -0800
committerKenneth Graunke <[email protected]>2019-02-21 10:26:04 -0800
commit26fb5a8ae25ebc541710b8869d45ecce635a5d81 (patch)
treee755e986d44831f1dddef10e75f0222b695a7449 /src/gallium/drivers/iris/iris_batch.h
parent14ca30507f76ddd7d3d7119e69d7611d70699ffd (diff)
iris: port over batchbuffer updates
Diffstat (limited to 'src/gallium/drivers/iris/iris_batch.h')
-rw-r--r--src/gallium/drivers/iris/iris_batch.h25
1 files changed, 15 insertions, 10 deletions
diff --git a/src/gallium/drivers/iris/iris_batch.h b/src/gallium/drivers/iris/iris_batch.h
index 4c681539d6f..0e0dc9cc508 100644
--- a/src/gallium/drivers/iris/iris_batch.h
+++ b/src/gallium/drivers/iris/iris_batch.h
@@ -39,30 +39,35 @@ struct iris_reloc_list {
int reloc_array_size;
};
+struct iris_batch_buffer {
+ struct iris_bo *bo;
+ void *map;
+ void *map_next;
+
+ unsigned flush_threshold;
+
+ struct iris_bo *partial_bo;
+ unsigned partial_bytes;
+
+ struct iris_reloc_list relocs;
+};
+
struct iris_batch {
struct iris_screen *screen;
struct pipe_debug_callback *dbg;
/** Current batchbuffer being queued up. */
- struct iris_bo *cmd_bo;
+ struct iris_batch_buffer cmdbuf;
/** Current statebuffer being queued up. */
- struct iris_bo *state_bo;
+ struct iris_batch_buffer statebuf;
/** Last BO submitted to the hardware. Used for glFinish(). */
struct iris_bo *last_cmd_bo;
uint32_t hw_ctx_id;
- void *cmd_map_next;
- void *cmd_map;
- void *state_map;
- void *state_map_next;
-
bool no_wrap;
- struct iris_reloc_list batch_relocs;
- struct iris_reloc_list state_relocs;
-
/** The validation list */
struct drm_i915_gem_exec_object2 *validation_list;
struct iris_bo **exec_bos;