diff options
author | Jason Ekstrand <[email protected]> | 2017-11-18 15:30:34 -0800 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2017-12-04 10:04:19 -0800 |
commit | df4fc684920840220bb1fb92281e40157b4db618 (patch) | |
tree | 747cf9486af0c7d4f92f935c530315e6e0b6b2a3 | |
parent | a50f93ecfbfbf94d661f90119d304ae13fcea9c8 (diff) |
radv: Move wsi initialization later in physical_device_init
We need it to happen after memory type setup so that we can query memory
types in wsi_device_init.
Reviewed-by: Dave Airlie <[email protected]>
Reviewed-by: Chad Versace <[email protected]>
-rw-r--r-- | src/amd/vulkan/radv_device.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c index 07c639755b4..f4320275b35 100644 --- a/src/amd/vulkan/radv_device.c +++ b/src/amd/vulkan/radv_device.c @@ -214,16 +214,10 @@ radv_physical_device_init(struct radv_physical_device *device, device->local_fd = fd; device->ws->query_info(device->ws, &device->rad_info); - result = radv_init_wsi(device); - if (result != VK_SUCCESS) { - device->ws->destroy(device->ws); - goto fail; - } device->name = get_chip_name(device->rad_info.family); if (radv_device_get_cache_uuid(device->rad_info.family, device->cache_uuid)) { - radv_finish_wsi(device); device->ws->destroy(device->ws); result = vk_errorf(VK_ERROR_INITIALIZATION_FAILED, "cannot generate UUID"); @@ -259,6 +253,13 @@ radv_physical_device_init(struct radv_physical_device *device, device->has_clear_state = device->rad_info.chip_class >= CIK; radv_physical_device_init_mem_types(device); + + result = radv_init_wsi(device); + if (result != VK_SUCCESS) { + device->ws->destroy(device->ws); + goto fail; + } + return VK_SUCCESS; fail: |