v3dv: implement vkGetPhysicalDeviceQueueFamilyProperties
authorIago Toral Quiroga <itoral@igalia.com>
Fri, 29 Nov 2019 10:33:37 +0000 (11:33 +0100)
committerMarge Bot <eric+marge@anholt.net>
Tue, 13 Oct 2020 21:21:25 +0000 (21:21 +0000)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6766>

src/broadcom/vulkan/v3dv_device.c

index 1a43985..acf2e23 100644 (file)
@@ -628,12 +628,27 @@ v3dv_GetPhysicalDeviceProperties(VkPhysicalDevice physicalDevice,
           pdevice->pipeline_cache_uuid, VK_UUID_SIZE);
 }
 
+/* We support exactly one queue family. */
+static const VkQueueFamilyProperties
+v3dv_queue_family_properties = {
+   .queueFlags = VK_QUEUE_GRAPHICS_BIT |
+                 VK_QUEUE_COMPUTE_BIT |
+                 VK_QUEUE_TRANSFER_BIT,
+   .queueCount = 1,
+   .timestampValidBits = 0, /* FIXME */
+   .minImageTransferGranularity = { 1, 1, 1 },
+};
+
 void
 v3dv_GetPhysicalDeviceQueueFamilyProperties(VkPhysicalDevice physicalDevice,
                                             uint32_t *pCount,
                                             VkQueueFamilyProperties *pQueueFamilyProperties)
 {
-   /* FIXME: stub */
+   VK_OUTARRAY_MAKE(out, pQueueFamilyProperties, pCount);
+
+   vk_outarray_append(&out, p) {
+      *p = v3dv_queue_family_properties;
+   }
 }
 
 void