Lines Matching defs:device

44 create_blit_pipeline_layout(struct v3dv_device *device,
63 v3dv_CreateDescriptorSetLayout(v3dv_device_to_handle(device),
65 &device->vk.alloc,
82 v3dv_CreatePipelineLayout(v3dv_device_to_handle(device),
84 &device->vk.alloc,
90 v3dv_meta_blit_init(struct v3dv_device *device)
93 device->meta.blit.cache[i] =
99 create_blit_pipeline_layout(device,
100 &device->meta.blit.ds_layout,
101 &device->meta.blit.p_layout);
105 v3dv_meta_blit_finish(struct v3dv_device *device)
107 VkDevice _device = v3dv_device_to_handle(device);
110 hash_table_foreach(device->meta.blit.cache[i], entry) {
112 v3dv_DestroyPipeline(_device, item->pipeline, &device->vk.alloc);
113 v3dv_DestroyRenderPass(_device, item->pass, &device->vk.alloc);
114 v3dv_DestroyRenderPass(_device, item->pass_no_load, &device->vk.alloc);
115 vk_free(&device->vk.alloc, item);
117 _mesa_hash_table_destroy(device->meta.blit.cache[i], NULL);
120 if (device->meta.blit.p_layout) {
121 v3dv_DestroyPipelineLayout(_device, device->meta.blit.p_layout,
122 &device->vk.alloc);
125 if (device->meta.blit.ds_layout) {
126 v3dv_DestroyDescriptorSetLayout(_device, device->meta.blit.ds_layout,
127 &device->vk.alloc);
144 create_texel_buffer_copy_pipeline_layout(struct v3dv_device *device,
163 v3dv_CreateDescriptorSetLayout(v3dv_device_to_handle(device),
165 &device->vk.alloc,
194 v3dv_CreatePipelineLayout(v3dv_device_to_handle(device),
196 &device->vk.alloc,
202 v3dv_meta_texel_buffer_copy_init(struct v3dv_device *device)
205 device->meta.texel_buffer_copy.cache[i] =
212 device,
213 &device->meta.texel_buffer_copy.ds_layout,
214 &device->meta.texel_buffer_copy.p_layout);
218 v3dv_meta_texel_buffer_copy_finish(struct v3dv_device *device)
220 VkDevice _device = v3dv_device_to_handle(device);
223 hash_table_foreach(device->meta.texel_buffer_copy.cache[i], entry) {
225 v3dv_DestroyPipeline(_device, item->pipeline, &device->vk.alloc);
226 v3dv_DestroyRenderPass(_device, item->pass, &device->vk.alloc);
227 v3dv_DestroyRenderPass(_device, item->pass_no_load, &device->vk.alloc);
228 vk_free(&device->vk.alloc, item);
230 _mesa_hash_table_destroy(device->meta.texel_buffer_copy.cache[i], NULL);
233 if (device->meta.texel_buffer_copy.p_layout) {
234 v3dv_DestroyPipelineLayout(_device, device->meta.texel_buffer_copy.p_layout,
235 &device->vk.alloc);
238 if (device->meta.texel_buffer_copy.ds_layout) {
239 v3dv_DestroyDescriptorSetLayout(_device, device->meta.texel_buffer_copy.ds_layout,
240 &device->vk.alloc);
388 v3dv_X(cmd_buffer->device, get_internal_type_bpp_for_image_aspects)
414 v3dv_X(job->device, meta_framebuffer_init)(&framebuffer, fb_format,
417 v3dv_X(job->device, job_emit_binning_flush)(job);
418 v3dv_X(job->device, meta_emit_copy_image_to_buffer_rcl)
605 struct v3dv_device *device = cmd_buffer->device;
606 VkDevice _device = v3dv_device_to_handle(device);
623 result = v3dv_CreateImage(_device, &uiview_info, &device->vk.alloc, &uiview);
661 v3dv_CreateImage(_device, &image_info, &device->vk.alloc, &buffer_image);
851 v3dv_get_compatible_tfu_format(cmd_buffer->device,
875 v3dv_X(cmd_buffer->device, meta_emit_tfu_job)(
919 v3dv_X(cmd_buffer->device, get_internal_type_bpp_for_image_aspects)
955 v3dv_X(job->device, meta_framebuffer_init)(&framebuffer, fb_format,
958 v3dv_X(job->device, job_emit_binning_flush)(job);
959 v3dv_X(job->device, meta_emit_copy_image_rcl)(job, dst, src, &framebuffer, region);
987 VkDevice _device = v3dv_device_to_handle(cmd_buffer->device);
1007 v3dv_CreateImage(_device, &info, &cmd_buffer->device->vk.alloc, &_image);
1101 const struct v3dv_format *f = v3dv_X(cmd_buffer->device, get_format)(format);
1202 v3dv_X(cmd_buffer->device, meta_copy_buffer)
1217 V3DV_FROM_HANDLE(v3dv_device, device, _device);
1219 v3dv_bo_free(device, bo);
1233 v3dv_bo_alloc(cmd_buffer->device, dataSize, "vkCmdUpdateBuffer", true);
1239 bool ok = v3dv_bo_map(cmd_buffer->device, src_bo, src_bo->size);
1249 v3dv_bo_unmap(cmd_buffer->device, src_bo);
1258 v3dv_X(cmd_buffer->device, meta_copy_buffer)
1294 v3dv_X(cmd_buffer->device, meta_fill_buffer)
1360 v3dv_get_compatible_tfu_format(cmd_buffer->device,
1396 v3dv_X(cmd_buffer->device, meta_emit_tfu_job)(
1429 v3dv_X(cmd_buffer->device, get_internal_type_bpp_for_image_aspects)
1455 v3dv_X(job->device, meta_framebuffer_init)(&framebuffer, fb_format,
1458 v3dv_X(job->device, job_emit_binning_flush)(job);
1459 v3dv_X(job->device, meta_emit_copy_buffer_to_image_rcl)
1507 v3dv_CreateDescriptorPool(v3dv_device_to_handle(cmd_buffer->device),
1509 &cmd_buffer->device->vk.alloc,
1542 struct v3dv_device *device = cmd_buffer->device;
1543 VkDevice _device = v3dv_device_to_handle(device);
1548 .pSetLayouts = &device->meta.texel_buffer_copy.ds_layout,
1594 create_blit_render_pass(struct v3dv_device *device,
1601 create_pipeline(struct v3dv_device *device,
1729 get_texel_buffer_copy_fs(struct v3dv_device *device, VkFormat format,
1826 create_texel_buffer_copy_pipeline(struct v3dv_device *device,
1840 nir_shader *fs_nir = get_texel_buffer_copy_fs(device, format, cswizzle);
1875 return create_pipeline(device,
1888 struct v3dv_device *device,
1902 mtx_lock(&device->meta.mtx);
1904 _mesa_hash_table_search(device->meta.texel_buffer_copy.cache[image_type],
1907 mtx_unlock(&device->meta.mtx);
1912 *pipeline = vk_zalloc2(&device->vk.alloc, NULL, sizeof(**pipeline), 8,
1919 ok = create_blit_render_pass(device, format, format,
1926 create_texel_buffer_copy_pipeline(device,
1929 device->meta.texel_buffer_copy.p_layout,
1936 _mesa_hash_table_insert(device->meta.texel_buffer_copy.cache[image_type],
1939 mtx_unlock(&device->meta.mtx);
1943 mtx_unlock(&device->meta.mtx);
1945 VkDevice _device = v3dv_device_to_handle(device);
1948 v3dv_DestroyRenderPass(_device, (*pipeline)->pass, &device->vk.alloc);
1950 v3dv_DestroyPipeline(_device, (*pipeline)->pipeline, &device->vk.alloc);
1951 vk_free(&device->vk.alloc, *pipeline);
2008 cmd_buffer->device, src_format,
2040 bool ok = get_copy_texel_buffer_pipeline(cmd_buffer->device,
2063 VkDevice _device = v3dv_device_to_handle(cmd_buffer->device);
2074 &cmd_buffer->device->vk.alloc,
2106 cmd_buffer->device->meta.texel_buffer_copy.p_layout,
2131 result = v3dv_create_image_view(cmd_buffer->device,
2152 &cmd_buffer->device->vk.alloc, &fb);
2181 v3dv_subpass_area_is_tile_aligned(cmd_buffer->device, &render_area,
2217 cmd_buffer->device->meta.texel_buffer_copy.p_layout,
2266 cmd_buffer->device->meta.texel_buffer_copy.p_layout,
2308 struct v3dv_device *device = cmd_buffer->device;
2309 VkDevice _device = v3dv_device_to_handle(device);
2336 v3dv_CreateImage(_device, &dummy_info, &device->vk.alloc, &dummy_image);
2342 v3dv_DestroyImage(_device, dummy_image, &device->vk.alloc);
2350 result = v3dv_AllocateMemory(_device, &alloc_info, &device->vk.alloc, &mem);
2420 v3dv_CreateImage(_device, &image_info, &device->vk.alloc,
2693 v3dv_cmd_buffer_create_cpu_job(cmd_buffer->device,
2864 v3dv_get_compatible_tfu_format(cmd_buffer->device,
2920 v3dv_X(cmd_buffer->device, meta_emit_tfu_job)(
2991 create_blit_render_pass(struct v3dv_device *device,
3039 result = v3dv_CreateRenderPass2(v3dv_device_to_handle(device),
3040 &info, &device->vk.alloc, pass_load);
3045 result = v3dv_CreateRenderPass2(v3dv_device_to_handle(device),
3046 &info, &device->vk.alloc, pass_no_load);
3211 struct v3dv_device *device,
3279 get_color_blit_fs(struct v3dv_device *device,
3314 nir_ssa_def *color = build_nir_tex_op(&b, device, tex_coord, src_base_type,
3365 create_pipeline(struct v3dv_device *device,
3472 v3dv_CreateGraphicsPipelines(v3dv_device_to_handle(device),
3475 &device->vk.alloc,
3507 create_blit_pipeline(struct v3dv_device *device,
3529 get_color_blit_fs(device, dst_format, src_format,
3564 return create_pipeline(device,
3580 get_blit_pipeline(struct v3dv_device *device,
3594 mtx_lock(&device->meta.mtx);
3596 _mesa_hash_table_search(device->meta.blit.cache[src_type], &key);
3598 mtx_unlock(&device->meta.mtx);
3603 *pipeline = vk_zalloc2(&device->vk.alloc, NULL, sizeof(**pipeline), 8,
3609 ok = create_blit_render_pass(device, dst_format, src_format,
3618 ok = create_blit_pipeline(device,
3626 device->meta.blit.p_layout,
3632 _mesa_hash_table_insert(device->meta.blit.cache[src_type],
3635 mtx_unlock(&device->meta.mtx);
3639 mtx_unlock(&device->meta.mtx);
3641 VkDevice _device = v3dv_device_to_handle(device);
3644 v3dv_DestroyRenderPass(_device, (*pipeline)->pass, &device->vk.alloc);
3646 v3dv_DestroyRenderPass(_device, (*pipeline)->pass_no_load, &device->vk.alloc);
3648 v3dv_DestroyPipeline(_device, (*pipeline)->pipeline, &device->vk.alloc);
3649 vk_free(&device->vk.alloc, *pipeline);
3725 v3dv_CreateDescriptorPool(v3dv_device_to_handle(cmd_buffer->device),
3727 &cmd_buffer->device->vk.alloc,
3760 struct v3dv_device *device = cmd_buffer->device;
3761 VkDevice _device = v3dv_device_to_handle(device);
3766 .pSetLayouts = &device->meta.blit.ds_layout,
3971 bool ok = get_blit_pipeline(cmd_buffer->device,
3980 struct v3dv_device *device = cmd_buffer->device;
3981 assert(device->meta.blit.ds_layout);
3983 VkDevice _device = v3dv_device_to_handle(device);
3997 result = v3dv_CreateSampler(_device, &sampler_info, &device->vk.alloc,
4053 result = v3dv_create_image_view(device, &dst_image_view_info,
4074 &cmd_buffer->device->vk.alloc, &fb);
4113 result = v3dv_create_image_view(device, &src_image_view_info,
4140 device->meta.blit.p_layout,
4158 v3dv_subpass_area_is_tile_aligned(cmd_buffer->device, &render_area,
4195 device->meta.blit.p_layout,
4264 if (!v3dv_X(cmd_buffer->device, format_supports_tlb_resolve)(src->format))
4287 v3dv_X(cmd_buffer->device, get_internal_type_bpp_for_image_aspects)
4295 v3dv_X(job->device, meta_framebuffer_init)(&framebuffer, fb_format,
4298 v3dv_X(job->device, job_emit_binning_flush)(job);
4299 v3dv_X(job->device, meta_emit_resolve_image_rcl)(job, dst, src,