Home
last modified time | relevance | path

Searched refs:vc4 (Results 1 – 25 of 95) sorted by relevance

1234

/third_party/mesa3d/src/gallium/drivers/vc4/
Dvc4_context.c42 struct vc4_context *vc4 = vc4_context(pctx); in vc4_flush() local
44 hash_table_foreach(vc4->jobs, entry) { in vc4_flush()
46 vc4_job_submit(vc4, job); in vc4_flush()
54 struct vc4_context *vc4 = vc4_context(pctx); in vc4_pipe_flush() local
64 drmSyncobjExportSyncFile(vc4->fd, vc4->job_syncobj, in vc4_pipe_flush()
68 struct vc4_fence *f = vc4_fence_create(vc4->screen, in vc4_pipe_flush()
69 vc4->last_emit_seqno, in vc4_pipe_flush()
90 struct vc4_context *vc4 = vc4_context(pctx); in vc4_set_debug_callback() local
93 vc4->debug = *cb; in vc4_set_debug_callback()
95 memset(&vc4->debug, 0, sizeof(vc4->debug)); in vc4_set_debug_callback()
[all …]
Dvc4_draw.c76 vc4_start_draw(struct vc4_context *vc4) in vc4_start_draw() argument
78 struct vc4_job *job = vc4->job; in vc4_start_draw()
109 job->draw_width = vc4->framebuffer.width; in vc4_start_draw()
110 job->draw_height = vc4->framebuffer.height; in vc4_start_draw()
117 struct vc4_context *vc4 = vc4_context(pctx); in vc4_predraw_check_textures() local
128 vc4_flush_jobs_writing_resource(vc4, view->texture); in vc4_predraw_check_textures()
133 vc4_emit_gl_shader_state(struct vc4_context *vc4, in vc4_emit_gl_shader_state() argument
138 struct vc4_job *job = vc4->job; in vc4_emit_gl_shader_state()
140 struct vc4_vertex_stateobj *vtx = vc4->vtx; in vc4_emit_gl_shader_state()
142 struct vc4_vertexbuf_stateobj *vertexbuf = &vc4->vertexbuf; in vc4_emit_gl_shader_state()
[all …]
Dvc4_job.c35 vc4_job_free(struct vc4_context *vc4, struct vc4_job *job) in vc4_job_free() argument
42 _mesa_hash_table_remove_key(vc4->jobs, &job->key); in vc4_job_free()
45 _mesa_hash_table_remove_key(vc4->write_jobs, in vc4_job_free()
50 _mesa_hash_table_remove_key(vc4->write_jobs, in vc4_job_free()
55 _mesa_hash_table_remove_key(vc4->write_jobs, in vc4_job_free()
60 _mesa_hash_table_remove_key(vc4->write_jobs, in vc4_job_free()
68 if (vc4->job == job) in vc4_job_free()
69 vc4->job = NULL; in vc4_job_free()
75 vc4_job_create(struct vc4_context *vc4) in vc4_job_create() argument
77 struct vc4_job *job = rzalloc(vc4, struct vc4_job); in vc4_job_create()
[all …]
Dvc4_emit.c29 struct vc4_context *vc4 = vc4_context(pctx); in vc4_emit_state() local
30 struct vc4_job *job = vc4->job; in vc4_emit_state()
32 if (vc4->dirty & (VC4_DIRTY_SCISSOR | VC4_DIRTY_VIEWPORT | in vc4_emit_state()
34 float *vpscale = vc4->viewport.scale; in vc4_emit_state()
35 float *vptranslate = vc4->viewport.translate; in vc4_emit_state()
50 if (!vc4->rasterizer->base.scissor) { in vc4_emit_state()
56 minx = MAX2(vp_minx, vc4->scissor.minx); in vc4_emit_state()
57 miny = MAX2(vp_miny, vc4->scissor.miny); in vc4_emit_state()
58 maxx = MAX2(MIN2(vp_maxx, vc4->scissor.maxx), minx); in vc4_emit_state()
59 maxy = MAX2(MIN2(vp_maxy, vc4->scissor.maxy), miny); in vc4_emit_state()
[all …]
Dvc4_blit.c54 struct vc4_context *vc4 = vc4_context(pctx); in vc4_tile_blit() local
130 vc4_flush_jobs_reading_resource(vc4, info->src.resource); in vc4_tile_blit()
132 struct vc4_job *job = vc4_get_job(vc4, dst_surf, NULL); in vc4_tile_blit()
148 vc4_job_submit(vc4, job); in vc4_tile_blit()
157 vc4_blitter_save(struct vc4_context *vc4) in vc4_blitter_save() argument
159 util_blitter_save_fragment_constant_buffer_slot(vc4->blitter, in vc4_blitter_save()
160 vc4->constbuf[PIPE_SHADER_FRAGMENT].cb); in vc4_blitter_save()
161 util_blitter_save_vertex_buffer_slot(vc4->blitter, vc4->vertexbuf.vb); in vc4_blitter_save()
162 util_blitter_save_vertex_elements(vc4->blitter, vc4->vtx); in vc4_blitter_save()
163 util_blitter_save_vertex_shader(vc4->blitter, vc4->prog.bind_vs); in vc4_blitter_save()
[all …]
Dvc4_register_allocate.c109 vc4_alloc_reg_set(struct vc4_context *vc4) in vc4_alloc_reg_set() argument
115 if (vc4->regs) in vc4_alloc_reg_set()
118 vc4->regs = ra_alloc_reg_set(vc4, ARRAY_SIZE(vc4_regs), false); in vc4_alloc_reg_set()
125 vc4->reg_class_any[i] = ra_alloc_contig_reg_class(vc4->regs, 1); in vc4_alloc_reg_set()
126 vc4->reg_class_a_or_b[i] = ra_alloc_contig_reg_class(vc4->regs, 1); in vc4_alloc_reg_set()
127 vc4->reg_class_a_or_b_or_acc[i] = ra_alloc_contig_reg_class(vc4->regs, 1); in vc4_alloc_reg_set()
128 vc4->reg_class_r4_or_a[i] = ra_alloc_contig_reg_class(vc4->regs, 1); in vc4_alloc_reg_set()
129 vc4->reg_class_a[i] = ra_alloc_contig_reg_class(vc4->regs, 1); in vc4_alloc_reg_set()
131 vc4->reg_class_r0_r3 = ra_alloc_contig_reg_class(vc4->regs, 1); in vc4_alloc_reg_set()
135 ra_class_add_reg(vc4->reg_class_r0_r3, i); in vc4_alloc_reg_set()
[all …]
Dvc4_state.c54 struct vc4_context *vc4 = vc4_context(pctx); in vc4_set_blend_color() local
55 vc4->blend_color.f = *blend_color; in vc4_set_blend_color()
57 vc4->blend_color.ub[i] = float_to_ubyte(blend_color->color[i]); in vc4_set_blend_color()
58 vc4->dirty |= VC4_DIRTY_BLEND_COLOR; in vc4_set_blend_color()
65 struct vc4_context *vc4 = vc4_context(pctx); in vc4_set_stencil_ref() local
66 vc4->stencil_ref = stencil_ref; in vc4_set_stencil_ref()
67 vc4->dirty |= VC4_DIRTY_STENCIL_REF; in vc4_set_stencil_ref()
74 struct vc4_context *vc4 = vc4_context(pctx); in vc4_set_clip_state() local
75 vc4->clip = *clip; in vc4_set_clip_state()
76 vc4->dirty |= VC4_DIRTY_CLIP; in vc4_set_clip_state()
[all …]
Dvc4_fence.c110 struct vc4_context *vc4 = vc4_context(pctx); in vc4_fence_create_fd() local
114 *fence = vc4_fence_create(vc4->screen, vc4->last_emit_seqno, in vc4_fence_create_fd()
122 struct vc4_context *vc4 = vc4_context(pctx); in vc4_fence_server_sync() local
126 sync_accumulate("vc4", &vc4->in_fence_fd, fence->fd); in vc4_fence_server_sync()
138 vc4_fence_context_init(struct vc4_context *vc4) in vc4_fence_context_init() argument
140 vc4->base.create_fence_fd = vc4_fence_create_fd; in vc4_fence_context_init()
141 vc4->base.fence_server_sync = vc4_fence_server_sync; in vc4_fence_context_init()
142 vc4->in_fence_fd = -1; in vc4_fence_context_init()
147 if (vc4->screen->has_syncobj) { in vc4_fence_context_init()
148 return drmSyncobjCreate(vc4->fd, DRM_SYNCOBJ_CREATE_SIGNALED, in vc4_fence_context_init()
[all …]
Dvc4_program.c1883 if (!c->vc4->screen->has_control_flow) { in ntq_emit_if()
2038 if (!c->vc4->screen->has_control_flow) { in ntq_emit_loop()
2205 vc4_shader_ntq(struct vc4_context *vc4, enum qstage stage, in vc4_shader_ntq() argument
2210 c->vc4 = vc4; in vc4_shader_ntq()
2394 vc4_generate_code(vc4, c); in vc4_shader_ntq()
2416 struct vc4_context *vc4 = vc4_context(pctx); in vc4_shader_state_create() local
2421 so->program_id = vc4->next_uncompiled_program_id++; in vc4_shader_state_create()
2495 vc4_setup_compiled_fs_inputs(struct vc4_context *vc4, struct vc4_compile *c, in vc4_setup_compiled_fs_inputs() argument
2543 struct set_entry *entry = _mesa_set_search(vc4->fs_inputs_set, &inputs); in vc4_setup_compiled_fs_inputs()
2550 alloc_inputs = rzalloc(vc4->fs_inputs_set, struct vc4_fs_inputs); in vc4_setup_compiled_fs_inputs()
[all …]
Dvc4_context.h431 if (unlikely(vc4->debug.debug_message)) \
432 util_debug_message(&vc4->debug, PERF_INFO, __VA_ARGS__); \
481 void vc4_write_uniforms(struct vc4_context *vc4,
487 int vc4_job_init(struct vc4_context *vc4);
488 int vc4_fence_context_init(struct vc4_context *vc4);
489 struct vc4_job *vc4_get_job(struct vc4_context *vc4,
492 struct vc4_job *vc4_get_job_for_fbo(struct vc4_context *vc4);
494 void vc4_job_submit(struct vc4_context *vc4, struct vc4_job *job);
495 void vc4_flush_jobs_writing_resource(struct vc4_context *vc4,
497 void vc4_flush_jobs_reading_resource(struct vc4_context *vc4,
[all …]
Dvc4_uniforms.c191 vc4_write_uniforms(struct vc4_context *vc4, struct vc4_compiled_shader *shader, in vc4_write_uniforms() argument
196 struct vc4_job *job = vc4->job; in vc4_write_uniforms()
219 cl_aligned_f(&uniforms, vc4->viewport.scale[0] * 16.0f); in vc4_write_uniforms()
222 cl_aligned_f(&uniforms, vc4->viewport.scale[1] * 16.0f); in vc4_write_uniforms()
226 cl_aligned_f(&uniforms, vc4->viewport.translate[2]); in vc4_write_uniforms()
229 cl_aligned_f(&uniforms, vc4->viewport.scale[2]); in vc4_write_uniforms()
234 vc4->clip.ucp[data / 4][data % 4]); in vc4_write_uniforms()
260 u_upload_data(vc4->uploader, 0, in vc4_write_uniforms()
306 CLAMP(vc4->blend_color.f.color[uinfo->contents[i] - in vc4_write_uniforms()
313 vc4_get_format_swizzle(vc4->framebuffer.cbufs[0]->format); in vc4_write_uniforms()
[all …]
Dvc4_resource.c76 struct vc4_context *vc4 = vc4_context(pctx); in vc4_resource_transfer_unmap() local
95 slab_free(&vc4->transfer_pool, ptrans); in vc4_resource_transfer_unmap()
105 struct vc4_context *vc4 = vc4_context(pctx); in vc4_resource_transfer_map() local
133 vc4->dirty |= VC4_DIRTY_VTXBUF; in vc4_resource_transfer_map()
138 vc4_flush_jobs_reading_resource(vc4, prsc); in vc4_resource_transfer_map()
146 vc4_flush_jobs_reading_resource(vc4, prsc); in vc4_resource_transfer_map()
148 vc4_flush_jobs_writing_resource(vc4, prsc); in vc4_resource_transfer_map()
156 trans = slab_zalloc(&vc4->transfer_pool); in vc4_resource_transfer_map()
1016 struct vc4_context *vc4 = vc4_context(pctx); in vc4_update_shadow_baselevel_texture() local
1087 struct vc4_context *vc4 = vc4_context(pctx); in vc4_get_shadow_index_buffer() local
[all …]
/third_party/alsa-lib/src/conf/cards/
Dvc4-hdmi.conf8 vc4-hdmi.pcm.front.0 {
18 vc4-hdmi.pcm.default {
35 vc4-hdmi.pcm.iec958.0 {
/third_party/mesa3d/docs/relnotes/
D17.2.2.rst53 - broadcom/vc4: Fix infinite retry in vc4_bo_alloc()
72 - broadcom/vc4: Fix use-after-free for flushing when writing to a
74 - broadcom/vc4: Fix use-after-free trying to mix a quad and tile clear.
75 - broadcom/vc4: Fix use-after-free when deleting a program.
76 - broadcom/vc4: Keep pipe_sampler_view->texture matching the original
D11.1.4.rst73 - vc4: Fix subimage accesses to LT textures.
74 - vc4: Add support for rendering to cube map surfaces.
75 - vc4: Fix tests for format supported with nr_samples == 1.
76 - vc4: Make sure we recompile when sample_mask changes.
D18.3.3.rst70 - vc4: Use named parameters for the NEON inline asm.
71 - vc4: Declare the cpu pointers as being modified in NEON asm.
101 - vc4: Don't leak the GPU fd for renderonly usage.
102 - vc4: Enable NEON asm on meson cross-builds.
D11.0.6.rst75 - vc4: Return GL_OUT_OF_MEMORY when buffer allocation fails.
76 - vc4: Return NULL when we can't make our shadow for a sampler view.
77 - vc4: Add support for nir_op_uge, using the carry bit on QPU_A_SUB.
D11.2.2.rst82 - vc4: Fix subimage accesses to LT textures.
83 - vc4: Add support for rendering to cube map surfaces.
84 - vc4: Fix tests for format supported with nr_samples == 1.
85 - vc4: Make sure we recompile when sample_mask changes.
D17.1.10.rst72 - broadcom/vc4: Fix use-after-free for flushing when writing to a
74 - broadcom/vc4: Fix use-after-free trying to mix a quad and tile clear.
75 - broadcom/vc4: Fix use-after-free when deleting a program.
D18.1.6.rst89 - vc4: Fix a leak of the no-vertex-elements workaround BO.
90 - vc4: Respect a sampler view's first_layer field.
91 - vc4: Ignore samplers for finding uniform offsets.
D20.2.2.rst42 - vc4 in 20.2-rc has regression causing app to crash
73 - vc4: Add missing load_ubo set_align in yuv_blit fs.
74 - vc4: Enable nir_lower_io for uniforms
/third_party/mesa3d/docs/
Dfeatures.txt43 GL_ARB_map_buffer_range (Map buffer subranges) DONE (v3d, vc4, lima)
44 GL_ARB_color_buffer_float (Clamping controls) DONE (v3d, vc4, lima)
49 GL_ARB_framebuffer_object (Framebuffer objects) DONE (v3d, vc4)
51 GL_ARB_half_float_vertex DONE (v3d, vc4, lima)
58 GL_ARB_vertex_array_object (Vertex array objects) DONE (v3d, vc4, lima)
59 GL_EXT_framebuffer_sRGB (sRGB framebuffer format) DONE (v3d, vc4, lima)
65 GLX_ARB_create_context (GLX 1.4 is required) DONE (v3d, vc4)
76 GL_ARB_copy_buffer (Buffer copying) DONE (v3d, vc4, lima)
80 GL_ARB_texture_rectangle (Rectangular textures) DONE (v3d, vc4, lima)
90 GL_ARB_draw_elements_base_vertex (Base vertex offset) DONE (v3d, vc4, panfrost, lima)
[all …]
/third_party/mesa3d/src/broadcom/drm-shim/
DREADME.md12 This implements the minimum of vc4 in order to make shader-db work.
15 Export `MESA_LOADER_DRIVER_OVERRIDE=vc4
/third_party/mesa3d/docs/drivers/
Dvc4.rst4 Mesa's ``vc4`` graphics driver supports multiple implementations of
11 This Mesa driver talks directly to the `vc4
12 <https://www.kernel.org/doc/html/latest/gpu/vc4.html>`__ kernel DRM
21 The vc4 driver is a nearly conformant GLES2 driver, and the hardware
32 GLES2.0, and vc4, don't have ``GL_UNSIGNED_INT`` index buffers. To support
33 them in vc4, we create a shadow copy of your index buffer with the
80 useful. Install `vc4-gpu-tools
81 <https://github.com/anholt/vc4-gpu-tools/>` and use
236 sudo perf record -f -g -e vc4:vc4_wait_for_seqno_begin -c 1 openarena
274 working on the compiler in Mesa. On vc4, there is a lot of
[all …]
Dv3d.rst13 4, the kernel uses the vc4 DRM driver for display support, so Mesa
33 is closely related to the vc4 GPU present in the Raspberry Pi. They
44 the i915 graphics driver with all of the vc4 rendering commands

1234