Lines Matching refs:qo

40 nv30_ntfy(struct nv30_screen *screen, struct nv30_query_object *qo)  in nv30_ntfy()  argument
46 if (qo && qo->hw) in nv30_ntfy()
47 ntfy = (char *)notify->map + query->offset + qo->hw->start; in nv30_ntfy()
55 struct nv30_query_object *qo = *po; *po = NULL; in nv30_query_object_del() local
56 if (qo) { in nv30_query_object_del()
57 volatile uint32_t *ntfy = nv30_ntfy(screen, qo); in nv30_query_object_del()
60 nouveau_heap_free(&qo->hw); in nv30_query_object_del()
61 LIST_DEL(&qo->list); in nv30_query_object_del()
62 FREE(qo); in nv30_query_object_del()
69 struct nv30_query_object *oq, *qo = CALLOC_STRUCT(nv30_query_object); in nv30_query_object_new() local
72 if (!qo) in nv30_query_object_new()
78 while (nouveau_heap_alloc(screen->query_heap, 32, NULL, &qo->hw)) { in nv30_query_object_new()
83 LIST_ADDTAIL(&qo->list, &screen->queries); in nv30_query_object_new()
85 ntfy = nv30_ntfy(screen, qo); in nv30_query_object_new()
90 return qo; in nv30_query_object_new()
94 struct nv30_query_object *qo[2]; member
156 q->qo[0] = nv30_query_object_new(nv30->screen); in nv30_query_begin()
157 if (q->qo[0]) { in nv30_query_begin()
159 PUSH_DATA (push, (q->report << 24) | q->qo[0]->hw->start); in nv30_query_begin()
184 q->qo[1] = nv30_query_object_new(screen); in nv30_query_end()
185 if (q->qo[1]) { in nv30_query_end()
187 PUSH_DATA (push, (q->report << 24) | q->qo[1]->hw->start); in nv30_query_end()
203 volatile uint32_t *ntfy0 = nv30_ntfy(screen, q->qo[0]); in nv30_query_result()
204 volatile uint32_t *ntfy1 = nv30_ntfy(screen, q->qo[1]); in nv30_query_result()
225 nv30_query_object_del(screen, &q->qo[0]); in nv30_query_result()
226 nv30_query_object_del(screen, &q->qo[1]); in nv30_query_result()
254 PUSH_DATA (push, 0x02000000 | q->qo[1]->hw->start); in nv40_query_render_condition()