From e3515590bfb3e25ad5d3c60d698a5cf19c8e3f43 Mon Sep 17 00:00:00 2001 From: Iago Toral Quiroga Date: Thu, 29 Oct 2020 11:54:28 +0100 Subject: [PATCH] zink: require Vulkan timestamp queries for time query caps Reviewed-By: Mike Blumenkrantz Reviewed-by: Erik Faye-Lund Part-of: --- src/gallium/drivers/zink/zink_screen.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/zink/zink_screen.c b/src/gallium/drivers/zink/zink_screen.c index 4ba297aa649..ec2f9000f22 100644 --- a/src/gallium/drivers/zink/zink_screen.c +++ b/src/gallium/drivers/zink/zink_screen.c @@ -118,7 +118,7 @@ zink_get_param(struct pipe_screen *pscreen, enum pipe_cap param) return 1; case PIPE_CAP_QUERY_TIME_ELAPSED: - return 1; + return screen->timestamp_valid_bits > 0; case PIPE_CAP_TEXTURE_MULTISAMPLE: case PIPE_CAP_SAMPLE_SHADING: @@ -186,7 +186,8 @@ zink_get_param(struct pipe_screen *pscreen, enum pipe_cap param) return screen->info.props.limits.minUniformBufferOffsetAlignment; case PIPE_CAP_QUERY_TIMESTAMP: - return screen->info.have_EXT_calibrated_timestamps; + return screen->info.have_EXT_calibrated_timestamps && + screen->timestamp_valid_bits > 0; case PIPE_CAP_MIN_MAP_BUFFER_ALIGNMENT: return screen->info.props.limits.minMemoryMapAlignment; @@ -708,7 +709,6 @@ update_queue_props(struct zink_screen *screen) if (props[i].queueFlags & VK_QUEUE_GRAPHICS_BIT) { screen->gfx_queue = i; screen->timestamp_valid_bits = props[i].timestampValidBits; - assert(screen->timestamp_valid_bits); break; } }