Commit Graph

380 Commits

Author SHA1 Message Date
Jason Ekstrand f6cae99294 vulkan-1.0.0: Split out command buffer inheritance info 2016-01-14 07:45:15 -08:00
Jason Ekstrand f99f847412 vulkan-1.0.0: Re-order some structs in the header 2016-01-14 07:43:05 -08:00
Jason Ekstrand aab9517f3d vulkan-1.0.0: Misc. field and argument renames 2016-01-14 07:41:45 -08:00
Jason Ekstrand d877095e66 vulkan-1.0.0: Get rid of MIPMAP_MODE_BASE 2016-01-14 07:32:16 -08:00
Jason Ekstrand 7b81637762 vulkan-1.0.0: Convert pPreserveAttachments to a uint32_t 2016-01-14 07:30:46 -08:00
BogDan Vatra 102c74277f WIP: Partially upgrade to vulkan v0.221.0
TODO, make use of:
- VkPhysicalDeviceFeatures.drawIndirectFirstInstance,
- VkPhysicalDeviceFeatures.inheritedQueries
- VkPhysicalDeviceLimits.timestampComputeAndGraphics
- VkSubmitInfo.pWaitDstStageMask
- VkSubresourceLayout.arrayPitch
- VkSamplerCreateInfo.anisotropyEnable
2016-01-14 07:30:46 -08:00
Jason Ekstrand 46bcf9d777 vulkan: Pull in the 0.210.1 vk_platform header
Somehow this got missed in the API update.
2015-12-09 11:55:38 -08:00
Jason Ekstrand d666487dc6 vk: Add new WSI support and bump the API to 0.210.1 2015-12-03 15:15:29 -08:00
Jason Ekstrand 4c19243562 vk/0.210.0: Advertise version 0.210.0 2015-12-03 13:44:02 -08:00
Jason Ekstrand 888744cabf vk/0.210.0: Update queries to the new API 2015-12-03 13:44:02 -08:00
Jason Ekstrand fa2435de3c vk/0.210.0: Update the VkFormat enum 2015-12-03 13:44:02 -08:00
Jason Ekstrand 4e904a0310 vk/0.210.0: Rework vkQueueSubmit 2015-12-03 13:44:02 -08:00
Jason Ekstrand 5757ad2959 vk/0.210.0: Remove depth clip and add depth clamp 2015-12-03 13:43:59 -08:00
Jason Ekstrand d689745303 vk/0.210.0: Rework device features and limits 2015-12-03 13:43:54 -08:00
Jason Ekstrand 74c4c4acb6 vk/0.210.0: Rework QueueFamilyProperties 2015-12-03 13:43:54 -08:00
Jason Ekstrand fed3586f34 vk/0.210.0: Rework result and structure type enums
By and large, this is just moving enum values around.  However, it also
removed VK_UNSUPPORTED which we were returning a number of places.  Those
places now return VK_ERROR_INCOMPATABLE_DRIVER.
2015-12-03 13:43:54 -08:00
Jason Ekstrand a5f19f64c3 vk/0.210.0: Remove the VkShaderStage enum
This made for an unfortunately large amount of work since we were using it
fairly heavily internally.  However, gl_shader_stage does basically the
same things, so it's not too bad.
2015-12-03 13:43:54 -08:00
Jason Ekstrand e10dc002e9 vk/0.210.0: Remove VkShader 2015-12-03 13:43:54 -08:00
Jason Ekstrand e6ab06ae7f vk/0.210.0: Rework memory property flags 2015-12-03 13:43:54 -08:00
Jason Ekstrand 93071482f9 vk/0.210.0: Remove some unused enum values 2015-12-03 13:43:54 -08:00
Jason Ekstrand b264012fcf vk/0.210.0: Update VkPipelineStageFlagBits 2015-12-03 13:43:54 -08:00
Jason Ekstrand 1aaf15bf19 vk/0.210.0: Trivial function argument name change 2015-12-03 13:43:53 -08:00
Jason Ekstrand 938a2939c8 vk/0.210.0: We now allocate command buffers; not create them 2015-12-03 13:43:53 -08:00
Jason Ekstrand 5a02441789 vk/0.210.0: Rename a parameter to GetImageSparseMemoryRequirements 2015-12-03 13:43:53 -08:00
Jason Ekstrand a9fc0ce0e3 vk/0.210.0: Delete three no longer existant entrypoints 2015-12-03 13:43:53 -08:00
Jason Ekstrand fcfb404a58 vk/0.210.0: Rework allocation to use the new pAllocator's 2015-12-03 13:43:53 -08:00
Jason Ekstrand d3547e7334 vk/0.210.0: Use VkSampleCountFlagBits for sample counts 2015-12-03 13:43:53 -08:00
Jason Ekstrand 9349625d60 vk/0.210.0: Rework VkInstanceCreateInfo 2015-12-03 13:43:53 -08:00
Jason Ekstrand c30a021820 vk/0.210.0: More function argument renaming 2015-12-03 13:43:53 -08:00
Jason Ekstrand b1cd025b88 vk/0.210.0: Replace MemoryInput/OutputFlags with AccessFlags 2015-12-03 13:43:53 -08:00
Jason Ekstrand 43f3e92348 vk/0.210.0: Rework render pass description structures 2015-12-03 13:43:53 -08:00
Jason Ekstrand 299f8f1511 vk/0.210.0: More structure field renaming 2015-12-03 13:43:53 -08:00
Jason Ekstrand 407b8cc5e0 vk/0.210.0: Get rid of VkImageAspect 2015-12-03 13:43:53 -08:00
Jason Ekstrand 3f6abd0161 vk/0.210.0: Rework descriptor sets 2015-12-03 13:43:52 -08:00
Jason Ekstrand 6a6da54ccb vk/0.210.0: Rename parameters to memory binding/mapping functions 2015-12-03 13:43:52 -08:00
Jason Ekstrand aadb7dce9b vk/0.210.0: Update to the new instance/device create structs 2015-12-03 13:43:52 -08:00
Jason Ekstrand 607fe31598 vk/0.210.0: More trivial struct/enum changes 2015-12-03 13:43:52 -08:00
Jason Ekstrand dde7172a8a vk/0.210.0: Trivial flag enum updates 2015-12-03 13:43:52 -08:00
Jason Ekstrand 4cf0b57bbf vk/0.210.0: Rename ChannelFlags to ColorComponentFlags 2015-12-03 13:43:52 -08:00
Jason Ekstrand 7f2284063d vk/0.210.0: s/raster/rasterization/ 2015-12-03 13:43:52 -08:00
Jason Ekstrand 1ab9f843bc vk/0.210.0: Don't allow chaining of description structs 2015-12-03 13:43:52 -08:00
Jason Ekstrand 17486b8664 vk/0.210.0: More fun with flags fields 2015-12-03 13:43:52 -08:00
Jason Ekstrand f5ba1f994a vk/0.210.0: Make pCode a uint32_t pointer 2015-12-03 13:43:52 -08:00
Jason Ekstrand 5f348bd0e5 vk/0.210.0: Rename origin fields of VkViewport 2015-12-03 13:43:52 -08:00
Jason Ekstrand 9fa6e328eb vk/0.210.0: Move alphaToOne and alphaToCoverate to multisample state 2015-12-03 13:43:52 -08:00
Jason Ekstrand f97c3b6d58 vk/0.210.0: Add flags fields to various pipeline create structs 2015-12-03 13:43:51 -08:00
Jason Ekstrand e673d64209 vk/0.210.0: Change field names in vertex input structs 2015-12-03 13:43:51 -08:00
Jason Ekstrand fd53603e42 vk/0.210.0: Misc. no-op structure changes
The only non-trivial change is to sparse resources that we don't handle
anyway.
2015-12-03 13:43:51 -08:00
Jason Ekstrand fe644721aa vk/0.210.0: Rename property pCount parameters 2015-12-03 13:43:51 -08:00
Jason Ekstrand e8f2294cd2 vk/0.210.0: Rework sampler filtering and mode enums 2015-12-03 13:43:51 -08:00
Jason Ekstrand 2e10ca5748 vk/0.210.0: Misc. function argument renames 2015-12-03 13:43:51 -08:00
Jason Ekstrand 569f70be56 vk/0.210.0: Rework copy/clear/blit API 2015-12-03 13:43:47 -08:00
Jason Ekstrand 4ab9391fbb vk/0.210.0: Rework dynamic states 2015-11-30 14:19:41 -08:00
Jason Ekstrand 73ef7d47d2 vk/0.210.0: Rework color blending enums 2015-11-30 13:49:28 -08:00
Jason Ekstrand 9b1cb8fdbc vk/0.210.0: Rework a few raster/input enums 2015-11-30 13:28:17 -08:00
Jason Ekstrand a53f23d93f vk/0.210.0: Rework texture view component mapping 2015-11-30 13:06:12 -08:00
Jason Ekstrand f1a7c7841f vk/0.210.0: Switch to the new VKAPI function decorations
While we're at it, we do a bunch of the VkResult -> void updates
2015-11-30 12:46:30 -08:00
Jason Ekstrand a89a485e79 vk/0.210.0: Rename CmdBuffer to CommandBuffer 2015-11-30 11:48:08 -08:00
Jason Ekstrand 6a8a542610 vk/0.210.0: A pile of minor enum updates 2015-11-30 11:12:44 -08:00
Jason Ekstrand 3db43e8f3e vk/0.210.0: Switch to the new-style handle declarations 2015-11-30 10:58:02 -08:00
Jason Ekstrand 5cb57806b2 vk: Add connonical 0.170.2 and 0.210.0 headers
This is in preparation for the API update
2015-11-30 10:24:35 -08:00
Jason Ekstrand 8984559892 vk/0.170.2: Update to the new VK_EXT_KHR_swapchain extensions 2015-10-08 12:11:18 -07:00
Chad Versace 7fa98ab182 vk: Remove temporary vulkan headers
Remove vulkan-0.138.2.h and vulkan-0.170.2.h. Their purpose was to aid
the header update to 0.170.2.
2015-10-07 11:45:48 -07:00
Chad Versace 2f1ca71360 vk/0.170.2: Bump header version
The header is now fully updated.
2015-10-07 11:44:44 -07:00
Chad Versace c2f94e3a0d vk/0.170.2: Update C++ errata and typedefs 2015-10-07 11:44:33 -07:00
Chad Versace 0ca3c8480d vk/0.170.2: Update remaining enums 2015-10-07 11:39:49 -07:00
Chad Versace f9c948ed00 vk/0.170.2: Update VkResult
Version 0.170.2 removes most of the error enums. In many cases, I had to
replace an error with a less accurate (or even incorrect) one.
In other cases, the error path is replaced with an assertion.
2015-10-07 11:36:51 -07:00
Chad Versace 8dee32e71f vk/0.170: Update VkDescriptorInfo
Ignore the new bufferInfo field with a anv_finishme.
2015-10-07 10:58:55 -07:00
Chad Versace 92e7bd3610 vk/0.170.2: Update vkCreateDescriptorPool
Nothing to do. In Mesa the pool is a stub.
2015-10-07 10:47:55 -07:00
Chad Versace a3bc07c23b vk/0.170.2: Update VkAttachmentDescription 2015-10-07 10:44:40 -07:00
Chad Versace 82259f88dd vk/0.170.2: Update VkImageViewCreateInfo 2015-10-07 10:43:44 -07:00
Chad Versace f4295b3cca vk/0.170.2: Update VkImageCreateInfo 2015-10-07 10:43:17 -07:00
Chad Versace d48e71ce55 vk/0.170.2: Update VkPhysicalDeviceProperties 2015-10-07 10:36:46 -07:00
Chad Versace 81e1dcc42c vk/0.170.2: Update VkImageFormatProperties 2015-10-07 10:28:30 -07:00
Chad Versace 98c2bb6917 vk/0.170.2: Update VkFormatProperties 2015-10-07 10:15:59 -07:00
Chad Versace 545f5cc6e1 vk/0.170.2: Update VkPhysicalDeviceFeatures 2015-10-07 10:09:39 -07:00
Chad Versace 033a37f591 vk/0.170.2: Update VkPhysicalDeviceLimits 2015-10-07 10:09:31 -07:00
Jason Ekstrand 010c6efd65 vk/0.170.2: Make vkUpdateDescriptorSets return void 2015-10-07 09:44:53 -07:00
Jason Ekstrand daf68a9465 vk/0.170.2: Switch to the new dynamic state model 2015-10-07 09:40:49 -07:00
Chad Versace 6dea1a9ba1 vk/0.170.2: Merge VkAttachmentView into VkImageView 2015-10-07 09:10:25 -07:00
Jason Ekstrand 89eebd889c vk/0.170.2: Fairly trivial enum shuffling 2015-10-06 14:08:08 -07:00
Jason Ekstrand 1e4263b7d2 vk/0.170.2: s/baseArraySlice/baseArrayLayer/ 2015-10-06 14:08:08 -07:00
Jason Ekstrand 19018c9f13 vk/0.170.2: Add a stage field to ShaderCreateInfo 2015-10-06 10:20:10 -07:00
Jason Ekstrand cc389b1482 vk/0.170.2: Rename cs to stage in ComputePipelineCreateInfo 2015-10-06 10:11:50 -07:00
Jason Ekstrand 588d40e97a vk/0.170.2: Use ImageSubresourceCopy in ImageResolve 2015-10-06 10:09:47 -07:00
Jason Ekstrand bd4cde708a vk/0.170.2: Rename fields in VkClearColorValue 2015-10-06 10:07:47 -07:00
Jason Ekstrand 81c7fa8772 vk/0.170.2: Rework blits to use ImageSubresourceCopy 2015-10-06 10:04:04 -07:00
Jason Ekstrand ba2254aa79 vulkan.h: Move stuff around
This has no functional change but substantially decreases the diff with the
0.170.2 header.
2015-10-06 09:50:04 -07:00
Jason Ekstrand d1908d2c33 vk/0.170.2: Rework parameters to CmdClearDepthStencil functions 2015-10-06 09:40:39 -07:00
Jason Ekstrand 02a9be31d6 vk/0.170.2: Add the flags parameter to GetPhysicalDeviceImageFormatProperties 2015-10-06 09:37:21 -07:00
Jason Ekstrand a145acd812 vk/0.170.2: Remove the pCount parameter from AllocDescriptorSets 2015-10-06 09:32:01 -07:00
Jason Ekstrand 8ba684cbad vk/0.170.2: Rename extension and layer query functions 2015-10-06 09:25:03 -07:00
Jason Ekstrand a6eba403e2 vk/0.170.2: Update to the new queue family properties query 2015-10-05 21:17:12 -07:00
Jason Ekstrand 65964cd49b vk/0.170.2: Re-arrange parameters of vkCmdDraw[Indexed] 2015-10-05 21:10:20 -07:00
Jason Ekstrand 05a26a60c8 vk/0.170.2: Make destructors return void 2015-10-05 20:50:51 -07:00
Jason Ekstrand 460676122f vk/0.170.2: Rename VkClearValue.ds to depthStencil 2015-10-05 20:35:08 -07:00
Jason Ekstrand 8e1ef639b6 vk/0.170.2: Add the subpass field to VkCmdBufferBeginInfo 2015-10-05 20:30:53 -07:00
Jason Ekstrand 757166592e vk/0.170.2: Rename pointer parameters of VkSubpassDescription 2015-10-05 20:26:21 -07:00
Jason Ekstrand 57f500324b vk/0.170.2: Add unnormalizedCoordinates to VkSamplerCreateInfo 2015-10-05 20:17:24 -07:00
Jason Ekstrand f7c3519aaf vk/0.170.2: Rename VkTexAddress to VkTexAddressMode 2015-10-05 20:15:06 -07:00
Jason Ekstrand 39a19e88a3 vulkan.h: Various cosmetic changes
These don't affect the driver in any way.
2015-10-05 20:06:30 -07:00
Chad Versace 6317c3144d vk/0.170.2: Drop VK_BUFFER_USAGE_GENERAL 2015-10-05 08:12:59 -07:00
Chad Versace 4744f60e79 vk/0.170.2: Drop enum VkBufferViewType 2015-10-05 08:12:58 -07:00
Chad Versace 7a089bd1a6 vk/0.170.2: Update VkImageSubresourceRange
Replace 'aspect' with 'aspectMask'.
2015-10-05 08:10:57 -07:00
Chad Versace 568654d606 vk/0.170.2: Drop VK_IMAGE_USAGE_GENERAL 2015-10-05 08:09:33 -07:00
Chad Versace 6a40af1b08 vk/0.170.2: Update VkPipelineMultisampleStateCreateInfo 2015-10-04 10:00:25 -07:00
Chad Versace dd04be491d vk/0.170.2: Update Vk VkPipelineDepthStencilStateCreateInfo
Rename member depthBoundsEnable -> depthBoundsTestEnable.
2015-10-04 09:41:46 -07:00
Chad Versace 8cb2e27c62 vk/0.170.2: Update VkRenderPassBeginInfo
Rename members:
    attachmentCount -> clearValueCount
    pAttachmentClearValues -> pClearValues
