search for: nv04_fifo

Displaying 20 results from an estimated 34 matches for "nv04_fifo".

2010 Feb 07
3
[PATCH] drm/nouveau: don't hold spin lock while calling kzalloc with GFP_KERNEL
...aarten Maathuis <madman2003 at gmail.com> --- drivers/gpu/drm/nouveau/nouveau_channel.c | 9 ++------- drivers/gpu/drm/nouveau/nouveau_drv.h | 4 +++- drivers/gpu/drm/nouveau/nouveau_irq.c | 4 ++-- drivers/gpu/drm/nouveau/nouveau_state.c | 2 +- drivers/gpu/drm/nouveau/nv04_fifo.c | 5 +++++ drivers/gpu/drm/nouveau/nv40_fifo.c | 5 +++++ drivers/gpu/drm/nouveau/nv50_fifo.c | 4 ++++ 7 files changed, 22 insertions(+), 11 deletions(-) diff --git a/drivers/gpu/drm/nouveau/nouveau_channel.c b/drivers/gpu/drm/nouveau/nouveau_channel.c index d25ed61.....
2015 Jan 02
2
[PATCH] nv50: enable texture compression
...c @@ -391,7 +391,7 @@ nv50_screen_fence_update(struct pipe_screen *pscreen) } static void -nv50_screen_init_hwctx(struct nv50_screen *screen) +nv50_screen_init_hwctx(struct nouveau_device *dev, struct nv50_screen *screen) { struct nouveau_pushbuf *push = screen->base.pushbuf; struct nv04_fifo *fifo; @@ -449,6 +449,13 @@ nv50_screen_init_hwctx(struct nv50_screen *screen) PUSH_DATA (push, 0x18); } + BEGIN_NV04(push, NV50_3D(ZETA_COMP_ENABLE), 1); + PUSH_DATA(push, dev->drm_version >= 0x01000101); + + BEGIN_NV04(push, NV50_3D(RT_COMP_ENABLE(0)), 8); + for (i = 0;...
2015 Dec 16
0
[libdrm v3 13/14] nouveau: clean up nouveau.h, noting deprecated members/functions
...t fd; @@ -40,81 +59,11 @@ nouveau_drm(struct nouveau_object *obj) int nouveau_drm_new(int fd, struct nouveau_drm **); void nouveau_drm_del(struct nouveau_drm **); -struct nouveau_fifo { - struct nouveau_object *object; - uint32_t channel; - uint32_t pushbuf; - uint64_t unused1[3]; -}; - -struct nv04_fifo { - struct nouveau_fifo base; - uint32_t vram; - uint32_t gart; - uint32_t notify; -}; - -struct nvc0_fifo { - struct nouveau_fifo base; - uint32_t notify; -}; - -#define NVE0_FIFO_ENGINE_GR 0x00000001 -#define NVE0_FIFO_ENGINE_VP 0x00000002 -#define NVE0_FIFO_ENGINE_PPP 0x00000004 -#define NVE0_...
2014 Sep 04
0
[PATCH] copy: don't bother trying to create copy on pre-nva3
...++ b/src/nouveau_copy.c @@ -61,6 +61,10 @@ nouveau_copy_init(ScreenPtr pScreen) switch (pNv->Architecture) { case NV_TESLA: + if (pNv->dev->chipset < 0xa3 || + pNv->dev->chipset == 0xaa || + pNv->dev->chipset == 0xac) + return FALSE; data = &(struct nv04_fifo) { .vram = NvDmaFB, .gart = NvDmaTT, -- 1.8.5.5
2015 Jan 02
0
[PATCH] nv50: enable texture compression
...e_update(struct pipe_screen *pscreen) > } > > static void > -nv50_screen_init_hwctx(struct nv50_screen *screen) > +nv50_screen_init_hwctx(struct nouveau_device *dev, struct nv50_screen *screen) > { > struct nouveau_pushbuf *push = screen->base.pushbuf; > struct nv04_fifo *fifo; > @@ -449,6 +449,13 @@ nv50_screen_init_hwctx(struct nv50_screen *screen) > PUSH_DATA (push, 0x18); > } > > + BEGIN_NV04(push, NV50_3D(ZETA_COMP_ENABLE), 1); > + PUSH_DATA(push, dev->drm_version >= 0x01000101); screen->base.device And then no need...
2015 Dec 07
2
[mesa v2 5/9] nouveau: fix screen creation failure paths
...hile(0) > > struct nouveau_screen * > nv30_screen_create(struct nouveau_device *dev) > { > - struct nv30_screen *screen = CALLOC_STRUCT(nv30_screen); > + struct nv30_screen *screen; > struct pipe_screen *pscreen; > struct nouveau_pushbuf *push; > struct nv04_fifo *fifo; > unsigned oclass = 0; > int ret, i; > > - if (!screen) > - return NULL; > - > switch (dev->chipset & 0xf0) { > case 0x30: > if (RANKINE_0397_CHIPSET & (1 << (dev->chipset & 0x0f))) > @@ -458,10 +455,16 @@ nv...
2015 Dec 07
1
[mesa v2 5/9] nouveau: fix screen creation failure paths
...nv30_screen_create(struct nouveau_device *dev) >>> { >>> - struct nv30_screen *screen = CALLOC_STRUCT(nv30_screen); >>> + struct nv30_screen *screen; >>> struct pipe_screen *pscreen; >>> struct nouveau_pushbuf *push; >>> struct nv04_fifo *fifo; >>> unsigned oclass = 0; >>> int ret, i; >>> >>> - if (!screen) >>> - return NULL; >>> - >>> switch (dev->chipset & 0xf0) { >>> case 0x30: >>> if (RANKINE_0397_CHIPSET &...
2015 Nov 27
0
[mesa v2 5/9] nouveau: fix screen creation failure paths
...t;base; \ } while(0) struct nouveau_screen * nv30_screen_create(struct nouveau_device *dev) { - struct nv30_screen *screen = CALLOC_STRUCT(nv30_screen); + struct nv30_screen *screen; struct pipe_screen *pscreen; struct nouveau_pushbuf *push; struct nv04_fifo *fifo; unsigned oclass = 0; int ret, i; - if (!screen) - return NULL; - switch (dev->chipset & 0xf0) { case 0x30: if (RANKINE_0397_CHIPSET & (1 << (dev->chipset & 0x0f))) @@ -458,10 +455,16 @@ nv30_screen_create(struct nouveau_device *dev)...
2015 Dec 07
0
[mesa v2 5/9] nouveau: fix screen creation failure paths
...uveau_screen * >> nv30_screen_create(struct nouveau_device *dev) >> { >> - struct nv30_screen *screen = CALLOC_STRUCT(nv30_screen); >> + struct nv30_screen *screen; >> struct pipe_screen *pscreen; >> struct nouveau_pushbuf *push; >> struct nv04_fifo *fifo; >> unsigned oclass = 0; >> int ret, i; >> >> - if (!screen) >> - return NULL; >> - >> switch (dev->chipset & 0xf0) { >> case 0x30: >> if (RANKINE_0397_CHIPSET & (1 << (dev->chipset & 0...
2010 Mar 01
0
[PATCH 2/2 V2] drm/nv50: Improve PGRAPH interrupt handling.
...nouveau_drv.o nouveau_state.o nouveau_channel.o nouveau_mem.o \ nouveau_dp.o nouveau_grctx.o \ nv04_timer.o \ nv04_mc.o nv40_mc.o nv50_mc.o \ - nv04_fb.o nv10_fb.o nv40_fb.o \ + nv04_fb.o nv10_fb.o nv40_fb.o nv50_fb.o \ nv04_fifo.o nv10_fifo.o nv40_fifo.o nv50_fifo.o \ nv04_graph.o nv10_graph.o nv20_graph.o \ nv40_graph.o nv50_graph.o \ diff --git a/drivers/gpu/drm/nouveau/nouveau_drv.h b/drivers/gpu/drm/nouveau/nouveau_drv.h index 2f8ce42..ad2d75d 100644 --- a/drivers/gpu/drm/nouveau/nouveau_drv...
2010 Feb 28
1
[PATCH 1/2] drm/nv50: Make ctxprog wait until interrupt handler is done.
This will fix races between generated ctxprogs and interrupt handler. Signed-off-by: Marcin Ko?cielnicki <koriakin at 0x04.net> --- drivers/gpu/drm/nouveau/nv50_grctx.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/drivers/gpu/drm/nouveau/nv50_grctx.c b/drivers/gpu/drm/nouveau/nv50_grctx.c index d105fcd..9f909ab 100644 ---
2015 Nov 26
0
[libdrm 08/13] nouveau: make use of nouveau_drm::fd instead of nouveau_device::fd
....c b/nouveau/abi16.c index 34e9fb1..5ba2690 100644 --- a/nouveau/abi16.c +++ b/nouveau/abi16.c @@ -37,7 +37,7 @@ static int abi16_chan_nv04(struct nouveau_object *obj) { - struct nouveau_device *dev = (struct nouveau_device *)obj->parent; + struct nouveau_drm *drm = nouveau_drm(obj); struct nv04_fifo *nv04 = obj->data; struct drm_nouveau_channel_alloc req = { .fb_ctxdma_handle = nv04->vram, @@ -45,7 +45,7 @@ abi16_chan_nv04(struct nouveau_object *obj) }; int ret; - ret = drmCommandWriteRead(dev->fd, DRM_NOUVEAU_CHANNEL_ALLOC, + ret = drmCommandWriteRead(drm->fd, DRM_NOUVE...
2015 Nov 27
13
[mesa v2 1/9] nouveau: bump required libdrm version to 2.4.66
From: Ben Skeggs <bskeggs at redhat.com> Signed-off-by: Ben Skeggs <bskeggs at redhat.com> --- configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 4016871..c02ee61 100644 --- a/configure.ac +++ b/configure.ac @@ -73,7 +73,7 @@ LIBDRM_RADEON_REQUIRED=2.4.56 LIBDRM_AMDGPU_REQUIRED=2.4.63 LIBDRM_INTEL_REQUIRED=2.4.61
2009 Dec 11
5
[PATCH 1/3] drm/nouveau: Pre-G80 tiling support.
...t size, + uint32_t pitch); /* nv40_fb.c */ extern int nv40_fb_init(struct drm_device *); extern void nv40_fb_takedown(struct drm_device *); +extern void nv40_fb_set_region_tiling(struct drm_device *dev, int i, + uint32_t addr, uint32_t size, + uint32_t pitch); /* nv04_fifo.c */ extern int nv04_fifo_init(struct drm_device *); @@ -938,6 +952,9 @@ extern void nv10_graph_destroy_context(struct nouveau_channel *); extern int nv10_graph_load_context(struct nouveau_channel *); extern int nv10_graph_unload_context(struct drm_device *); extern void nv10_graph_context_s...
2014 Feb 05
2
[PATCH] nouveau/video: make sure that firmware is present when checking caps
Apparently some players are ill-prepared for us claiming that a decoder exists only to have creating it fail, and express this poor preparation with crashes (e.g. flash). Check that firmware is there to increase the chances of there being a high correlation between reported capabilities and ability to create a decoder. Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu> Cc: 10.0 10.1
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 ++++++++++++++
2014 Jun 17
0
[PATCH try 2 2/2] gallium/nouveau: move pushbuf and fences to context
...nouveau_object_del(&screen->ntfy); nouveau_object_del(&screen->sifm); @@ -361,10 +319,9 @@ nv30_screen_create(struct nouveau_device *dev) { struct nv30_screen *screen = CALLOC_STRUCT(nv30_screen); struct pipe_screen *pscreen; - struct nouveau_pushbuf *push; struct nv04_fifo *fifo; unsigned oclass = 0; - int ret, i; + int ret; if (!screen) return NULL; @@ -411,11 +368,6 @@ nv30_screen_create(struct nouveau_device *dev) nv30_resource_screen_init(pscreen); nouveau_screen_init_vdec(&screen->base); - screen->base.fence.screen = &a...
2013 Jun 29
0
[PATCH] nv50: H.264/MPEG2 decoding support via VP2, available on NV84-NV96, NVA0
...text *)context; > + struct nouveau_screen *screen = &nv50->screen->base; > + struct nv84_decoder *dec; > + struct nouveau_pushbuf *bsp_push, *vp_push; > + struct nv50_surface surf; > + struct nv50_miptree mip; > + 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[] =...
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
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 ++++++++++++++