anv: Add boilerplate for VK_NV_mesh_shader
Use minimum values for the properties. Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13662>
This commit is contained in:
parent
c93cbc77f7
commit
325ac235a7
|
@ -1596,6 +1596,14 @@ void anv_GetPhysicalDeviceFeatures2(
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV: {
|
||||||
|
VkPhysicalDeviceMeshShaderFeaturesNV *features =
|
||||||
|
(VkPhysicalDeviceMeshShaderFeaturesNV *)ext;
|
||||||
|
features->taskShader = false;
|
||||||
|
features->meshShader = false;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE: {
|
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE: {
|
||||||
VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE *features =
|
VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE *features =
|
||||||
(VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE *)ext;
|
(VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE *)ext;
|
||||||
|
@ -2386,6 +2394,34 @@ void anv_GetPhysicalDeviceProperties2(
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV: {
|
||||||
|
VkPhysicalDeviceMeshShaderPropertiesNV *props =
|
||||||
|
(VkPhysicalDeviceMeshShaderPropertiesNV *)ext;
|
||||||
|
|
||||||
|
props->maxDrawMeshTasksCount = UINT16_MAX;
|
||||||
|
|
||||||
|
props->maxTaskWorkGroupInvocations = 32;
|
||||||
|
props->maxTaskWorkGroupSize[0] = 32;
|
||||||
|
props->maxTaskWorkGroupSize[1] = 1;
|
||||||
|
props->maxTaskWorkGroupSize[2] = 1;
|
||||||
|
props->maxTaskTotalMemorySize = 16 * 1024;
|
||||||
|
props->maxTaskOutputCount = UINT16_MAX;
|
||||||
|
|
||||||
|
props->maxMeshWorkGroupInvocations = 32;
|
||||||
|
props->maxMeshWorkGroupSize[0] = 32;
|
||||||
|
props->maxMeshWorkGroupSize[1] = 1;
|
||||||
|
props->maxMeshWorkGroupSize[2] = 1;
|
||||||
|
props->maxMeshTotalMemorySize = 16 * 1024;
|
||||||
|
props->maxMeshOutputVertices = 256;
|
||||||
|
props->maxMeshOutputPrimitives = 256;
|
||||||
|
props->maxMeshMultiviewViewCount = 1;
|
||||||
|
|
||||||
|
props->meshOutputPerVertexGranularity = 32;
|
||||||
|
props->meshOutputPerPrimitiveGranularity = 32;
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT: {
|
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT: {
|
||||||
VkPhysicalDevicePCIBusInfoPropertiesEXT *properties =
|
VkPhysicalDevicePCIBusInfoPropertiesEXT *properties =
|
||||||
(VkPhysicalDevicePCIBusInfoPropertiesEXT *)ext;
|
(VkPhysicalDevicePCIBusInfoPropertiesEXT *)ext;
|
||||||
|
|
|
@ -4838,6 +4838,39 @@ void genX(CmdEndTransformFeedbackEXT)(
|
||||||
cmd_buffer->state.gfx.dirty |= ANV_CMD_DIRTY_XFB_ENABLE;
|
cmd_buffer->state.gfx.dirty |= ANV_CMD_DIRTY_XFB_ENABLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
genX(CmdDrawMeshTasksNV)(
|
||||||
|
VkCommandBuffer commandBuffer,
|
||||||
|
uint32_t taskCount,
|
||||||
|
uint32_t firstTask)
|
||||||
|
{
|
||||||
|
unreachable("Unimplemented");
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
genX(CmdDrawMeshTasksIndirectNV)(
|
||||||
|
VkCommandBuffer commandBuffer,
|
||||||
|
VkBuffer buffer,
|
||||||
|
VkDeviceSize offset,
|
||||||
|
uint32_t drawCount,
|
||||||
|
uint32_t stride)
|
||||||
|
{
|
||||||
|
unreachable("Unimplemented");
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
genX(CmdDrawMeshTasksIndirectCountNV)(
|
||||||
|
VkCommandBuffer commandBuffer,
|
||||||
|
VkBuffer buffer,
|
||||||
|
VkDeviceSize offset,
|
||||||
|
VkBuffer countBuffer,
|
||||||
|
VkDeviceSize countBufferOffset,
|
||||||
|
uint32_t maxDrawCount,
|
||||||
|
uint32_t stride)
|
||||||
|
{
|
||||||
|
unreachable("Unimplemented");
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
genX(cmd_buffer_flush_compute_state)(struct anv_cmd_buffer *cmd_buffer)
|
genX(cmd_buffer_flush_compute_state)(struct anv_cmd_buffer *cmd_buffer)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue