Lines Matching full:instance
177 radv_init_dri_options(struct radv_instance *instance) in radv_init_dri_options() argument
179 …driParseOptionInfo(&instance->drirc.available_options, radv_dri_options, ARRAY_SIZE(radv_dri_optio… in radv_init_dri_options()
180 …driParseConfigFiles(&instance->drirc.options, &instance->drirc.available_options, 0, "radv", NULL,… in radv_init_dri_options()
181 instance->vk.app_info.app_name, instance->vk.app_info.app_version, in radv_init_dri_options()
182 instance->vk.app_info.engine_name, instance->vk.app_info.engine_version); in radv_init_dri_options()
184 instance->drirc.enable_mrt_output_nan_fixup = in radv_init_dri_options()
185 driQueryOptionb(&instance->drirc.options, "radv_enable_mrt_output_nan_fixup"); in radv_init_dri_options()
187 instance->drirc.disable_shrink_image_store = in radv_init_dri_options()
188 driQueryOptionb(&instance->drirc.options, "radv_disable_shrink_image_store"); in radv_init_dri_options()
190 instance->drirc.disable_tc_compat_htile_in_general = in radv_init_dri_options()
191 driQueryOptionb(&instance->drirc.options, "radv_disable_tc_compat_htile_general"); in radv_init_dri_options()
193 if (driQueryOptionb(&instance->drirc.options, "radv_no_dynamic_bounds")) in radv_init_dri_options()
194 instance->debug_flags |= RADV_DEBUG_NO_DYNAMIC_BOUNDS; in radv_init_dri_options()
196 if (driQueryOptionb(&instance->drirc.options, "radv_lower_discard_to_demote")) in radv_init_dri_options()
197 instance->debug_flags |= RADV_DEBUG_DISCARD_TO_DEMOTE; in radv_init_dri_options()
199 if (driQueryOptionb(&instance->drirc.options, "radv_invariant_geom")) in radv_init_dri_options()
200 instance->debug_flags |= RADV_DEBUG_INVARIANT_GEOM; in radv_init_dri_options()
202 if (driQueryOptionb(&instance->drirc.options, "radv_split_fma")) in radv_init_dri_options()
203 instance->debug_flags |= RADV_DEBUG_SPLIT_FMA; in radv_init_dri_options()
205 if (driQueryOptionb(&instance->drirc.options, "radv_disable_dcc")) in radv_init_dri_options()
206 instance->debug_flags |= RADV_DEBUG_NO_DCC; in radv_init_dri_options()
208 if (driQueryOptionb(&instance->drirc.options, "radv_disable_ngg_gs")) in radv_init_dri_options()
209 instance->debug_flags |= RADV_DEBUG_NO_NGG_GS; in radv_init_dri_options()
211 instance->drirc.clear_lds = driQueryOptionb(&instance->drirc.options, "radv_clear_lds"); in radv_init_dri_options()
213 instance->drirc.zero_vram = driQueryOptionb(&instance->drirc.options, "radv_zero_vram"); in radv_init_dri_options()
215 instance->drirc.disable_aniso_single_level = in radv_init_dri_options()
216 driQueryOptionb(&instance->drirc.options, "radv_disable_aniso_single_level"); in radv_init_dri_options()
218 …instance->drirc.disable_trunc_coord = driQueryOptionb(&instance->drirc.options, "radv_disable_trun… in radv_init_dri_options()
220 instance->drirc.disable_sinking_load_input_fs = in radv_init_dri_options()
221 driQueryOptionb(&instance->drirc.options, "radv_disable_sinking_load_input_fs"); in radv_init_dri_options()
223 …instance->drirc.flush_before_query_copy = driQueryOptionb(&instance->drirc.options, "radv_flush_be… in radv_init_dri_options()
225 instance->drirc.enable_unified_heap_on_apu = in radv_init_dri_options()
226 driQueryOptionb(&instance->drirc.options, "radv_enable_unified_heap_on_apu"); in radv_init_dri_options()
228 …instance->drirc.tex_non_uniform = driQueryOptionb(&instance->drirc.options, "radv_tex_non_uniform"… in radv_init_dri_options()
230 …instance->drirc.ssbo_non_uniform = driQueryOptionb(&instance->drirc.options, "radv_ssbo_non_unifor… in radv_init_dri_options()
232 instance->drirc.app_layer = driQueryOptionstr(&instance->drirc.options, "radv_app_layer"); in radv_init_dri_options()
234 instance->drirc.flush_before_timestamp_write = in radv_init_dri_options()
235 driQueryOptionb(&instance->drirc.options, "radv_flush_before_timestamp_write"); in radv_init_dri_options()
237 instance->drirc.force_rt_wave64 = driQueryOptionb(&instance->drirc.options, "radv_rt_wave64"); in radv_init_dri_options()
239 instance->drirc.dual_color_blend_by_location = in radv_init_dri_options()
240 driQueryOptionb(&instance->drirc.options, "dual_color_blend_by_location"); in radv_init_dri_options()
242 …instance->drirc.legacy_sparse_binding = driQueryOptionb(&instance->drirc.options, "radv_legacy_spa… in radv_init_dri_options()
244 instance->drirc.override_graphics_shader_version = in radv_init_dri_options()
245 driQueryOptioni(&instance->drirc.options, "radv_override_graphics_shader_version"); in radv_init_dri_options()
246 instance->drirc.override_compute_shader_version = in radv_init_dri_options()
247 driQueryOptioni(&instance->drirc.options, "radv_override_compute_shader_version"); in radv_init_dri_options()
248 instance->drirc.override_ray_tracing_shader_version = in radv_init_dri_options()
249 driQueryOptioni(&instance->drirc.options, "radv_override_ray_tracing_shader_version"); in radv_init_dri_options()
251 instance->drirc.enable_dgc = driQueryOptionb(&instance->drirc.options, "radv_dgc"); in radv_init_dri_options()
253 …instance->drirc.override_vram_size = driQueryOptioni(&instance->drirc.options, "override_vram_size… in radv_init_dri_options()
255 …instance->drirc.enable_khr_present_wait = driQueryOptionb(&instance->drirc.options, "vk_khr_presen… in radv_init_dri_options()
257 instance->drirc.override_uniform_offset_alignment = in radv_init_dri_options()
258 driQueryOptioni(&instance->drirc.options, "radv_override_uniform_offset_alignment"); in radv_init_dri_options()
260 instance->drirc.report_llvm9_version_string = in radv_init_dri_options()
261 driQueryOptionb(&instance->drirc.options, "radv_report_llvm9_version_string"); in radv_init_dri_options()
263 instance->drirc.vk_require_etc2 = driQueryOptionb(&instance->drirc.options, "vk_require_etc2"); in radv_init_dri_options()
264 instance->drirc.vk_require_astc = driQueryOptionb(&instance->drirc.options, "vk_require_astc"); in radv_init_dri_options()
266 instance->drirc.force_active_accel_struct_leaves = in radv_init_dri_options()
267 driQueryOptionb(&instance->drirc.options, "radv_force_active_accel_struct_leaves"); in radv_init_dri_options()
311 radv_handle_legacy_sqtt_trigger(struct vk_instance *instance) in radv_handle_legacy_sqtt_trigger() argument
315 instance->trace_trigger_file = trigger_file; in radv_handle_legacy_sqtt_trigger()
316 instance->trace_mode |= RADV_TRACE_MODE_RGP; in radv_handle_legacy_sqtt_trigger()
325 struct radv_instance *instance; in radv_CreateInstance() local
331 instance = vk_zalloc(pAllocator, sizeof(*instance), 8, VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE); in radv_CreateInstance()
332 if (!instance) in radv_CreateInstance()
340 …vk_instance_init(&instance->vk, &radv_instance_extensions_supported, &dispatch_table, pCreateInfo,… in radv_CreateInstance()
342 vk_free(pAllocator, instance); in radv_CreateInstance()
346 vk_instance_add_driver_trace_modes(&instance->vk, trace_options); in radv_CreateInstance()
347 radv_handle_legacy_sqtt_trigger(&instance->vk); in radv_CreateInstance()
349 instance->debug_flags = parse_debug_string(getenv("RADV_DEBUG"), radv_debug_options); in radv_CreateInstance()
350 instance->perftest_flags = parse_debug_string(getenv("RADV_PERFTEST"), radv_perftest_options); in radv_CreateInstance()
354 * AMDGPU instance. in radv_CreateInstance()
357 instance->vk.physical_devices.enumerate = create_null_physical_device; in radv_CreateInstance()
359 instance->vk.physical_devices.try_create_for_drm = create_drm_physical_device; in radv_CreateInstance()
361 instance->vk.physical_devices.destroy = radv_physical_device_destroy; in radv_CreateInstance()
363 if (instance->debug_flags & RADV_DEBUG_STARTUP) in radv_CreateInstance()
364 fprintf(stderr, "radv: info: Created an instance.\n"); in radv_CreateInstance()
366 VG(VALGRIND_CREATE_MEMPOOL(instance, 0, false)); in radv_CreateInstance()
368 radv_init_dri_options(instance); in radv_CreateInstance()
370 *pInstance = radv_instance_to_handle(instance); in radv_CreateInstance()
378 RADV_FROM_HANDLE(radv_instance, instance, _instance); in radv_DestroyInstance()
380 if (!instance) in radv_DestroyInstance()
383 VG(VALGRIND_DESTROY_MEMPOOL(instance)); in radv_DestroyInstance()
385 driDestroyOptionCache(&instance->drirc.options); in radv_DestroyInstance()
386 driDestroyOptionInfo(&instance->drirc.available_options); in radv_DestroyInstance()
388 vk_instance_finish(&instance->vk); in radv_DestroyInstance()
389 vk_free(&instance->vk.alloc, instance); in radv_DestroyInstance()
424 RADV_FROM_HANDLE(vk_instance, instance, _instance); in radv_GetInstanceProcAddr()
425 return vk_instance_get_proc_addr(instance, &radv_instance_entrypoints, pName); in radv_GetInstanceProcAddr()
439 vk_icdGetInstanceProcAddr(VkInstance instance, const char *pName) in vk_icdGetInstanceProcAddr() argument
441 return radv_GetInstanceProcAddr(instance, pName); in vk_icdGetInstanceProcAddr()