summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/freedreno/freedreno_batch.h
diff options
context:
space:
mode:
authorRob Clark <[email protected]>2016-05-20 20:05:26 -0400
committerRob Clark <[email protected]>2016-07-30 09:23:42 -0400
commit9e4561d3c47c2dabce43ce160915fd9bcea05a81 (patch)
tree6e9157a18a356672f2568831e4139d42fb01f1da /src/gallium/drivers/freedreno/freedreno_batch.h
parent9bbd239a4039522d7c1023ecb21764679447bb2d (diff)
freedreno: push resource tracking down into batch
Signed-off-by: Rob Clark <[email protected]>
Diffstat (limited to 'src/gallium/drivers/freedreno/freedreno_batch.h')
-rw-r--r--src/gallium/drivers/freedreno/freedreno_batch.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gallium/drivers/freedreno/freedreno_batch.h b/src/gallium/drivers/freedreno/freedreno_batch.h
index 2134624f833..69779d8c8f4 100644
--- a/src/gallium/drivers/freedreno/freedreno_batch.h
+++ b/src/gallium/drivers/freedreno/freedreno_batch.h
@@ -32,6 +32,8 @@
#include "freedreno_util.h"
struct fd_context;
+struct fd_resource;
+enum fd_resource_status;
/* A batch tracks everything about a cmdstream batch/submit, including the
* ringbuffers used for binning, draw, and gmem cmds, list of associated
@@ -48,11 +50,16 @@ struct fd_batch {
struct fd_ringbuffer *binning;
/** tiling/gmem (IB0) cmdstream: */
struct fd_ringbuffer *gmem;
+
+ /** list of resources used by currently-unsubmitted batch */
+ struct list_head used_resources;
};
struct fd_batch * fd_batch_create(struct fd_context *ctx);
void fd_batch_flush(struct fd_batch *batch);
+void fd_batch_resource_used(struct fd_batch *batch, struct fd_resource *rsc,
+ enum fd_resource_status status);
void fd_batch_check_size(struct fd_batch *batch);
/* not called directly: */