31 Commits

Author SHA1 Message Date
Mike Gorchak
4fe5828a02 Add support for QNX Screen platform to ICD header. 2021-03-02 11:03:02 -07:00
Lenny Komow
87aaa16d4c Move GGP in WSI platform enum
This should have been added at the end to preserve compatibility.
2020-11-23 09:03:19 -07:00
J.D. Rouan
30e70cbd98 Add GGP (Stadia) WSI platform support to vk_icd.h
Defines type "VkIcdSurfaceGgp" and adds "VK_ICD_WSI_PLATFORM_GGP" to
VkIcdWsiPlatform enum.

GGP is Google Games Platform, the platform for Stadia.
2020-11-17 15:02:16 -07:00
Michael Chock
834673eaa3 Add VI WSI platform support to vk_icd.h
Add VI enum value to VkIcdWsiPlatform and define type VkIcdSurfaceVi.
2020-08-17 15:33:08 -06:00
Lenny Komow
471a35d21d Add missing ifdef for extern "C" 2020-08-07 13:09:29 -06:00
Lenny Komow
f075211027 Update vk_icd.h with proper extern "C" declaration 2020-08-07 13:08:45 -06:00
Lenny Komow
8971273d00 Update vk_icd.h with typedefs and prototypes 2020-08-07 13:08:19 -06:00
Niklas Haas
a0f1f5149d Fix enum order for backwards compatibility
The new enum member introduced in 2a164e968 broke ABI with previous
versions of vk_icd.h, resulting in a segfault on latest mesa (which does
not yet have this commit in their vendored copy of vk_icd.h, thus
breaking the order of enum members).
2020-07-23 09:46:12 -06:00
Nicolas Caramelli
2a164e9680 Update vk_icd.h for VK_EXT_directfb_surface extension 2020-07-07 13:48:33 -06:00
Lenny Komow
ba091ba6a9 headers: Add metal surface support to ICD header 2019-09-18 17:54:03 -06:00
Shannon McPherson
5f1ceaad4c vulkan: Add headless surface support to ICD header
Added the new enum value to `VkIcdWsiPlatform` and defined
`VkIcdSurfaceHeadless`
2019-04-26 15:18:18 -06:00
Tapani Pälli
eb0c1fd44c headers: fix compilation error on android with vk_icd.h
Change allow us to refer to ANativeWindow from C code, fixes following
compilation error seen with clang 3.8.27580 (Android O prebuilts).

vk_icd.h:116:5: error: must use 'struct' tag to refer to type 'ANativeWindow'

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
2018-05-17 09:07:05 -06:00
Karl Schultz
09e2a11785 macOS: Add macOS support 2018-05-04 09:23:50 -06:00
Lenny Komow
8dc4305370 headers: Fix a typo in vk_icd.h
Change-Id: I9ede42e379605329ffd25a9466e0971b3ab7dd77
2018-05-04 09:23:50 -06:00
Mark Young
c253f7b760 loader: Add validation for apiVersion
Add a check to determine if the API version being requested can be
handled by the loader.  If it can't, then we return incompatible driver.
If we can, we continue along our merry way.

An addendum is that we also bumped the Loader/ICD interface version.
This was requested by Nvidia so that the ICDs know that we pay attention
to the version in the loader.  If they don't see the new Loader/ICD
interface version, they will handle the failing on all non-1.0 API
requests.

Change-Id: Icb7dd45e754c9f6a6c8186198333bacc68077b93
2018-05-04 09:23:50 -06:00
Yamakaky
1e7d756b7d headers: Add missing include to vk_icd.h 2018-05-04 09:23:49 -06:00
Mark Young
ebab9a4cd1 loader: Update the loader to 1.0.39
Add new extensions for 1.0.39.  Also, updated layers to include
minimal set of functionality for 1.0.39 extensions. Extensions include:
 - VK_KHR_get_physical_device_properties2
 - VK_KHR_shader_draw_parameters
 - VK_EXT_direct_mode_display
 - VK_EXT_display_surface_counter
 - VK_EXT_display_control

Also, redo the LoaderAndLayerIf document.

Change-Id: I10412086da7a798afe832a3892e18f606259b5af
2018-05-04 09:23:49 -06:00
Cody Northrop
8e34d8d84e android: Add Android and C++ support to a couple files
These are needed downstream in VulkanTools for Android support.
2018-05-04 09:23:49 -06:00
Piers Daniell
04f11cd232 loader: Fixes for ICD vk{Create|Destroy}SurfaceKHR
Need to keep VkIcdSurface private to the loader.

The definition may conflict with some redefinitions of
VK_DEFINE_NON_DISPATCHABLE_HANDLE and it's not necessary to make public
anyway.

Change-Id: I30e166f0ecce2fd3ea36c745dc073b705973d75f
2018-05-04 09:23:49 -06:00
Mark Young
d30f8ca53e loader: gh181 use ICD for SurfaceKHR
Use the ICD to create and destroy VkSurfaceKHR objects instead
of just performing the work in the ICD.  This only occurs if the ICD
exports the appropriate entry-points, and exposes version 3 of the
loader/icd interface.

Change-Id: I5e7bf9506318823c57ad75cf19d3f53fdfa6451e
2018-05-04 09:23:49 -06:00
Mark Lobodzinski
70144970cd headers: GH7, Fix bad variable names in vk_icd.h
Change-Id: Ic78792a71ebedbdb5bae68c47856db1c89a714af
2018-05-04 09:23:49 -06:00
Jon Ashburn
063be2d862 loader: ghlvl#180 Support a ICD interface version negotiation
Change-Id: I2e5c3717dd7fa86992f617bcc0f93de8ba60759e
2018-05-04 09:23:49 -06:00
Jon Ashburn
e32b0893ea misc: Update licenses to Apache 2.0
Change-Id: Id447f4c8c53d33f9192940bdd3ae727b7b738a97
2018-05-04 09:23:49 -06:00
Jon Ashburn
087d0a8a79 loader: gllvl #50, Add support for the WSI extension KHR_display
Change-Id: I8d5ecc7500beba3042a6b9147b2f3fd3055b3b1d
2018-05-04 09:23:48 -06:00
Karl Schultz
15371188d3 Remove Khronos confidential clause from license text. 2018-05-04 09:23:48 -06:00
Karl Schultz
cf683631a1 include: Update copyright and apply clang-format (no logic changes) 2018-05-04 09:23:48 -06:00
Courtney Goeltzenleuchter
efb5817099 icd: Remove unused reference to vk_sdk_platform.h 2018-05-04 09:23:48 -06:00
Courtney Goeltzenleuchter
2875d6eb88 misc: remove unneeded stdint.h and stdbool.h
All the necessary platform defines/includes are now part of
vk_platform.h, so don't need them in vk_icd.h
2018-05-04 09:23:48 -06:00
Ian Elliott
95bd3452f6 WSI-ICD: Fix Windows compilation error. 2018-05-04 09:23:48 -06:00
Ian Elliott
56f54c8a6b WSI-ICD: Created per-platform structs for platform-specific info.
Per Khronos Bugzilla Bug 15077, on Windows and Linux, VkSurfaceKHR is treated
as a pointer to platform-specific structs that contain the platform-specific
connection and surface/window info.  The Vulkan loader vkCreate*SurfaceKHR()
functions will fill in the struct.  ICDs and layers will cast VkSurfaceKHR to a
pointer to the appropriate VkIcdSurface* struct.
2018-05-04 09:23:48 -06:00
David Pinedo
184c3c0a78 Moved header files from include to include/vulkan 2018-05-04 09:23:47 -06:00