#include "nvc0/nvc0_query.h"
#include "nvc0/nvc0_query_sw.h"
#include "nvc0/nvc0_query_hw.h"
+#include "nvc0/nvc0_query_hw_metric.h"
#include "nvc0/nvc0_query_hw_sm.h"
static struct pipe_query *
count++;
} else
if (screen->base.class_3d < NVE4_3D_CLASS) {
- count++;
+ count += 2;
}
}
}
return 1;
}
}
+ } else
+ if (id == NVC0_HW_METRIC_QUERY_GROUP) {
+ if (screen->compute) {
+ if (screen->base.class_3d < NVE4_3D_CLASS) {
+ info->name = "Performance metrics";
+ info->type = PIPE_DRIVER_QUERY_GROUP_TYPE_GPU;
+ info->max_active_queries = 1;
+ info->num_queries = NVC0_HW_METRIC_QUERY_COUNT;
+ return 1;
+ }
+ }
}
#ifdef NOUVEAU_ENABLE_DRIVER_STATISTICS
else if (id == NVC0_SW_QUERY_DRV_STAT_GROUP) {
* Driver queries groups:
*/
#define NVC0_HW_SM_QUERY_GROUP 0
-#define NVC0_SW_QUERY_DRV_STAT_GROUP 1
+#define NVC0_HW_METRIC_QUERY_GROUP 1
+#define NVC0_SW_QUERY_DRV_STAT_GROUP 2
void nvc0_init_query_functions(struct nvc0_context *);
id = nvc0_hw_metric_get_next_query_id(queries, id);
info->name = nvc0_hw_metric_names[id];
info->query_type = NVC0_HW_METRIC_QUERY(id);
- info->group_id = -1;
+ info->group_id = NVC0_HW_METRIC_QUERY_GROUP;
return 1;
}
}