Lines Matching defs:info
29 * DRI_PRIME tagged overrides only work if bus info, =1 will just pick an alternate.
92 device_select_layer_add_instance(VkInstance instance, struct instance_info *info)
96 _mesa_hash_table_insert(device_select_instance_ht, instance, info);
104 struct instance_info *info = NULL;
108 info = (struct instance_info *)entry->data;
110 return info;
132 struct instance_info *info = (struct instance_info *)calloc(1, sizeof(struct instance_info));
134 info->GetInstanceProcAddr = chain_info->u.pLayerInfo->pfnNextGetInstanceProcAddr;
136 (PFN_vkCreateInstance)info->GetInstanceProcAddr(NULL, "vkCreateInstance");
138 free(info);
146 free(info);
153 info->has_wayland = true;
157 info->has_xcb = true;
166 info->has_vulkan11 = pCreateInfo->pApplicationInfo &&
169 #define DEVSEL_GET_CB(func) info->func = (PFN_vk##func)info->GetInstanceProcAddr(*pInstance, "vk" #func)
175 if (info->has_vulkan11)
179 device_select_layer_add_instance(*pInstance, info);
186 struct instance_info *info = device_select_layer_get_instance(instance);
189 info->DestroyInstance(instance, pAllocator);
190 free(info);
193 static void get_device_properties(const struct instance_info *info, VkPhysicalDevice device, VkPhysicalDeviceProperties2 *properties)
195 info->GetPhysicalDeviceProperties(device, &properties->properties);
197 if (info->GetPhysicalDeviceProperties2 && properties->properties.apiVersion >= VK_API_VERSION_1_1)
198 info->GetPhysicalDeviceProperties2(device, properties);
201 static void print_gpu(const struct instance_info *info, unsigned index, VkPhysicalDevice device)
210 if (info->has_vulkan11 && info->has_pci_bus)
212 get_device_properties(info, device, &properties);
234 if (info->has_vulkan11 && info->has_pci_bus)
241 static bool fill_drm_device_info(const struct instance_info *info,
253 if (info->has_vulkan11 && info->has_pci_bus)
255 get_device_properties(info, device, &properties);
260 if (info->has_vulkan11 && info->has_pci_bus) {
418 static uint32_t get_default_device(const struct instance_info *info,
430 if (dri_prime && !dri_prime_is_one && !info->has_vulkan11 && !info->has_pci_bus) {
439 cpu_count += fill_drm_device_info(info, &pci_infos[i], pPhysicalDevices[i]) ? 1 : 0;
444 if (default_idx == -1 && info->has_vulkan11 && info->has_pci_bus && dri_prime && !dri_prime_is_one)
446 if (default_idx == -1 && info->has_wayland)
448 if (default_idx == -1 && info->has_xcb)
451 if (info->has_vulkan11 && info->has_pci_bus)
471 struct instance_info *info = device_select_layer_get_instance(instance);
475 VkResult result = info->EnumeratePhysicalDevices(instance, &physical_device_count, NULL);
489 result = info->EnumeratePhysicalDevices(instance, &physical_device_count, physical_devices);
495 info->EnumerateDeviceExtensionProperties(physical_devices[i], NULL, &count, NULL);
498 if (info->EnumerateDeviceExtensionProperties(physical_devices[i], NULL, &count, extensions) == VK_SUCCESS) {
501 info->has_pci_bus = true;
510 print_gpu(info, i, physical_devices[i]);
513 unsigned selected_index = get_default_device(info, selection, physical_device_count, physical_devices);
549 struct instance_info *info = device_select_layer_get_instance(instance);
552 VkResult result = info->EnumeratePhysicalDeviceGroups(instance, &physical_device_group_count, NULL);
569 result = info->EnumeratePhysicalDeviceGroups(instance, &physical_device_group_count, physical_device_groups);
584 info->GetPhysicalDeviceProperties(physical_device, &properties.properties);
624 struct instance_info *info = device_select_layer_get_instance(instance);
625 return info->GetInstanceProcAddr(instance, name);