vulkan/wsi: Drop some unneeded cruft from the API
authorJason Ekstrand <jason.ekstrand@intel.com>
Thu, 16 Nov 2017 20:38:26 +0000 (12:38 -0800)
committerJason Ekstrand <jason.ekstrand@intel.com>
Mon, 4 Dec 2017 18:04:19 +0000 (10:04 -0800)
This drops the unneeded callbacks struct as well as the queue_get_family
callback we were using before we'd pulled QueuePresent inside.

Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Chad Versace <chadversary@chromium.org>
src/amd/vulkan/radv_wsi.c
src/intel/vulkan/anv_wsi.c
src/vulkan/wsi/wsi_common.c
src/vulkan/wsi/wsi_common.h
src/vulkan/wsi/wsi_common_wayland.c

index 676050531da3a02aa94a4a574c29e80b91304932..aa06944e95eccb9180e75e7ca10f13dede801055 100644 (file)
 #include "vk_util.h"
 #include "util/macros.h"
 
-#define WSI_CB(x) .x = radv_##x
-MAYBE_UNUSED static const struct wsi_callbacks wsi_cbs = {
-       WSI_CB(GetPhysicalDeviceFormatProperties),
-};
-
 static PFN_vkVoidFunction
 radv_wsi_proc_addr(VkPhysicalDevice physicalDevice, const char *pName)
 {
        return radv_lookup_entrypoint(pName);
 }
 
-static uint32_t
-radv_wsi_queue_get_family_index(VkQueue _queue)
-{
-       RADV_FROM_HANDLE(radv_queue, queue, _queue);
-       return queue->queue_family_index;
-}
-
 VkResult
 radv_init_wsi(struct radv_physical_device *physical_device)
 {
@@ -56,9 +44,6 @@ radv_init_wsi(struct radv_physical_device *physical_device)
                        radv_physical_device_to_handle(physical_device),
                        radv_wsi_proc_addr);
 
-       physical_device->wsi_device.queue_get_family_index =
-               radv_wsi_queue_get_family_index;
-
 #ifdef VK_USE_PLATFORM_XCB_KHR
        result = wsi_x11_init_wsi(&physical_device->wsi_device, &physical_device->instance->alloc);
        if (result != VK_SUCCESS)
