diff options
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/nouveau/nvc0/nvc0_query.c | 8 | ||||
-rw-r--r-- | src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_metric.c | 2 |
2 files changed, 8 insertions, 2 deletions
diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_query.c b/src/gallium/drivers/nouveau/nvc0/nvc0_query.c index d992b10a23c..3845d616c3d 100644 --- a/src/gallium/drivers/nouveau/nvc0/nvc0_query.c +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_query.c @@ -187,7 +187,7 @@ nvc0_screen_get_driver_query_group_info(struct pipe_screen *pscreen, if (screen->base.device->drm_version >= 0x01000101) { if (screen->compute) { if (screen->base.class_3d == NVE4_3D_CLASS) { - count++; + count += 2; } else if (screen->base.class_3d < NVE4_3D_CLASS) { count += 2; @@ -222,6 +222,12 @@ nvc0_screen_get_driver_query_group_info(struct pipe_screen *pscreen, } else if (id == NVC0_HW_METRIC_QUERY_GROUP) { if (screen->compute) { + if (screen->base.class_3d == NVE4_3D_CLASS) { + info->name = "Performance metrics"; + info->max_active_queries = 1; + info->num_queries = NVE4_HW_METRIC_QUERY_COUNT; + return 1; + } else if (screen->base.class_3d < NVE4_3D_CLASS) { info->name = "Performance metrics"; info->max_active_queries = 1; diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_metric.c b/src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_metric.c index 756ba4e8185..12fb609b62a 100644 --- a/src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_metric.c +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_query_hw_metric.c @@ -587,7 +587,7 @@ nvc0_hw_metric_get_driver_query_info(struct nvc0_screen *screen, unsigned id, if (screen->base.class_3d == NVE4_3D_CLASS) { info->name = nve4_hw_metric_names[id]; info->query_type = NVE4_HW_METRIC_QUERY(id); - info->group_id = -1; + info->group_id = NVC0_HW_METRIC_QUERY_GROUP; return 1; } else if (class_3d < NVE4_3D_CLASS) { |