kernel-fxtec-pro1x/drivers/gpu/drm
Daniel Vetter b0b7af1884 drm: mm: add api for embedding struct drm_mm_node
The old api has a two-step process: First search for a suitable
free hole, then allocate from that specific hole. No user used
this to do anything clever. So drop it for the embeddable variant
of the drm_mm api (the old one retains this ability, for the time
being).

With struct drm_mm_node embedded, we cannot track allocations
anymore by checking for a NULL pointer. So keep track of this
and add a small helper drm_mm_node_allocated.

Also add a function to move allocations between different struct
drm_mm_node.

v2: Implement suggestions by Chris Wilson.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Dave Airlie <airlied@redhat.com>
2011-02-23 10:32:51 +10:00
..
i2c
i810 drm: rework PCI/platform driver interface. 2011-02-07 13:09:36 +10:00
i915 drm: rework PCI/platform driver interface. 2011-02-07 13:09:36 +10:00
mga drm: rework PCI/platform driver interface. 2011-02-07 13:09:36 +10:00
nouveau drm/nouveau: don't munge in drm_mm internals 2011-02-23 10:18:20 +10:00
r128 drm: rework PCI/platform driver interface. 2011-02-07 13:09:36 +10:00
radeon drm: rework PCI/platform driver interface. 2011-02-07 13:09:36 +10:00
savage drm: rework PCI/platform driver interface. 2011-02-07 13:09:36 +10:00
sis drm: rework PCI/platform driver interface. 2011-02-07 13:09:36 +10:00
tdfx drm: rework PCI/platform driver interface. 2011-02-07 13:09:36 +10:00
ttm Merge branch 'drm-core-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 2011-01-10 17:11:39 -08:00
via drm: rework PCI/platform driver interface. 2011-02-07 13:09:36 +10:00
vmwgfx drm: rework PCI/platform driver interface. 2011-02-07 13:09:36 +10:00
ati_pcigart.c
drm_agpsupport.c drm: kill drm_agp_chipset_flush 2010-11-23 20:14:44 +00:00
drm_auth.c
drm_buffer.c drm: fix trivial coding errors 2010-09-24 10:10:23 +10:00
drm_bufs.c
drm_cache.c
drm_context.c
drm_crtc.c drm: dumb scanout create/mmap for intel/radeon (v3) 2011-02-07 12:16:14 +10:00
drm_crtc_helper.c Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 2011-02-04 10:02:22 -08:00
drm_debugfs.c drm: Move the GTT accounting to i915 2010-10-01 14:45:20 +01:00
drm_dma.c
drm_dp_i2c_helper.c
drm_drv.c drm: rework PCI/platform driver interface. 2011-02-07 13:09:36 +10:00
drm_edid.c DRM: ignore invalid EDID extensions 2010-11-09 13:34:14 +10:00
drm_edid_modes.h
drm_encoder_slave.c
drm_fb_helper.c kconfig: rename CONFIG_EMBEDDED to CONFIG_EXPERT 2011-01-20 17:02:05 -08:00
drm_fops.c drm/switcheroo: track state of switch in drivers. 2011-01-05 13:45:30 +10:00
drm_gem.c drm: dumb scanout create/mmap for intel/radeon (v3) 2011-02-07 12:16:14 +10:00
drm_global.c
drm_hashtab.c
drm_info.c drm: rework PCI/platform driver interface. 2011-02-07 13:09:36 +10:00
drm_ioc32.c
drm_ioctl.c drm: rework PCI/platform driver interface. 2011-02-07 13:09:36 +10:00
drm_irq.c drm: rework PCI/platform driver interface. 2011-02-07 13:09:36 +10:00
drm_lock.c drm: readd drm_lock_free in drm_unlock 2010-09-26 13:35:49 +10:00
drm_memory.c
drm_mm.c drm: mm: add api for embedding struct drm_mm_node 2011-02-23 10:32:51 +10:00
drm_modes.c Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2010-10-24 13:41:39 -07:00
drm_pci.c drm: rework PCI/platform driver interface. 2011-02-07 13:09:36 +10:00
drm_platform.c drm: rework PCI/platform driver interface. 2011-02-07 13:09:36 +10:00
drm_proc.c drm: Move the GTT accounting to i915 2010-10-01 14:45:20 +01:00
drm_scatter.c
drm_sman.c
drm_stub.c drm: add usb framework 2011-02-07 13:09:42 +10:00
drm_sysfs.c
drm_trace.h
drm_trace_points.c
drm_usb.c drm: add usb framework 2011-02-07 13:09:42 +10:00
drm_vm.c Merge remote branch 'korg/drm-fixes' into drm-vmware-next 2010-10-06 11:10:48 +10:00
Kconfig drm/i810: remove the BKL 2011-02-07 12:15:04 +10:00
Makefile drm: add usb framework 2011-02-07 13:09:42 +10:00
README.drm

************************************************************
* For the very latest on DRI development, please see:      *
*     http://dri.freedesktop.org/                          *
************************************************************

The Direct Rendering Manager (drm) is a device-independent kernel-level
device driver that provides support for the XFree86 Direct Rendering
Infrastructure (DRI).

The DRM supports the Direct Rendering Infrastructure (DRI) in four major
ways:

    1. The DRM provides synchronized access to the graphics hardware via
       the use of an optimized two-tiered lock.

    2. The DRM enforces the DRI security policy for access to the graphics
       hardware by only allowing authenticated X11 clients access to
       restricted regions of memory.

    3. The DRM provides a generic DMA engine, complete with multiple
       queues and the ability to detect the need for an OpenGL context
       switch.

    4. The DRM is extensible via the use of small device-specific modules
       that rely extensively on the API exported by the DRM module.


Documentation on the DRI is available from:
    http://dri.freedesktop.org/wiki/Documentation
    http://sourceforge.net/project/showfiles.php?group_id=387
    http://dri.sourceforge.net/doc/

For specific information about kernel-level support, see:

    The Direct Rendering Manager, Kernel Support for the Direct Rendering
    Infrastructure
    http://dri.sourceforge.net/doc/drm_low_level.html

    Hardware Locking for the Direct Rendering Infrastructure
    http://dri.sourceforge.net/doc/hardware_locking_low_level.html

    A Security Analysis of the Direct Rendering Infrastructure
    http://dri.sourceforge.net/doc/security_low_level.html