[Mesa-dev] [PATCH] radv: Implement VK_EXT_pci_bus_info.
Samuel Pitoiset
samuel.pitoiset at gmail.com
Mon Oct 15 08:21:30 UTC 2018
Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
On 10/13/18 7:21 PM, Bas Nieuwenhuizen wrote:
> ---
> src/amd/vulkan/radv_device.c | 10 ++++++++++
> src/amd/vulkan/radv_extensions.py | 1 +
> src/amd/vulkan/radv_private.h | 2 ++
> 3 files changed, 13 insertions(+)
>
> diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
> index 88786c999de..c418176978e 100644
> --- a/src/amd/vulkan/radv_device.c
> +++ b/src/amd/vulkan/radv_device.c
> @@ -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;
> }
> diff --git a/src/amd/vulkan/radv_extensions.py b/src/amd/vulkan/radv_extensions.py
> index 584926df390..5dcedae1c63 100644
> --- a/src/amd/vulkan/radv_extensions.py
> +++ b/src/amd/vulkan/radv_extensions.py
> @@ -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),
> diff --git a/src/amd/vulkan/radv_private.h b/src/amd/vulkan/radv_private.h
> index 33ba8a7354b..b35aa8d818f 100644
> --- a/src/amd/vulkan/radv_private.h
> +++ b/src/amd/vulkan/radv_private.h
> @@ -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;
> };
>
>
More information about the mesa-dev
mailing list