linux-stable/include/drm
Dave Airlie 3248877ea1 drm: base prime/dma-buf support (v5)
This adds the basic drm dma-buf interface layer, called PRIME. This
commit doesn't add any driver support, it is simply and agreed upon starting
point so we can work towards merging driver support for the next merge window.

Current drivers with work done are nouveau, i915, udl, exynos and omap.

The main APIs exposed to userspace allow translating a 32-bit object handle
to a file descriptor, and a file descriptor to a 32-bit object handle.

The flags value is currently limited to O_CLOEXEC.

Acknowledgements:
Daniel Vetter: lots of review
Rob Clark: cleaned up lots of the internals and did lifetime review.

v2: rename some functions after Chris preferred a green shed
fix IS_ERR_OR_NULL -> IS_ERR
v3: Fix Ville pointed out using buffer + kmalloc
v4: add locking as per ickle review
v5: allow re-exporting the original dma-buf (Daniel)

Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Rob Clark <rob.clark@linaro.org>
Reviewed-by: Sumit Semwal <sumit.semwal@linaro.org>
Reviewed-by: Inki Dae <inki.dae@samsung.com>
Acked-by: Ben Widawsky <benjamin.widawsky@intel.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-03-30 11:52:44 +01:00
..
i2c drm: Import driver for the sil164 I2C TMDS transmitter. 2010-08-02 10:21:13 +10:00
ttm BUG: headers with BUG/BUG_ON etc. need linux/bug.h 2012-03-04 17:54:34 -05:00
drm.h drm: base prime/dma-buf support (v5) 2012-03-30 11:52:44 +01:00
drm_buffer.h
drm_cache.h
drm_core.h drm: Fix support for PCI domains 2010-08-10 08:20:20 +10:00
drm_crtc.h drm: allow loading an EDID as firmware to override broken monitor 2012-03-20 10:09:28 +00:00
drm_crtc_helper.h drm: Add drm_format_num_planes() utility function 2011-12-20 20:34:32 +00:00
drm_dp_helper.h drm/radeon/kms: properly set panel mode for eDP 2011-11-01 16:01:58 +00:00
drm_edid.h drm: allow loading an EDID as firmware to override broken monitor 2012-03-20 10:09:28 +00:00
drm_encoder_slave.h
drm_fb_helper.h drm fb helper: remove unused variable crtc_id 2012-02-03 09:55:52 +00:00
drm_fixed.h drm: move radeon_fixed.h to shared drm_fixed.h header 2010-05-18 18:21:33 +10:00
drm_fourcc.h drm: Add multi buffer plane pixel formats 2011-12-29 11:21:42 +09:00
drm_global.h drm: move ttm global code to core drm 2010-08-04 09:46:06 +10:00
drm_hashtab.h drm: Remove unused members from struct drm_open_hash 2011-02-23 11:16:40 +10:00
drm_mem_util.h drm/ttm: use drm calloc large and free large 2010-03-15 10:31:43 +10:00
drm_memory.h
drm_mm.h drm: mm: fix debug output 2011-05-09 09:14:45 +10:00
drm_mode.h headers: include linux/types.h where appropriate 2012-03-23 16:58:31 -07:00
drm_os_linux.h
drm_pciids.h drm/radeon/kms: add trinity pci ids 2012-03-21 06:55:58 +00:00
drm_sarea.h
drm_sysfs.h
drm_usb.h drm: add usb framework 2011-02-07 13:09:42 +10:00
drmP.h drm: base prime/dma-buf support (v5) 2012-03-30 11:52:44 +01:00
exynos_drm.h drm/exynos: added virtual display driver. 2012-03-21 10:15:49 +00:00
gma_drm.h gma500: fix ioctl confict 2012-03-10 13:06:04 +00:00
i810_drm.h
i915_drm.h drm/i915: add a LLC feature flag in device description 2012-01-17 20:01:45 +01:00
intel-gtt.h agp/intel-gtt: export the gtt pagetable iomapping 2012-02-09 21:24:18 +01:00
Kbuild drm/exynos: exynos_drm.h header file fixes 2012-02-15 10:29:12 +09:00
mga_drm.h Fix common misspellings 2011-03-31 11:26:23 -03:00
nouveau_drm.h drm/nv50: support for compression 2011-02-25 06:46:07 +10:00
r128_drm.h
radeon_drm.h drm/radeon/kms: add support for the CONST IB to the CS ioctl 2012-03-21 06:55:53 +00:00
savage_drm.h Fix common misspellings 2011-03-31 11:26:23 -03:00
sis_drm.h drm/sis: track obj->drm_fd relations in the driver 2011-12-22 00:33:15 +01:00
via_drm.h drm/via: track obj->drm_fd relations in the driver 2011-12-22 00:33:19 +01:00
vmwgfx_drm.h vmwgfx: Reinstate the update_layout ioctl 2011-11-02 08:30:31 +00:00