Home | History | Annotate | Download | only in nvc0

Lines Matching refs:nvc0

39 init_push_context(struct nvc0_context *nvc0, struct push_context *ctx)
43 ctx->push = nvc0->base.pushbuf;
44 ctx->translate = nvc0->vertex->translate;
46 if (likely(nvc0->vertex->num_elements < 32))
47 ctx->need_vertex_id = nvc0->vertprog->vp.need_vertex_id;
54 if (unlikely(nvc0->vertprog->vp.edgeflag < PIPE_MAX_ATTRIBS)) {
55 ve = &nvc0->vertex->element[nvc0->vertprog->vp.edgeflag].pipe;
60 ctx->packet_vertex_limit = nvc0->vertex->vtx_per_packet_max;
65 ctx->vertex_words = nvc0->vertex->vtx_size;
83 BEGIN_NVC0(ctx->push, NVC0_3D(VERTEX_ID), 1); /* broken on nvc0 */
298 nvc0_push_vbo(struct nvc0_context *nvc0, const struct pipe_draw_info *info)
306 init_push_context(nvc0, &ctx);
308 for (i = 0; i < nvc0->num_vtxbufs; ++i) {
310 struct pipe_vertex_buffer *vb = &nvc0->vtxbuf[i];
313 data = nouveau_resource_map_offset(&nvc0->base, res,
316 if (apply_bias && likely(!(nvc0->vertex->instance_bufs & (1 << i))))
329 nouveau_resource_map_offset(&nvc0->base,
330 nv04_resource(nvc0->idxbuf.buffer),
331 nvc0->idxbuf.offset, NOUVEAU_BO_RD);
334 index_size = nvc0->idxbuf.index_size;
344 struct pipe_context *pipe = &nvc0->base.pipe;
356 const unsigned a = nvc0->vertex->num_elements;
395 const unsigned a = nvc0->vertex->num_elements;
405 nouveau_resource_unmap(nv04_resource(nvc0->idxbuf.buffer));
407 for (i = 0; i < nvc0->num_vtxbufs; ++i)
408 nouveau_resource_unmap(nv04_resource(nvc0->vtxbuf[i].buffer));