search for: ctxdma

Displaying 20 results from an estimated 55 matches for "ctxdma".

Did you mean: ctx_dma
2009 Dec 19
1
[PATCH] drm/nouveau: always do buffer object moves on bo->channel
...40 insertions(+), 57 deletions(-) diff --git a/drivers/gpu/drm/nouveau/nouveau_bo.c b/drivers/gpu/drm/nouveau/nouveau_bo.c index e18d7fc..8ee5583 100644 --- a/drivers/gpu/drm/nouveau/nouveau_bo.c +++ b/drivers/gpu/drm/nouveau/nouveau_bo.c @@ -471,15 +471,9 @@ static inline uint32_t nouveau_bo_mem_ctxdma(struct nouveau_bo *nvbo, struct nouveau_channel *chan, struct ttm_mem_reg *mem) { - if (chan == nouveau_bdev(nvbo->bo.bdev)->channel) { - if (mem->mem_type == TTM_PL_TT) - return NvDmaGART; - return NvDmaVRAM; - } - if (mem->mem_type == TTM_PL_TT) - return chan->gart...
2018 Jun 17
3
no mouse cursor on nv50
...b290fc7b36e8fec2a370b946d7117c1899b6c1 # bad: [a97c530eb968bad8d945d4f64fb550fa37a9d362] drm/nouveau/kms/nv50-: modify overlay allocation so the code can be split git bisect bad a97c530eb968bad8d945d4f64fb550fa37a9d362 # bad: [5bca1621c07c3ad37b5a4943450a892e18984df0] drm/nouveau/kms/nv50-: move fb ctxdma tracking into windows git bisect bad 5bca1621c07c3ad37b5a4943450a892e18984df0 # first bad commit: [5bca1621c07c3ad37b5a4943450a892e18984df0] drm/nouveau/kms/nv50-: move fb ctxdma tracking into windows Alas, the bad commit can't be easily reverted as there's a lot of further work on the fil...
2020 Feb 06
0
[PATCH 3/4] drm/nouveau: Remove field nvbo from struct nouveau_framebuffer
...dispnv50/wndw.c index 890315291b01..ba1399965a1c 100644 --- a/drivers/gpu/drm/nouveau/dispnv50/wndw.c +++ b/drivers/gpu/drm/nouveau/dispnv50/wndw.c @@ -29,6 +29,7 @@ #include <drm/drm_fourcc.h> #include "nouveau_bo.h" +#include "nouveau_gem.h" static void nv50_wndw_ctxdma_del(struct nv50_wndw_ctxdma *ctxdma) @@ -43,7 +44,8 @@ nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct nouveau_framebuffer *fb) { struct nouveau_drm *drm = nouveau_drm(fb->base.dev); struct nv50_wndw_ctxdma *ctxdma; - const u8 kind = fb->nvbo->kind; + struct nouveau_bo *nvbo =...
2020 Feb 06
5
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
...eletions(-) > > diff --git a/drivers/gpu/drm/nouveau/dispnv50/wndw.c b/drivers/gpu/drm/nouveau/dispnv50/wndw.c > index ba1399965a1c..4a67a656e007 100644 > --- a/drivers/gpu/drm/nouveau/dispnv50/wndw.c > +++ b/drivers/gpu/drm/nouveau/dispnv50/wndw.c > @@ -40,11 +40,11 @@ nv50_wndw_ctxdma_del(struct nv50_wndw_ctxdma *ctxdma) > } > > static struct nv50_wndw_ctxdma * > -nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct nouveau_framebuffer *fb) > +nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct drm_framebuffer *fb) > { > - struct nouveau_drm *drm = n...
2020 Feb 06
5
[PATCH 0/4] drm/nouveau: Remove struct nouveau_framebuffer
All fields in struct nouveau_framebuffer appear to be obsolete. The data structure can be replaced by struct drm_framebuffer entirely. Patch 1 removes several unused fields from struct nouveau_framebuffer. Patch 2 moves the field vma to struct nouveau_fbdev. The information in vma is only relevant for fbdev emulation, and as such he field is only used there. Patch 3 removes nvbo from struct
2012 Jul 27
0
[PATCH 3/3] nouveau: add vblank methods on newer cards
...ouveau_private *dev_priv = dev->dev_private; @@ -655,18 +655,29 @@ nv50_display_vblank_crtc_handler(struct drm_device *dev, int crtc) continue; spin_lock(&psw->peephole_lock); - nv_wr32(dev, 0x001704, pch->vblank.channel); - nv_wr32(dev, 0x001710, 0x80000000 | pch->vblank.ctxdma); - if (dev_priv->chipset == 0x50) { - nv_wr32(dev, 0x001570, pch->vblank.offset); - nv_wr32(dev, 0x001574, pch->vblank.value); + if (dev_priv->chipset < 0xc0) { + nv_wr32(dev, 0x001704, pch->vblank.channel); + nv_wr32(dev, 0x001710, 0x80000000 | pch->vblank.ctxdma);...
2020 Feb 06
2
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
...pu/drm/nouveau/dispnv50/wndw.c >>> b/drivers/gpu/drm/nouveau/dispnv50/wndw.c >>> index ba1399965a1c..4a67a656e007 100644 >>> --- a/drivers/gpu/drm/nouveau/dispnv50/wndw.c >>> +++ b/drivers/gpu/drm/nouveau/dispnv50/wndw.c >>> @@ -40,11 +40,11 @@ nv50_wndw_ctxdma_del(struct nv50_wndw_ctxdma *ctxdma) >>> ? } >>> ? ? static struct nv50_wndw_ctxdma * >>> -nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct >>> nouveau_framebuffer *fb) >>> +nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct drm_framebuffer *fb) &g...
2020 Feb 06
2
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
...u/drm/nouveau/dispnv50/wndw.c >>> b/drivers/gpu/drm/nouveau/dispnv50/wndw.c >>> index ba1399965a1c..4a67a656e007 100644 >>> --- a/drivers/gpu/drm/nouveau/dispnv50/wndw.c >>> +++ b/drivers/gpu/drm/nouveau/dispnv50/wndw.c >>> @@ -40,11 +40,11 @@ nv50_wndw_ctxdma_del(struct nv50_wndw_ctxdma >>> *ctxdma) >>> ? } >>> ? static struct nv50_wndw_ctxdma * >>> -nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct >>> nouveau_framebuffer *fb) >>> +nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct drm_framebuf...
2010 Apr 16
22
[Bug 27706] New: Blank screen and "Error referencing VRAM ctxdma: -12" on NV44A with ubuntu lucid beta 2 (worked in alpha 3)
https://bugs.freedesktop.org/show_bug.cgi?id=27706 Summary: Blank screen and "Error referencing VRAM ctxdma: -12" on NV44A with ubuntu lucid beta 2 (worked in alpha 3) Product: xorg Version: 7.5 Platform: x86 (IA32) OS/Version: Linux (All) Status: NEW Severity: critical Priority: medium Component: Dr...
2020 Feb 10
2
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
...gt;> b/drivers/gpu/drm/nouveau/dispnv50/wndw.c > >>>> index ba1399965a1c..4a67a656e007 100644 > >>>> --- a/drivers/gpu/drm/nouveau/dispnv50/wndw.c > >>>> +++ b/drivers/gpu/drm/nouveau/dispnv50/wndw.c > >>>> @@ -40,11 +40,11 @@ nv50_wndw_ctxdma_del(struct nv50_wndw_ctxdma > >>>> *ctxdma) > >>>> } > >>>> static struct nv50_wndw_ctxdma * > >>>> -nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct > >>>> nouveau_framebuffer *fb) > >>>> +nv50_wnd...
2020 Feb 10
2
[PATCH] drm/nouveau: Fix NULL ptr access in nv50_wndw_prepare_fb()
...te) struct nouveau_drm *drm = nouveau_drm(plane->dev); struct nv50_wndw *wndw = nv50_wndw(plane); struct nv50_wndw_atom *asyw = nv50_wndw_atom(state); - struct nouveau_bo *nvbo = nouveau_gem_object(fb->obj[0]); + struct nouveau_bo *nvbo; struct nv50_head_atom *asyh; struct nv50_wndw_ctxdma *ctxdma; int ret; @@ -499,6 +499,7 @@ nv50_wndw_prepare_fb(struct drm_plane *plane, struct drm_plane_state *state) if (!asyw->state.fb) return 0; + nvbo = nouveau_gem_object(fb->obj[0]); ret = nouveau_bo_pin(nvbo, TTM_PL_FLAG_VRAM, true); if (ret) return ret; -- 2.17.1
2020 Feb 10
2
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
...uveau/dispnv50/wndw.c >>>>>>> index ba1399965a1c..4a67a656e007 100644 >>>>>>> --- a/drivers/gpu/drm/nouveau/dispnv50/wndw.c >>>>>>> +++ b/drivers/gpu/drm/nouveau/dispnv50/wndw.c >>>>>>> @@ -40,11 +40,11 @@ nv50_wndw_ctxdma_del(struct nv50_wndw_ctxdma >>>>>>> *ctxdma) >>>>>>> } >>>>>>> static struct nv50_wndw_ctxdma * >>>>>>> -nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct >>>>>>> nouveau_framebuffer...
2020 Feb 06
0
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
...hanged, 28 insertions(+), 38 deletions(-) diff --git a/drivers/gpu/drm/nouveau/dispnv50/wndw.c b/drivers/gpu/drm/nouveau/dispnv50/wndw.c index ba1399965a1c..4a67a656e007 100644 --- a/drivers/gpu/drm/nouveau/dispnv50/wndw.c +++ b/drivers/gpu/drm/nouveau/dispnv50/wndw.c @@ -40,11 +40,11 @@ nv50_wndw_ctxdma_del(struct nv50_wndw_ctxdma *ctxdma) } static struct nv50_wndw_ctxdma * -nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct nouveau_framebuffer *fb) +nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct drm_framebuffer *fb) { - struct nouveau_drm *drm = nouveau_drm(fb->base.dev); + struct n...
2010 Jan 28
1
[PATCH] drm/nouveau: enlarge GART aperture
...ouveau/nouveau_sgdma.c +++ b/drivers/gpu/drm/nouveau/nouveau_sgdma.c @@ -227,7 +227,7 @@ nouveau_sgdma_init(struct drm_device *dev) int i, ret; if (dev_priv->card_type < NV_50) { - aper_size = (64 * 1024 * 1024); + aper_size = (512 * 1024 * 1024); obj_size = (aper_size >> NV_CTXDMA_PAGE_SHIFT) * 4; obj_size += 8; /* ctxdma header */ } else { -- 1.6.6.1.476.g01ddb
2010 Feb 09
0
[PATCH] drm/nouveau: enlarge GART aperture (v2)
...u_sgdma.c @@ -227,11 +227,21 @@ nouveau_sgdma_init(struct drm_device *dev) int i, ret; if (dev_priv->card_type < NV_50) { - aper_size = (64 * 1024 * 1024); + /* TODO: can we safely raise this to 1GB, 2GB or 4GB? */ + unsigned limit = 512 * 1024; + + /* use up half ramin for the GART ctxdma object */ + aper_size = dev_priv->ramin_rsvd_vram >> 1; + if(aper_size > limit) + aper_size = limit; + aper_size <<= 10; /* each 4KB page needs a 4 byte entry */ + obj_size = (aper_size >> NV_CTXDMA_PAGE_SHIFT) * 4; obj_size += 8; /* ctxdma header */ } else { -...
2020 Feb 06
0
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
...f --git a/drivers/gpu/drm/nouveau/dispnv50/wndw.c >> b/drivers/gpu/drm/nouveau/dispnv50/wndw.c >> index ba1399965a1c..4a67a656e007 100644 >> --- a/drivers/gpu/drm/nouveau/dispnv50/wndw.c >> +++ b/drivers/gpu/drm/nouveau/dispnv50/wndw.c >> @@ -40,11 +40,11 @@ nv50_wndw_ctxdma_del(struct nv50_wndw_ctxdma *ctxdma) >> ? } >> ? static struct nv50_wndw_ctxdma * >> -nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct >> nouveau_framebuffer *fb) >> +nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct drm_framebuffer *fb) >> ? { >> -??...
2020 Feb 10
3
[PATCH v5 0/3] drm/nouveau: Support NVIDIA format modifiers
This series modifies the NV5x+ nouveau display backends to advertise appropriate format modifiers on their display planes in atomic mode setting blobs. Corresponding modifications to Mesa/userspace are available on the Mesa-dev gitlab merge request 3724: https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3724 I've tested this on Tesla, Kepler, Pascal, and Turing-class hardware using
2020 Feb 07
3
[PATCH v4 0/3] drm/nouveau: Support NVIDIA format modifiers
This series modifies the NV5x+ nouveau display backends to advertise appropriate format modifiers on their display planes in atomic mode setting blobs. Corresponding modifications to Mesa/userspace are available on the Mesa-dev gitlab merge request 3724: https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3724 I've tested this on Tesla, Kepler, Pascal, and Turing-class hardware using
2018 Jun 18
0
no mouse cursor on nv50
...2a370b946d7117c1899b6c1 > # bad: [a97c530eb968bad8d945d4f64fb550fa37a9d362] drm/nouveau/kms/nv50-: modify overlay allocation so the code can be split > git bisect bad a97c530eb968bad8d945d4f64fb550fa37a9d362 > # bad: [5bca1621c07c3ad37b5a4943450a892e18984df0] drm/nouveau/kms/nv50-: move fb ctxdma tracking into windows > git bisect bad 5bca1621c07c3ad37b5a4943450a892e18984df0 > # first bad commit: [5bca1621c07c3ad37b5a4943450a892e18984df0] drm/nouveau/kms/nv50-: move fb ctxdma tracking into windows > > Alas, the bad commit can't be easily reverted as there's a lot of furt...
2020 Feb 06
0
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
...ff --git a/drivers/gpu/drm/nouveau/dispnv50/wndw.c >> b/drivers/gpu/drm/nouveau/dispnv50/wndw.c >> index ba1399965a1c..4a67a656e007 100644 >> --- a/drivers/gpu/drm/nouveau/dispnv50/wndw.c >> +++ b/drivers/gpu/drm/nouveau/dispnv50/wndw.c >> @@ -40,11 +40,11 @@ nv50_wndw_ctxdma_del(struct nv50_wndw_ctxdma *ctxdma) >> ? } >> ? ? static struct nv50_wndw_ctxdma * >> -nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct >> nouveau_framebuffer *fb) >> +nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct drm_framebuffer *fb) >> ? { >> -?...