@@ -67,8 +52,7 @@ radv_init_wsi(struct radv_physical_device *physical_device)
 
 #ifdef VK_USE_PLATFORM_WAYLAND_KHR
        result = wsi_wl_init_wsi(&physical_device->wsi_device, &physical_device->instance->alloc,
-                                radv_physical_device_to_handle(physical_device),
-                                &wsi_cbs);
+                                radv_physical_device_to_handle(physical_device));
        if (result != VK_SUCCESS) {
 #ifdef VK_USE_PLATFORM_XCB_KHR
                wsi_x11_finish_wsi(&physical_device->wsi_device, &physical_device->instance->alloc);
index 6ff8ebd26a52b46fd15072255d724b23868b372e..add983f4ab22387bb28f4b6ad02bb357c493f980 100644 (file)
 #include "vk_format_info.h"
 #include "vk_util.h"
 
-#ifdef VK_USE_PLATFORM_WAYLAND_KHR
-#define WSI_CB(x) .x = anv_##x
-static const struct wsi_callbacks wsi_cbs = {
-   WSI_CB(GetPhysicalDeviceFormatProperties),
-};
-#endif
-
 static PFN_vkVoidFunction
 anv_wsi_proc_addr(VkPhysicalDevice physicalDevice, const char *pName)
 {
@@ -40,12 +33,6 @@ anv_wsi_proc_addr(VkPhysicalDevice physicalDevice, const char *pName)
    return anv_lookup_entrypoint(&physical_device->info, pName);
 }
 
-static uint32_t
-anv_wsi_queue_get_family_index(VkQueue queue)
-{
-   return 0;
-}
-
 VkResult
 anv_init_wsi(struct anv_physical_device *physical_device)
 {
@@ -55,9 +42,6 @@ anv_init_wsi(struct anv_physical_device *physical_device)
                    anv_physical_device_to_handle(physical_device),
                    anv_wsi_proc_addr);
 
-   physical_device->wsi_device.queue_get_family_index =
-      anv_wsi_queue_get_family_index;
-
 #ifdef VK_USE_PLATFORM_XCB_KHR
    result = wsi_x11_init_wsi(&physical_device->wsi_device, &physical_device->instance->alloc);
    if (result != VK_SUCCESS)
@@ -66,8 +50,7 @@ anv_init_wsi(struct anv_physical_device *physical_device)
 
 #ifdef VK_USE_PLATFORM_WAYLAND_KHR
    result = wsi_wl_init_wsi(&physical_device->wsi_device, &physical_device->instance->alloc,
-                            anv_physical_device_to_handle(physical_device),
-                            &wsi_cbs);
+                            anv_physical_device_to_handle(physical_device));
    if (result != VK_SUCCESS) {
 #ifdef VK_USE_PLATFORM_XCB_KHR
       wsi_x11_finish_wsi(&physical_device->wsi_device, &physical_device->instance->alloc);
index a303aabf2c47a6de080fa0282539650f228dfb91..9a5c78381ce004d9afff33a0e84009fe61750077 100644 (file)
@@ -64,6 +64,7 @@ wsi_device_init(struct wsi_device *wsi,
    WSI_GET_CB(GetImageMemoryRequirements);
    WSI_GET_CB(GetImageSubresourceLayout);
    WSI_GET_CB(GetMemoryFdKHR);
+   WSI_GET_CB(GetPhysicalDeviceFormatProperties);
    WSI_GET_CB(ResetFences);
    WSI_GET_CB(QueueSubmit);
    WSI_GET_CB(WaitForFences);
index 5e70575501926e174c4f3f5c6e6e370dd1b613ed..65814435ce496d2d0e5b234896e0225a6e8c141b 100644 (file)
@@ -56,8 +56,6 @@ struct wsi_device {
    VkPhysicalDeviceMemoryProperties memory_props;
    uint32_t queue_family_count;
 
-   uint32_t (*queue_get_family_index)(VkQueue queue);
-
 #define WSI_CB(cb) PFN_vk##cb cb
    WSI_CB(AllocateMemory);
    WSI_CB(AllocateCommandBuffers);
@@ -80,6 +78,7 @@ struct wsi_device {
    WSI_CB(GetImageMemoryRequirements);
    WSI_CB(GetImageSubresourceLayout);
    WSI_CB(GetMemoryFdKHR);
+   WSI_CB(GetPhysicalDeviceFormatProperties);
    WSI_CB(ResetFences);
    WSI_CB(QueueSubmit);
    WSI_CB(WaitForFences);
@@ -95,17 +94,6 @@ wsi_device_init(struct wsi_device *wsi,
                 VkPhysicalDevice pdevice,
                 WSI_FN_GetPhysicalDeviceProcAddr proc_addr);
 
-#define WSI_CB(cb) PFN_vk##cb cb
-struct wsi_callbacks {
-   VkPhysicalDevice (*device_get_physical)(VkDevice);
-
-   WSI_CB(GetDeviceProcAddr);
-   WSI_CB(GetPhysicalDeviceFormatProperties);
-   WSI_CB(GetPhysicalDeviceMemoryProperties);
-   WSI_CB(GetPhysicalDeviceQueueFamilyProperties);
-};
-#undef WSI_CB
-
 #define ICD_DEFINE_NONDISP_HANDLE_CASTS(__VkIcdType, __VkType)             \
                                                                            \
    static inline __VkIcdType *                                             \
@@ -131,8 +119,7 @@ void wsi_x11_finish_wsi(struct wsi_device *wsi_device,
                         const VkAllocationCallbacks *alloc);
 VkResult wsi_wl_init_wsi(struct wsi_device *wsi_device,
                          const VkAllocationCallbacks *alloc,
-                         VkPhysicalDevice physical_device,
-                         const struct wsi_callbacks *cbs);
+                         VkPhysicalDevice physical_device);
 void wsi_wl_finish_wsi(struct wsi_device *wsi_device,
                        const VkAllocationCallbacks *alloc);
 
index 3e2ff49dc1740fa4b96373bfb6ea04e339c70b38..be7635bbf843c5f8b1819a40676efa602e7fd0cf 100644 (file)
@@ -67,10 +67,10 @@ struct wsi_wl_display {
 struct wsi_wayland {
    struct wsi_interface                     base;
 
+   struct wsi_device *wsi;
+
    const VkAllocationCallbacks *alloc;
    VkPhysicalDevice physical_device;
-
-   const struct wsi_callbacks *cbs;
 };
 
 static void
@@ -85,7 +85,7 @@ wsi_wl_display_add_vk_format(struct wsi_wl_display *display, VkFormat format)
    /* Don't add formats that aren't renderable. */
    VkFormatProperties props;
 
-   display->wsi_wl->cbs->GetPhysicalDeviceFormatProperties(display->wsi_wl->physical_device,
+   display->wsi_wl->wsi->GetPhysicalDeviceFormatProperties(display->wsi_wl->physical_device,
                                                            format, &props);
    if (!(props.optimalTilingFeatures & VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT))
       return;
@@ -872,8 +872,7 @@ fail:
 VkResult
 wsi_wl_init_wsi(struct wsi_device *wsi_device,
                 const VkAllocationCallbacks *alloc,
-                VkPhysicalDevice physical_device,
-                const struct wsi_callbacks *cbs)
+                VkPhysicalDevice physical_device)
 {
    struct wsi_wayland *wsi;
    VkResult result;
@@ -887,7 +886,7 @@ wsi_wl_init_wsi(struct wsi_device *wsi_device,
 
    wsi->physical_device = physical_device;
    wsi->alloc = alloc;
-   wsi->cbs = cbs;
+   wsi->wsi = wsi_device;
 
    wsi->base.get_support = wsi_wl_surface_get_support;
    wsi->base.get_capabilities = wsi_wl_surface_get_capabilities;