panfrost: Fix attribute buffer underallocation
[mesa.git] / src / gallium / drivers / panfrost / pan_job.h
index dd93f0ba33783d94d35dc1cd19c9e5b49454bef9..eb3cc58d573d8a257cde7050f54ae4dac8611d7a 100644 (file)
@@ -46,12 +46,6 @@ struct panfrost_batch_fence {
          * batch has been flushed or not.
          */
         struct panfrost_batch *batch;
-
-        /* Context this fence is attached to. We need both ctx and batch, as
-         * the batch will go away after it's been submitted, but the fence
-         * will stay a bit longer.
-         */
-        struct panfrost_context *ctx;
 };
 
 #define PAN_REQ_MSAA            (1 << 0)
@@ -101,6 +95,11 @@ struct panfrost_batch {
         /* Pool owned by this batch (released when the batch is released) used for temporary descriptors */
         struct pan_pool pool;
 
+        /* Pool also owned by this batch that is not CPU mapped (created as
+         * INVISIBLE) used for private GPU-internal structures, particularly
+         * varyings */
+        struct pan_pool invisible_pool;
+
         /* Job scoreboarding state */
         struct pan_scoreboard scoreboard;
 
@@ -153,8 +152,6 @@ void
 panfrost_batch_add_bo(struct panfrost_batch *batch, struct panfrost_bo *bo,
                       uint32_t flags);
 
-void panfrost_batch_add_fbo_bos(struct panfrost_batch *batch);
-
 struct panfrost_bo *
 panfrost_batch_create_bo(struct panfrost_batch *batch, size_t size,
                          uint32_t create_flags, uint32_t access_flags);
@@ -177,7 +174,7 @@ void
 panfrost_batch_adjust_stack_size(struct panfrost_batch *batch);
 
 struct panfrost_bo *
-panfrost_batch_get_scratchpad(struct panfrost_batch *batch, unsigned shift, unsigned thread_tls_alloc, unsigned core_count);
+panfrost_batch_get_scratchpad(struct panfrost_batch *batch, unsigned size, unsigned thread_tls_alloc, unsigned core_count);
 
 struct panfrost_bo *
 panfrost_batch_get_shared_memory(struct panfrost_batch *batch, unsigned size, unsigned workgroup_count);
@@ -185,9 +182,6 @@ panfrost_batch_get_shared_memory(struct panfrost_batch *batch, unsigned size, un
 mali_ptr
 panfrost_batch_get_polygon_list(struct panfrost_batch *batch, unsigned size);
 
-struct panfrost_bo *
-panfrost_batch_get_tiler_heap(struct panfrost_batch *batch);
-
 struct panfrost_bo *
 panfrost_batch_get_tiler_dummy(struct panfrost_batch *batch);