Lines Matching refs:ctx

349 static struct pipe_surface *virgl_create_surface(struct pipe_context *ctx,
353 struct virgl_context *vctx = virgl_context(ctx);
366 assert(ctx->screen->get_param(ctx->screen,
375 surf->base.context = ctx;
390 static void virgl_surface_destroy(struct pipe_context *ctx,
393 struct virgl_context *vctx = virgl_context(ctx);
401 static void *virgl_create_blend_state(struct pipe_context *ctx,
404 struct virgl_context *vctx = virgl_context(ctx);
413 static void virgl_bind_blend_state(struct pipe_context *ctx,
416 struct virgl_context *vctx = virgl_context(ctx);
421 static void virgl_delete_blend_state(struct pipe_context *ctx,
424 struct virgl_context *vctx = virgl_context(ctx);
429 static void *virgl_create_depth_stencil_alpha_state(struct pipe_context *ctx,
432 struct virgl_context *vctx = virgl_context(ctx);
440 static void virgl_bind_depth_stencil_alpha_state(struct pipe_context *ctx,
443 struct virgl_context *vctx = virgl_context(ctx);
448 static void virgl_delete_depth_stencil_alpha_state(struct pipe_context *ctx,
451 struct virgl_context *vctx = virgl_context(ctx);
456 static void *virgl_create_rasterizer_state(struct pipe_context *ctx,
459 struct virgl_context *vctx = virgl_context(ctx);
468 virgl_screen(ctx->screen)->caps.caps.v1.bset.depth_clip_disable);
474 static void virgl_bind_rasterizer_state(struct pipe_context *ctx,
477 struct virgl_context *vctx = virgl_context(ctx);
487 static void virgl_delete_rasterizer_state(struct pipe_context *ctx,
490 struct virgl_context *vctx = virgl_context(ctx);
496 static void virgl_set_framebuffer_state(struct pipe_context *ctx,
499 struct virgl_context *vctx = virgl_context(ctx);
506 static void virgl_set_viewport_states(struct pipe_context *ctx,
511 struct virgl_context *vctx = virgl_context(ctx);
515 static void *virgl_create_vertex_elements_state(struct pipe_context *ctx,
520 struct virgl_context *vctx = virgl_context(ctx);
547 static void virgl_delete_vertex_elements_state(struct pipe_context *ctx,
550 struct virgl_context *vctx = virgl_context(ctx);
557 static void virgl_bind_vertex_elements_state(struct pipe_context *ctx,
560 struct virgl_context *vctx = virgl_context(ctx);
569 static void virgl_set_vertex_buffers(struct pipe_context *ctx,
576 struct virgl_context *vctx = virgl_context(ctx);
616 static void virgl_set_stencil_ref(struct pipe_context *ctx,
619 struct virgl_context *vctx = virgl_context(ctx);
623 static void virgl_set_blend_color(struct pipe_context *ctx,
626 struct virgl_context *vctx = virgl_context(ctx);
637 static void virgl_set_constant_buffer(struct pipe_context *ctx,
642 struct virgl_context *vctx = virgl_context(ctx);
675 static void *virgl_shader_encoder(struct pipe_context *ctx,
679 struct virgl_context *vctx = virgl_context(ctx);
721 static void *virgl_create_vs_state(struct pipe_context *ctx,
724 return virgl_shader_encoder(ctx, shader, PIPE_SHADER_VERTEX);
727 static void *virgl_create_tcs_state(struct pipe_context *ctx,
730 return virgl_shader_encoder(ctx, shader, PIPE_SHADER_TESS_CTRL);
733 static void *virgl_create_tes_state(struct pipe_context *ctx,
736 return virgl_shader_encoder(ctx, shader, PIPE_SHADER_TESS_EVAL);
739 static void *virgl_create_gs_state(struct pipe_context *ctx,
742 return virgl_shader_encoder(ctx, shader, PIPE_SHADER_GEOMETRY);
745 static void *virgl_create_fs_state(struct pipe_context *ctx,
748 return virgl_shader_encoder(ctx, shader, PIPE_SHADER_FRAGMENT);
752 virgl_delete_fs_state(struct pipe_context *ctx,
756 struct virgl_context *vctx = virgl_context(ctx);
762 virgl_delete_gs_state(struct pipe_context *ctx,
766 struct virgl_context *vctx = virgl_context(ctx);
772 virgl_delete_vs_state(struct pipe_context *ctx,
776 struct virgl_context *vctx = virgl_context(ctx);
782 virgl_delete_tcs_state(struct pipe_context *ctx,
786 struct virgl_context *vctx = virgl_context(ctx);
792 virgl_delete_tes_state(struct pipe_context *ctx,
796 struct virgl_context *vctx = virgl_context(ctx);
801 static void virgl_bind_vs_state(struct pipe_context *ctx,
805 struct virgl_context *vctx = virgl_context(ctx);
810 static void virgl_bind_tcs_state(struct pipe_context *ctx,
814 struct virgl_context *vctx = virgl_context(ctx);
819 static void virgl_bind_tes_state(struct pipe_context *ctx,
823 struct virgl_context *vctx = virgl_context(ctx);
828 static void virgl_bind_gs_state(struct pipe_context *ctx,
832 struct virgl_context *vctx = virgl_context(ctx);
838 static void virgl_bind_fs_state(struct pipe_context *ctx,
842 struct virgl_context *vctx = virgl_context(ctx);
847 static void virgl_clear(struct pipe_context *ctx,
853 struct virgl_context *vctx = virgl_context(ctx);
862 static void virgl_clear_texture(struct pipe_context *ctx,
868 struct virgl_context *vctx = virgl_context(ctx);
880 static void virgl_draw_vbo(struct pipe_context *ctx,
888 util_draw_multi(ctx, dinfo, drawid_offset, indirect, draws, num_draws);
895 struct virgl_context *vctx = virgl_context(ctx);
896 struct virgl_screen *rs = virgl_screen(ctx->screen);
957 void virgl_flush_eq(struct virgl_context *ctx, void *closure,
960 struct virgl_screen *rs = virgl_screen(ctx->base.screen);
963 if (ctx->cbuf->cdw == ctx->cbuf_initial_cdw &&
964 ctx->queue.num_dwords == 0 &&
968 if (ctx->num_draws)
969 u_upload_unmap(ctx->uploader);
972 ctx->num_draws = ctx->num_compute = 0;
974 virgl_transfer_queue_clear(&ctx->queue, ctx->cbuf);
976 virgl_submit_cmd(rs->vws, ctx->cbuf, fence);
979 if (ctx->encoded_transfers)
980 ctx->cbuf->cdw = VIRGL_MAX_TBUF_DWORDS;
982 virgl_encoder_set_sub_ctx(ctx, ctx->hw_sub_ctx_id);
984 ctx->cbuf_initial_cdw = ctx->cbuf->cdw;
989 ctx->queued_staging_res_size = 0;
992 static void virgl_flush_from_st(struct pipe_context *ctx,
996 struct virgl_context *vctx = virgl_context(ctx);
1001 static struct pipe_sampler_view *virgl_create_sampler_view(struct pipe_context *ctx,
1005 struct virgl_context *vctx = virgl_context(ctx);
1025 grview->base.context = ctx;
1031 static void virgl_set_sampler_views(struct pipe_context *ctx,
1039 struct virgl_context *vctx = virgl_context(ctx);
1065 virgl_set_sampler_views(ctx, shader_type, start_slot + num_views,
1071 virgl_texture_barrier(struct pipe_context *ctx, unsigned flags)
1073 struct virgl_context *vctx = virgl_context(ctx);
1074 struct virgl_screen *rs = virgl_screen(ctx->screen);
1082 static void virgl_destroy_sampler_view(struct pipe_context *ctx,
1085 struct virgl_context *vctx = virgl_context(ctx);
1093 static void *virgl_create_sampler_state(struct pipe_context *ctx,
1096 struct virgl_context *vctx = virgl_context(ctx);
1105 static void virgl_delete_sampler_state(struct pipe_context *ctx,
1108 struct virgl_context *vctx = virgl_context(ctx);
1114 static void virgl_bind_sampler_states(struct pipe_context *ctx,
1120 struct virgl_context *vctx = virgl_context(ctx);
1129 static void virgl_set_polygon_stipple(struct pipe_context *ctx,
1132 struct virgl_context *vctx = virgl_context(ctx);
1136 static void virgl_set_scissor_states(struct pipe_context *ctx,
1141 struct virgl_context *vctx = virgl_context(ctx);
1145 static void virgl_set_sample_mask(struct pipe_context *ctx,
1148 struct virgl_context *vctx = virgl_context(ctx);
1152 static void virgl_set_min_samples(struct pipe_context *ctx,
1155 struct virgl_context *vctx = virgl_context(ctx);
1156 struct virgl_screen *rs = virgl_screen(ctx->screen);
1163 static void virgl_set_clip_state(struct pipe_context *ctx,
1166 struct virgl_context *vctx = virgl_context(ctx);
1170 static void virgl_set_tess_state(struct pipe_context *ctx,
1174 struct virgl_context *vctx = virgl_context(ctx);
1175 struct virgl_screen *rs = virgl_screen(ctx->screen);
1182 static void virgl_set_patch_vertices(struct pipe_context *ctx, uint8_t patch_vertices)
1184 struct virgl_context *vctx = virgl_context(ctx);
1189 static void virgl_resource_copy_region(struct pipe_context *ctx,
1197 struct virgl_context *vctx = virgl_context(ctx);
1217 static void virgl_blit(struct pipe_context *ctx,
1220 struct virgl_context *vctx = virgl_context(ctx);
1224 assert(ctx->screen->get_param(ctx->screen,
1234 static void virgl_set_hw_atomic_buffers(struct pipe_context *ctx,
1239 struct virgl_context *vctx = virgl_context(ctx);
1260 static void virgl_set_shader_buffers(struct pipe_context *ctx,
1266 struct virgl_context *vctx = virgl_context(ctx);
1267 struct virgl_screen *rs = virgl_screen(ctx->screen);
1294 static void virgl_create_fence_fd(struct pipe_context *ctx,
1300 struct virgl_screen *rs = virgl_screen(ctx->screen);
1306 static void virgl_fence_server_sync(struct pipe_context *ctx,
1309 struct virgl_context *vctx = virgl_context(ctx);
1310 struct virgl_screen *rs = virgl_screen(ctx->screen);
1316 static void virgl_set_shader_images(struct pipe_context *ctx,
1322 struct virgl_context *vctx = virgl_context(ctx);
1323 struct virgl_screen *rs = virgl_screen(ctx->screen);
1351 virgl_set_shader_images(ctx, shader, start_slot + count,
1356 static void virgl_memory_barrier(struct pipe_context *ctx,
1359 struct virgl_context *vctx = virgl_context(ctx);
1360 struct virgl_screen *rs = virgl_screen(ctx->screen);
1367 static void *virgl_create_compute_state(struct pipe_context *ctx,
1370 struct virgl_context *vctx = virgl_context(ctx);
1408 static void virgl_bind_compute_state(struct pipe_context *ctx, void *state)
1411 struct virgl_context *vctx = virgl_context(ctx);
1416 static void virgl_delete_compute_state(struct pipe_context *ctx, void *state)
1419 struct virgl_context *vctx = virgl_context(ctx);
1424 static void virgl_launch_grid(struct pipe_context *ctx,
1427 struct virgl_context *vctx = virgl_context(ctx);
1467 virgl_emit_string_marker(struct pipe_context *ctx, const char *message, int len)
1469 struct virgl_context *vctx = virgl_context(ctx);
1474 virgl_context_destroy( struct pipe_context *ctx )
1476 struct virgl_context *vctx = virgl_context(ctx);
1477 struct virgl_screen *rs = virgl_screen(ctx->screen);
1505 static void virgl_get_sample_position(struct pipe_context *ctx,
1510 struct virgl_context *vctx = virgl_context(ctx);
1556 static void virgl_link_shader(struct pipe_context *ctx, void **handles)
1558 struct virgl_context *vctx = virgl_context(ctx);