[Mesa-dev] [PATCH 01/15] vulkan: Update the XML and headers to 1.1.88

Jason Ekstrand jason at jlekstrand.net
Sat Oct 13 13:11:45 UTC 2018


Acked-by: Jason Ekstrand <jason at jlekstrand.net>

Let's land the header.

On Sat, Oct 13, 2018 at 7:55 AM Samuel Pitoiset <samuel.pitoiset at gmail.com>
wrote:

> Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
> ---
>  include/vulkan/vulkan_core.h | 244 ++++++++++++++++++++++++++++++++-
>  src/vulkan/registry/vk.xml   | 253 ++++++++++++++++++++++++++++++-----
>  2 files changed, 462 insertions(+), 35 deletions(-)
>
> diff --git a/include/vulkan/vulkan_core.h b/include/vulkan/vulkan_core.h
> index 39f4dc6f05..a7780a0f76 100644
> --- a/include/vulkan/vulkan_core.h
> +++ b/include/vulkan/vulkan_core.h
> @@ -43,7 +43,7 @@ extern "C" {
>  #define VK_VERSION_MINOR(version) (((uint32_t)(version) >> 12) & 0x3ff)
>  #define VK_VERSION_PATCH(version) ((uint32_t)(version) & 0xfff)
>  // Version of this file
> -#define VK_HEADER_VERSION 86
> +#define VK_HEADER_VERSION 88
>
>
>  #define VK_NULL_HANDLE 0
> @@ -147,6 +147,7 @@ typedef enum VkResult {
>      VK_ERROR_INCOMPATIBLE_DISPLAY_KHR = -1000003001,
>      VK_ERROR_VALIDATION_FAILED_EXT = -1000011001,
>      VK_ERROR_INVALID_SHADER_NV = -1000012000,
> +    VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT = -1000158000,
>      VK_ERROR_FRAGMENTATION_EXT = -1000161000,
>      VK_ERROR_NOT_PERMITTED_EXT = -1000174001,
>      VK_ERROR_OUT_OF_POOL_MEMORY_KHR = VK_ERROR_OUT_OF_POOL_MEMORY,
> @@ -297,6 +298,9 @@ typedef enum VkStructureType {
>      VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV =
> 1000026000,
>      VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV =
> 1000026001,
>      VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV =
> 1000026002,
> +    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT =
> 1000028000,
> +    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT =
> 1000028001,
> +    VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT
> = 1000028002,
>      VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD =
> 1000041000,
>      VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV =
> 1000050000,
>      VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV = 1000056000,
> @@ -398,6 +402,12 @@ typedef enum VkStructureType {
>      VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT
> = 1000148002,
>      VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV =
> 1000149000,
>      VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV =
> 1000152000,
> +    VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT =
> 1000158000,
> +    VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT = 1000158001,
> +    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT
> = 1000158002,
> +    VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT =
> 1000158003,
> +    VK_STRUCTURE_TYPE_IMAGE_EXCPLICIT_DRM_FORMAT_MODIFIER_CREATE_INFO_EXT
> = 1000158004,
> +    VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT =
> 1000158005,
>      VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT = 1000160000,
>      VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT =
> 1000160001,
>      VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT
> = 1000161000,
> @@ -428,6 +438,7 @@ typedef enum VkStructureType {
>      VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT = 1000178001,
>      VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT
> = 1000178002,
>      VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR =
> 1000180000,
> +    VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT = 1000184000,
>      VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD =
> 1000185000,
>
>  VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT
> = 1000190000,
>      VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT
> = 1000190001,
> @@ -443,6 +454,8 @@ typedef enum VkStructureType {
>      VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV = 1000206000,
>      VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV = 1000206001,
>      VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR =
> 1000211000,
> +    VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT =
> 1000212000,
> +    VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA = 1000214000,
>      VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT =
> VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT,
>      VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR =
> VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO,
>      VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR =
> VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES,
> @@ -811,6 +824,7 @@ typedef enum VkImageType {
>  typedef enum VkImageTiling {
>      VK_IMAGE_TILING_OPTIMAL = 0,
>      VK_IMAGE_TILING_LINEAR = 1,
> +    VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT = 1000158000,
>      VK_IMAGE_TILING_BEGIN_RANGE = VK_IMAGE_TILING_OPTIMAL,
>      VK_IMAGE_TILING_END_RANGE = VK_IMAGE_TILING_LINEAR,
>      VK_IMAGE_TILING_RANGE_SIZE = (VK_IMAGE_TILING_LINEAR -
> VK_IMAGE_TILING_OPTIMAL + 1),
> @@ -833,6 +847,7 @@ typedef enum VkQueryType {
>      VK_QUERY_TYPE_OCCLUSION = 0,
>      VK_QUERY_TYPE_PIPELINE_STATISTICS = 1,
>      VK_QUERY_TYPE_TIMESTAMP = 2,
> +    VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT = 1000028004,
>      VK_QUERY_TYPE_COMPACTED_SIZE_NVX = 1000165000,
>      VK_QUERY_TYPE_BEGIN_RANGE = VK_QUERY_TYPE_OCCLUSION,
>      VK_QUERY_TYPE_END_RANGE = VK_QUERY_TYPE_TIMESTAMP,
> @@ -1428,6 +1443,7 @@ typedef enum VkPipelineStageFlagBits {
>      VK_PIPELINE_STAGE_HOST_BIT = 0x00004000,
>      VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT = 0x00008000,
>      VK_PIPELINE_STAGE_ALL_COMMANDS_BIT = 0x00010000,
> +    VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT = 0x01000000,
>      VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT = 0x00040000,
>      VK_PIPELINE_STAGE_COMMAND_PROCESS_BIT_NVX = 0x00020000,
>      VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV = 0x00400000,
> @@ -1447,6 +1463,10 @@ typedef enum VkImageAspectFlagBits {
>      VK_IMAGE_ASPECT_PLANE_0_BIT = 0x00000010,
>      VK_IMAGE_ASPECT_PLANE_1_BIT = 0x00000020,
>      VK_IMAGE_ASPECT_PLANE_2_BIT = 0x00000040,
> +    VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT = 0x00000080,
> +    VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT = 0x00000100,
> +    VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT = 0x00000200,
> +    VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT = 0x00000400,
>      VK_IMAGE_ASPECT_PLANE_0_BIT_KHR = VK_IMAGE_ASPECT_PLANE_0_BIT,
>      VK_IMAGE_ASPECT_PLANE_1_BIT_KHR = VK_IMAGE_ASPECT_PLANE_1_BIT,
>      VK_IMAGE_ASPECT_PLANE_2_BIT_KHR = VK_IMAGE_ASPECT_PLANE_2_BIT,
> @@ -1521,6 +1541,8 @@ typedef enum VkBufferUsageFlagBits {
>      VK_BUFFER_USAGE_INDEX_BUFFER_BIT = 0x00000040,
>      VK_BUFFER_USAGE_VERTEX_BUFFER_BIT = 0x00000080,
>      VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT = 0x00000100,
> +    VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT = 0x00000800,
> +    VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT =
> 0x00001000,
>      VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT = 0x00000200,
>      VK_BUFFER_USAGE_RAYTRACING_BIT_NVX = 0x00000400,
>      VK_BUFFER_USAGE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
> @@ -1643,6 +1665,9 @@ typedef enum VkAccessFlagBits {
>      VK_ACCESS_HOST_WRITE_BIT = 0x00004000,
>      VK_ACCESS_MEMORY_READ_BIT = 0x00008000,
>      VK_ACCESS_MEMORY_WRITE_BIT = 0x00010000,
> +    VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT = 0x02000000,
> +    VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT = 0x04000000,
> +    VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT = 0x08000000,
>      VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT = 0x00100000,
>      VK_ACCESS_COMMAND_PROCESS_READ_BIT_NVX = 0x00020000,
>      VK_ACCESS_COMMAND_PROCESS_WRITE_BIT_NVX = 0x00040000,
> @@ -6092,7 +6117,7 @@ typedef struct VkConformanceVersionKHR {
>  typedef struct VkPhysicalDeviceDriverPropertiesKHR {
>      VkStructureType            sType;
>      void*                      pNext;
> -    uint32_t                   driverID;
> +    VkDriverIdKHR              driverID;
>      char                       driverName[VK_MAX_DRIVER_NAME_SIZE_KHR];
>      char                       driverInfo[VK_MAX_DRIVER_INFO_SIZE_KHR];
>      VkConformanceVersionKHR    conformanceVersion;
> @@ -6359,6 +6384,95 @@ typedef struct
> VkDedicatedAllocationMemoryAllocateInfoNV {
>
>
>
> +#define VK_EXT_transform_feedback 1
> +#define VK_EXT_TRANSFORM_FEEDBACK_SPEC_VERSION 1
> +#define VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME
> "VK_EXT_transform_feedback"
> +
> +typedef VkFlags VkPipelineRasterizationStateStreamCreateFlagsEXT;
> +
> +typedef struct VkPhysicalDeviceTransformFeedbackFeaturesEXT {
> +    VkStructureType    sType;
> +    void*              pNext;
> +    VkBool32           transformFeedback;
> +    VkBool32           geometryStreams;
> +} VkPhysicalDeviceTransformFeedbackFeaturesEXT;
> +
> +typedef struct VkPhysicalDeviceTransformFeedbackPropertiesEXT {
> +    VkStructureType    sType;
> +    void*              pNext;
> +    uint32_t           maxTransformFeedbackStreams;
> +    uint32_t           maxTransformFeedbackBuffers;
> +    VkDeviceSize       maxTransformFeedbackBufferSize;
> +    uint32_t           maxTransformFeedbackStreamDataSize;
> +    uint32_t           maxTransformFeedbackBufferDataSize;
> +    uint32_t           maxTransformFeedbackBufferDataStride;
> +    VkBool32           transformFeedbackQueries;
> +    VkBool32           transformFeedbackStreamsLinesTriangles;
> +    VkBool32           transformFeedbackRasterizationStreamSelect;
> +    VkBool32           transformFeedbackDraw;
> +} VkPhysicalDeviceTransformFeedbackPropertiesEXT;
> +
> +typedef struct VkPipelineRasterizationStateStreamCreateInfoEXT {
> +    VkStructureType                                     sType;
> +    const void*                                         pNext;
> +    VkPipelineRasterizationStateStreamCreateFlagsEXT    flags;
> +    uint32_t
> rasterizationStream;
> +} VkPipelineRasterizationStateStreamCreateInfoEXT;
> +
> +
> +typedef void (VKAPI_PTR
> *PFN_vkCmdBindTransformFeedbackBuffersEXT)(VkCommandBuffer commandBuffer,
> uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers,
> const VkDeviceSize* pOffsets, const VkDeviceSize* pSizes);
> +typedef void (VKAPI_PTR
> *PFN_vkCmdBeginTransformFeedbackEXT)(VkCommandBuffer commandBuffer,
> uint32_t firstCounterBuffer, uint32_t counterBufferCount, const VkBuffer*
> pCounterBuffers, const VkDeviceSize* pCounterBufferOffsets);
> +typedef void (VKAPI_PTR
> *PFN_vkCmdEndTransformFeedbackEXT)(VkCommandBuffer commandBuffer, uint32_t
> firstCounterBuffer, uint32_t counterBufferCount, const VkBuffer*
> pCounterBuffers, const VkDeviceSize* pCounterBufferOffsets);
> +typedef void (VKAPI_PTR *PFN_vkCmdBeginQueryIndexedEXT)(VkCommandBuffer
> commandBuffer, VkQueryPool queryPool, uint32_t query, VkQueryControlFlags
> flags, uint32_t index);
> +typedef void (VKAPI_PTR *PFN_vkCmdEndQueryIndexedEXT)(VkCommandBuffer
> commandBuffer, VkQueryPool queryPool, uint32_t query, uint32_t index);
> +typedef void (VKAPI_PTR
> *PFN_vkCmdDrawIndirectByteCountEXT)(VkCommandBuffer commandBuffer, uint32_t
> instanceCount, uint32_t firstInstance, VkBuffer counterBuffer, VkDeviceSize
> counterBufferOffset, uint32_t counterOffset, uint32_t vertexStride);
> +
> +#ifndef VK_NO_PROTOTYPES
> +VKAPI_ATTR void VKAPI_CALL vkCmdBindTransformFeedbackBuffersEXT(
> +    VkCommandBuffer                             commandBuffer,
> +    uint32_t                                    firstBinding,
> +    uint32_t                                    bindingCount,
> +    const VkBuffer*                             pBuffers,
> +    const VkDeviceSize*                         pOffsets,
> +    const VkDeviceSize*                         pSizes);
> +
> +VKAPI_ATTR void VKAPI_CALL vkCmdBeginTransformFeedbackEXT(
> +    VkCommandBuffer                             commandBuffer,
> +    uint32_t                                    firstCounterBuffer,
> +    uint32_t                                    counterBufferCount,
> +    const VkBuffer*                             pCounterBuffers,
> +    const VkDeviceSize*                         pCounterBufferOffsets);
> +
> +VKAPI_ATTR void VKAPI_CALL vkCmdEndTransformFeedbackEXT(
> +    VkCommandBuffer                             commandBuffer,
> +    uint32_t                                    firstCounterBuffer,
> +    uint32_t                                    counterBufferCount,
> +    const VkBuffer*                             pCounterBuffers,
> +    const VkDeviceSize*                         pCounterBufferOffsets);
> +
> +VKAPI_ATTR void VKAPI_CALL vkCmdBeginQueryIndexedEXT(
> +    VkCommandBuffer                             commandBuffer,
> +    VkQueryPool                                 queryPool,
> +    uint32_t                                    query,
> +    VkQueryControlFlags                         flags,
> +    uint32_t                                    index);
> +
> +VKAPI_ATTR void VKAPI_CALL vkCmdEndQueryIndexedEXT(
> +    VkCommandBuffer                             commandBuffer,
> +    VkQueryPool                                 queryPool,
> +    uint32_t                                    query,
> +    uint32_t                                    index);
> +
> +VKAPI_ATTR void VKAPI_CALL vkCmdDrawIndirectByteCountEXT(
> +    VkCommandBuffer                             commandBuffer,
> +    uint32_t                                    instanceCount,
> +    uint32_t                                    firstInstance,
> +    VkBuffer                                    counterBuffer,
> +    VkDeviceSize                                counterBufferOffset,
> +    uint32_t                                    counterOffset,
> +    uint32_t                                    vertexStride);
> +#endif
> +
>  #define VK_AMD_draw_indirect_count 1
>  #define VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION 1
>  #define VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME
> "VK_AMD_draw_indirect_count"
> @@ -7341,7 +7455,7 @@ typedef struct VkDebugUtilsMessengerCallbackDataEXT {
>
>  typedef VkBool32 (VKAPI_PTR *PFN_vkDebugUtilsMessengerCallbackEXT)(
>      VkDebugUtilsMessageSeverityFlagBitsEXT           messageSeverity,
> -    VkDebugUtilsMessageTypeFlagsEXT                  messageType,
> +    VkDebugUtilsMessageTypeFlagsEXT                  messageTypes,
>      const VkDebugUtilsMessengerCallbackDataEXT*      pCallbackData,
>      void*                                            pUserData);
>
> @@ -7676,6 +7790,65 @@ typedef struct
> VkPipelineCoverageModulationStateCreateInfoNV {
>  #define VK_EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME
> "VK_EXT_post_depth_coverage"
>
>
> +#define VK_EXT_image_drm_format_modifier 1
> +#define VK_EXT_EXTENSION_159_SPEC_VERSION 0
> +#define VK_EXT_EXTENSION_159_EXTENSION_NAME "VK_EXT_extension_159"
> +#define VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_SPEC_VERSION 1
> +#define VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_EXTENSION_NAME
> "VK_EXT_image_drm_format_modifier"
> +
> +typedef struct VkDrmFormatModifierPropertiesEXT {
> +    uint64_t                drmFormatModifier;
> +    uint32_t                drmFormatModifierPlaneCount;
> +    VkFormatFeatureFlags    drmFormatModifierTilingFeatures;
> +} VkDrmFormatModifierPropertiesEXT;
> +
> +typedef struct VkDrmFormatModifierPropertiesListEXT {
> +    VkStructureType                      sType;
> +    void*                                pNext;
> +    uint32_t                             drmFormatModifierCount;
> +    VkDrmFormatModifierPropertiesEXT*    pDrmFormatModifierProperties;
> +} VkDrmFormatModifierPropertiesListEXT;
> +
> +typedef struct VkPhysicalDeviceImageDrmFormatModifierInfoEXT {
> +    VkStructureType    sType;
> +    const void*        pNext;
> +    uint64_t           drmFormatModifier;
> +    VkSharingMode      sharingMode;
> +    uint32_t           queueFamilyIndexCount;
> +    const uint32_t*    pQueueFamilyIndices;
> +} VkPhysicalDeviceImageDrmFormatModifierInfoEXT;
> +
> +typedef struct VkImageDrmFormatModifierListCreateInfoEXT {
> +    VkStructureType    sType;
> +    const void*        pNext;
> +    uint32_t           drmFormatModifierCount;
> +    const uint64_t*    pDrmFormatModifiers;
> +} VkImageDrmFormatModifierListCreateInfoEXT;
> +
> +typedef struct VkImageDrmFormatModifierExplicitCreateInfoEXT {
> +    VkStructureType               sType;
> +    const void*                   pNext;
> +    uint64_t                      drmFormatModifier;
> +    uint32_t                      drmFormatModifierPlaneCount;
> +    const VkSubresourceLayout*    pPlaneLayouts;
> +} VkImageDrmFormatModifierExplicitCreateInfoEXT;
> +
> +typedef struct VkImageDrmFormatModifierPropertiesEXT {
> +    VkStructureType    sType;
> +    void*              pNext;
> +    uint64_t           drmFormatModifier;
> +} VkImageDrmFormatModifierPropertiesEXT;
> +
> +
> +typedef VkResult (VKAPI_PTR
> *PFN_vkGetImageDrmFormatModifierPropertiesEXT)(VkDevice device, VkImage
> image, VkImageDrmFormatModifierPropertiesEXT* pProperties);
> +
> +#ifndef VK_NO_PROTOTYPES
> +VKAPI_ATTR VkResult VKAPI_CALL vkGetImageDrmFormatModifierPropertiesEXT(
> +    VkDevice                                    device,
> +    VkImage                                     image,
> +    VkImageDrmFormatModifierPropertiesEXT*      pProperties);
> +#endif
> +
>  #define VK_EXT_validation_cache 1
>  VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkValidationCacheEXT)
>
> @@ -8296,6 +8469,46 @@ VKAPI_ATTR void VKAPI_CALL
> vkCmdWriteBufferMarkerAMD(
>      uint32_t                                    marker);
>  #endif
>
> +#define VK_EXT_calibrated_timestamps 1
> +#define VK_EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION 1
> +#define VK_EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME
> "VK_EXT_calibrated_timestamps"
> +
> +
> +typedef enum VkTimeDomainEXT {
> +    VK_TIME_DOMAIN_DEVICE_EXT = 0,
> +    VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT = 1,
> +    VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT = 2,
> +    VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT = 3,
> +    VK_TIME_DOMAIN_BEGIN_RANGE_EXT = VK_TIME_DOMAIN_DEVICE_EXT,
> +    VK_TIME_DOMAIN_END_RANGE_EXT =
> VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT,
> +    VK_TIME_DOMAIN_RANGE_SIZE_EXT =
> (VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT - VK_TIME_DOMAIN_DEVICE_EXT +
> 1),
> +    VK_TIME_DOMAIN_MAX_ENUM_EXT = 0x7FFFFFFF
> +} VkTimeDomainEXT;
> +
> +typedef struct VkCalibratedTimestampInfoEXT {
> +    VkStructureType    sType;
> +    const void*        pNext;
> +    VkTimeDomainEXT    timeDomain;
> +} VkCalibratedTimestampInfoEXT;
> +
> +
> +typedef VkResult (VKAPI_PTR
> *PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT)(VkPhysicalDevice
> physicalDevice, uint32_t* pTimeDomainCount, VkTimeDomainEXT* pTimeDomains);
> +typedef VkResult (VKAPI_PTR *PFN_vkGetCalibratedTimestampsEXT)(VkDevice
> device, uint32_t timestampCount, const VkCalibratedTimestampInfoEXT*
> pTimestampInfos, uint64_t* pTimestamps, uint64_t* pMaxDeviation);
> +
> +#ifndef VK_NO_PROTOTYPES
> +VKAPI_ATTR VkResult VKAPI_CALL
> vkGetPhysicalDeviceCalibrateableTimeDomainsEXT(
> +    VkPhysicalDevice                            physicalDevice,
> +    uint32_t*                                   pTimeDomainCount,
> +    VkTimeDomainEXT*                            pTimeDomains);
> +
> +VKAPI_ATTR VkResult VKAPI_CALL vkGetCalibratedTimestampsEXT(
> +    VkDevice                                    device,
> +    uint32_t                                    timestampCount,
> +    const VkCalibratedTimestampInfoEXT*         pTimestampInfos,
> +    uint64_t*                                   pTimestamps,
> +    uint64_t*                                   pMaxDeviation);
> +#endif
> +
>  #define VK_AMD_shader_core_properties 1
>  #define VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION 1
>  #define VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME
> "VK_AMD_shader_core_properties"
> @@ -8516,6 +8729,31 @@ VKAPI_ATTR void VKAPI_CALL
> vkGetQueueCheckpointDataNV(
>      VkCheckpointDataNV*                         pCheckpointData);
>  #endif
>
> +#define VK_EXT_pci_bus_info 1
> +#define VK_EXT_PCI_BUS_INFO_SPEC_VERSION  1
> +#define VK_EXT_PCI_BUS_INFO_EXTENSION_NAME "VK_EXT_pci_bus_info"
> +
> +typedef struct VkPhysicalDevicePCIBusInfoPropertiesEXT {
> +    VkStructureType    sType;
> +    void*              pNext;
> +    uint16_t           pciDomain;
> +    uint8_t            pciBus;
> +    uint8_t            pciDevice;
> +    uint8_t            pciFunction;
> +} VkPhysicalDevicePCIBusInfoPropertiesEXT;
> +
> +
> +
> +#define VK_GOOGLE_hlsl_functionality1 1
> +#define VK_GOOGLE_HLSL_FUNCTIONALITY1_SPEC_VERSION 0
> +#define VK_GOOGLE_HLSL_FUNCTIONALITY1_EXTENSION_NAME
> "VK_GOOGLE_hlsl_functionality1"
> +
> +
> +#define VK_GOOGLE_decorate_string 1
> +#define VK_GOOGLE_DECORATE_STRING_SPEC_VERSION 0
> +#define VK_GOOGLE_DECORATE_STRING_EXTENSION_NAME
> "VK_GOOGLE_decorate_string"
> +
> +
>  #ifdef __cplusplus
>  }
>  #endif
> diff --git a/src/vulkan/registry/vk.xml b/src/vulkan/registry/vk.xml
> index 3eb0fe02fe..5158f53480 100644
> --- a/src/vulkan/registry/vk.xml
> +++ b/src/vulkan/registry/vk.xml
> @@ -55,6 +55,7 @@ server.
>          <platform name="vi" protect="VK_USE_PLATFORM_VI_NN"
> comment="Nintendo Vi"/>
>          <platform name="ios" protect="VK_USE_PLATFORM_IOS_MVK"
> comment="Apple IOS"/>
>          <platform name="macos" protect="VK_USE_PLATFORM_MACOS_MVK"
> comment="Apple MacOS"/>
> +        <platform name="fuchsia" protect="VK_USE_PLATFORM_FUCHSIA"
> comment="Fuchsia"/>
>      </platforms>
>
>      <tags comment="Vulkan vendor/author tags for extensions and layers">
> @@ -99,13 +100,14 @@ server.
>          <type category="include" name="wayland-client.h"/>
>          <type category="include" name="windows.h"/>
>          <type category="include" name="xcb/xcb.h"/>
> +        <type category="include" name="zircon/types.h"/>
>              <comment>
>                  In the current header structure, each platform's
> interfaces
>                  are confined to a platform-specific header (vulkan_xlib.h,
>                  vulkan_win32.h, etc.). These headers are not
> self-contained,
>                  and should not include native headers (X11/Xlib.h,
>                  windows.h, etc.). Code should either include vulkan.h
> after
> -                defining the appropriate VK_USE_PLATFORM_platform_KHR
> +                defining the appropriate VK_USE_PLATFORM_platform
>                  macros, or include the required native headers prior to
>                  explicitly including the corresponding platform header.
>
> @@ -133,6 +135,7 @@ server.
>          <type requires="xcb/xcb.h" name="xcb_connection_t"/>
>          <type requires="xcb/xcb.h" name="xcb_visualid_t"/>
>          <type requires="xcb/xcb.h" name="xcb_window_t"/>
> +        <type requires="zircon/types.h" name="zx_handle_t"/>
>
>          <type category="define">#define
> <name>VK_MAKE_VERSION</name>(major, minor, patch) \
>      (((major) << 22) | ((minor) << 12) | (patch))</type>
> @@ -147,7 +150,7 @@ server.
>          <type category="define">// Vulkan 1.1 version number
>  #define <name>VK_API_VERSION_1_1</name> <type>VK_MAKE_VERSION</type>(1,
> 1, 0)// Patch version should always be set to 0</type>
>          <type category="define">// Version of this file
> -#define <name>VK_HEADER_VERSION</name> 86</type>
> +#define <name>VK_HEADER_VERSION</name> 88</type>
>
>          <type category="define">
>  #define <name>VK_DEFINE_HANDLE</name>(object) typedef struct object##_T*
> object;</type>
> @@ -179,6 +182,7 @@ server.
>          <type requires="vk_platform" name="char"/>
>          <type requires="vk_platform" name="float"/>
>          <type requires="vk_platform" name="uint8_t"/>
> +        <type requires="vk_platform" name="uint16_t"/>
>          <type requires="vk_platform" name="uint32_t"/>
>          <type requires="vk_platform" name="uint64_t"/>
>          <type requires="vk_platform" name="int32_t"/>
> @@ -270,6 +274,7 @@ server.
>          <type
>  category="bitmask">typedef <type>VkFlags</type>
> <name>VkXcbSurfaceCreateFlagsKHR</name>;</type>
>          <type
>  category="bitmask">typedef <type>VkFlags</type>
> <name>VkIOSSurfaceCreateFlagsMVK</name>;</type>
>          <type
>  category="bitmask">typedef <type>VkFlags</type>
> <name>VkMacOSSurfaceCreateFlagsMVK</name>;</type>
> +        <type
>  category="bitmask">typedef <type>VkFlags</type>
> <name>VkImagePipeSurfaceCreateFlagsFUCHSIA</name>;</type>
>          <type requires="VkPeerMemoryFeatureFlagBits"
>  category="bitmask">typedef <type>VkFlags</type>
> <name>VkPeerMemoryFeatureFlags</name>;</type>
>          <type
>  category="bitmask" name="VkPeerMemoryFeatureFlagsKHR"
>  alias="VkPeerMemoryFeatureFlags"/>
>          <type requires="VkMemoryAllocateFlagBits"
> category="bitmask">typedef <type>VkFlags</type>
> <name>VkMemoryAllocateFlags</name>;</type>
> @@ -310,6 +315,8 @@ server.
>          <type
>  category="bitmask">typedef <type>VkFlags</type>
> <name>VkPipelineRasterizationConservativeStateCreateFlagsEXT</name>;</type>
>          <type requires="VkDescriptorBindingFlagBitsEXT"
> category="bitmask">typedef <type>VkFlags</type>
> <name>VkDescriptorBindingFlagsEXT</name>;</type>
>          <type requires="VkConditionalRenderingFlagBitsEXT"
>  category="bitmask">typedef <type>VkFlags</type>
> <name>VkConditionalRenderingFlagsEXT</name>;</type>
> +        <type
>  category="bitmask">typedef <type>VkFlags</type>
> <name>VkPipelineRasterizationStateStreamCreateFlagsEXT</name>;</type>
> +
>
>              <comment>Types which can be void pointers or class pointers,
> selected at compile time</comment>
>          <type
> category="handle"><type>VK_DEFINE_HANDLE</type>(<name>VkInstance</name>)</type>
> @@ -461,6 +468,7 @@ server.
>          <type name="VkValidationCacheHeaderVersionEXT" category="enum"/>
>          <type name="VkShaderInfoTypeAMD" category="enum"/>
>          <type name="VkQueueGlobalPriorityEXT" category="enum"/>
> +        <type name="VkTimeDomainEXT" category="enum"/>
>          <type name="VkConservativeRasterizationModeEXT" category="enum"/>
>          <type name="VkGeometryFlagBitsNVX" category="enum"/>
>          <type name="VkGeometryInstanceFlagBitsNVX" category="enum"/>
> @@ -570,7 +578,7 @@ server.
>              <comment>The PFN_vkDebugUtilsMessengerCallbackEXT type are
> used by the VK_EXT_debug_utils extension</comment>
>          <type category="funcpointer"
> requires="VkDebugUtilsMessengerCallbackDataEXT">typedef VkBool32 (VKAPI_PTR
> *<name>PFN_vkDebugUtilsMessengerCallbackEXT</name>)(
>      <type>VkDebugUtilsMessageSeverityFlagBitsEXT</type>
>  messageSeverity,
> -    <type>VkDebugUtilsMessageTypeFlagsEXT</type>
> messageType,
> +    <type>VkDebugUtilsMessageTypeFlagsEXT</type>
> messageTypes,
>      const <type>VkDebugUtilsMessengerCallbackDataEXT</type>*
> pCallbackData,
>      <type>void</type>*
> pUserData);</type>
>
> @@ -1125,7 +1133,7 @@ server.
>              <member
> values="VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO"><type>VkStructureType</type>
> <name>sType</name></member>
>              <member>const <type>void</type>*
> <name>pNext</name></member>
>              <member
> optional="true"><type>VkPipelineDynamicStateCreateFlags</type>
> <name>flags</name></member>
> -            <member><type>uint32_t</type>
>  <name>dynamicStateCount</name></member>
> +            <member optional="true"><type>uint32_t</type>
>  <name>dynamicStateCount</name></member>
>              <member len="dynamicStateCount">const
> <type>VkDynamicState</type>*  <name>pDynamicStates</name></member>
>          </type>
>          <type category="struct" name="VkStencilOpState">
> @@ -1677,6 +1685,12 @@ server.
>              <member noautovalidity="true"><type>xcb_connection_t</type>*
>               <name>connection</name></member>
>              <member><type>xcb_window_t</type>
>  <name>window</name></member>
>          </type>
> +        <type category="struct"
> name="VkImagePipeSurfaceCreateInfoFUCHSIA">
> +            <member
> values="VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA"><type>VkStructureType</type>
> <name>sType</name></member>
> +            <member>const <type>void</type>*
> <name>pNext</name></member>
> +            <member
> optional="true"><type>VkImagePipeSurfaceCreateFlagsFUCHSIA</type>
>  <name>flags</name></member>
> +            <member><type>zx_handle_t</type>
> <name>imagePipeHandle</name></member>
> +        </type>
>          <type category="struct" name="VkSurfaceFormatKHR"
> returnedonly="true">
>              <member><type>VkFormat</type>
>  <name>format</name><comment>Supported pair of rendering
> format</comment></member>
>              <member><type>VkColorSpaceKHR</type>
> <name>colorSpace</name><comment>and color space for the
> surface</comment></member>
> @@ -1982,7 +1996,7 @@ server.
>          <type category="struct"
> name="VkPhysicalDeviceDriverPropertiesKHR"
> structextends="VkPhysicalDeviceProperties2" returnedonly="true">
>              <member
> values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR"><type>VkStructureType</type>
> <name>sType</name></member>
>              <member><type>void</type>*
> <name>pNext</name></member>
> -            <member><type>uint32_t</type>
>  <name>driverID</name></member>
> +            <member><type>VkDriverIdKHR</type>
> <name>driverID</name></member>
>              <member><type>char</type>
>  <name>driverName</name>[<enum>VK_MAX_DRIVER_NAME_SIZE_KHR</enum>]</member>
>              <member><type>char</type>
>  <name>driverInfo</name>[<enum>VK_MAX_DRIVER_INFO_SIZE_KHR</enum>]</member>
>              <member><type>VkConformanceVersionKHR</type>
> <name>conformanceVersion</name></member>
> @@ -2776,10 +2790,10 @@ server.
>          </type>
>          <type category="struct" name="VkSampleLocationsInfoEXT"
> structextends="VkImageMemoryBarrier">
>              <member
> values="VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT"><type>VkStructureType</type>
> <name>sType</name></member>
> -            <member>const <type>void</type>*
> <name>pNext</name></member>
> -            <member><type>VkSampleCountFlagBits</type>
> <name>sampleLocationsPerPixel</name></member>
> -            <member><type>VkExtent2D</type>
>  <name>sampleLocationGridSize</name></member>
> -            <member><type>uint32_t</type>
>  <name>sampleLocationsCount</name></member>
> +            <member>const <type>void</type>*
> <name>pNext</name></member>
> +            <member optional="true"><type>VkSampleCountFlagBits</type>
> <name>sampleLocationsPerPixel</name></member>
> +            <member><type>VkExtent2D</type>
>  <name>sampleLocationGridSize</name></member>
> +            <member optional="true"><type>uint32_t</type>
>  <name>sampleLocationsCount</name></member>
>              <member len="sampleLocationsCount">const
> <type>VkSampleLocationEXT</type>* <name>pSampleLocations</name></member>
>          </type>
>          <type category="struct" name="VkAttachmentSampleLocationsEXT">
> @@ -2880,7 +2894,7 @@ server.
>              <member><type>uint32_t</type>
>
>  <name>coverageModulationTableCount</name></member>
>              <member noautovalidity="true" optional="true"
> len="coverageModulationTableCount">const <type>float</type>*
> <name>pCoverageModulationTable</name></member>
>          </type>
> -        <type category="struct" name="VkImageFormatListCreateInfoKHR"
> structextends="VkImageCreateInfo">
> +        <type category="struct" name="VkImageFormatListCreateInfoKHR"
> structextends="VkImageCreateInfo,VkPhysicalDeviceImageFormatInfo2">
>              <member
> values="VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR"><type>VkStructureType</type>
> <name>sType</name></member>
>              <member>const <type>void</type>*
> <name>pNext</name></member>
>              <member optional="true"><type>uint32_t</type>
>  <name>viewFormatCount</name></member>
> @@ -3019,6 +3033,11 @@ server.
>              <member><type>VkBool32</type>
>  <name>fullyCoveredFragmentShaderInputVariable</name><comment>true if the
> implementation supports the FullyCoveredEXT SPIR-V builtin fragment shader
> input variable</comment></member>
>              <member><type>VkBool32</type>
>  <name>conservativeRasterizationPostDepthCoverage</name><comment>true if
> the implementation supports both conservative rasterization and post depth
> coverage sample coverage mask</comment></member>
>          </type>
> +        <type category="struct" name="VkCalibratedTimestampInfoEXT">
> +            <member
> values="VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT"><type>VkStructureType</type>
> <name>sType</name></member>
> +            <member>const <type>void</type>*
> <name>pNext</name></member>
> +            <member><type>VkTimeDomainEXT</type>
> <name>timeDomain</name></member>
> +        </type>
>          <type category="struct"
> name="VkPhysicalDeviceShaderCorePropertiesAMD" returnedonly="true"
> structextends="VkPhysicalDeviceProperties2">
>              <member
> values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD"><type>VkStructureType</type>
> <name>sType</name></member>
>              <member><type>void</type>*
> <name>pNext</name><comment>Pointer to next structure</comment></member>
> @@ -3196,6 +3215,14 @@ server.
>              <member><type>void</type>*
> <name>pNext</name></member>
>              <member><type>uint32_t</type>
>  <name>maxVertexAttribDivisor</name><comment>max value of vertex attribute
> divisor</comment></member>
>          </type>
> +        <type category="struct"
> name="VkPhysicalDevicePCIBusInfoPropertiesEXT"
> structextends="VkPhysicalDeviceProperties2" returnedonly="true">
> +            <member
> values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT"><type>VkStructureType</type>
> <name>sType</name></member>
> +            <member><type>void</type>*
> <name>pNext</name></member>
> +            <member><type>uint16_t</type>
>  <name>pciDomain</name></member>
> +            <member><type>uint8_t</type>
> <name>pciBus</name></member>
> +            <member><type>uint8_t</type>
> <name>pciDevice</name></member>
> +            <member><type>uint8_t</type>
> <name>pciFunction</name></member>
> +        </type>
>          <type category="struct"
> name="VkImportAndroidHardwareBufferInfoANDROID"
> structextends="VkMemoryAllocateInfo">
>              <member
> values="VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID"><type>VkStructureType</type>
> <name>sType</name></member>
>              <member>const <type>void</type>*
> <name>pNext</name></member>
> @@ -3291,6 +3318,32 @@ server.
>              <member noautovalidity="true"><type>void</type>*
> <name>pNext</name></member>
>              <member><type>VkBool32</type>
>  <name>decodeModeSharedExponent</name></member>
>          </type>
> +        <type category="struct"
> name="VkPhysicalDeviceTransformFeedbackFeaturesEXT"
> structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo">
> +            <member
> values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT"><type>VkStructureType</type>
> <name>sType</name></member>
> +            <member><type>void</type>*
> <name>pNext</name></member>
> +            <member><type>VkBool32</type>
>  <name>transformFeedback</name></member>
> +            <member><type>VkBool32</type>
>  <name>geometryStreams</name></member>
> +        </type>
> +        <type category="struct"
> name="VkPhysicalDeviceTransformFeedbackPropertiesEXT"
> structextends="VkPhysicalDeviceProperties2" returnedonly="true">
> +            <member
> values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT"><type>VkStructureType</type>
> <name>sType</name></member>
> +            <member><type>void</type>*
> <name>pNext</name></member>
> +            <member><type>uint32_t</type>
>  <name>maxTransformFeedbackStreams</name></member>
> +            <member><type>uint32_t</type>
>  <name>maxTransformFeedbackBuffers</name></member>
> +            <member><type>VkDeviceSize</type>
>  <name>maxTransformFeedbackBufferSize</name></member>
> +            <member><type>uint32_t</type>
>  <name>maxTransformFeedbackStreamDataSize</name></member>
> +            <member><type>uint32_t</type>
>  <name>maxTransformFeedbackBufferDataSize</name></member>
> +            <member><type>uint32_t</type>
>  <name>maxTransformFeedbackBufferDataStride</name></member>
> +            <member><type>VkBool32</type>
>  <name>transformFeedbackQueries</name></member>
> +            <member><type>VkBool32</type>
>  <name>transformFeedbackStreamsLinesTriangles</name></member>
> +            <member><type>VkBool32</type>
>  <name>transformFeedbackRasterizationStreamSelect</name></member>
> +            <member><type>VkBool32</type>
>  <name>transformFeedbackDraw</name></member>
> +        </type>
> +        <type category="struct"
> name="VkPipelineRasterizationStateStreamCreateInfoEXT"
> structextends="VkPipelineRasterizationStateCreateInfo">
> +            <member
> values="VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT"><type>VkStructureType</type>
> <name>sType</name></member>
> +            <member>const <type>void</type>*
>                                         <name>pNext</name></member>
> +            <member
> optional="true"><type>VkPipelineRasterizationStateStreamCreateFlagsEXT</type>
>                <name>flags</name></member>
> +            <member><type>uint32_t</type>
>
>  <name>rasterizationStream</name></member>
> +        </type>
>          <type category="struct"
> name="VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV"
> structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo">
>              <member
> values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV"><type>VkStructureType</type><name>sType</name></member>
>              <member noautovalidity="true"><type>void</type>*
> <name>pNext</name></member>
> @@ -3500,6 +3553,9 @@ server.
>              <member
> values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT"><type>VkStructureType</type>
> <name>sType</name></member>
>              <member>const <type>void</type>* <name>pNext</name></member>
>              <member><type>uint64_t</type>
> <name>drmFormatModifier</name></member>
> +            <member><type>VkSharingMode</type>
> <name>sharingMode</name></member>
> +            <member optional="true"><type>uint32_t</type>
> <name>queueFamilyIndexCount</name></member>
> +            <member noautovalidity="true"
> len="queueFamilyIndexCount">const <type>uint32_t</type>*
> <name>pQueueFamilyIndices</name></member>
>          </type>
>          <type category="struct"
> name="VkImageDrmFormatModifierListCreateInfoEXT"
> structextends="VkImageCreateInfo">
>              <member
> values="VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT"><type>VkStructureType</type>
> <name>sType</name></member>
> @@ -4331,6 +4387,12 @@ server.
>          <enum bitpos="7"
> name="VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR"/>
>          <enum bitpos="8"    name="VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR"/>
>      </enums>
> +    <enums name="VkTimeDomainEXT" type="enum">
> +        <enum value="0"     name="VK_TIME_DOMAIN_DEVICE_EXT"/>
> +        <enum value="1"     name="VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT"/>
> +        <enum value="2"
>  name="VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT"/>
> +        <enum value="3"
>  name="VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT"/>
> +    </enums>
>      <enums name="VkDebugReportFlagBitsEXT" type="bitmask">
>          <enum bitpos="0"    name="VK_DEBUG_REPORT_INFORMATION_BIT_EXT"/>
>          <enum bitpos="1"    name="VK_DEBUG_REPORT_WARNING_BIT_EXT"/>
> @@ -5837,6 +5899,13 @@ server.
>              <param><type>xcb_connection_t</type>*
> <name>connection</name></param>
>              <param><type>xcb_visualid_t</type>
> <name>visual_id</name></param>
>          </command>
> +        <command successcodes="VK_SUCCESS"
> errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY">
> +            <proto><type>VkResult</type>
> <name>vkCreateImagePipeSurfaceFUCHSIA</name></proto>
> +            <param><type>VkInstance</type> <name>instance</name></param>
> +            <param>const
> <type>VkImagePipeSurfaceCreateInfoFUCHSIA</type>*
> <name>pCreateInfo</name></param>
> +            <param optional="true">const
> <type>VkAllocationCallbacks</type>* <name>pAllocator</name></param>
> +            <param><type>VkSurfaceKHR</type>*
> <name>pSurface</name></param>
> +        </command>
>          <command successcodes="VK_SUCCESS"
> errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY">
>              <proto><type>VkResult</type>
> <name>vkCreateDebugReportCallbackEXT</name></proto>
>              <param><type>VkInstance</type> <name>instance</name></param>
> @@ -6500,6 +6569,20 @@ server.
>              <param optional="false,true"><type>size_t</type>*
> <name>pInfoSize</name></param>
>              <param optional="true" len="pInfoSize"><type>void</type>*
> <name>pInfo</name></param>
>          </command>
> +        <command successcodes="VK_SUCCESS,VK_INCOMPLETE"
> errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY">
> +            <proto><type>VkResult</type>
> <name>vkGetPhysicalDeviceCalibrateableTimeDomainsEXT</name></proto>
> +            <param><type>VkPhysicalDevice</type>
> <name>physicalDevice</name></param>
> +            <param optional="false,true"><type>uint32_t</type>*
> <name>pTimeDomainCount</name></param>
> +            <param optional="true"
> len="pTimeDomainCount"><type>VkTimeDomainEXT</type>*
> <name>pTimeDomains</name></param>
> +        </command>
> +        <command successcodes="VK_SUCCESS"
> errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY">
> +            <proto><type>VkResult</type>
> <name>vkGetCalibratedTimestampsEXT</name></proto>
> +            <param><type>VkDevice</type> <name>device</name></param>
> +            <param><type>uint32_t</type>
> <name>timestampCount</name></param>
> +            <param len="timestampCount">const
> <type>VkCalibratedTimestampInfoEXT</type>*
> <name>pTimestampInfos</name></param>
> +            <param len="timestampCount"><type>uint64_t</type>*
> <name>pTimestamps</name></param>
> +            <param><type>uint64_t</type>*
> <name>pMaxDeviation</name></param>
> +        </command>
>          <command successcodes="VK_SUCCESS"
> errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY,VK_ERROR_OUT_OF_DEVICE_MEMORY">
>              <proto><type>VkResult</type>
> <name>vkSetDebugUtilsObjectNameEXT</name></proto>
>              <param><type>VkDevice</type> <name>device</name></param>
> @@ -6640,6 +6723,56 @@ server.
>              <param optional="false,true"><type>uint32_t</type>*
> <name>pCheckpointDataCount</name></param>
>              <param optional="true"
> len="pCheckpointDataCount"><type>VkCheckpointDataNV</type>*
> <name>pCheckpointData</name></param>
>          </command>
> +        <command queues="graphics" renderpass="both"
> cmdbufferlevel="primary,secondary">
> +            <proto><type>void</type>
> <name>vkCmdBindTransformFeedbackBuffersEXT</name></proto>
> +            <param externsync="true"><type>VkCommandBuffer</type>
> <name>commandBuffer</name></param>
> +            <param><type>uint32_t</type> <name>firstBinding</name></param>
> +            <param><type>uint32_t</type> <name>bindingCount</name></param>
> +            <param len="bindingCount">const <type>VkBuffer</type>*
> <name>pBuffers</name></param>
> +            <param len="bindingCount">const <type>VkDeviceSize</type>*
> <name>pOffsets</name></param>
> +            <param optional="true" len="bindingCount">const
> <type>VkDeviceSize</type>* <name>pSizes</name></param>
> +        </command>
> +        <command queues="graphics" renderpass="inside"
> cmdbufferlevel="primary,secondary">
> +            <proto><type>void</type>
> <name>vkCmdBeginTransformFeedbackEXT</name></proto>
> +            <param externsync="true"><type>VkCommandBuffer</type>
> <name>commandBuffer</name></param>
> +            <param><type>uint32_t</type>
> <name>firstCounterBuffer</name></param>
> +            <param optional="false"><type>uint32_t</type>
> <name>counterBufferCount</name></param>
> +            <param optional="true" len="counterBufferCount">const
> <type>VkBuffer</type>* <name>pCounterBuffers</name></param>
> +            <param optional="true" len="counterBufferCount">const
> <type>VkDeviceSize</type>* <name>pCounterBufferOffsets</name></param>
> +        </command>
> +        <command queues="graphics" renderpass="inside"
> cmdbufferlevel="primary,secondary">
> +            <proto><type>void</type>
> <name>vkCmdEndTransformFeedbackEXT</name></proto>
> +            <param externsync="true"><type>VkCommandBuffer</type>
> <name>commandBuffer</name></param>
> +            <param><type>uint32_t</type>
> <name>firstCounterBuffer</name></param>
> +            <param optional="false"><type>uint32_t</type>
> <name>counterBufferCount</name></param>
> +            <param optional="true" len="counterBufferCount">const
> <type>VkBuffer</type>* <name>pCounterBuffers</name></param>
> +            <param optional="true" len="counterBufferCount">const
> <type>VkDeviceSize</type>* <name>pCounterBufferOffsets</name></param>
> +        </command>
> +        <command queues="graphics,compute" renderpass="both"
> cmdbufferlevel="primary,secondary">
> +            <proto><type>void</type>
> <name>vkCmdBeginQueryIndexedEXT</name></proto>
> +            <param externsync="true"><type>VkCommandBuffer</type>
> <name>commandBuffer</name></param>
> +            <param><type>VkQueryPool</type> <name>queryPool</name></param>
> +            <param><type>uint32_t</type> <name>query</name></param>
> +            <param optional="true"><type>VkQueryControlFlags</type>
> <name>flags</name></param>
> +            <param><type>uint32_t</type> <name>index</name></param>
> +        </command>
> +        <command queues="graphics,compute" renderpass="both"
> cmdbufferlevel="primary,secondary">
> +            <proto><type>void</type>
> <name>vkCmdEndQueryIndexedEXT</name></proto>
> +            <param externsync="true"><type>VkCommandBuffer</type>
> <name>commandBuffer</name></param>
> +            <param><type>VkQueryPool</type> <name>queryPool</name></param>
> +            <param><type>uint32_t</type> <name>query</name></param>
> +            <param><type>uint32_t</type> <name>index</name></param>
> +        </command>
> +        <command queues="graphics" renderpass="inside"
> cmdbufferlevel="primary,secondary" pipeline="graphics">
> +            <proto><type>void</type>
> <name>vkCmdDrawIndirectByteCountEXT</name></proto>
> +            <param externsync="true"><type>VkCommandBuffer</type>
> <name>commandBuffer</name></param>
> +            <param><type>uint32_t</type>
> <name>instanceCount</name></param>
> +            <param><type>uint32_t</type>
> <name>firstInstance</name></param>
> +            <param><type>VkBuffer</type>
> <name>counterBuffer</name></param>
> +            <param><type>VkDeviceSize</type>
> <name>counterBufferOffset</name></param>
> +            <param><type>uint32_t</type>
> <name>counterOffset</name></param>
> +            <param><type>uint32_t</type> <name>vertexStride</name></param>
> +        </command>
>          <command queues="graphics" renderpass="both"
> cmdbufferlevel="primary,secondary">
>              <proto><type>void</type>
> <name>vkCmdSetExclusiveScissorNV</name></proto>
>              <param externsync="true"><type>VkCommandBuffer</type>
> <name>commandBuffer</name></param>
> @@ -7486,7 +7619,7 @@ server.
>                  <command
> name="vkGetPhysicalDeviceWaylandPresentationSupportKHR"/>
>              </require>
>          </extension>
> -        <extension name="VK_KHR_mir_surface" number="8" type="instance"
> requires="VK_KHR_surface" platform="mir" author="KHR" contact="Jesse Hall
> @critsec,Ian Elliott @ianelliottus" supported="vulkan">
> +        <extension name="VK_KHR_mir_surface" number="8" type="instance"
> requires="VK_KHR_surface" platform="mir" author="KHR" contact="Jesse Hall
> @critsec,Ian Elliott @ianelliottus" obsoletedby="" supported="vulkan">
>              <require>
>                  <enum value="4"
>        name="VK_KHR_MIR_SURFACE_SPEC_VERSION"/>
>                  <enum value=""VK_KHR_mir_surface""
>       name="VK_KHR_MIR_SURFACE_EXTENSION_NAME"/>
> @@ -7672,10 +7805,37 @@ server.
>                  <enum value=""VK_NV_extension_28""
>       name="VK_EXT_EXTENSION_28_EXTENSION_NAME"/>
>              </require>
>          </extension>
> -        <extension name="VK_NVX_extension_29" number="29" author="NVX"
> contact="Jeff Juliano @jjulianoatnv" supported="disabled">
> +        <extension name="VK_EXT_transform_feedback" number="29"
> type="device" author="NV" contact="Piers Daniell @pdaniell-nv"
> supported="vulkan" requires="VK_KHR_get_physical_device_properties2">
>              <require>
> -                <enum value="0"
>        name="VK_NVX_EXTENSION_29_SPEC_VERSION"/>
> -                <enum value=""VK_NVX_extension_29""
>        name="VK_NVX_EXTENSION_29_EXTENSION_NAME"/>
> +                <enum value="1"
>        name="VK_EXT_TRANSFORM_FEEDBACK_SPEC_VERSION"/>
> +                <enum value=""VK_EXT_transform_feedback""
>        name="VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME"/>
> +                <command name="vkCmdBindTransformFeedbackBuffersEXT"/>
> +                <command name="vkCmdBeginTransformFeedbackEXT"/>
> +                <command name="vkCmdEndTransformFeedbackEXT"/>
> +                <command name="vkCmdBeginQueryIndexedEXT"/>
> +                <command name="vkCmdEndQueryIndexedEXT"/>
> +                <command name="vkCmdDrawIndirectByteCountEXT"/>
> +
> +                <enum offset="0" extends="VkStructureType"
>
> name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT"/>
> +                <enum offset="1" extends="VkStructureType"
>
> name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT"/>
> +                <enum offset="2" extends="VkStructureType"
>
> name="VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT"/>
> +
> +                <enum offset="4" extends="VkQueryType"
>       name="VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT"/>
> +
> +                <enum bitpos="11" extends="VkBufferUsageFlagBits"
>         name="VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT"/>
> +                <enum bitpos="12" extends="VkBufferUsageFlagBits"
>         name="VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT"/>
> +
> +                <enum bitpos="25" extends="VkAccessFlagBits"
>       name="VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT"/>
> +                <enum bitpos="26" extends="VkAccessFlagBits"
>       name="VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT"/>
> +                <enum bitpos="27" extends="VkAccessFlagBits"
>       name="VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT"/>
> +
> +                <enum bitpos="24" extends="VkPipelineStageFlagBits"
>        name="VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT"/>
> +
> +                <type
> name="VkPhysicalDeviceTransformFeedbackFeaturesEXT"/>
> +                <type
> name="VkPhysicalDeviceTransformFeedbackPropertiesEXT"/>
> +                <type
> name="VkPipelineRasterizationStateStreamCreateInfoEXT"/>
> +
> +                <type
> name="VkPipelineRasterizationStateStreamCreateFlagsEXT"/>
>              </require>
>          </extension>
>          <extension name="VK_NVX_extension_30" number="30" author="NVX"
> contact="Jeff Juliano @jjulianoatnv" supported="disabled">
> @@ -9193,7 +9353,7 @@ server.
>                  <type name="VkBindImageMemoryInfoKHR"/>
>              </require>
>          </extension>
> -        <extension name="VK_EXT_image_drm_format_modifier" number="159"
> type="device"
> requires="VK_KHR_bind_memory2,VK_KHR_get_physical_device_properties2,VK_KHR_sampler_ycbcr_conversion"
> author="EXT" contact="Chad Versace @chadversary" supported="disabled">
> +        <extension name="VK_EXT_image_drm_format_modifier" number="159"
> type="device"
> requires="VK_KHR_bind_memory2,VK_KHR_get_physical_device_properties2,VK_KHR_image_format_list,VK_KHR_sampler_ycbcr_conversion"
> author="EXT" contact="Chad Versace @chadversary" supported="vulkan">
>              <require>
>                  <enum value="0"
>    name="VK_EXT_EXTENSION_159_SPEC_VERSION"/>
>                  <enum value=""VK_EXT_extension_159""
>   name="VK_EXT_EXTENSION_159_EXTENSION_NAME"/>
> @@ -9515,10 +9675,15 @@ server.
>                  <enum value=""VK_AMD_extension_184""
>   name="VK_KHR_EXTENSION_184_EXTENSION_NAME"/>
>              </require>
>          </extension>
> -        <extension name="VK_AMD_extension_185" number="185" author="AMD"
> contact="Daniel Rakos @drakos-amd" supported="disabled">
> +        <extension name="VK_EXT_calibrated_timestamps" number="185"
> type="device" author="EXT" contact="Daniel Rakos @drakos-amd"
> supported="vulkan">
>              <require>
> -                <enum value="0"
>    name="VK_KHR_EXTENSION_185_SPEC_VERSION"/>
> -                <enum value=""VK_AMD_extension_185""
>   name="VK_KHR_EXTENSION_185_EXTENSION_NAME"/>
> +                <enum value="1"
>    name="VK_EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION"/>
> +                <enum value=""VK_EXT_calibrated_timestamps""
>   name="VK_EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME"/>
> +                <enum offset="0" extends="VkStructureType"
>   name="VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT"/>
> +                <type name="VkTimeDomainEXT"/>
> +                <type name="VkCalibratedTimestampInfoEXT"/>
> +                <command
> name="vkGetPhysicalDeviceCalibrateableTimeDomainsEXT"/>
> +                <command name="vkGetCalibratedTimestampsEXT"/>
>              </require>
>          </extension>
>          <extension name="VK_AMD_shader_core_properties" number="186"
> type="device" author="AMD"
> requires="VK_KHR_get_physical_device_properties2" contact="Martin Dinkov
> @mdinkov" supported="vulkan">
> @@ -9731,10 +9896,12 @@ server.
>                  <type
> name="VkPhysicalDeviceVulkanMemoryModelFeaturesKHR"/>
>              </require>
>          </extension>
> -        <extension name="VK_AMD_extension_213" number="213" author="AMD"
> contact="Neil Henning @sheredom" supported="disabled">
> +        <extension name="VK_EXT_pci_bus_info" number="213" type="device"
> author="EXT" requires="VK_KHR_get_physical_device_properties2"
> contact="Matthaeus G. Chajdas @anteru" supported="vulkan">
>              <require>
> -                <enum value="0"
>    name="VK_KHR_EXTENSION_213_SPEC_VERSION"/>
> -                <enum value=""VK_KHR_extension_213""
>   name="VK_KHR_EXTENSION_213_EXTENSION_NAME"/>
> +                <enum value="1"
>  name="VK_EXT_PCI_BUS_INFO_SPEC_VERSION"/>
> +                <enum value=""VK_EXT_pci_bus_info""
>  name="VK_EXT_PCI_BUS_INFO_EXTENSION_NAME"/>
> +                <enum offset="0" extends="VkStructureType"
> name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT"/>
> +                <type name="VkPhysicalDevicePCIBusInfoPropertiesEXT"/>
>              </require>
>          </extension>
>          <extension name="VK_AMD_extension_214" number="214" author="AMD"
> contact="Neil Henning @sheredom" supported="disabled">
> @@ -9743,10 +9910,14 @@ server.
>                  <enum value=""VK_KHR_extension_214""
>   name="VK_KHR_EXTENSION_214_EXTENSION_NAME"/>
>              </require>
>          </extension>
> -        <extension name="VK_GOOGLE_extension_215" number="215"
> author="GOOGLE" contact="Jesse Hall @critsec" supported="disabled">
> +        <extension name="VK_FUCHSIA_imagepipe_surface" nu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20181013/adeb8a69/attachment-0001.html>


More information about the mesa-dev mailing list