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;
|
||||
}
|
||||
|
||||
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: {
|
||||
VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE *features =
|
||||
(VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE *)ext;
|
||||
|
@ -2386,6 +2394,34 @@ void anv_GetPhysicalDeviceProperties2(
|
|||
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: {
|
||||
VkPhysicalDevicePCIBusInfoPropertiesEXT *properties =
|
||||
(VkPhysicalDevicePCIBusInfoPropertiesEXT *)ext;
|
||||
|
|
|
@ -4838,6 +4838,39 @@ void genX(CmdEndTransformFeedbackEXT)(
|
|||
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
|
||||
genX(cmd_buffer_flush_compute_state)(struct anv_cmd_buffer *cmd_buffer)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue