zink: refcount zink_gfx_program objects
[mesa.git] / src / gallium / drivers / zink / zink_screen.h
index e50a5f3237090f6fbe2caeff30369ddec38daa1a..a65a053c92792afcc251afe78227186e3d0b6234 100644 (file)
@@ -48,20 +48,41 @@ struct zink_screen {
    VkPhysicalDeviceProperties props;
    VkPhysicalDeviceFeatures feats;
    VkPhysicalDeviceMemoryProperties mem_props;
+   VkPhysicalDeviceTransformFeedbackPropertiesEXT tf_props;
+   VkPhysicalDeviceRobustness2PropertiesEXT rb2_props;
+   VkPhysicalDeviceRobustness2FeaturesEXT rb2_feats;
+   VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT vdiv_feats;
+   uint32_t max_vertex_attrib_divisor;
 
    bool have_KHR_maintenance1;
    bool have_KHR_external_memory_fd;
    bool have_EXT_conditional_rendering;
+   bool have_EXT_transform_feedback;
+   bool have_EXT_index_type_uint8;
+   bool have_EXT_robustness2_features;
+   bool have_EXT_vertex_attribute_divisor;
+   bool have_EXT_calibrated_timestamps;
 
    bool have_X8_D24_UNORM_PACK32;
    bool have_D24_UNORM_S8_UINT;
 
    uint32_t gfx_queue;
+   uint32_t timestamp_valid_bits;
    VkDevice dev;
 
    PFN_vkGetMemoryFdKHR vk_GetMemoryFdKHR;
    PFN_vkCmdBeginConditionalRenderingEXT vk_CmdBeginConditionalRenderingEXT;
    PFN_vkCmdEndConditionalRenderingEXT vk_CmdEndConditionalRenderingEXT;
+
+   PFN_vkCmdBindTransformFeedbackBuffersEXT vk_CmdBindTransformFeedbackBuffersEXT;
+   PFN_vkCmdBeginTransformFeedbackEXT vk_CmdBeginTransformFeedbackEXT;
+   PFN_vkCmdEndTransformFeedbackEXT vk_CmdEndTransformFeedbackEXT;
+   PFN_vkCmdBeginQueryIndexedEXT vk_CmdBeginQueryIndexedEXT;
+   PFN_vkCmdEndQueryIndexedEXT vk_CmdEndQueryIndexedEXT;
+   PFN_vkCmdDrawIndirectByteCountEXT vk_CmdDrawIndirectByteCountEXT;
+
+   PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT vk_GetPhysicalDeviceCalibrateableTimeDomainsEXT;
+   PFN_vkGetCalibratedTimestampsEXT vk_GetCalibratedTimestampsEXT;
 };
 
 static inline struct zink_screen *