Jason Ekstrand
db24afee2f
vk/vulkan.h: Switch from GetImageSubresourceInfo to GetImageSubresourceLayout
2015-07-07 18:20:18 -07:00
Jason Ekstrand
ef8980e256
vk/vulkan.h: Switch from GetObjectInfo to GetMemoryRequirements
2015-07-07 18:16:42 -07:00
Jason Ekstrand
d9c2caea6a
vk: Update memory flushing functions to 130
...
This involves updating the prototype for FlushMappedMemory, adding
InvalidateMappedMemoryRanges, and removing PinSystemMemory.
2015-07-07 17:22:31 -07:00
Jason Ekstrand
d5349b1b18
vk/vulkan.h: Constify the pFences parameter to ResetFences
2015-07-07 17:18:00 -07:00
Jason Ekstrand
0ff06540ae
vk: Implement the GetRenderAreaGranularity function
...
At the moment, we're just going to scissor clears so a granularity of 1x1
is all we need.
2015-07-07 17:11:37 -07:00
Jason Ekstrand
435b062b26
vk/vulkan.h: Add a PipelineLayout parameter to BindDescriptorSets
2015-07-07 17:06:10 -07:00
Jason Ekstrand
80046a7d54
vk/vulkan.h: Update clear color handling to 130
2015-07-07 16:37:43 -07:00
Jason Ekstrand
3e4b00d283
meta: Use the VkClearColorValue structure for the color attribute
2015-07-07 16:27:06 -07:00
Jason Ekstrand
a35fef1ab2
vk/vulkan.h: Remove the pass argument from EndRenderPass
2015-07-07 16:22:23 -07:00
Jason Ekstrand
d2ca7e24b4
vk/vulkan.h: Rename VertexInputStateInfo to VertexInputStateCreateInfo
2015-07-07 16:15:55 -07:00
Jason Ekstrand
abbb776bbe
vk/vulkan.h: Remove programPointSize
...
Instead, we auto-detect whether or not your shader writes gl_PointSize. If
it does, we use 1.0, otherwise we take it from the shader.
2015-07-07 16:00:46 -07:00
Chad Versace
e7ddfe03ab
vk/0.130: Stub vkCmdClear*Attachment() funcs
...
vkCmdClearColorAttachment
vkCmdClearDepthStencilAttachment
2015-07-07 15:57:37 -07:00
Chad Versace
11901a9100
vk/0.130: Update name of vkCmdClearDepthStencilImage()
2015-07-07 15:53:35 -07:00
Chad Versace
dff32238c7
vk/0.130: Stub vkCmdExecuteCommands()
2015-07-07 15:51:55 -07:00
Chad Versace
85c0d69be9
vk/0.130: Update vkCmdWaitEvents() signature
2015-07-07 15:49:57 -07:00
Chad Versace
0ecb789b71
vk: Remove unused 'v' param from stub() macro
2015-07-07 15:47:24 -07:00
Chad Versace
f78d684772
vk: Stub vkCmdPushConstants() from 0.130 header
2015-07-07 15:46:19 -07:00
Chad Versace
18ee32ef9d
vk: Update vkCmdPipelineBarrier to 0.130 header
2015-07-07 15:43:41 -07:00
Chad Versace
4af79ab076
vk: Add func anv_clear_mask()
...
A little helper func for inspecting and clearing bitmasks.
2015-07-07 15:43:41 -07:00
Jason Ekstrand
788a8352b9
vk/vulkan.h: Remove some unused fields.
...
In particular, the following are removed:
- disableVertexReuse
- clipOrigin
- depthMode
- pointOrigin
- provokingVertex
2015-07-07 15:33:00 -07:00
Jason Ekstrand
7fbed521bb
vk/vulkan.h: Remove the explicit primitive restart index
...
Unfortunately, this requires some non-trivial changes to the driver. Now
that the primitive restart index isn't given explicitly by the client, we
always use ~0 for everything like D3D does. Unfortunately, our hardware is
awesome and a 32-bit version of ~0 doesn't match any 16-bit values. This
means, we have to set it to either UINT16_MAX or UINT32_MAX depending on
the size of the index type. Since we get the index type from
CmdBindIndexBuffer and the rest of the VF packet from the pipeline, we need
to lazy-emit the VF packet.
2015-07-07 15:33:00 -07:00
Jason Ekstrand
1fb859e4b2
vk/vulkan.h: Remove client-settable pointSize from DynamicRsState
2015-07-07 12:35:32 -07:00
Jason Ekstrand
245583075c
vk/vulkan.h: Remove UINT8 index buffers
2015-07-07 11:26:49 -07:00
Kristian Høgsberg Kristensen
a1eea996d4
vk: Emit 3DSTATE_SAMPLE_MASK
...
This was missing and was causing the driver to not work with
execlists. Presumably we get a different initial hw context with
execlists enabled, that has sample mask 0 initially.
Set this to 0xffff for now. When we add MS support, we need to take the
value from VkPipelineMsStateCreateInfo::sampleMask.
2015-07-06 23:54:12 -07:00
Kristian Høgsberg Kristensen
c325bb24b5
vk: Pull in new generated headers
...
The new headers use stdbool for enable/disable fields which
implicitly converts expressions like (flags & 8) to 0 or 1.
Also handles MBO (must-be-one) fields by setting them to one,
corrects a bspec typo (_3DPRIM_LISTSTRIP_ADJ -> LINESTRIP) and
makes a few enum values less clashy.
2015-07-06 22:12:26 -07:00
Chad Versace
23075bccb3
vk/image: Validate vkCreateImageView more
...
Exhaustively validate the function input. If it's not validated and
doesn't have an anv_finishme(), then I overlooked it.
2015-07-06 18:28:26 -07:00
Chad Versace
69e11adecc
vk/image: Add more info to VkImageViewType table
...
Convert the table from the direct mapping
VkImageViewType -> SurfaceType
into a mapping to an info struct
VkImageViewType -> struct anv_image_view_info
2015-07-06 18:28:26 -07:00
Chad Versace
5b04db71ff
vk/image: Move validation for vkCreateImageView
...
Move the validation from anv_CreateImageView() and anv_image_view_init()
to anv_validate_CreateImageView(). No new validation is added.
2015-07-06 18:27:14 -07:00
Jason Ekstrand
1f1b26bceb
vk/vulkan.h: Rename VkRect to VkRect2D
2015-07-06 17:47:18 -07:00
Jason Ekstrand
63c1190e47
vk/vulkan.h: Rename count to arraySize in VkDescriptorSetLayoutBinding
2015-07-06 17:43:58 -07:00
Jason Ekstrand
65f9ccb4e7
vk/vulkan.h: Remove VK_MEMORY_PROPERTY_PREFER_HOST_LOCAL_BIT
...
We weren't doing anything with it, so this is a no-op
2015-07-06 17:33:45 -07:00
Jason Ekstrand
68fa750f2e
vk/vulkan.h: Replace DEVICE_COHERENT_BIT with DEVICE_NON_COHERENT_BIT
2015-07-06 17:32:28 -07:00
Jason Ekstrand
2b404e5d00
vk: Rename CPU_READ/WRITE_BIT to HOST_READ/WRITE_BIT
2015-07-06 17:18:25 -07:00
Jason Ekstrand
2de388c49c
vk: Remove SHAREABLE bits
...
They were removed from the Vulkan API and we don't really use them because
there are no multi-GPU i965 systems.
2015-07-06 17:12:51 -07:00
Jason Ekstrand
8c5e48f307
vk: Rename NUM_SHADER_STAGE to SHADER_STAGE_NUM
...
This is a refactor of more than just the header but it lets us finish
reformating the shader stage enum.
2015-07-06 16:43:28 -07:00
Jason Ekstrand
c5ffcc9958
vk: Remove multi-device stuff
2015-07-06 15:34:55 -07:00
Jason Ekstrand
c5ab5925df
vk: Remove ClearDescriptorSets
2015-07-06 15:32:40 -07:00
Jason Ekstrand
ea5fbe1957
vk: Remove begin/end descriptor pool update
2015-07-06 15:32:27 -07:00
Jason Ekstrand
9a798fa946
vk: Remove stub for CloneImageData
2015-07-06 15:30:05 -07:00
Jason Ekstrand
78a0d23d4e
vk: Remove the stub support for memory priorities
2015-07-06 15:28:10 -07:00
Jason Ekstrand
11cf214578
vk: Remove the stub support for explicit memory references
2015-07-06 15:27:58 -07:00
Jason Ekstrand
4a42f45514
vk: Remove atomic counters stubs
2015-07-06 14:38:45 -07:00
Jason Ekstrand
1f1465f077
vk/meta: Add an initial implementation of ClearColorImage
2015-07-02 18:15:06 -07:00
Jason Ekstrand
8a6c8177e0
vk/meta: Factor the guts out of cmd_buffer_clear
2015-07-02 18:13:59 -07:00
Jason Ekstrand
beb0e25327
vk: Roll back to API v90
...
This is what version 0.1 of the Vulkan SDK is built against.
2015-07-01 16:44:12 -07:00
Jason Ekstrand
682eb9489d
vk/x11: Allow for the client querying the size of the format properties
2015-07-01 14:18:07 -07:00
Chad Versace
bba767a9af
vk/formats: Fix entry for S8_UINT
...
I forgot to update this when fixing the depth formats.
2015-06-30 09:41:44 -07:00
Chad Versace
6720b47717
vk/formats: Document new meaning of anv_format::cpp
...
The way the code currently works is that anv_format::cpp is the cpp of
anv_format::surface_format.
Me and Kristian disagree about how the code *should* work. Despite that,
I think it's in our discussion's best interest to document how the code
*currently* works. That should eliminate confusion.
If and when the code begins to work differently, then we'll update the
anv_format comments.
2015-06-30 09:41:41 -07:00
Chad Versace
709fa463ec
vk/depth: Add a FIXME
...
3DSTATE_DEPTH_BUFFER.Width,Height are wrong.
2015-06-26 22:15:03 -07:00
Chad Versace
5b3a1ceb83
vk/image: Enable 2d single-sample color miptrees
...
What's been tested, for both image views and color attachment views:
- VK_FORMAT_R8G8B8A8_UNORM
- VK_IMAGE_VIEW_TYPE_2D
- mipLevels: 1, 2
- baseMipLevel: 0, 1
- arraySize: 1, 2
- baseArraySlice: 0, 1
What's known to be broken:
- Depth and stencil miptrees. To fix this, anv_depth_stencil_view
needs major rework.
- VkImageViewType != 2D
- MSAA
Fixes Crucible tests:
func.miptree.view-2d.levels02.array01.*
func.miptree.view-2d.levels01.array02.*
func.miptree.view-2d.levels02.array02.*
2015-06-26 22:11:15 -07:00