Lines Matching refs:job
38 vc4_get_draw_cl_space(struct vc4_job *job, int vert_count) in vc4_get_draw_cl_space() argument
48 cl_ensure_space(&job->bcl, in vc4_get_draw_cl_space()
58 cl_ensure_space(&job->shader_rec, in vc4_get_draw_cl_space()
66 cl_ensure_space(&job->bo_handles, (2 * 16 + 20) * sizeof(uint32_t)); in vc4_get_draw_cl_space()
67 cl_ensure_space(&job->bo_pointers, in vc4_get_draw_cl_space()
77 struct vc4_job *job = vc4->job; in vc4_start_draw() local
79 if (job->needs_flush) in vc4_start_draw()
82 vc4_get_draw_cl_space(job, 0); in vc4_start_draw()
84 struct vc4_cl_out *bcl = cl_start(&job->bcl); in vc4_start_draw()
91 cl_u8(&bcl, job->draw_tiles_x); in vc4_start_draw()
92 cl_u8(&bcl, job->draw_tiles_y); in vc4_start_draw()
94 cl_u8(&bcl, job->msaa ? VC4_BIN_CONFIG_MS_MODE_4X : 0); in vc4_start_draw()
112 job->needs_flush = true; in vc4_start_draw()
113 job->draw_width = vc4->framebuffer.width; in vc4_start_draw()
114 job->draw_height = vc4->framebuffer.height; in vc4_start_draw()
116 cl_end(&job->bcl, bcl); in vc4_start_draw()
142 struct vc4_job *job = vc4->job; in vc4_emit_gl_shader_state() local
154 cl_start_shader_reloc(&job->shader_rec, 3 + num_elements_emit); in vc4_emit_gl_shader_state()
167 cl_reloc(job, &job->shader_rec, &shader_rec, vc4->prog.fs->bo, 0); in vc4_emit_gl_shader_state()
174 cl_reloc(job, &job->shader_rec, &shader_rec, vc4->prog.vs->bo, 0); in vc4_emit_gl_shader_state()
181 cl_reloc(job, &job->shader_rec, &shader_rec, vc4->prog.cs->bo, 0); in vc4_emit_gl_shader_state()
199 cl_reloc(job, &job->shader_rec, &shader_rec, rsc->bo, offset); in vc4_emit_gl_shader_state()
214 cl_reloc(job, &job->shader_rec, &shader_rec, bo, 0); in vc4_emit_gl_shader_state()
221 cl_end(&job->shader_rec, shader_rec); in vc4_emit_gl_shader_state()
223 struct vc4_cl_out *bcl = cl_start(&job->bcl); in vc4_emit_gl_shader_state()
231 cl_end(&job->bcl, bcl); in vc4_emit_gl_shader_state()
245 job->shader_rec_count++; in vc4_emit_gl_shader_state()
272 struct vc4_job *job = vc4_get_job_for_fbo(vc4); in vc4_hw_2116_workaround() local
274 if (job->draw_calls_queued + vert_count / 65535 >= VC4_HW_2116_COUNT) { in vc4_hw_2116_workaround()
277 vc4_job_submit(vc4, job); in vc4_hw_2116_workaround()
301 struct vc4_job *job = vc4_get_job_for_fbo(vc4); in vc4_draw_vbo() local
303 vc4_get_draw_cl_space(job, info->count); in vc4_draw_vbo()
337 struct vc4_cl_out *bcl = cl_start(&job->bcl); in vc4_draw_vbo()
359 cl_start_reloc(&job->bcl, &bcl, 1); in vc4_draw_vbo()
367 cl_reloc(job, &job->bcl, &bcl, rsc->bo, offset); in vc4_draw_vbo()
369 job->draw_calls_queued++; in vc4_draw_vbo()
395 cl_end(&job->bcl, bcl); in vc4_draw_vbo()
398 bcl = cl_start(&job->bcl); in vc4_draw_vbo()
438 job->draw_calls_queued++; in vc4_draw_vbo()
445 cl_end(&job->bcl, bcl); in vc4_draw_vbo()
450 assert(job->draw_calls_queued <= VC4_HW_2116_COUNT); in vc4_draw_vbo()
457 job->resolve |= PIPE_CLEAR_DEPTH; in vc4_draw_vbo()
462 job->resolve |= PIPE_CLEAR_STENCIL; in vc4_draw_vbo()
467 job->resolve |= PIPE_CLEAR_COLOR0; in vc4_draw_vbo()
473 if (job->bo_space > 128 * 1024 * 1024) in vc4_draw_vbo()
496 struct vc4_job *job = vc4_get_job_for_fbo(vc4); in vc4_clear() local
501 if (job->draw_calls_queued) { in vc4_clear()
503 vc4_job_submit(vc4, job); in vc4_clear()
504 job = vc4_get_job_for_fbo(vc4); in vc4_clear()
526 job->clear_color[0] = job->clear_color[1] = clear_color; in vc4_clear()
541 (rsc->initialized_buffers & ~(zsclear | job->cleared)) && in vc4_clear()
561 job->clear_depth = util_pack_z(PIPE_FORMAT_Z24X8_UNORM, in vc4_clear()
565 job->clear_stencil = stencil; in vc4_clear()
570 job->draw_min_x = 0; in vc4_clear()
571 job->draw_min_y = 0; in vc4_clear()
572 job->draw_max_x = vc4->framebuffer.width; in vc4_clear()
573 job->draw_max_y = vc4->framebuffer.height; in vc4_clear()
574 job->cleared |= buffers; in vc4_clear()
575 job->resolve |= buffers; in vc4_clear()