radv: Implement VK_EXT_pci_bus_info.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
This commit is contained in:
@@ -389,6 +389,7 @@ radv_physical_device_init(struct radv_physical_device *device,
|
||||
if ((device->instance->debug_flags & RADV_DEBUG_INFO))
|
||||
ac_print_gpu_info(&device->rad_info);
|
||||
|
||||
device->bus_info = *drm_device->businfo.pci;
|
||||
return VK_SUCCESS;
|
||||
|
||||
fail:
|
||||
@@ -1190,6 +1191,15 @@ void radv_GetPhysicalDeviceProperties2(
|
||||
properties->conservativeRasterizationPostDepthCoverage = VK_FALSE;
|
||||
break;
|
||||
}
|
||||
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT: {
|
||||
VkPhysicalDevicePCIBusInfoPropertiesEXT *properties =
|
||||
(VkPhysicalDevicePCIBusInfoPropertiesEXT *)ext;
|
||||
properties->pciDomain = pdevice->bus_info.domain;
|
||||
properties->pciBus = pdevice->bus_info.bus;
|
||||
properties->pciDevice = pdevice->bus_info.dev;
|
||||
properties->pciFunction = pdevice->bus_info.func;
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -103,6 +103,7 @@ EXTENSIONS = [
|
||||
Extension('VK_EXT_external_memory_dma_buf', 1, True),
|
||||
Extension('VK_EXT_external_memory_host', 1, 'device->rad_info.has_userptr'),
|
||||
Extension('VK_EXT_global_priority', 1, 'device->rad_info.has_ctx_priority'),
|
||||
Extension('VK_EXT_pci_bus_info', 1, True),
|
||||
Extension('VK_EXT_sampler_filter_minmax', 1, 'device->rad_info.chip_class >= CIK'),
|
||||
Extension('VK_EXT_shader_viewport_index_layer', 1, True),
|
||||
Extension('VK_EXT_shader_stencil_export', 1, True),
|
||||
|
||||
@@ -312,6 +312,8 @@ struct radv_physical_device {
|
||||
VkPhysicalDeviceMemoryProperties memory_properties;
|
||||
enum radv_mem_type mem_type_indices[RADV_MEM_TYPE_COUNT];
|
||||
|
||||
drmPciBusInfo bus_info;
|
||||
|
||||
struct radv_device_extension_table supported_extensions;
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user