Lines Matching refs:v3d

46         struct v3d_context *v3d = v3d_context(pctx);
48 hash_table_foreach(v3d->jobs, entry) {
50 v3d_job_submit(v3d, job);
58 struct v3d_context *v3d = v3d_context(pctx);
64 struct v3d_fence *f = v3d_fence_create(v3d);
73 struct v3d_context *v3d = v3d_context(pctx);
93 struct v3d_context *v3d = v3d_context(pctx);
96 v3d->debug = *cb;
98 memset(&v3d->debug, 0, sizeof(v3d->debug));
104 struct v3d_context *v3d = v3d_context(pctx);
109 struct hash_entry *entry = _mesa_hash_table_search(v3d->write_jobs,
126 v3d_update_primitive_counters(struct v3d_context *v3d)
128 struct v3d_job *job = v3d_get_job_for_fbo(v3d);
136 uint32_t prims_before = v3d->tf_prims_generated;
137 v3d_job_submit(v3d, job);
138 uint32_t prims_after = v3d->tf_prims_generated;
142 enum pipe_prim_type prim_type = u_base_prim_type(v3d->prim_mode);
145 for (int i = 0; i < v3d->streamout.num_targets; i++) {
147 v3d_stream_output_target(v3d->streamout.targets[i]);
153 v3d_line_smoothing_enabled(struct v3d_context *v3d)
155 if (!v3d->rasterizer->base.line_smooth)
161 if (v3d->job->msaa || v3d->rasterizer->base.multisample)
164 if (v3d->framebuffer.nr_cbufs <= 0)
167 struct pipe_surface *cbuf = v3d->framebuffer.cbufs[0];
182 v3d_get_real_line_width(struct v3d_context *v3d)
184 float width = v3d->rasterizer->base.line_width;
186 if (v3d_line_smoothing_enabled(v3d)) {
212 v3d_flag_dirty_sampler_state(struct v3d_context *v3d,
217 v3d->dirty |= V3D_DIRTY_VERTTEX;
220 v3d->dirty |= V3D_DIRTY_GEOMTEX;
223 v3d->dirty |= V3D_DIRTY_FRAGTEX;
226 v3d->dirty |= V3D_DIRTY_COMPTEX;
234 v3d_create_texture_shader_state_bo(struct v3d_context *v3d,
237 if (v3d->screen->devinfo.ver >= 41)
238 v3d41_create_texture_shader_state_bo(v3d, so);
240 v3d33_create_texture_shader_state_bo(v3d, so);
279 struct v3d_context *v3d = v3d_context(pctx);
283 if (v3d->blitter)
284 util_blitter_destroy(v3d->blitter);
286 if (v3d->uploader)
287 u_upload_destroy(v3d->uploader);
288 if (v3d->state_uploader)
289 u_upload_destroy(v3d->state_uploader);
291 if (v3d->prim_counts)
292 pipe_resource_reference(&v3d->prim_counts, NULL);
294 slab_destroy_child(&v3d->transfer_pool);
296 for (int i = 0; i < v3d->framebuffer.nr_cbufs; i++)
297 pipe_surface_reference(&v3d->framebuffer.cbufs[i], NULL);
299 pipe_surface_reference(&v3d->framebuffer.zsbuf, NULL);
301 if (v3d->sand8_blit_vs)
302 pctx->delete_vs_state(pctx, v3d->sand8_blit_vs);
303 if (v3d->sand8_blit_fs_luma)
304 pctx->delete_fs_state(pctx, v3d->sand8_blit_fs_luma);
305 if (v3d->sand8_blit_fs_chroma)
306 pctx->delete_fs_state(pctx, v3d->sand8_blit_fs_chroma);
310 ralloc_free(v3d);
318 struct v3d_context *v3d = v3d_context(pctx);
326 const int *xoffsets = (v3d->screen->devinfo.ver >= 42 ?
338 struct v3d_context *v3d;
344 v3d = rzalloc(NULL, struct v3d_context);
345 if (!v3d)
347 struct pipe_context *pctx = &v3d->base;
349 v3d->screen = screen;
352 &v3d->out_sync);
354 ralloc_free(v3d);
378 v3d_job_init(v3d);
380 v3d->fd = screen->fd;
382 slab_create_child(&v3d->transfer_pool, &screen->transfer_pool);
384 v3d->uploader = u_upload_create_default(&v3d->base);
385 v3d->base.stream_uploader = v3d->uploader;
386 v3d->base.const_uploader = v3d->uploader;
387 v3d->state_uploader = u_upload_create(&v3d->base,
392 v3d->blitter = util_blitter_create(pctx);
393 if (!v3d->blitter)
395 v3d->blitter->use_index_buffer = true;
399 v3d->sample_mask = (1 << V3D_MAX_SAMPLES) - 1;
400 v3d->active_queries = true;
402 return &v3d->base;