• Home
  • Raw
  • Download

Lines Matching refs:batch

196 anv_batch_emit_dwords(struct anv_batch *batch, int num_dwords)  in anv_batch_emit_dwords()  argument
198 if (batch->next + num_dwords * 4 > batch->end) in anv_batch_emit_dwords()
199 batch->extend_cb(batch, batch->user_data); in anv_batch_emit_dwords()
201 void *p = batch->next; in anv_batch_emit_dwords()
203 batch->next += num_dwords * 4; in anv_batch_emit_dwords()
204 assert(batch->next <= batch->end); in anv_batch_emit_dwords()
210 anv_batch_emit_reloc(struct anv_batch *batch, in anv_batch_emit_reloc() argument
213 return anv_reloc_list_add(batch->relocs, batch->alloc, in anv_batch_emit_reloc()
214 location - batch->start, bo, delta); in anv_batch_emit_reloc()
218 anv_batch_emit_batch(struct anv_batch *batch, struct anv_batch *other) in anv_batch_emit_batch() argument
225 if (batch->next + size > batch->end) in anv_batch_emit_batch()
226 batch->extend_cb(batch, batch->user_data); in anv_batch_emit_batch()
228 assert(batch->next + size <= batch->end); in anv_batch_emit_batch()
231 memcpy(batch->next, other->start, size); in anv_batch_emit_batch()
233 offset = batch->next - batch->start; in anv_batch_emit_batch()
234 anv_reloc_list_append(batch->relocs, batch->alloc, in anv_batch_emit_batch()
237 batch->next += size; in anv_batch_emit_batch()
314 anv_batch_bo_start(struct anv_batch_bo *bbo, struct anv_batch *batch, in anv_batch_bo_start() argument
317 batch->next = batch->start = bbo->bo.map; in anv_batch_bo_start()
318 batch->end = bbo->bo.map + bbo->bo.size - batch_padding; in anv_batch_bo_start()
319 batch->relocs = &bbo->relocs; in anv_batch_bo_start()
324 anv_batch_bo_continue(struct anv_batch_bo *bbo, struct anv_batch *batch, in anv_batch_bo_continue() argument
327 batch->start = bbo->bo.map; in anv_batch_bo_continue()
328 batch->next = bbo->bo.map + bbo->length; in anv_batch_bo_continue()
329 batch->end = bbo->bo.map + bbo->bo.size - batch_padding; in anv_batch_bo_continue()
330 batch->relocs = &bbo->relocs; in anv_batch_bo_continue()
334 anv_batch_bo_finish(struct anv_batch_bo *bbo, struct anv_batch *batch) in anv_batch_bo_finish() argument
336 assert(batch->start == bbo->bo.map); in anv_batch_bo_finish()
337 bbo->length = batch->next - batch->start; in anv_batch_bo_finish()
338 VG(VALGRIND_CHECK_MEM_IS_DEFINED(batch->start, bbo->length)); in anv_batch_bo_finish()
343 struct anv_batch *batch, size_t aditional, in anv_batch_bo_grow() argument
346 assert(batch->start == bbo->bo.map); in anv_batch_bo_grow()
347 bbo->length = batch->next - batch->start; in anv_batch_bo_grow()
367 anv_batch_bo_continue(bbo, batch, batch_padding); in anv_batch_bo_grow()
459 anv_batch_emit(&cmd_buffer->batch, GEN8_MI_BATCH_BUFFER_START, bbs) { in emit_batch_buffer_start()
472 struct anv_batch *batch = &cmd_buffer->batch; in cmd_buffer_chain_to_batch_bo() local
480 batch->end += GEN8_MI_BATCH_BUFFER_START_length * 4; in cmd_buffer_chain_to_batch_bo()
481 assert(batch->end == current_bbo->bo.map + current_bbo->bo.size); in cmd_buffer_chain_to_batch_bo()
485 anv_batch_bo_finish(current_bbo, batch); in cmd_buffer_chain_to_batch_bo()
489 anv_cmd_buffer_chain_batch(struct anv_batch *batch, void *_data) in anv_cmd_buffer_chain_batch() argument
509 anv_batch_bo_start(new_bbo, batch, GEN8_MI_BATCH_BUFFER_START_length * 4); in anv_cmd_buffer_chain_batch()
515 anv_cmd_buffer_grow_batch(struct anv_batch *batch, void *_data) in anv_cmd_buffer_grow_batch() argument
520 anv_batch_bo_grow(cmd_buffer, bbo, &cmd_buffer->batch, 4096, in anv_cmd_buffer_grow_batch()
668 cmd_buffer->batch.alloc = &cmd_buffer->pool->alloc; in anv_cmd_buffer_init_batch_bo_chain()
669 cmd_buffer->batch.user_data = cmd_buffer; in anv_cmd_buffer_init_batch_bo_chain()
672 cmd_buffer->batch.extend_cb = anv_cmd_buffer_chain_batch; in anv_cmd_buffer_init_batch_bo_chain()
674 cmd_buffer->batch.extend_cb = anv_cmd_buffer_grow_batch; in anv_cmd_buffer_init_batch_bo_chain()
677 anv_batch_bo_start(batch_bo, &cmd_buffer->batch, in anv_cmd_buffer_init_batch_bo_chain()
747 &cmd_buffer->batch, in anv_cmd_buffer_reset_batch_bo_chain()
781 cmd_buffer->batch.end += GEN8_MI_BATCH_BUFFER_START_length * 4; in anv_cmd_buffer_end_batch_buffer()
782 assert(cmd_buffer->batch.end == batch_bo->bo.map + batch_bo->bo.size); in anv_cmd_buffer_end_batch_buffer()
784 anv_batch_emit(&cmd_buffer->batch, GEN8_MI_BATCH_BUFFER_END, bbe); in anv_cmd_buffer_end_batch_buffer()
787 if ((cmd_buffer->batch.next - cmd_buffer->batch.start) & 4) in anv_cmd_buffer_end_batch_buffer()
788 anv_batch_emit(&cmd_buffer->batch, GEN8_MI_NOOP, noop); in anv_cmd_buffer_end_batch_buffer()
793 anv_batch_bo_finish(batch_bo, &cmd_buffer->batch); in anv_cmd_buffer_end_batch_buffer()
820 cmd_buffer->batch.next += GEN8_MI_BATCH_BUFFER_START_length * 4; in anv_cmd_buffer_end_batch_buffer()
848 anv_batch_emit_batch(&primary->batch, &secondary->batch); in anv_cmd_buffer_add_secondary()
852 unsigned length = secondary->batch.end - secondary->batch.start; in anv_cmd_buffer_add_secondary()
853 anv_batch_bo_grow(primary, bbo, &primary->batch, length, in anv_cmd_buffer_add_secondary()
855 anv_batch_emit_batch(&primary->batch, &secondary->batch); in anv_cmd_buffer_add_secondary()
867 assert(primary->batch.start == this_bbo->bo.map); in anv_cmd_buffer_add_secondary()
868 uint32_t offset = primary->batch.next - primary->batch.start; in anv_cmd_buffer_add_secondary()
878 secondary->batch.next -= inst_size; in anv_cmd_buffer_add_secondary()
888 void *inst = secondary->batch.next - inst_size; in anv_cmd_buffer_add_secondary()
891 while (p < secondary->batch.next) { in anv_cmd_buffer_add_secondary()
917 anv_batch_bo_continue(last_bbo, &primary->batch, in anv_cmd_buffer_add_secondary()
1230 struct anv_batch *batch = &cmd_buffer->batch; in anv_cmd_buffer_execbuf() local
1305 .batch_len = batch->next - batch->start, in anv_cmd_buffer_execbuf()