search for: drm_framebuffer_unreference

Displaying 15 results from an estimated 15 matches for "drm_framebuffer_unreference".

2018 Nov 18
0
[PATCH 8/9] drm: remove no longer needed drm-get-put coccinelle script
...ression object; > -@@ > - > -( > -- drm_connector_reference(object) > -+ drm_connector_get(object) > -| > -- drm_connector_unreference(object) > -+ drm_connector_put(object) > -| > -- drm_framebuffer_reference(object) > -+ drm_framebuffer_get(object) > -| > -- drm_framebuffer_unreference(object) > -+ drm_framebuffer_put(object) > -| > -- drm_gem_object_reference(object) > -+ drm_gem_object_get(object) > -| > -- drm_gem_object_unreference(object) > -+ drm_gem_object_put(object) > -| > -- __drm_gem_object_unreference(object) > -+ __drm_gem_object_put(obj...
2012 Dec 12
43
[PATCH 00/37] [RFC] revamped modeset locking
Hi all, First thing first: It works, I now no longer have a few dropped frames every 10s on my testbox here with the pageflip i-g-t tests. Random notes: - New design has per-crtc locks to protect the crtc input-side (pageflip, cursor) for r/w and the output state of the crtc (mode, dpms) as read-only. It also required completely revamped fb lifecycle management, those are now refcounted
2013 Sep 17
10
RESEND [Xen-unstable][Qemu-xen] HVM Guest reading of Expansion ROM from passthroughed PCI device returns data from emulated VGA rom
*RESEND* due to exceeding the mailinglists limit for attachment size. Hi, I''m trying to get secondary vga-passthrough on a HVM guest to work with a AMD HD6570 and the native kernel radeon driver and kernel modesetting. So the guest still gets the emulated stdvga or cirrus device(used in my case here) as primary/boot vga adapter. - When i don''t passthrough the radeon card, the
2017 Aug 03
2
[PATCH 00/29] DRM API conversions
...uot; } do_replace drm_mode_object_reference drm_mode_object_get do_replace drm_mode_object_unreference drm_mode_object_put do_replace drm_connector_reference drm_connector_get do_replace drm_connector_unreference drm_connector_put do_replace drm_framebuffer_reference drm_framebuffer_get do_replace drm_framebuffer_unreference drm_framebuffer_put do_replace drm_gem_object_reference drm_gem_object_get do_replace drm_gem_object_unreference drm_gem_object_put do_replace __drm_gem_object_unreference __drm_gem_object_put do_replace drm_gem_object_unreference_unlocked drm_gem_object_put_unlocked do_replace drm_property_referen...
2018 Jun 18
0
[PATCH 2/4] drm/nouveau: Replace drm_framebuffer_{un/reference} with put, get functions
...rm/nouveau/nouveau_fbcon.c +++ b/drivers/gpu/drm/nouveau/nouveau_fbcon.c @@ -429,7 +429,7 @@ nouveau_fbcon_destroy(struct drm_device *dev, struct nouveau_fbdev *fbcon) nouveau_vma_del(&nouveau_fb->vma); nouveau_bo_unmap(nouveau_fb->nvbo); nouveau_bo_unpin(nouveau_fb->nvbo); - drm_framebuffer_unreference(&nouveau_fb->base); + drm_framebuffer_put(&nouveau_fb->base); } return 0; -- 2.14.4
2017 Aug 01
1
[PATCH] Add drm ioctl DRM_IOCTL_MODE_GETFB2 & associated helpers.
...2. > > Deleting the handle is the same in all cases, but creating the handle isn't consistent across the drivers. I didn't see a clean way to simplify this. > > + r->handles[i] = 0; > > + } > > + } > > + > > + drm_framebuffer_unreference(fb); > > + > > + return ret; > > +} > > [snip] > > > diff --git a/drivers/gpu/drm/omapdrm/omap_fb.c > > b/drivers/gpu/drm/omapdrm/omap_fb.c index 29dc677dd4d3..a982c72a773e > 100644 > > --- a/drivers/gpu/drm/omapdrm/omap_fb.c > > +++ b/drive...
2017 Jul 31
2
[PATCH] Add drm ioctl DRM_IOCTL_MODE_GETFB2 & associated helpers.
...+ } + } else { + ret = -ENODEV; + break; + } + } + + /* If handle creation failed, delete/dereference any that were made. */ + if (ret) { + for (i = 0; i < 4; ++i) { + if (r->handles[i]) + drm_gem_handle_delete(file_priv, r->handles[i]); + r->handles[i] = 0; + } + } + + drm_framebuffer_unreference(fb); + + return ret; +} + /** * drm_mode_dirtyfb_ioctl - flush frontbuffer rendering on an FB * @dev: drm device for the ioctl diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c index a7c61c23685a..a9b578dc5d17 100644 --- a/drivers/gpu/drm/drm_ioctl.c +++ b/drivers/gpu/drm/...
2017 Aug 03
0
[PATCH 17/29] drm/nouveau: switch to drm_*{get, put} helpers
....c +++ b/drivers/gpu/drm/nouveau/nouveau_fbcon.c @@ -451,7 +451,7 @@ nouveau_fbcon_destroy(struct drm_device *dev, struct nouveau_fbdev *fbcon) nouveau_bo_vma_del(nouveau_fb->nvbo, &nouveau_fb->vma); nouveau_bo_unmap(nouveau_fb->nvbo); nouveau_bo_unpin(nouveau_fb->nvbo); - drm_framebuffer_unreference(&nouveau_fb->base); + drm_framebuffer_put(&nouveau_fb->base); } return 0; diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.c b/drivers/gpu/drm/nouveau/nouveau_gem.c index 2170534..653425c 100644 --- a/drivers/gpu/drm/nouveau/nouveau_gem.c +++ b/drivers/gpu/drm/nouveau/nouveau_g...
2017 Aug 03
0
[PATCH 17/29] drm/nouveau: switch to drm_*{get, put} helpers
...nouveau/nouveau_fbcon.c > @@ -451,7 +451,7 @@ nouveau_fbcon_destroy(struct drm_device *dev, struct nouveau_fbdev *fbcon) > nouveau_bo_vma_del(nouveau_fb->nvbo, &nouveau_fb->vma); > nouveau_bo_unmap(nouveau_fb->nvbo); > nouveau_bo_unpin(nouveau_fb->nvbo); > - drm_framebuffer_unreference(&nouveau_fb->base); > + drm_framebuffer_put(&nouveau_fb->base); > } > > return 0; > diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.c b/drivers/gpu/drm/nouveau/nouveau_gem.c > index 2170534..653425c 100644 > --- a/drivers/gpu/drm/nouveau/nouveau_gem.c >...
2017 Aug 01
0
[PATCH] Add drm ioctl DRM_IOCTL_MODE_GETFB2 & associated helpers.
...investigation it seems they actually do. If that's really the case, we could get rid of the .create_handle() operation completely, which should simplify the implementation of both DRM_IOCTL_MODE_GETFB and DRM_IOCTL_MODE_GETFB2. > + r->handles[i] = 0; > + } > + } > + > + drm_framebuffer_unreference(fb); > + > + return ret; > +} [snip] > diff --git a/drivers/gpu/drm/omapdrm/omap_fb.c > b/drivers/gpu/drm/omapdrm/omap_fb.c index 29dc677dd4d3..a982c72a773e 100644 > --- a/drivers/gpu/drm/omapdrm/omap_fb.c > +++ b/drivers/gpu/drm/omapdrm/omap_fb.c > @@ -90,12 +90,15 @@ str...
2018 Jun 18
4
[PATCH 0/4] drm/nouveau: Replace {un/reference} with {put, get} functions
This patch set replaces functions named {un,reference} by their {put,get} counterparts. Affected data types are struct drm_connector, struct drm_framebuffer, struct drm_gem_object, and struct drm_device. With the reference-counting functions being named {put,get}, the DRM interface is more aligned to Linux kernel nameing standard. The patch set does not change driver-internal interfaces. Thomas
2017 Aug 01
0
[PATCH] Add drm ioctl DRM_IOCTL_MODE_GETFB2 & associated helpers.
...es. If we stored the GEM object pointers in the drm_framebuffer structure, the common case would be simplified. Or maybe I've missed something :-) > >> + r->handles[i] = 0; > >> + } > >> + } > >> + > >> + drm_framebuffer_unreference(fb); > >> + > >> + return ret; > >> +} [snip] > >> diff --git a/include/uapi/drm/drm.h b/include/uapi/drm/drm.h > >> index b2c52843bc70..c81c75335cca 100644 > >> --- a/include/uapi/drm/drm.h > >> +++ b/include/uapi/drm/drm.h >...
2017 Aug 08
5
[PATCH libdrm] drm: Remove create_handle() drm_framebuffer "virtual".
...t;fb->obj; + struct drm_i915_gem_object *obj = + to_intel_bo(ifbdev->fb->base.gem_objs[0]); unsigned int origin = ifbdev->vma->fence ? ORIGIN_GTT : ORIGIN_CPU; intel_fb_obj_invalidate(obj, origin); @@ -192,7 +193,7 @@ static int intelfb_create(struct drm_fb_helper *helper, drm_framebuffer_unreference(&intel_fb->base); intel_fb = ifbdev->fb = NULL; } - if (!intel_fb || WARN_ON(!intel_fb->obj)) { + if (!intel_fb || WARN_ON(!intel_fb->base.gem_objs[0])) { DRM_DEBUG_KMS("no BIOS fb, allocating a new one\n"); ret = intelfb_alloc(helper, sizes); if (ret) @@ -26...
2017 Aug 08
5
[PATCH libdrm] drm: Remove create_handle() drm_framebuffer "virtual".
...t;fb->obj; + struct drm_i915_gem_object *obj = + to_intel_bo(ifbdev->fb->base.gem_objs[0]); unsigned int origin = ifbdev->vma->fence ? ORIGIN_GTT : ORIGIN_CPU; intel_fb_obj_invalidate(obj, origin); @@ -192,7 +193,7 @@ static int intelfb_create(struct drm_fb_helper *helper, drm_framebuffer_unreference(&intel_fb->base); intel_fb = ifbdev->fb = NULL; } - if (!intel_fb || WARN_ON(!intel_fb->obj)) { + if (!intel_fb || WARN_ON(!intel_fb->base.gem_objs[0])) { DRM_DEBUG_KMS("no BIOS fb, allocating a new one\n"); ret = intelfb_alloc(helper, sizes); if (ret) @@ -26...
2017 Aug 08
5
[PATCH libdrm] drm: Remove create_handle() drm_framebuffer "virtual".
...t;fb->obj; + struct drm_i915_gem_object *obj = + to_intel_bo(ifbdev->fb->base.gem_objs[0]); unsigned int origin = ifbdev->vma->fence ? ORIGIN_GTT : ORIGIN_CPU; intel_fb_obj_invalidate(obj, origin); @@ -192,7 +193,7 @@ static int intelfb_create(struct drm_fb_helper *helper, drm_framebuffer_unreference(&intel_fb->base); intel_fb = ifbdev->fb = NULL; } - if (!intel_fb || WARN_ON(!intel_fb->obj)) { + if (!intel_fb || WARN_ON(!intel_fb->base.gem_objs[0])) { DRM_DEBUG_KMS("no BIOS fb, allocating a new one\n"); ret = intelfb_alloc(helper, sizes); if (ret) @@ -26...