Lines Matching refs:instance
175 struct panvk_instance *instance;
181 instance = vk_zalloc(pAllocator, sizeof(*instance), 8,
183 if (!instance)
194 result = vk_instance_init(&instance->vk,
200 vk_free(pAllocator, instance);
204 instance->physical_device_count = -1;
205 instance->debug_flags = parse_debug_string(getenv("PANVK_DEBUG"),
208 if (instance->debug_flags & PANVK_DEBUG_STARTUP)
209 panvk_logi("Created an instance");
211 VG(VALGRIND_CREATE_MEMPOOL(instance, 0, false));
213 *pInstance = panvk_instance_to_handle(instance);
235 VK_FROM_HANDLE(panvk_instance, instance, _instance);
237 if (!instance)
240 for (int i = 0; i < instance->physical_device_count; ++i) {
241 panvk_physical_device_finish(instance->physical_devices + i);
244 vk_instance_finish(&instance->vk);
245 vk_free(&instance->vk.alloc, instance);
250 struct panvk_instance *instance,
260 return vk_errorf(instance, VK_ERROR_INCOMPATIBLE_DRIVER,
267 return vk_errorf(instance, VK_ERROR_INCOMPATIBLE_DRIVER,
274 return vk_errorf(instance, VK_ERROR_INCOMPATIBLE_DRIVER,
282 return vk_errorf(instance, VK_ERROR_INCOMPATIBLE_DRIVER,
288 if (instance->debug_flags & PANVK_DEBUG_STARTUP)
302 result = vk_physical_device_init(&device->vk, &instance->vk,
307 vk_error(instance, result);
311 device->instance = instance;
315 if (instance->vk.enabled_extensions.KHR_display) {
323 if (instance->debug_flags & PANVK_DEBUG_TRACE)
331 result = vk_errorf(instance, VK_ERROR_INCOMPATIBLE_DRIVER,
343 result = vk_errorf(instance, VK_ERROR_INITIALIZATION_FAILED,
366 vk_error(instance, result);
383 panvk_enumerate_devices(struct panvk_instance *instance)
390 instance->physical_device_count = 0;
394 if (instance->debug_flags & PANVK_DEBUG_STARTUP)
398 return vk_error(instance, VK_ERROR_INCOMPATIBLE_DRIVER);
404 result = panvk_physical_device_init(instance->physical_devices +
405 instance->physical_device_count,
406 instance, devices[i]);
408 ++instance->physical_device_count;
423 VK_FROM_HANDLE(panvk_instance, instance, _instance);
429 if (instance->physical_device_count < 0) {
430 result = panvk_enumerate_devices(instance);
435 for (uint32_t i = 0; i < instance->physical_device_count; ++i) {
438 *p = panvk_physical_device_to_handle(instance->physical_devices + i);
450 VK_FROM_HANDLE(panvk_instance, instance, _instance);
456 if (instance->physical_device_count < 0) {
457 result = panvk_enumerate_devices(instance);
462 for (uint32_t i = 0; i < instance->physical_device_count; ++i) {
467 panvk_physical_device_to_handle(instance->physical_devices + i);
945 device = vk_zalloc2(&physical_device->instance->vk.alloc, pAllocator,
1005 device->instance = physical_device->instance;
1116 VK_FROM_HANDLE(panvk_instance, instance, _instance);
1117 return vk_instance_get_proc_addr(&instance->vk,
1127 vk_icdGetInstanceProcAddr(VkInstance instance, const char *pName);
1131 vk_icdGetInstanceProcAddr(VkInstance instance, const char *pName)
1133 return panvk_GetInstanceProcAddr(instance, pName);
1148 VK_FROM_HANDLE(panvk_instance, instance, _instance);
1150 return vk_instance_get_physical_device_proc_addr(&instance->vk, pName);
1190 * reference counting. We need to maintain a per-instance handle-to-bo