+/**
+ * Queries can be bound to various places in the driver. While bound, it tells
+ * the driver to collect the data indicated by the type of the query.
+ */
+struct ilo_query {
+ unsigned type;
+ bool active;
+
+ struct list_head list;
+
+ /* storage for the collected data */
+ union pipe_query_result data;
+
+ /* for queries that need to read hardware statistics */
+ struct intel_bo *bo;
+ int reg_read, reg_total;
+ int reg_cmd_size; /* in dwords, as expected by ilo_cp */
+};
+