search for: nouveau_pushbuf_refn

Displaying 19 results from an estimated 19 matches for "nouveau_pushbuf_refn".

2015 Mar 14
1
[PATCH ddx] Add support for VRAM-less devices to the ddx
...investigating that. :-) diff --git a/src/nouveau_dri2.c b/src/nouveau_dri2.c index e3445b2..69fcd8c 100644 --- a/src/nouveau_dri2.c +++ b/src/nouveau_dri2.c @@ -684,7 +684,7 @@ nouveau_dri2_finish_swap(DrawablePtr draw, unsigned int frame, /* Reference the back buffer to sync it to vblank */ nouveau_pushbuf_refn(push, &(struct nouveau_pushbuf_refn) { src_bo, - NOUVEAU_BO_VRAM | NOUVEAU_BO_RD + NOUVEAU_BO_APER | NOUVEAU_BO_RD }, 1); if (pNv->Architecture >= NV_FERMI) @@ -725,7 +725,7 @@ nouveau_dri2_finish_swap(DrawablePtr draw, unsigned int frame, * on oc...
2015 Dec 16
0
[libdrm v3 13/14] nouveau: clean up nouveau.h, noting deprecated members/functions
..., int bins, - struct nouveau_bufctx **); +int nouveau_bufctx_new(struct nouveau_client *, int bins, + struct nouveau_bufctx **); void nouveau_bufctx_del(struct nouveau_bufctx **); struct nouveau_bufref * nouveau_bufctx_refn(struct nouveau_bufctx *, int bin, @@ -249,16 +206,16 @@ struct nouveau_pushbuf_refn { uint32_t flags; }; -int nouveau_pushbuf_new(struct nouveau_client *, struct nouveau_object *channel, - int nr, uint32_t size, bool immediate, - struct nouveau_pushbuf **); +int nouveau_pushbuf_new(struct nouveau_client *, struct nouveau_object *chan, + int nr, uint32_t size, bool im...
2012 Jul 27
1
[PATCH] nvc0: Add and enable vblank support
...L); +} + Bool NVAccelInitM2MF_NVC0(ScrnInfoPtr pScrn) { @@ -153,12 +183,27 @@ NVAccelInit3D_NVC0(ScrnInfoPtr pScrn) if (ret) return FALSE; + ret = nouveau_object_new(pNv->channel, 0x906e, 0x906e, + NULL, 0, &pNv->NvSW); + if (nouveau_pushbuf_space(push, 512, 0, 0) || nouveau_pushbuf_refn (push, &(struct nouveau_pushbuf_refn) { pNv->scratch, NOUVEAU_BO_VRAM | NOUVEAU_BO_WR }, 1)) return FALSE; + if (!ret) { + BEGIN_NVC0(push, NV01_SUBC(NVSW, OBJECT), 1); + PUSH_DATA (push, pNv->NvSW->handle); + BEGIN_NVC0(push, SUBC_NVSW(0x0200), 2); /* VBLSEM_OFFSET...
2013 Jun 27
4
[PATCH] nv50: H.264/MPEG2 decoding support via VP2, available on NV84-NV96, NVA0
...+ union pipe_color_union color; + struct nv04_fifo nv04_data = { .vram = 0xbeef0201, .gart = 0xbeef0202 }; + int ret, i; + int is_h264 = u_reduce_video_profile(profile) == PIPE_VIDEO_CODEC_MPEG4_AVC; + int is_mpeg12 = u_reduce_video_profile(profile) == PIPE_VIDEO_CODEC_MPEG12; + struct nouveau_pushbuf_refn fence_ref[] = { + { NULL, NOUVEAU_BO_RDWR | NOUVEAU_BO_VRAM }, + }; + + + if (getenv("XVMC_VL")) + return vl_create_decoder(context, profile, entrypoint, + chroma_format, width, height, + max_references, chunked_dec...
2014 Jul 31
1
[libdrm PATCH 1/3] nouveau: Only export public functions.
...lidate(push, false) : 0; } -void +drm_public void nouveau_pushbuf_data(struct nouveau_pushbuf *push, struct nouveau_bo *bo, uint64_t offset, uint64_t length) { @@ -728,14 +728,14 @@ nouveau_pushbuf_data(struct nouveau_pushbuf *push, struct nouveau_bo *bo, } } -int +drm_public int nouveau_pushbuf_refn(struct nouveau_pushbuf *push, struct nouveau_pushbuf_refn *refs, int nr) { return pushbuf_refn(push, true, refs, nr); } -void +drm_public void nouveau_pushbuf_reloc(struct nouveau_pushbuf *push, struct nouveau_bo *bo, uint32_t data, uint32_t flags, uint32_t vor, uint32_t tor...
2013 Jun 30
0
[PATCH v2] nv50: H.264/MPEG2 decoding support via VP2, available on NV84-NV96, NVA0
...ct nv84_video_buffer *dest) +{ + struct iparm params; + uint32_t more_params[0x44 / 4] = {0}; + unsigned total_bytes = 0; + int i; + static const uint32_t end[] = {0x0b010000, 0, 0x0b010000, 0}; + char indexes[17] = {0}; + struct nouveau_pushbuf *push = dec->bsp_pushbuf; + struct nouveau_pushbuf_refn bo_refs[] = { + { dec->vpring, NOUVEAU_BO_RDWR | NOUVEAU_BO_VRAM }, + { dec->mbring, NOUVEAU_BO_RDWR | NOUVEAU_BO_VRAM }, + { dec->bitstream, NOUVEAU_BO_RDWR | NOUVEAU_BO_GART }, + { dec->fence, NOUVEAU_BO_RDWR | NOUVEAU_BO_VRAM }, + }; + + nouveau_bo_wait(dec-&g...
2015 Nov 27
14
[libdrm v2 01/14] nouveau: import and install a selection of nvif headers from the kernel
From: Ben Skeggs <bskeggs at redhat.com> This commit also modifies the install path of the main libdrm_nouveau header to be under a nouveau/ subdirectory. Signed-off-by: Ben Skeggs <bskeggs at redhat.com> --- include/drm/nouveau_drm.h | 1 + nouveau/Makefile.am | 11 +++- nouveau/libdrm_nouveau.pc.in | 2 +- nouveau/nvif/cl0080.h | 45 ++++++++++++++
2013 Jun 29
0
[PATCH] nv50: H.264/MPEG2 decoding support via VP2, available on NV84-NV96, NVA0
...on color; > + struct nv04_fifo nv04_data = { .vram = 0xbeef0201, .gart = 0xbeef0202 }; > + int ret, i; > + int is_h264 = u_reduce_video_profile(profile) == PIPE_VIDEO_CODEC_MPEG4_AVC; > + int is_mpeg12 = u_reduce_video_profile(profile) == PIPE_VIDEO_CODEC_MPEG12; > + struct nouveau_pushbuf_refn fence_ref[] = { > + { NULL, NOUVEAU_BO_RDWR | NOUVEAU_BO_VRAM }, > + }; > + > + > + if (getenv("XVMC_VL")) > + return vl_create_decoder(context, profile, entrypoint, > + chroma_format, width, height, > +...
2013 Aug 11
10
[PATCH 00/10] Add support for MPEG2 and VC-1 on VP3/VP4 for NV98-NVAF
As it turns out, with the proprietary firmware, the VP3 and VP4 interfaces are identical. Furthermore, this is all already implemented for nvc0. So these patches (a) move the easily sharable bits of the nvc0 implementation into the nouveau directory, and then (b) implement the other parts in nv50. The non-shared parts are still largely copies, but there are some differences, not the least of which
2015 Nov 26
18
[libdrm 01/13] nouveau: move more abi16-specific logic into abi16.c
From: Ben Skeggs <bskeggs at redhat.com> Signed-off-by: Ben Skeggs <bskeggs at redhat.com> --- nouveau/abi16.c | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++----- nouveau/nouveau.c | 56 +++++++------------------------------------------ nouveau/private.h | 7 ++----- 3 files changed, 67 insertions(+), 58 deletions(-) diff --git a/nouveau/abi16.c b/nouveau/abi16.c index
2013 Jun 29
2
[PATCH] nv50: H.264/MPEG2 decoding support via VP2, available on NV84-NV96, NVA0
...struct nv04_fifo nv04_data = { .vram = 0xbeef0201, .gart = 0xbeef0202 }; >> + int ret, i; >> + int is_h264 = u_reduce_video_profile(profile) == PIPE_VIDEO_CODEC_MPEG4_AVC; >> + int is_mpeg12 = u_reduce_video_profile(profile) == PIPE_VIDEO_CODEC_MPEG12; >> + struct nouveau_pushbuf_refn fence_ref[] = { >> + { NULL, NOUVEAU_BO_RDWR | NOUVEAU_BO_VRAM }, >> + }; >> + >> + >> + if (getenv("XVMC_VL")) >> + return vl_create_decoder(context, profile, entrypoint, >> + chroma_format, width, heig...
2013 Jun 30
0
[PATCH] nv50: H.264/MPEG2 decoding support via VP2, available on NV84-NV96, NVA0
...ifo nv04_data = { .vram = 0xbeef0201, .gart = 0xbeef0202 }; >>> + int ret, i; >>> + int is_h264 = u_reduce_video_profile(profile) == PIPE_VIDEO_CODEC_MPEG4_AVC; >>> + int is_mpeg12 = u_reduce_video_profile(profile) == PIPE_VIDEO_CODEC_MPEG12; >>> + struct nouveau_pushbuf_refn fence_ref[] = { >>> + { NULL, NOUVEAU_BO_RDWR | NOUVEAU_BO_VRAM }, >>> + }; >>> + >>> + >>> + if (getenv("XVMC_VL")) >>> + return vl_create_decoder(context, profile, entrypoint, >>> +...
2015 Dec 16
16
[libdrm v3 01/14] nouveau: import and install a selection of nvif headers from the kernel
From: Ben Skeggs <bskeggs at redhat.com> This commit also modifies the install path of the main libdrm_nouveau header to be under a nouveau/ subdirectory. Signed-off-by: Ben Skeggs <bskeggs at redhat.com> --- include/drm/nouveau_drm.h | 1 + nouveau/Makefile.am | 11 +++- nouveau/libdrm_nouveau.pc.in | 2 +- nouveau/nvif/cl0080.h | 45 ++++++++++++++
2012 Apr 06
1
[WIP PATCH] dri/nouveau: Add S3TC support for nv20.
...nouveau/nv04_surface.c +++ b/src/mesa/drivers/dri/nouveau/nv04_surface.c @@ -291,7 +291,7 @@ nv04_surface_copy_m2mf(struct gl_context *ctx, while (h) { int count = (h > 2047) ? 2047 : h; - if (nouveau_pushbuf_space(push, 16, 4, 0) || + if (nouveau_pushbuf_space(push, 18, 4, 0) || nouveau_pushbuf_refn (push, refs, 2)) return; @@ -307,6 +307,10 @@ nv04_surface_copy_m2mf(struct gl_context *ctx, PUSH_DATA (push, count); PUSH_DATA (push, 0x0101); PUSH_DATA (push, 0); + BEGIN_NV04(push, NV04_GRAPH(M2MF, NOP), 1); + PUSH_DATA (push, 0); + BEGIN_NV04(push, NV03_M2MF(OFFSET_OUT), 1); +...
2016 Mar 28
19
[Bug 94727] New: nouveau/pushbuf.c:238: pushbuf_krel: Assertion `bkref` failed.
https://bugs.freedesktop.org/show_bug.cgi?id=94727 Bug ID: 94727 Summary: nouveau/pushbuf.c:238: pushbuf_krel: Assertion `bkref` failed. Product: Mesa Version: unspecified Hardware: x86-64 (AMD64) OS: Linux (All) Status: NEW Severity: normal Priority: medium
2016 Oct 16
2
[PATCH] exa: add GM10x acceleration support
...USH_DATA (push, 0); + PUSH_DATA (push, 3); + } BEGIN_NVC0(push, NVC0_3D(VERTEX_END_GL), 1); PUSH_DATA (push, 0); } diff --git a/src/nvc0_xv.c b/src/nvc0_xv.c index d1d8f18..129c505 100644 --- a/src/nvc0_xv.c +++ b/src/nvc0_xv.c @@ -247,15 +247,57 @@ nvc0_xv_image_put(ScrnInfoPtr pScrn, nouveau_pushbuf_refn (push, refs, 3)) return BadImplementation; + if (pNv->dev->chipset >= 0x110) { + BEGIN_NVC0(push, NVC0_3D(CB_SIZE), 3); + PUSH_DATA (push, 256); + PUSH_DATA (push, (pNv->scratch->offset + PVP_DATA) >> 32); + PUSH_DATA (push, (pNv->scratch->offset + PVP_DATA...
2016 Oct 27
0
[PATCH v2 1/7] exa: add GM10x acceleration support
...USH_DATA (push, 0); + PUSH_DATA (push, 3); + } BEGIN_NVC0(push, NVC0_3D(VERTEX_END_GL), 1); PUSH_DATA (push, 0); } diff --git a/src/nvc0_xv.c b/src/nvc0_xv.c index d1d8f18..129c505 100644 --- a/src/nvc0_xv.c +++ b/src/nvc0_xv.c @@ -247,15 +247,57 @@ nvc0_xv_image_put(ScrnInfoPtr pScrn, nouveau_pushbuf_refn (push, refs, 3)) return BadImplementation; + if (pNv->dev->chipset >= 0x110) { + BEGIN_NVC0(push, NVC0_3D(CB_SIZE), 3); + PUSH_DATA (push, 256); + PUSH_DATA (push, (pNv->scratch->offset + PVP_DATA) >> 32); + PUSH_DATA (push, (pNv->scratch->offset + PVP_DATA...
2016 Oct 17
0
[PATCH] exa: add GM10x acceleration support
...} > BEGIN_NVC0(push, NVC0_3D(VERTEX_END_GL), 1); > PUSH_DATA (push, 0); > } > diff --git a/src/nvc0_xv.c b/src/nvc0_xv.c > index d1d8f18..129c505 100644 > --- a/src/nvc0_xv.c > +++ b/src/nvc0_xv.c > @@ -247,15 +247,57 @@ nvc0_xv_image_put(ScrnInfoPtr pScrn, > nouveau_pushbuf_refn (push, refs, 3)) > return BadImplementation; > > + if (pNv->dev->chipset >= 0x110) { > + BEGIN_NVC0(push, NVC0_3D(CB_SIZE), 3); > + PUSH_DATA (push, 256); > + PUSH_DATA (push, (pNv->scratch->offset + PVP_DATA) >> 32); > + PUSH_DATA (push, (pNv-...
2016 Oct 27
11
[PATCH v2 0/7] Add Maxwell support
I believe I've addressed all the feedback from the first time around, and also made fixes necessary for GM20x based on testing results. I believe now it should actually work for all GM10x and GM20x. Further, GP10x should be very easy to add, but without someone to actually test I didn't want to claim support for it. Ilia Mirkin (7): exa: add GM10x acceleration support hwdefs: update