linux/drivers/char/drm
Dave Airlie e4a7b1d1d9 i915: make vbl interrupts work properly on i965g/gm hw.
This code is ported from the DRM git tree and allows the vblank interrupts
to function on the i965 hw. It also requires a change in Mesa's 965 driver
to actually use them.

[ Without this patch, my 965GM drops vblank interrupts  - Jesse ]

Signed-off-by: Dave Airlie <airlied@linux.ie>
Acked-by: Jesse Barnes <jesse.barnes@intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-09-27 19:47:28 -07:00
..
ati_pcigart.c drm: detypedeffing continues... 2007-07-11 16:53:40 +10:00
drm_agpsupport.c drm: detypedeffing continues... 2007-07-11 16:53:40 +10:00
drm_auth.c drm: detypedef the hashtab and more of sman 2007-07-12 10:26:44 +10:00
drm_bufs.c drm: ioremap return value checks 2007-08-25 18:17:49 +10:00
drm_context.c drm: convert drm context code to use Linux idr 2007-07-17 11:04:33 +10:00
drm_core.h drm: add support for secondary vertical blank interrupt to DRM core 2006-12-07 15:53:28 +11:00
drm_dma.c drm: detypef waitlist/freelist/buf_entry/device_dma/drm_queue structs 2007-07-11 16:32:08 +10:00
drm_drawable.c drm: convert drawable code to using idr 2007-07-17 11:04:33 +10:00
drm_drv.c drm: convert drawable code to using idr 2007-07-17 11:04:33 +10:00
drm_fops.c drm: detypedeffing continues... 2007-07-11 16:53:40 +10:00
drm_hashtab.c drm: detypedef the hashtab and more of sman 2007-07-12 10:26:44 +10:00
drm_hashtab.h drm: detypedef the hashtab and more of sman 2007-07-12 10:26:44 +10:00
drm_ioc32.c drm: remove core typedefs from the ioc32 wrappers 2007-07-16 13:53:57 +10:00
drm_ioctl.c drm: detypedeffing continues... 2007-07-11 16:53:40 +10:00
drm_irq.c drm: detypedeffing continues... 2007-07-11 16:53:40 +10:00
drm_lock.c drm: detypedeffing continues... 2007-07-11 16:53:40 +10:00
drm_memory_debug.h drm: remove drm_ioremap and drm_ioremapfree 2007-02-08 13:24:26 +11:00
drm_memory.c drm: remove drm_file_t, drm_device_t and drm_head_t typedefs 2007-07-11 15:53:27 +10:00
drm_memory.h drm: remove drm_ioremap and drm_ioremapfree 2007-02-08 13:24:26 +11:00
drm_mm.c drm: detypedeffing continues... 2007-07-11 16:53:40 +10:00
drm_os_linux.h drm: remove drm_file_t, drm_device_t and drm_head_t typedefs 2007-07-11 15:53:27 +10:00
drm_pci.c drm: remove drm_file_t, drm_device_t and drm_head_t typedefs 2007-07-11 15:53:27 +10:00
drm_pciids.h Add support SiS based XGI chips to SiS DRM. 2007-06-27 09:54:49 -07:00
drm_proc.c drm: detypedeffing continues... 2007-07-11 16:53:40 +10:00
drm_sarea.h drm: remove sarea typedefs 2007-07-12 10:35:02 +10:00
drm_scatter.c drm: detypedeffing continues... 2007-07-11 16:53:40 +10:00
drm_sman.c drm: detypedef the hashtab and more of sman 2007-07-12 10:26:44 +10:00
drm_sman.h drm: detypedef the hashtab and more of sman 2007-07-12 10:26:44 +10:00
drm_stub.c drm: add idr_init to drm_stub.c 2007-07-17 14:20:07 +10:00
drm_sysfs.c drm: remove drm_file_t, drm_device_t and drm_head_t typedefs 2007-07-11 15:53:27 +10:00
drm_vm.c drm: detypedef the hashtab and more of sman 2007-07-12 10:26:44 +10:00
drm.h drm: remove a bunch of typedefs on the userspace interface 2007-07-11 15:27:12 +10:00
drmP.h drm: convert drawable code to using idr 2007-07-17 11:04:33 +10:00
i810_dma.c drm: detypedeffing continues... 2007-07-11 16:53:40 +10:00
i810_drm.h drm: fixup other drivers for typedef removals 2007-07-11 16:09:54 +10:00
i810_drv.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
i810_drv.h drm: drop drm_buf_t typedef 2007-07-11 16:17:42 +10:00
i830_dma.c drm: detypedeffing continues... 2007-07-11 16:53:40 +10:00
i830_drm.h drm: fixup other drivers for typedef removals 2007-07-11 16:09:54 +10:00
i830_drv.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
i830_drv.h drm: drop drm_buf_t typedef 2007-07-11 16:17:42 +10:00
i830_irq.c drm: fixup other drivers for typedef removals 2007-07-11 16:09:54 +10:00
i915_dma.c drm/i915: Fix i965 secured batchbuffer usage 2007-08-06 17:46:23 -07:00
i915_drm.h drm: remove a bunch of typedefs on the userspace interface 2007-07-11 15:27:12 +10:00
i915_drv.c drm: add support for secondary vertical blank interrupt to i915 2006-12-07 15:53:28 +11:00
i915_drv.h i915: make vbl interrupts work properly on i965g/gm hw. 2007-09-27 19:47:28 -07:00
i915_ioc32.c [PATCH] struct path: convert drm 2006-12-08 08:28:44 -08:00
i915_irq.c i915: make vbl interrupts work properly on i965g/gm hw. 2007-09-27 19:47:28 -07:00
i915_mem.c drm: remove drm_file_t, drm_device_t and drm_head_t typedefs 2007-07-11 15:53:27 +10:00
Kconfig [SPARC]: Mark as emulating cmpxchg, add appropriate depends for DRM. 2007-05-29 02:51:24 -07:00
Makefile [DRM]: Delete sparc64 FFB driver code that never gets built. 2007-03-26 21:49:11 -07:00
mga_dma.c drm: detypedeffing continues... 2007-07-11 16:53:40 +10:00
mga_drm.h drm: fixup other drivers for typedef removals 2007-07-11 16:09:54 +10:00
mga_drv.c drm: fixup other drivers for typedef removals 2007-07-11 16:09:54 +10:00
mga_drv.h drm: drop drm_buf_t typedef 2007-07-11 16:17:42 +10:00
mga_ioc32.c [PATCH] struct path: convert drm 2006-12-08 08:28:44 -08:00
mga_irq.c drm: fixup other drivers for typedef removals 2007-07-11 16:09:54 +10:00
mga_state.c drm: detypef waitlist/freelist/buf_entry/device_dma/drm_queue structs 2007-07-11 16:32:08 +10:00
mga_ucode.h drm: lindent the drm directory. 2005-09-25 14:28:13 +10:00
mga_warp.c drm: lindent the drm directory. 2005-09-25 14:28:13 +10:00
r128_cce.c drm: detypef waitlist/freelist/buf_entry/device_dma/drm_queue structs 2007-07-11 16:32:08 +10:00
r128_drm.h drm: fixup other drivers for typedef removals 2007-07-11 16:09:54 +10:00
r128_drv.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
r128_drv.h drm: detypedeffing continues... 2007-07-11 16:53:40 +10:00
r128_ioc32.c [PATCH] struct path: convert drm 2006-12-08 08:28:44 -08:00
r128_irq.c drm: fixup other drivers for typedef removals 2007-07-11 16:09:54 +10:00
r128_state.c drm: detypef waitlist/freelist/buf_entry/device_dma/drm_queue structs 2007-07-11 16:32:08 +10:00
r300_cmdbuf.c drm: detypef waitlist/freelist/buf_entry/device_dma/drm_queue structs 2007-07-11 16:32:08 +10:00
r300_reg.h r300: updates register header 2007-07-11 12:24:10 +10:00
radeon_cp.c drm: detypedeffing continues... 2007-07-11 16:53:40 +10:00
radeon_drm.h drm: remove a bunch of typedefs on the userspace interface 2007-07-11 15:27:12 +10:00
radeon_drv.c radeon: add support for vblank on crtc2 2007-07-11 12:16:01 +10:00
radeon_drv.h drm: detypedeffing continues... 2007-07-11 16:53:40 +10:00
radeon_ioc32.c fix radeon setparam on 32/64 systems, harder. 2007-06-16 09:39:05 -07:00
radeon_irq.c drm: remove drm_file_t, drm_device_t and drm_head_t typedefs 2007-07-11 15:53:27 +10:00
radeon_mem.c drm: fixup comment header style 2006-12-19 17:49:08 +11:00
radeon_state.c drm: remove sarea typedefs 2007-07-12 10:35:02 +10:00
README.drm drm: update README.drm (bugzilla #7933) 2007-03-11 12:07:16 +11:00
savage_bci.c drm: detypef waitlist/freelist/buf_entry/device_dma/drm_queue structs 2007-07-11 16:32:08 +10:00
savage_drm.h drm: fixup other drivers for typedef removals 2007-07-11 16:09:54 +10:00
savage_drv.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
savage_drv.h drm: drop drm_buf_t typedef 2007-07-11 16:17:42 +10:00
savage_state.c drm: detypef waitlist/freelist/buf_entry/device_dma/drm_queue structs 2007-07-11 16:32:08 +10:00
sis_drm.h drm: bring sis + tdfx up to latest CVS 2006-01-02 14:44:12 +11:00
sis_drv.c drm: remove drm_file_t, drm_device_t and drm_head_t typedefs 2007-07-11 15:53:27 +10:00
sis_drv.h drm: de-typedef sman 2007-07-12 10:21:05 +10:00
sis_mm.c drm: fix problem with SiS typedef with sisfb enabled. 2007-07-17 12:55:58 +10:00
tdfx_drv.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
tdfx_drv.h drm: bring sis + tdfx up to latest CVS 2006-01-02 14:44:12 +11:00
via_3d_reg.h drm: lindent the drm directory. 2005-09-25 14:28:13 +10:00
via_dma.c drm: remove drm_file_t, drm_device_t and drm_head_t typedefs 2007-07-11 15:53:27 +10:00
via_dmablit.c drm/via: Fix dmablit when blit queue is full 2007-07-23 18:32:01 +10:00
via_dmablit.h drm: remove drm_file_t, drm_device_t and drm_head_t typedefs 2007-07-11 15:53:27 +10:00
via_drm.h drm: remove a bunch of typedefs on the userspace interface 2007-07-11 15:27:12 +10:00
via_drv.c drm: fix driver deadlock with AIGLX and reclaim_buffers_locked 2007-03-23 13:28:33 +11:00
via_drv.h drm: de-typedef sman 2007-07-12 10:21:05 +10:00
via_irq.c drm: remove drm_file_t, drm_device_t and drm_head_t typedefs 2007-07-11 15:53:27 +10:00
via_map.c drm: remove drm_file_t, drm_device_t and drm_head_t typedefs 2007-07-11 15:53:27 +10:00
via_mm.c drm: de-typedef sman 2007-07-12 10:21:05 +10:00
via_verifier.c drm: detypedeffing continues... 2007-07-11 16:53:40 +10:00
via_verifier.h drm: remove drm_file_t, drm_device_t and drm_head_t typedefs 2007-07-11 15:53:27 +10:00
via_video.c drm: update VIA driver to 2.7.2 2005-11-12 21:52:46 +11:00

************************************************************
* 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