/third_party/mesa3d/src/gallium/drivers/nouveau/nv30/ |
D | nv30_context.c | 41 struct nv30_context *nv30; in nv30_context_kick_notify() local 45 nv30 = container_of(push->user_priv, struct nv30_context, bufctx); in nv30_context_kick_notify() 46 screen = &nv30->screen->base; in nv30_context_kick_notify() 75 struct nv30_context *nv30 = nv30_context(pipe); in nv30_context_flush() local 76 struct nouveau_pushbuf *push = nv30->base.pushbuf; in nv30_context_flush() 79 nouveau_fence_ref(nv30->screen->base.fence.current, in nv30_context_flush() 84 nouveau_context_update_frame_stats(&nv30->base); in nv30_context_flush() 92 struct nv30_context *nv30 = nv30_context(&nv->pipe); in nv30_invalidate_resource_storage() local 96 for (i = 0; i < nv30->framebuffer.nr_cbufs; ++i) { in nv30_invalidate_resource_storage() 97 if (nv30->framebuffer.cbufs[i] && in nv30_invalidate_resource_storage() [all …]
|
D | nv30_state_validate.c | 36 nv30_validate_fb(struct nv30_context *nv30) in nv30_validate_fb() argument 38 struct pipe_screen *pscreen = &nv30->screen->base.base; in nv30_validate_fb() 39 struct pipe_framebuffer_state *fb = &nv30->framebuffer; in nv30_validate_fb() 40 struct nouveau_pushbuf *push = nv30->base.pushbuf; in nv30_validate_fb() 41 struct nouveau_object *eng3d = nv30->screen->eng3d; in nv30_validate_fb() 48 nv30->state.rt_enable = (NV30_3D_RT_ENABLE_COLOR0 << fb->nr_cbufs) - 1; in nv30_validate_fb() 49 if (nv30->state.rt_enable > 1) in nv30_validate_fb() 50 nv30->state.rt_enable |= NV30_3D_RT_ENABLE_MRT; in nv30_validate_fb() 86 if (nv30->state.rt_enable) { in nv30_validate_fb() 116 if ((nv30->state.rt_enable & NV30_3D_RT_ENABLE_COLOR0) || fb->zsbuf) { in nv30_validate_fb() [all …]
|
D | nv30_vbo.c | 39 nv30_emit_vtxattr(struct nv30_context *nv30, struct pipe_vertex_buffer *vb, in nv30_emit_vtxattr() argument 43 struct nouveau_pushbuf *push = nv30->base.pushbuf; in nv30_emit_vtxattr() 48 data = nouveau_resource_map_offset(&nv30->base, res, vb->buffer_offset + in nv30_emit_vtxattr() 83 nv30_vbuf_range(struct nv30_context *nv30, int vbi, in nv30_vbuf_range() argument 86 assert(nv30->vbo_max_index != ~0); in nv30_vbuf_range() 87 *base = nv30->vbo_min_index * nv30->vtxbuf[vbi].stride; in nv30_vbuf_range() 88 *size = (nv30->vbo_max_index - in nv30_vbuf_range() 89 nv30->vbo_min_index + 1) * nv30->vtxbuf[vbi].stride; in nv30_vbuf_range() 93 nv30_prevalidate_vbufs(struct nv30_context *nv30) in nv30_prevalidate_vbufs() argument 100 nv30->vbo_fifo = nv30->vbo_user = 0; in nv30_prevalidate_vbufs() [all …]
|
D | nv40_verttex.c | 30 nv40_verttex_validate(struct nv30_context *nv30) in nv40_verttex_validate() argument 32 struct nouveau_pushbuf *push = nv30->base.pushbuf; in nv40_verttex_validate() 33 unsigned dirty = nv30->vertprog.dirty_samplers; in nv40_verttex_validate() 37 struct nv30_sampler_view *sv = (void *)nv30->fragprog.textures[unit]; in nv40_verttex_validate() 38 struct nv30_sampler_state *ss = nv30->fragprog.samplers[unit]; in nv40_verttex_validate() 48 nv30->vertprog.dirty_samplers = 0; in nv40_verttex_validate() 55 struct nv30_context *nv30 = nv30_context(pipe); in nv40_verttex_sampler_states_bind() local 59 nv30->vertprog.samplers[i] = hwcso[i]; in nv40_verttex_sampler_states_bind() 60 nv30->vertprog.dirty_samplers |= (1 << i); in nv40_verttex_sampler_states_bind() 63 for (; i < nv30->vertprog.num_samplers; i++) { in nv40_verttex_sampler_states_bind() [all …]
|
D | nv30_fragtex.c | 34 nv30_fragtex_validate(struct nv30_context *nv30) in nv30_fragtex_validate() argument 36 struct pipe_screen *pscreen = &nv30->screen->base.base; in nv30_fragtex_validate() 37 struct nouveau_object *eng3d = nv30->screen->eng3d; in nv30_fragtex_validate() 38 struct nouveau_pushbuf *push = nv30->base.pushbuf; in nv30_fragtex_validate() 39 unsigned dirty = nv30->fragprog.dirty_samplers; in nv30_fragtex_validate() 43 struct nv30_sampler_view *sv = (void *)nv30->fragprog.textures[unit]; in nv30_fragtex_validate() 44 struct nv30_sampler_state *ss = nv30->fragprog.samplers[unit]; in nv30_fragtex_validate() 98 if (fmt->nv30 == NV30_3D_TEX_FORMAT_FORMAT_Z16) { in nv30_fragtex_validate() 104 if (fmt->nv30 == NV30_3D_TEX_FORMAT_FORMAT_Z24) { in nv30_fragtex_validate() 111 format |= fmt->nv30; in nv30_fragtex_validate() [all …]
|
D | nv30_draw.c | 39 struct nv30_context *nv30; member 72 struct nv30_context *nv30 = r->nv30; in nv30_render_allocate_vertices() local 78 r->buffer = pipe_buffer_create(&nv30->screen->base.base, in nv30_render_allocate_vertices() 95 &r->nv30->base.pipe, r->buffer, in nv30_render_map_vertices() 109 pipe_buffer_unmap(&r->nv30->base.pipe, r->transfer); in nv30_render_unmap_vertices() 126 struct nv30_context *nv30 = r->nv30; in nv30_render_draw_elements() local 127 struct nouveau_pushbuf *push = nv30->screen->base.pushbuf; in nv30_render_draw_elements() 137 if (!nv30_state_validate(nv30, ~0, false)) in nv30_render_draw_elements() 169 struct nv30_context *nv30 = r->nv30; in nv30_render_draw_arrays() local 170 struct nouveau_pushbuf *push = nv30->base.pushbuf; in nv30_render_draw_arrays() [all …]
|
D | nv30_state.c | 121 struct nv30_context *nv30 = nv30_context(pipe); in nv30_blend_state_bind() local 123 nv30->blend = hwcso; in nv30_blend_state_bind() 124 nv30->dirty |= NV30_NEW_BLEND; in nv30_blend_state_bind() 198 struct nv30_context *nv30 = nv30_context(pipe); in nv30_rasterizer_state_bind() local 200 nv30->rast = hwcso; in nv30_rasterizer_state_bind() 201 nv30->dirty |= NV30_NEW_RASTERIZER; in nv30_rasterizer_state_bind() 276 struct nv30_context *nv30 = nv30_context(pipe); in nv30_zsa_state_bind() local 278 nv30->zsa = hwcso; in nv30_zsa_state_bind() 279 nv30->dirty |= NV30_NEW_ZSA; in nv30_zsa_state_bind() 292 struct nv30_context *nv30 = nv30_context(pipe); in nv30_set_blend_color() local [all …]
|
D | nv30_fragprog.c | 35 nv30_fragprog_upload(struct nv30_context *nv30) in nv30_fragprog_upload() argument 37 struct nouveau_context *nv = &nv30->base; in nv30_fragprog_upload() 38 struct nv30_fragprog *fp = nv30->fragprog.program; in nv30_fragprog_upload() 39 struct pipe_context *pipe = &nv30->base.pipe; in nv30_fragprog_upload() 66 nv30_fragprog_validate(struct nv30_context *nv30) in nv30_fragprog_validate() argument 68 struct nouveau_pushbuf *push = nv30->base.pushbuf; in nv30_fragprog_validate() 69 struct nouveau_object *eng3d = nv30->screen->eng3d; in nv30_fragprog_validate() 70 struct nv30_fragprog *fp = nv30->fragprog.program; in nv30_fragprog_validate() 85 if (nv30->fragprog.constbuf) { in nv30_fragprog_validate() 86 struct pipe_resource *constbuf = nv30->fragprog.constbuf; in nv30_fragprog_validate() [all …]
|
D | nv30_miptree.c | 149 struct nv30_context *nv30 = nv30_context(pipe); in nv30_resource_copy_region() local 153 nouveau_copy_buffer(&nv30->base, in nv30_resource_copy_region() 164 nv30_transfer_rect(nv30, NEAREST, &src, &dst); in nv30_resource_copy_region() 168 nv30_resource_resolve(struct nv30_context *nv30, in nv30_resource_resolve() argument 212 nv30_transfer_rect(nv30, BILINEAR, &src, &dst); in nv30_resource_resolve() 221 struct nv30_context *nv30 = nv30_context(pipe); in nv30_blit() local 228 nv30_resource_resolve(nv30, blit_info); in nv30_blit() 241 if (!util_blitter_is_blit_supported(nv30->blitter, &info)) { in nv30_blit() 250 util_blitter_save_vertex_buffer_slot(nv30->blitter, nv30->vtxbuf); in nv30_blit() 251 util_blitter_save_vertex_elements(nv30->blitter, nv30->vertex); in nv30_blit() [all …]
|
D | nv30_vertprog.c | 55 nv30_vertprog_validate(struct nv30_context *nv30) in nv30_vertprog_validate() argument 57 struct nouveau_pushbuf *push = nv30->base.pushbuf; in nv30_vertprog_validate() 58 struct nouveau_object *eng3d = nv30->screen->eng3d; in nv30_vertprog_validate() 59 struct nv30_vertprog *vp = nv30->vertprog.program; in nv30_vertprog_validate() 60 struct nv30_fragprog *fp = nv30->fragprog.program; in nv30_vertprog_validate() 65 if (nv30->dirty & NV30_NEW_FRAGPROG) { in nv30_vertprog_validate() 73 if (nv30->rast && nv30->rast->pipe.clip_plane_enable != vp->enabled_ucps) { in nv30_vertprog_validate() 74 vp->enabled_ucps = nv30->rast->pipe.clip_plane_enable; in nv30_vertprog_validate() 82 nv30->draw_flags |= NV30_NEW_VERTPROG; in nv30_vertprog_validate() 85 nv30->dirty |= NV30_NEW_VERTPROG; in nv30_vertprog_validate() [all …]
|
D | nv30_transfer.c | 27 struct nv30_context *nv30, enum nv30_transfer_filter filter, \ 57 if (nv30->screen->eng3d->oclass < NV40_3D_CLASS) in nv30_transfer_blit() 71 nv30_transfer_rect_vertprog(struct nv30_context *nv30) in nv30_transfer_rect_vertprog() argument 73 struct nouveau_heap *heap = nv30->screen->vp_exec_heap; in nv30_transfer_rect_vertprog() 76 vp = nv30->blit_vp; in nv30_transfer_rect_vertprog() 78 if (nouveau_heap_alloc(heap, 2, &nv30->blit_vp, &nv30->blit_vp)) { in nv30_transfer_rect_vertprog() 84 if (nouveau_heap_alloc(heap, 2, &nv30->blit_vp, &nv30->blit_vp)) in nv30_transfer_rect_vertprog() 88 vp = nv30->blit_vp; in nv30_transfer_rect_vertprog() 90 struct nouveau_pushbuf *push = nv30->base.pushbuf; in nv30_transfer_rect_vertprog() 112 nv30_transfer_rect_fragprog(struct nv30_context *nv30) in nv30_transfer_rect_fragprog() argument [all …]
|
D | nv30_clear.c | 56 struct nv30_context *nv30 = nv30_context(pipe); in nv30_clear() local 57 struct nouveau_pushbuf *push = nv30->base.pushbuf; in nv30_clear() 58 struct pipe_framebuffer_state *fb = &nv30->framebuffer; in nv30_clear() 61 if (!nv30_state_validate(nv30, NV30_NEW_FRAMEBUFFER | NV30_NEW_SCISSOR, true)) in nv30_clear() 81 nv30->dirty |= NV30_NEW_ZSA; in nv30_clear() 86 if (nv30->screen->eng3d->oclass < NV40_3D_CLASS) { in nv30_clear() 98 nv30_state_release(nv30); in nv30_clear() 107 struct nv30_context *nv30 = nv30_context(pipe); in nv30_clear_render_target() local 110 struct nouveau_pushbuf *push = nv30->base.pushbuf; in nv30_clear_render_target() 111 struct nouveau_object *eng3d = nv30->screen->eng3d; in nv30_clear_render_target() [all …]
|
D | nv30_push.c | 198 nv30_push_vbo(struct nv30_context *nv30, const struct pipe_draw_info *info, in nv30_push_vbo() argument 205 ctx.push = nv30->base.pushbuf; in nv30_push_vbo() 206 ctx.translate = nv30->vertex->translate; in nv30_push_vbo() 207 ctx.packet_vertex_limit = nv30->vertex->vtx_per_packet_max; in nv30_push_vbo() 208 ctx.vertex_words = nv30->vertex->vtx_size; in nv30_push_vbo() 210 for (i = 0; i < nv30->num_vtxbufs; ++i) { in nv30_push_vbo() 212 struct pipe_vertex_buffer *vb = &nv30->vtxbuf[i]; in nv30_push_vbo() 219 data = nouveau_resource_map_offset(&nv30->base, res, in nv30_push_vbo() 230 ctx.idxbuf = nouveau_resource_map_offset(&nv30->base, in nv30_push_vbo() 236 nv30_state_release(nv30); in nv30_push_vbo() [all …]
|
D | nv30_context.h | 140 nv30_vbo_validate(struct nv30_context *nv30); 155 nv30_vertprog_validate(struct nv30_context *nv30); 161 nv30_fragprog_validate(struct nv30_context *nv30); 167 nv30_texture_validate(struct nv30_context *nv30); 173 nv30_fragtex_validate(struct nv30_context *nv30); 179 nv40_verttex_validate(struct nv30_context *nv30); 200 nv30_push_vbo(struct nv30_context *nv30, const struct pipe_draw_info *info, 212 nv30_state_validate(struct nv30_context *nv30, uint32_t mask, bool hwtnl); 215 nv30_state_release(struct nv30_context *nv30);
|
D | nv30_query.c | 152 struct nv30_context *nv30 = nv30_context(pipe); in nv30_query_begin() local 154 struct nouveau_pushbuf *push = nv30->base.pushbuf; in nv30_query_begin() 158 q->qo[0] = nv30_query_object_new(nv30->screen); in nv30_query_begin() 182 struct nv30_context *nv30 = nv30_context(pipe); in nv30_query_end() local 183 struct nv30_screen *screen = nv30->screen; in nv30_query_end() 185 struct nouveau_pushbuf *push = nv30->base.pushbuf; in nv30_query_end() 245 struct nv30_context *nv30 = nv30_context(pipe); in nv40_query_render_condition() local 247 struct nouveau_pushbuf *push = nv30->base.pushbuf; in nv40_query_render_condition() 249 nv30->render_cond_query = pq; in nv40_query_render_condition() 250 nv30->render_cond_mode = mode; in nv40_query_render_condition() [all …]
|
D | nv30_resource.c | 37 struct nv30_context *nv30 = nv30_context(pipe); in nv30_memory_barrier() local 41 for (i = 0; i < nv30->num_vtxbufs; ++i) { in nv30_memory_barrier() 42 if (!nv30->vtxbuf[i].buffer.resource) in nv30_memory_barrier() 44 if (nv30->vtxbuf[i].buffer.resource->flags & PIPE_RESOURCE_FLAG_MAP_PERSISTENT) in nv30_memory_barrier() 45 nv30->base.vbo_dirty = true; in nv30_memory_barrier()
|
D | nv30_format.h | 17 unsigned nv30; member
|
/third_party/mesa3d/src/gallium/drivers/nouveau/ |
D | meson.build | 46 'nv30/nv01_2d.xml.h', 47 'nv30/nv30-40_3d.xml.h', 48 'nv30/nv30_clear.c', 49 'nv30/nv30_context.c', 50 'nv30/nv30_context.h', 51 'nv30/nv30_draw.c', 52 'nv30/nv30_format.c', 53 'nv30/nv30_format.h', 54 'nv30/nv30_fragprog.c', 55 'nv30/nv30_fragtex.c', [all …]
|
/third_party/mesa3d/docs/relnotes/ |
D | 10.5.7.rst | 58 - nv30: don't leak fragprog consts 59 - nv30: avoid leaking render state and draw shaders 60 - nv30: fix clip plane uploads and enable changes 61 - nv30/draw: avoid leaving stale pointers in draw state 62 - nv30/draw: draw expects constbuf size in bytes, not vec4 units 65 - nv30/draw: fix indexed draws with swtnl path and a resource index 67 - nv30/draw: only use the DMA1 object (GART) if the bo is not in VRAM 68 - nv30/draw: allocate vertex buffers in gart 69 - nv30/draw: switch varying hookup logic to know about texcoords 70 - nv30: falling back to draw path for edgeflag does no good [all …]
|
D | 10.6.8.rst | 58 - nv30: Fix creation of scanout buffers 59 - nv30: Implement color resolve for msaa 60 - nv30: Fix max width / height checks in nv30 sifm code 61 - nv30: Disable msaa unless requested from the env by NV30_MAX_MSAA
|
D | 9.0.rst | 29 - Added new Gallium3D - nv30 driver 68 - Removed Gallium3D - nvfx driver (use nv30 instead)
|
D | 10.2.2.rst | 103 - nv30: plug some memory leaks on screen destroy and shader compile 104 - nv30: avoid dangling references to deleted contexts 105 - nv30: hack to avoid errors on unexpected color/zeta combinations
|
D | 9.1.7.rst | 110 - nv30: U8_USCALED only works for size 4 111 - nv30: remove no-longer-used formats from table
|
D | 11.0.0.rst | 52 - GL_EXT_depth_bounds_test on radeonsi, nv30, nv50, nvc0 57 - GL_OES_texture_float on all r300, r600, radeonsi, nv30, nv50, nvc0, 59 - GL_OES_texture_half_float on all r300, r600, radeonsi, nv30, nv50, 61 - GL_OES_texture_float_linear on all r300, r600, radeonsi, nv30, nv50, 63 - GL_OES_texture_half_float_linear on all r300, r600, radeonsi, nv30,
|
/third_party/mesa3d/docs/gallium/ |
D | distro.rst | 21 nVidia nv30 24 Driver for the nVidia nv30 and nv40 families of GPUs.
|