Lines Matching defs:context
39 struct tegra_context *context = to_tegra_context(pcontext);
41 if (context->base.stream_uploader)
42 u_upload_destroy(context->base.stream_uploader);
44 context->gpu->destroy(context->gpu);
45 free(context);
64 struct tegra_context *context = to_tegra_context(pcontext);
84 context->gpu->draw_vbo(context->gpu, pinfo, drawid_offset, pindirect, draws, num_draws);
93 struct tegra_context *context = to_tegra_context(pcontext);
95 context->gpu->render_condition(context->gpu, query, condition, mode);
102 struct tegra_context *context = to_tegra_context(pcontext);
104 return context->gpu->create_query(context->gpu, query_type, index);
112 struct tegra_context *context = to_tegra_context(pcontext);
114 return context->gpu->create_batch_query(context->gpu, num_queries,
121 struct tegra_context *context = to_tegra_context(pcontext);
123 context->gpu->destroy_query(context->gpu, query);
129 struct tegra_context *context = to_tegra_context(pcontext);
131 return context->gpu->begin_query(context->gpu, query);
137 struct tegra_context *context = to_tegra_context(pcontext);
139 return context->gpu->end_query(context->gpu, query);
148 struct tegra_context *context = to_tegra_context(pcontext);
150 return context->gpu->get_query_result(context->gpu, query, wait,
163 struct tegra_context *context = to_tegra_context(pcontext);
165 context->gpu->get_query_result_resource(context->gpu, query, flags,
173 struct tegra_context *context = to_tegra_context(pcontext);
175 context->gpu->set_active_query_state(context->gpu, enable);
182 struct tegra_context *context = to_tegra_context(pcontext);
184 return context->gpu->create_blend_state(context->gpu, cso);
190 struct tegra_context *context = to_tegra_context(pcontext);
192 context->gpu->bind_blend_state(context->gpu, so);
198 struct tegra_context *context = to_tegra_context(pcontext);
200 context->gpu->delete_blend_state(context->gpu, so);
207 struct tegra_context *context = to_tegra_context(pcontext);
209 return context->gpu->create_sampler_state(context->gpu, cso);
217 struct tegra_context *context = to_tegra_context(pcontext);
219 context->gpu->bind_sampler_states(context->gpu, shader, start_slot,
226 struct tegra_context *context = to_tegra_context(pcontext);
228 context->gpu->delete_sampler_state(context->gpu, so);
235 struct tegra_context *context = to_tegra_context(pcontext);
237 return context->gpu->create_rasterizer_state(context->gpu, cso);
243 struct tegra_context *context = to_tegra_context(pcontext);
245 context->gpu->bind_rasterizer_state(context->gpu, so);
251 struct tegra_context *context = to_tegra_context(pcontext);
253 context->gpu->delete_rasterizer_state(context->gpu, so);
260 struct tegra_context *context = to_tegra_context(pcontext);
262 return context->gpu->create_depth_stencil_alpha_state(context->gpu, cso);
268 struct tegra_context *context = to_tegra_context(pcontext);
270 context->gpu->bind_depth_stencil_alpha_state(context->gpu, so);
276 struct tegra_context *context = to_tegra_context(pcontext);
278 context->gpu->delete_depth_stencil_alpha_state(context->gpu, so);
285 struct tegra_context *context = to_tegra_context(pcontext);
287 return context->gpu->create_fs_state(context->gpu, cso);
293 struct tegra_context *context = to_tegra_context(pcontext);
295 context->gpu->bind_fs_state(context->gpu, so);
301 struct tegra_context *context = to_tegra_context(pcontext);
303 context->gpu->delete_fs_state(context->gpu, so);
310 struct tegra_context *context = to_tegra_context(pcontext);
312 return context->gpu->create_vs_state(context->gpu, cso);
318 struct tegra_context *context = to_tegra_context(pcontext);
320 context->gpu->bind_vs_state(context->gpu, so);
326 struct tegra_context *context = to_tegra_context(pcontext);
328 context->gpu->delete_vs_state(context->gpu, so);
335 struct tegra_context *context = to_tegra_context(pcontext);
337 return context->gpu->create_gs_state(context->gpu, cso);
343 struct tegra_context *context = to_tegra_context(pcontext);
345 context->gpu->bind_gs_state(context->gpu, so);
351 struct tegra_context *context = to_tegra_context(pcontext);
353 context->gpu->delete_gs_state(context->gpu, so);
360 struct tegra_context *context = to_tegra_context(pcontext);
362 return context->gpu->create_tcs_state(context->gpu, cso);
368 struct tegra_context *context = to_tegra_context(pcontext);
370 context->gpu->bind_tcs_state(context->gpu, so);
376 struct tegra_context *context = to_tegra_context(pcontext);
378 context->gpu->delete_tcs_state(context->gpu, so);
385 struct tegra_context *context = to_tegra_context(pcontext);
387 return context->gpu->create_tes_state(context->gpu, cso);
393 struct tegra_context *context = to_tegra_context(pcontext);
395 context->gpu->bind_tes_state(context->gpu, so);
401 struct tegra_context *context = to_tegra_context(pcontext);
403 context->gpu->delete_tes_state(context->gpu, so);
411 struct tegra_context *context = to_tegra_context(pcontext);
413 return context->gpu->create_vertex_elements_state(context->gpu,
421 struct tegra_context *context = to_tegra_context(pcontext);
423 context->gpu->bind_vertex_elements_state(context->gpu, so);
429 struct tegra_context *context = to_tegra_context(pcontext);
431 context->gpu->delete_vertex_elements_state(context->gpu, so);
438 struct tegra_context *context = to_tegra_context(pcontext);
440 context->gpu->set_blend_color(context->gpu, color);
447 struct tegra_context *context = to_tegra_context(pcontext);
449 context->gpu->set_stencil_ref(context->gpu, ref);
455 struct tegra_context *context = to_tegra_context(pcontext);
457 context->gpu->set_sample_mask(context->gpu, mask);
463 struct tegra_context *context = to_tegra_context(pcontext);
465 context->gpu->set_min_samples(context->gpu, samples);
472 struct tegra_context *context = to_tegra_context(pcontext);
474 context->gpu->set_clip_state(context->gpu, state);
482 struct tegra_context *context = to_tegra_context(pcontext);
491 context->gpu->set_constant_buffer(context->gpu, shader, index, take_ownership, buf);
498 struct tegra_context *context = to_tegra_context(pcontext);
516 context->gpu->set_framebuffer_state(context->gpu, fb);
523 struct tegra_context *context = to_tegra_context(pcontext);
525 context->gpu->set_polygon_stipple(context->gpu, stipple);
533 struct tegra_context *context = to_tegra_context(pcontext);
535 context->gpu->set_scissor_states(context->gpu, start_slot, num_scissors,
544 struct tegra_context *context = to_tegra_context(pcontext);
546 context->gpu->set_window_rectangles(context->gpu, include, num_rectangles,
555 struct tegra_context *context = to_tegra_context(pcontext);
557 context->gpu->set_viewport_states(context->gpu, start_slot, num_viewports,
569 struct tegra_context *context = to_tegra_context(pcontext);
587 context->gpu->set_sampler_views(context->gpu, shader, start_slot,
597 struct tegra_context *context = to_tegra_context(pcontext);
599 context->gpu->set_tess_state(context->gpu, default_outer_level,
607 struct tegra_context *context = to_tegra_context(pcontext);
609 context->gpu->set_debug_callback(context->gpu, callback);
618 struct tegra_context *context = to_tegra_context(pcontext);
620 context->gpu->set_shader_buffers(context->gpu, shader, start, count,
630 struct tegra_context *context = to_tegra_context(pcontext);
632 context->gpu->set_shader_images(context->gpu, shader, start, count,
642 struct tegra_context *context = to_tegra_context(pcontext);
657 context->gpu->set_vertex_buffers(context->gpu, start_slot, num_buffers,
669 struct tegra_context *context = to_tegra_context(pcontext);
671 return context->gpu->create_stream_output_target(context->gpu,
681 struct tegra_context *context = to_tegra_context(pcontext);
683 context->gpu->stream_output_target_destroy(context->gpu, target);
692 struct tegra_context *context = to_tegra_context(pcontext);
694 context->gpu->set_stream_output_targets(context->gpu, num_targets,
709 struct tegra_context *context = to_tegra_context(pcontext);
713 context->gpu->resource_copy_region(context->gpu, dst->gpu, dst_level, dstx,
721 struct tegra_context *context = to_tegra_context(pcontext);
731 context->gpu->blit(context->gpu, pinfo);
739 struct tegra_context *context = to_tegra_context(pcontext);
741 context->gpu->clear(context->gpu, buffers, NULL, color, depth, stencil);
754 struct tegra_context *context = to_tegra_context(pcontext);
757 context->gpu->clear_render_target(context->gpu, dst->gpu, color, dstx,
773 struct tegra_context *context = to_tegra_context(pcontext);
776 context->gpu->clear_depth_stencil(context->gpu, dst->gpu, flags, depth,
789 struct tegra_context *context = to_tegra_context(pcontext);
791 context->gpu->clear_texture(context->gpu, resource->gpu, level, box, data);
803 struct tegra_context *context = to_tegra_context(pcontext);
805 context->gpu->clear_buffer(context->gpu, resource->gpu, offset, size,
813 struct tegra_context *context = to_tegra_context(pcontext);
815 context->gpu->flush(context->gpu, fence, flags);
823 struct tegra_context *context = to_tegra_context(pcontext);
826 context->gpu->create_fence_fd(context->gpu, fence, fd, type);
833 struct tegra_context *context = to_tegra_context(pcontext);
835 context->gpu->fence_server_sync(context->gpu, fence);
844 struct tegra_context *context = to_tegra_context(pcontext);
852 view->base.context = pcontext;
858 view->gpu = context->gpu->create_sampler_view(context->gpu, resource->gpu,
887 struct tegra_context *context = to_tegra_context(pcontext);
894 surface->gpu = context->gpu->create_surface(context->gpu, resource->gpu,
907 surface->base.context = &context->base;
931 struct tegra_context *context = to_tegra_context(pcontext);
939 transfer->map = context->gpu->buffer_map(context->gpu, resource->gpu,
943 transfer->map = context->gpu->texture_map(context->gpu, resource->gpu,
962 struct tegra_context *context = to_tegra_context(pcontext);
964 context->gpu->transfer_flush_region(context->gpu, transfer->gpu, box);
972 struct tegra_context *context = to_tegra_context(pcontext);
975 context->gpu->buffer_unmap(context->gpu, transfer->gpu);
977 context->gpu->texture_unmap(context->gpu, transfer->gpu);
989 struct tegra_context *context = to_tegra_context(pcontext);
991 context->gpu->buffer_subdata(context->gpu, resource->gpu, usage, offset,
1006 struct tegra_context *context = to_tegra_context(pcontext);
1008 context->gpu->texture_subdata(context->gpu, resource->gpu, level, usage,
1015 struct tegra_context *context = to_tegra_context(pcontext);
1017 context->gpu->texture_barrier(context->gpu, flags);
1023 struct tegra_context *context = to_tegra_context(pcontext);
1028 context->gpu->memory_barrier(context->gpu, flags);
1035 struct tegra_context *context = to_tegra_context(pcontext);
1037 return context->gpu->create_video_codec(context->gpu, template);
1044 struct tegra_context *context = to_tegra_context(pcontext);
1046 return context->gpu->create_video_buffer(context->gpu, template);
1053 struct tegra_context *context = to_tegra_context(pcontext);
1055 return context->gpu->create_compute_state(context->gpu, template);
1061 struct tegra_context *context = to_tegra_context(pcontext);
1063 context->gpu->bind_compute_state(context->gpu, so);
1069 struct tegra_context *context = to_tegra_context(pcontext);
1071 context->gpu->delete_compute_state(context->gpu, so);
1079 struct tegra_context *context = to_tegra_context(pcontext);
1083 context->gpu->set_compute_resources(context->gpu, start, count, resources);
1091 struct tegra_context *context = to_tegra_context(pcontext);
1095 context->gpu->set_global_binding(context->gpu, first, count, resources,
1103 struct tegra_context *context = to_tegra_context(pcontext);
1107 context->gpu->launch_grid(context->gpu, info);
1114 struct tegra_context *context = to_tegra_context(pcontext);
1116 context->gpu->get_sample_position(context->gpu, count, index, value);
1122 struct tegra_context *context = to_tegra_context(pcontext);
1124 return context->gpu->get_timestamp(context->gpu);
1132 struct tegra_context *context = to_tegra_context(pcontext);
1134 context->gpu->flush_resource(context->gpu, resource->gpu);
1142 struct tegra_context *context = to_tegra_context(pcontext);
1144 context->gpu->invalidate_resource(context->gpu, resource->gpu);
1150 struct tegra_context *context = to_tegra_context(pcontext);
1152 return context->gpu->get_device_reset_status(context->gpu);
1159 struct tegra_context *context = to_tegra_context(pcontext);
1161 context->gpu->set_device_reset_callback(context->gpu, cb);
1168 struct tegra_context *context = to_tegra_context(pcontext);
1170 context->gpu->dump_debug_state(context->gpu, stream, flags);
1177 struct tegra_context *context = to_tegra_context(pcontext);
1179 context->gpu->emit_string_marker(context->gpu, string, length);
1192 struct tegra_context *context = to_tegra_context(pcontext);
1194 return context->gpu->generate_mipmap(context->gpu, resource->gpu, format,
1204 struct tegra_context *context = to_tegra_context(pcontext);
1206 return context->gpu->create_texture_handle(context->gpu, view, state);
1212 struct tegra_context *context = to_tegra_context(pcontext);
1214 context->gpu->delete_texture_handle(context->gpu, handle);
1220 struct tegra_context *context = to_tegra_context(pcontext);
1222 context->gpu->make_texture_handle_resident(context->gpu, handle, resident);
1228 struct tegra_context *context = to_tegra_context(pcontext);
1230 return context->gpu->create_image_handle(context->gpu, image);
1236 struct tegra_context *context = to_tegra_context(pcontext);
1238 context->gpu->delete_image_handle(context->gpu, handle);
1245 struct tegra_context *context = to_tegra_context(pcontext);
1247 context->gpu->make_image_handle_resident(context->gpu, handle, access,
1256 struct tegra_context *context;
1258 context = calloc(1, sizeof(*context));
1259 if (!context)
1262 context->gpu = screen->gpu->context_create(screen->gpu, priv, flags);
1263 if (!context->gpu) {
1264 debug_error("failed to create GPU context\n");
1268 context->base.screen = &screen->base;
1269 context->base.priv = priv;
1275 * uploaders create resources based on the context that they were created
1276 * from, which means that nouveau's uploader will use the nouveau context
1286 context->base.stream_uploader = u_upload_create_default(&context->base);
1287 if (!context->base.stream_uploader)
1290 context->base.const_uploader = context->base.stream_uploader;
1292 context->base.destroy = tegra_destroy;
1294 context->base.draw_vbo = tegra_draw_vbo;
1296 context->base.render_condition = tegra_render_condition;
1298 context->base.create_query = tegra_create_query;
1299 context->base.create_batch_query = tegra_create_batch_query;
1300 context->base.destroy_query = tegra_destroy_query;
1301 context->base.begin_query = tegra_begin_query;
1302 context->base.end_query = tegra_end_query;
1303 context->base.get_query_result = tegra_get_query_result;
1304 context->base.get_query_result_resource = tegra_get_query_result_resource;
1305 context->base.set_active_query_state = tegra_set_active_query_state;
1307 context->base.create_blend_state = tegra_create_blend_state;
1308 context->base.bind_blend_state = tegra_bind_blend_state;
1309 context->base.delete_blend_state = tegra_delete_blend_state;
1311 context->base.create_sampler_state = tegra_create_sampler_state;
1312 context->base.bind_sampler_states = tegra_bind_sampler_states;
1313 context->base.delete_sampler_state = tegra_delete_sampler_state;
1315 context->base.create_rasterizer_state = tegra_create_rasterizer_state;
1316 context->base.bind_rasterizer_state = tegra_bind_rasterizer_state;
1317 context->base.delete_rasterizer_state = tegra_delete_rasterizer_state;
1319 context->base.create_depth_stencil_alpha_state = tegra_create_depth_stencil_alpha_state;
1320 context->base.bind_depth_stencil_alpha_state = tegra_bind_depth_stencil_alpha_state;
1321 context->base.delete_depth_stencil_alpha_state = tegra_delete_depth_stencil_alpha_state;
1323 context->base.create_fs_state = tegra_create_fs_state;
1324 context->base.bind_fs_state = tegra_bind_fs_state;
1325 context->base.delete_fs_state = tegra_delete_fs_state;
1327 context->base.create_vs_state = tegra_create_vs_state;
1328 context->base.bind_vs_state = tegra_bind_vs_state;
1329 context->base.delete_vs_state = tegra_delete_vs_state;
1331 context->base.create_gs_state = tegra_create_gs_state;
1332 context->base.bind_gs_state = tegra_bind_gs_state;
1333 context->base.delete_gs_state = tegra_delete_gs_state;
1335 context->base.create_tcs_state = tegra_create_tcs_state;
1336 context->base.bind_tcs_state = tegra_bind_tcs_state;
1337 context->base.delete_tcs_state = tegra_delete_tcs_state;
1339 context->base.create_tes_state = tegra_create_tes_state;
1340 context->base.bind_tes_state = tegra_bind_tes_state;
1341 context->base.delete_tes_state = tegra_delete_tes_state;
1343 context->base.create_vertex_elements_state = tegra_create_vertex_elements_state;
1344 context->base.bind_vertex_elements_state = tegra_bind_vertex_elements_state;
1345 context->base.delete_vertex_elements_state = tegra_delete_vertex_elements_state;
1347 context->base.set_blend_color = tegra_set_blend_color;
1348 context->base.set_stencil_ref = tegra_set_stencil_ref;
1349 context->base.set_sample_mask = tegra_set_sample_mask;
1350 context->base.set_min_samples = tegra_set_min_samples;
1351 context->base.set_clip_state = tegra_set_clip_state;
1353 context->base.set_constant_buffer = tegra_set_constant_buffer;
1354 context->base.set_framebuffer_state = tegra_set_framebuffer_state;
1355 context->base.set_polygon_stipple = tegra_set_polygon_stipple;
1356 context->base.set_scissor_states = tegra_set_scissor_states;
1357 context->base.set_window_rectangles = tegra_set_window_rectangles;
1358 context->base.set_viewport_states = tegra_set_viewport_states;
1359 context->base.set_sampler_views = tegra_set_sampler_views;
1360 context->base.set_tess_state = tegra_set_tess_state;
1362 context->base.set_debug_callback = tegra_set_debug_callback;
1364 context->base.set_shader_buffers = tegra_set_shader_buffers;
1365 context->base.set_shader_images = tegra_set_shader_images;
1366 context->base.set_vertex_buffers = tegra_set_vertex_buffers;
1368 context->base.create_stream_output_target = tegra_create_stream_output_target;
1369 context->base.stream_output_target_destroy = tegra_stream_output_target_destroy;
1370 context->base.set_stream_output_targets = tegra_set_stream_output_targets;
1372 context->base.resource_copy_region = tegra_resource_copy_region;
1373 context->base.blit = tegra_blit;
1374 context->base.clear = tegra_clear;
1375 context->base.clear_render_target = tegra_clear_render_target;
1376 context->base.clear_depth_stencil = tegra_clear_depth_stencil;
1377 context->base.clear_texture = tegra_clear_texture;
1378 context->base.clear_buffer = tegra_clear_buffer;
1379 context->base.flush = tegra_flush;
1381 context->base.create_fence_fd = tegra_create_fence_fd;
1382 context->base.fence_server_sync = tegra_fence_server_sync;
1384 context->base.create_sampler_view = tegra_create_sampler_view;
1385 context->base.sampler_view_destroy = tegra_sampler_view_destroy;
1387 context->base.create_surface = tegra_create_surface;
1388 context->base.surface_destroy = tegra_surface_destroy;
1390 context->base.buffer_map = tegra_transfer_map;
1391 context->base.texture_map = tegra_transfer_map;
1392 context->base.transfer_flush_region = tegra_transfer_flush_region;
1393 context->base.buffer_unmap = tegra_transfer_unmap;
1394 context->base.texture_unmap = tegra_transfer_unmap;
1395 context->base.buffer_subdata = tegra_buffer_subdata;
1396 context->base.texture_subdata = tegra_texture_subdata;
1398 context->base.texture_barrier = tegra_texture_barrier;
1399 context->base.memory_barrier = tegra_memory_barrier;
1401 context->base.create_video_codec = tegra_create_video_codec;
1402 context->base.create_video_buffer = tegra_create_video_buffer;
1404 context->base.create_compute_state = tegra_create_compute_state;
1405 context->base.bind_compute_state = tegra_bind_compute_state;
1406 context->base.delete_compute_state = tegra_delete_compute_state;
1407 context->base.set_compute_resources = tegra_set_compute_resources;
1408 context->base.set_global_binding = tegra_set_global_binding;
1409 context->base.launch_grid = tegra_launch_grid;
1410 context->base.get_sample_position = tegra_get_sample_position;
1411 context->base.get_timestamp = tegra_get_timestamp;
1413 context->base.flush_resource = tegra_flush_resource;
1414 context->base.invalidate_resource = tegra_invalidate_resource;
1416 context->base.get_device_reset_status = tegra_get_device_reset_status;
1417 context->base.set_device_reset_callback = tegra_set_device_reset_callback;
1418 context->base.dump_debug_state = tegra_dump_debug_state;
1419 context->base.emit_string_marker = tegra_emit_string_marker;
1421 context->base.generate_mipmap = tegra_generate_mipmap;
1423 context->base.create_texture_handle = tegra_create_texture_handle;
1424 context->base.delete_texture_handle = tegra_delete_texture_handle;
1425 context->base.make_texture_handle_resident = tegra_make_texture_handle_resident;
1426 context->base.create_image_handle = tegra_create_image_handle;
1427 context->base.delete_image_handle = tegra_delete_image_handle;
1428 context->base.make_image_handle_resident = tegra_make_image_handle_resident;
1430 return &context->base;
1433 context->gpu->destroy(context->gpu);
1435 free(context);