2015-10-04 09:26:25 -07:00
Chad Versace 3694518be5 vk/0.170.2: Drop VkBufferViewCreateInfo::viewType 2015-10-04 09:14:57 -07:00
Chad Versace 216d9f248d vk: Copy current header to vulkan-0.138.2.h
While upgrading Mesa to the new 0.170.2 API, it's convenient to have all
three headers available in the tree:
    - vulkan-0.138.2.h, the old one
    - vulkan-0.170.2.h, the new one
    - vulkan.h, the one in transition
2015-10-04 09:09:35 -07:00
Chad Versace 7f18ed4b9f vk: Import header 0.170.2 header LunarG SDK
From the LunarG SDK at tag sdk-0.9.1, import vulkan.h as
vulkan-0.170.2.h. This header is the first provisional header with the
addition of minor fixes.
2015-10-04 09:09:31 -07:00
Jason Ekstrand 1bee19e023 vk: Add the WSI header files 2015-09-08 10:33:46 -07:00
Jason Ekstrand ca3cfbf6f1 vk: Add an initial implementation of the actual Khronos WSI extension
Unfortunately, this is a very large commit and removes the old LunarG WSI
extension.  This is because there are a couple of entrypoints that have the
same name between the two extensions so implementing them both is
impractiacl.

Support is still incomplete, but this is enough to get vkcube up and going
again.
2015-09-04 17:55:42 -07:00
Jason Ekstrand 2a8d1ac958 vk: Update to API version 0.138.2 2015-08-27 11:41:04 -07:00
Jason Ekstrand f884b500d0 vk/vulkan.h: Bump to the version 0.138.1 header
This doesn't actually require any implementation changes but it does change
an enum so it is ABI-incompatable with 0.138.0.
2015-07-23 10:38:22 -07:00
Jason Ekstrand 867f6cb90c vk: Add a FreeDescriptorSets function 2015-07-22 17:33:09 -07:00
Chad Versace 5520221118 vk: Remove unneeded vulkan-138.h 2015-07-15 17:16:07 -07:00
Chad Versace 73a8f9543a vk: Bump vulkan.h version to 0.138 2015-07-15 17:16:07 -07:00
Chad Versace 55781f8d02 vk/0.138: Update VkResult values 2015-07-15 17:16:07 -07:00
Chad Versace 756d8064c1 vk/0.132: Do type-safety 2015-07-15 17:16:07 -07:00
Jason Ekstrand 2b5a4dc5f3 vk: Add vulkan-138 and remove vulkan-0.132
Now, 138 is the target and not 132.  Once object destruction is finished,
we can delete 138 as it will be identical to vulkan.h
2015-07-14 17:54:13 -07:00
Jason Ekstrand 1f658bed70 vk/device: Add stub support for command pools
Real support isn't really that far away.  We just need a data structure
with a linked list and a few tests.
2015-07-14 17:40:00 -07:00
Jason Ekstrand ca7243b54e vk/vulkan.h: Add the stuff for cross-queue resource sharing
We only have one queue, so this is currently a no-op on our implementation.
2015-07-14 17:20:50 -07:00
Jason Ekstrand 553b4434ca vk/vulkan.h: Add a couple of size fields for specialization constants 2015-07-14 17:12:39 -07:00
Jason Ekstrand e5db209d54 vk/vulkan.h: Move around buffer image granularities 2015-07-14 17:10:37 -07:00
Jason Ekstrand c7fcfebd5b vk: Add stubs for all the sparse resource stuff 2015-07-14 17:06:11 -07:00
Jason Ekstrand 2a9136feb4 vk/image: Add a stub for the new ImageFormatProperties function
This lets the client query about things like multisample.  We don't do
multisample right now, so I'll let Chad deal with that when he gets to it.
2015-07-14 17:05:30 -07:00
Jason Ekstrand 2c4dc92f40 vk/vulkan.h: Rename FormatInfo to FormatProperties 2015-07-14 17:04:46 -07:00
Jason Ekstrand d7f44852be vk/vulkan.h: Re-order some #define's 2015-07-14 16:41:39 -07:00
Jason Ekstrand 1fd3bc818a vk/vulkan.h: Rename a function parameter 2015-07-14 16:39:01 -07:00
Jason Ekstrand 2e2f48f840 vk: Remove abreviations 2015-07-14 16:34:31 -07:00
Jason Ekstrand 02db21ae11 vk: Add the new extension/layer enumeration entrypoints 2015-07-14 16:11:21 -07:00
Jason Ekstrand a463eacb8f vk/vulkan.h: Change maxAnisotropy to a float 2015-07-14 15:04:11 -07:00
Jason Ekstrand 98957b18d2 vk/vulkan.h: Add the VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT flag 2015-07-14 15:03:39 -07:00
Jason Ekstrand a35811d086 vk/vulkan.h: Rename a couple of function parameters
No functional change.
2015-07-14 15:03:01 -07:00
Jason Ekstrand 55723e97f1 vk: Split the memory requirements/binding functions 2015-07-14 14:59:39 -07:00
Jason Ekstrand ccb2e5cd62 vk: Make barriers more precise (rev. 133) 2015-07-14 14:50:35 -07:00
Jason Ekstrand 30445f8f7a vk: Split the dynamic state binding function into one per state 2015-07-14 14:26:10 -07:00
Jason Ekstrand d2c0870ff3 vk/vulkan.h: Rename a function parameter to match 132 2015-07-14 14:11:04 -07:00
Jason Ekstrand 8478350992 vk: Implement Multipass 2015-07-14 11:37:14 -07:00
Jason Ekstrand 68768c40be vk/vulkan.h: Re-arrange some enums and definitions in preparation for 131 2015-07-14 11:32:15 -07:00
Chad Versace 66cbb7f76d vk/0.132: Add vkDestroyRenderPass() 2015-07-14 11:21:31 -07:00
Chad Versace 6d0ed38db5 vk/0.132: Add vkDestroy*View()
vkDestroyColorAttachmentView
vkDestroyDepthStencilView

