search for: nouveau_gem_object

Displaying 20 results from an estimated 129 matches for "nouveau_gem_object".

2020 Feb 06
5
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
...framebuffer *fb) > +nv50_wndw_ctxdma_new(struct nv50_wndw *wndw, struct drm_framebuffer *fb) > { > - struct nouveau_drm *drm = nouveau_drm(fb->base.dev); > + struct nouveau_drm *drm = nouveau_drm(fb->dev); > struct nv50_wndw_ctxdma *ctxdma; > - struct nouveau_bo *nvbo = nouveau_gem_object(fb->base.obj[0]); > + struct nouveau_bo *nvbo = nouveau_gem_object(fb->obj[0]); > const u8 kind = nvbo->kind; > const u32 handle = 0xfb000000 | kind; > struct { > @@ -236,16 +236,16 @@ nv50_wndw_atomic_check_acquire(struct nv50_wndw *wndw, bool modeset, >...
2020 Feb 06
2
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
...0_wndw *wndw, struct drm_framebuffer *fb) >>> ? { >>> -??? struct nouveau_drm *drm = nouveau_drm(fb->base.dev); >>> +??? struct nouveau_drm *drm = nouveau_drm(fb->dev); >>> ????? struct nv50_wndw_ctxdma *ctxdma; >>> -??? struct nouveau_bo *nvbo = nouveau_gem_object(fb->base.obj[0]); >>> +??? struct nouveau_bo *nvbo = nouveau_gem_object(fb->obj[0]); >>> ????? const u8??? kind = nvbo->kind; >>> ????? const u32 handle = 0xfb000000 | kind; >>> ????? struct { >>> @@ -236,16 +236,16 @@ nv50_wndw_atomic_check_...
2020 Feb 06
2
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
..., struct drm_framebuffer >>> *fb) >>> ? { >>> -??? struct nouveau_drm *drm = nouveau_drm(fb->base.dev); >>> +??? struct nouveau_drm *drm = nouveau_drm(fb->dev); >>> ????? struct nv50_wndw_ctxdma *ctxdma; >>> -??? struct nouveau_bo *nvbo = nouveau_gem_object(fb->base.obj[0]); >>> +??? struct nouveau_bo *nvbo = nouveau_gem_object(fb->obj[0]); >>> ????? const u8??? kind = nvbo->kind; >>> ????? const u32 handle = 0xfb000000 | kind; >>> ????? struct { >>> @@ -236,16 +236,16 @@ nv50_wndw_atomic_check_acq...
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
2020 Feb 10
2
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
...; >>>> { > >>>> - struct nouveau_drm *drm = nouveau_drm(fb->base.dev); > >>>> + struct nouveau_drm *drm = nouveau_drm(fb->dev); > >>>> struct nv50_wndw_ctxdma *ctxdma; > >>>> - struct nouveau_bo *nvbo = nouveau_gem_object(fb->base.obj[0]); > >>>> + struct nouveau_bo *nvbo = nouveau_gem_object(fb->obj[0]); > >>>> const u8 kind = nvbo->kind; > >>>> const u32 handle = 0xfb000000 | kind; > >>>> struct { > >>>>...
2020 Feb 10
2
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
...gt;>>>>> - struct nouveau_drm *drm = nouveau_drm(fb->base.dev); >>>>>>> + struct nouveau_drm *drm = nouveau_drm(fb->dev); >>>>>>> struct nv50_wndw_ctxdma *ctxdma; >>>>>>> - struct nouveau_bo *nvbo = nouveau_gem_object(fb->base.obj[0]); >>>>>>> + struct nouveau_bo *nvbo = nouveau_gem_object(fb->obj[0]); >>>>>>> const u8 kind = nvbo->kind; >>>>>>> const u32 handle = 0xfb000000 | kind; >>>>>>>...
2020 Feb 06
0
[PATCH 3/4] drm/nouveau: Remove field nvbo from struct nouveau_framebuffer
...nv_crtc_swap_fbs(struct drm_crtc *crtc, struct drm_framebuffer *old_fb) { struct nv04_display *disp = nv04_display(crtc->dev); - struct nouveau_framebuffer *nvfb = nouveau_framebuffer(crtc->primary->fb); + struct drm_framebuffer *fb = crtc->primary->fb; + struct nouveau_bo *nvbo = nouveau_gem_object(fb->obj[0]); struct nouveau_crtc *nv_crtc = nouveau_crtc(crtc); int ret; - ret = nouveau_bo_pin(nvfb->nvbo, TTM_PL_FLAG_VRAM, false); + ret = nouveau_bo_pin(nvbo, TTM_PL_FLAG_VRAM, false); if (ret == 0) { if (disp->image[nv_crtc->index]) nouveau_bo_unpin(disp->image[nv...
2020 Feb 06
0
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
...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 nouveau_drm *drm = nouveau_drm(fb->dev); struct nv50_wndw_ctxdma *ctxdma; - struct nouveau_bo *nvbo = nouveau_gem_object(fb->base.obj[0]); + struct nouveau_bo *nvbo = nouveau_gem_object(fb->obj[0]); const u8 kind = nvbo->kind; const u32 handle = 0xfb000000 | kind; struct { @@ -236,16 +236,16 @@ nv50_wndw_atomic_check_acquire(struct nv50_wndw *wndw, bool modeset, struct nv50_wndw_atom *asy...
2020 Feb 06
0
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
..._ctxdma_new(struct nv50_wndw *wndw, struct drm_framebuffer *fb) >> ? { >> -??? struct nouveau_drm *drm = nouveau_drm(fb->base.dev); >> +??? struct nouveau_drm *drm = nouveau_drm(fb->dev); >> ????? struct nv50_wndw_ctxdma *ctxdma; >> -??? struct nouveau_bo *nvbo = nouveau_gem_object(fb->base.obj[0]); >> +??? struct nouveau_bo *nvbo = nouveau_gem_object(fb->obj[0]); >> ????? const u8??? kind = nvbo->kind; >> ????? const u32 handle = 0xfb000000 | kind; >> ????? struct { >> @@ -236,16 +236,16 @@ nv50_wndw_atomic_check_acquire(struct nv50_wnd...
2020 Feb 06
0
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
..._ctxdma_new(struct nv50_wndw *wndw, struct drm_framebuffer *fb) >> ? { >> -??? struct nouveau_drm *drm = nouveau_drm(fb->base.dev); >> +??? struct nouveau_drm *drm = nouveau_drm(fb->dev); >> ????? struct nv50_wndw_ctxdma *ctxdma; >> -??? struct nouveau_bo *nvbo = nouveau_gem_object(fb->base.obj[0]); >> +??? struct nouveau_bo *nvbo = nouveau_gem_object(fb->obj[0]); >> ????? const u8??? kind = nvbo->kind; >> ????? const u32 handle = 0xfb000000 | kind; >> ????? struct { >> @@ -236,16 +236,16 @@ nv50_wndw_atomic_check_acquire(struct nv50_wnd...
2020 Feb 07
0
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
...>>>> *fb) >>>> ?? { >>>> -??? struct nouveau_drm *drm = nouveau_drm(fb->base.dev); >>>> +??? struct nouveau_drm *drm = nouveau_drm(fb->dev); >>>> ?????? struct nv50_wndw_ctxdma *ctxdma; >>>> -??? struct nouveau_bo *nvbo = nouveau_gem_object(fb->base.obj[0]); >>>> +??? struct nouveau_bo *nvbo = nouveau_gem_object(fb->obj[0]); >>>> ?????? const u8??? kind = nvbo->kind; >>>> ?????? const u32 handle = 0xfb000000 | kind; >>>> ?????? struct { >>>> @@ -236,16 +236,16 @@ nv5...
2020 Feb 06
0
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
...>>> *fb) > >>> { > >>> - struct nouveau_drm *drm = nouveau_drm(fb->base.dev); > >>> + struct nouveau_drm *drm = nouveau_drm(fb->dev); > >>> struct nv50_wndw_ctxdma *ctxdma; > >>> - struct nouveau_bo *nvbo = nouveau_gem_object(fb->base.obj[0]); > >>> + struct nouveau_bo *nvbo = nouveau_gem_object(fb->obj[0]); > >>> const u8 kind = nvbo->kind; > >>> const u32 handle = 0xfb000000 | kind; > >>> struct { > >>> @@ -236,16 +236,16 @@ n...
2020 Feb 10
2
[PATCH] drm/nouveau: Fix NULL ptr access in nv50_wndw_prepare_fb()
...au/dispnv50/wndw.c @@ -490,7 +490,7 @@ nv50_wndw_prepare_fb(struct drm_plane *plane, struct drm_plane_state *state) 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]...
2020 Feb 10
0
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
...t;> { >>>>>> - struct nouveau_drm *drm = nouveau_drm(fb->base.dev); >>>>>> + struct nouveau_drm *drm = nouveau_drm(fb->dev); >>>>>> struct nv50_wndw_ctxdma *ctxdma; >>>>>> - struct nouveau_bo *nvbo = nouveau_gem_object(fb->base.obj[0]); >>>>>> + struct nouveau_bo *nvbo = nouveau_gem_object(fb->obj[0]); >>>>>> const u8 kind = nvbo->kind; >>>>>> const u32 handle = 0xfb000000 | kind; >>>>>> struct { >>&g...
2020 Feb 10
0
[PATCH 4/4] drm/nouveau: Remove struct nouveau_framebuffer
...>> - struct nouveau_drm *drm = nouveau_drm(fb->base.dev); > >>>>>>> + struct nouveau_drm *drm = nouveau_drm(fb->dev); > >>>>>>> struct nv50_wndw_ctxdma *ctxdma; > >>>>>>> - struct nouveau_bo *nvbo = nouveau_gem_object(fb->base.obj[0]); > >>>>>>> + struct nouveau_bo *nvbo = nouveau_gem_object(fb->obj[0]); > >>>>>>> const u8 kind = nvbo->kind; > >>>>>>> const u32 handle = 0xfb000000 | kind; > >>>>&...
2018 Jan 11
5
[PATCH 1/5] drm/prime: Remove duplicate forward declaration
From: Thierry Reding <treding at nvidia.com> struct device is forward-declared twice. Remove the second instance. Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk> Signed-off-by: Thierry Reding <treding at nvidia.com> --- include/drm/drm_prime.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/include/drm/drm_prime.h b/include/drm/drm_prime.h index
2018 Jun 18
0
[PATCH 3/4] drm/nouveau: Replace drm_gem_object_unreference_unlocked with put function
...reate(file_priv, &bo->gem, &args->handle); - drm_gem_object_unreference_unlocked(&bo->gem); + drm_gem_object_put_unlocked(&bo->gem); return ret; } @@ -954,7 +954,7 @@ nouveau_display_dumb_map_offset(struct drm_file *file_priv, if (gem) { struct nouveau_bo *bo = nouveau_gem_object(gem); *poffset = drm_vma_node_offset_addr(&bo->bo.vma_node); - drm_gem_object_unreference_unlocked(gem); + drm_gem_object_put_unlocked(gem); return 0; } diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.c b/drivers/gpu/drm/nouveau/nouveau_gem.c index 300daee74209..df73bec354e8 100...
2017 Aug 03
0
[PATCH 17/29] drm/nouveau: switch to drm_*{get, put} helpers
...reate(file_priv, &bo->gem, &args->handle); - drm_gem_object_unreference_unlocked(&bo->gem); + drm_gem_object_put_unlocked(&bo->gem); return ret; } @@ -962,7 +962,7 @@ nouveau_display_dumb_map_offset(struct drm_file *file_priv, if (gem) { struct nouveau_bo *bo = nouveau_gem_object(gem); *poffset = drm_vma_node_offset_addr(&bo->bo.vma_node); - drm_gem_object_unreference_unlocked(gem); + drm_gem_object_put_unlocked(gem); return 0; } diff --git a/drivers/gpu/drm/nouveau/nouveau_fbcon.c b/drivers/gpu/drm/nouveau/nouveau_fbcon.c index 2665a07..6c9e1ec 100644 --...
2017 Aug 03
0
[PATCH 17/29] drm/nouveau: switch to drm_*{get, put} helpers
...rgs->handle); > - drm_gem_object_unreference_unlocked(&bo->gem); > + drm_gem_object_put_unlocked(&bo->gem); > return ret; > } > > @@ -962,7 +962,7 @@ nouveau_display_dumb_map_offset(struct drm_file *file_priv, > if (gem) { > struct nouveau_bo *bo = nouveau_gem_object(gem); > *poffset = drm_vma_node_offset_addr(&bo->bo.vma_node); > - drm_gem_object_unreference_unlocked(gem); > + drm_gem_object_put_unlocked(gem); > return 0; > } > > diff --git a/drivers/gpu/drm/nouveau/nouveau_fbcon.c b/drivers/gpu/drm/nouveau/nouveau_fbcon...
2013 Aug 22
6
[PATCH] drm/nouveau: avoid null deref on bad arguments to nouveau_vma_getmap
The code expects non-VRAM mem nodes to have a pages list. If that's not set, it will do a null deref down the line. Warn on that condition and return an error. See https://bugs.freedesktop.org/show_bug.cgi?id=64774 Reported-by: Pasi K?rkk?inen <pasik at iki.fi> Tested-by: Pasi K?rkk?inen <pasik at iki.fi> Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu> Cc: <stable