These functions are not in the 0.132 header, but adding them will help
us attain the type-safety API updates more quickly.
2015-07-14 11:19:22 -07:00
Chad Versace 1ca611cbad vk/0.132: Add vkDestroyCommandBuffer() 2015-07-14 11:11:41 -07:00
Chad Versace 6eec0b186c vk/0.132: Add vkDestroyImageView()
Just declare it in vulkan.h. Jason defined the function earlier
in image.c.
2015-07-14 11:09:14 -07:00
Chad Versace 4b2c5a98f0 vk/0.132: Add vkDestroyBufferView()
Just declare it in vulkan.h. Jason already defined the function
earlier in vulkan.c.
2015-07-14 11:06:57 -07:00
Chad Versace 08f7731f67 vk/0.132: Add vkDestroyFramebuffer() 2015-07-14 10:59:30 -07:00
Chad Versace 0c8456ef1e vk/0.132: Add vkDestroyDynamicDepthStencilState() 2015-07-14 10:54:51 -07:00
Chad Versace b29c929e8e vk/0.132: Add vkDestroyDynamicColorBlendState() 2015-07-14 10:52:45 -07:00
Chad Versace 5e1737c42f vk/0.132: Add vkDestroyDynamicRasterState() 2015-07-14 10:51:08 -07:00