linux/drivers/char/drm
Jesse Barnes 3d25802e3b DRM/i915: only use tiled blits on 965+
When scheduled swaps occur, we need to blit between front & back
buffers.  If the buffers are tiled, we need to set the appropriate
XY_SRC_COPY tile bit, but only on 965 chips, since it will cause
corruption on pre-965 (e.g. 945).

Bug reported by and fix tested by Tomas Janousek <tomi@nomi.cz>.

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Acked-by: Dave Airlie <airlied@linux.ie>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-07-02 18:42:23 -07:00
..
ati_pcigart.c drm: pcigart use proper pci map interfaces. 2008-06-19 11:27:23 +10:00
drm_agpsupport.c drm: reorganise minor number handling using backported modesetting code. 2008-04-26 17:55:07 +10:00
drm_auth.c drm: Replace DRM_IOCTL_ARGS with (dev, data, file_priv) and remove DRM_DEVICE. 2007-10-15 10:38:20 +10:00
drm_bufs.c drm: fd.o bug #11895: Only add the AGP base to map offset if the caller didn't. 2008-02-07 15:09:38 +10:00
drm_context.c drm: run cleanfile across drm tree 2008-02-07 15:09:38 +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: Replace filp in ioctl arguments with drm_file *file_priv. 2007-10-15 10:38:20 +10:00
drm_drawable.c drm: Replace DRM_IOCTL_ARGS with (dev, data, file_priv) and remove DRM_DEVICE. 2007-10-15 10:38:20 +10:00
drm_drv.c drm: only trust core drm ioctls - driver ioctls are a mess. 2008-06-20 15:42:38 +10:00
drm_fops.c drm: disable tasklets not IRQs when taking the drm lock spinlock 2008-05-07 12:22:39 +10:00
drm_hashtab.c drm: run cleanfile across drm tree 2008-02-07 15:09:38 +10:00
drm_hashtab.h drm: run cleanfile across drm tree 2008-02-07 15:09:38 +10:00
drm_ioc32.c drm: Fix ioc32 compat layer 2008-02-07 15:09:39 +10:00
drm_ioctl.c drm: Make DRM_IOCTL_GET_CLIENT return EINVAL when it can't find client #idx. 2008-02-07 15:09:39 +10:00
drm_irq.c Revert "drm/vbl rework: rework how the drm deals with vblank." 2008-05-07 12:15:39 +10:00
drm_lock.c drm: disable tasklets not IRQs when taking the drm lock spinlock 2008-05-07 12:22:39 +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: run cleanfile across drm tree 2008-02-07 15:09:38 +10:00
drm_memory.h drm: remove drm_ioremap and drm_ioremapfree 2007-02-08 13:24:26 +11:00
drm_mm.c drm: run cleanfile across drm tree 2008-02-07 15:09:38 +10:00
drm_os_linux.h drm: run cleanfile across drm tree 2008-02-07 15:09:38 +10:00
drm_pci.c Convert files to UTF-8 and some cleanups 2007-10-19 23:21:04 +02:00
drm_pciids.h drm/i915: add support for Intel series 4 chipsets. 2008-06-20 12:12:56 +10:00
drm_proc.c drm: reorganise minor number handling using backported modesetting code. 2008-04-26 17:55:07 +10:00
drm_sarea.h drm: run cleanfile across drm tree 2008-02-07 15:09:38 +10:00
drm_scatter.c drm: fix for non-coherent DMA PowerPC 2008-03-30 07:57:57 +10:00
drm_sman.c Convert files to UTF-8 and some cleanups 2007-10-19 23:21:04 +02:00
drm_sman.h Convert files to UTF-8 and some cleanups 2007-10-19 23:21:04 +02:00
drm_stub.c drm: reorganise minor number handling using backported modesetting code. 2008-04-26 17:55:07 +10:00
drm_sysfs.c remove debug printk from DRM suspend path 2008-05-23 08:53:13 -07:00
drm_vm.c drm: reorganise minor number handling using backported modesetting code. 2008-04-26 17:55:07 +10:00
drm.h drm: the sg alloc ioctl should write back the handle to userspace 2008-06-13 15:06:31 +10:00
drmP.h Revert "drm/vbl rework: rework how the drm deals with vblank." 2008-05-07 12:15:39 +10:00
i810_dma.c drm: reorganise minor number handling using backported modesetting code. 2008-04-26 17:55:07 +10:00
i810_drm.h drm: remove XFREE86_VERSION macros. 2007-10-15 10:38:20 +10:00
i810_drv.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
i810_drv.h drm: cleanup DRM_DEBUG() parameters 2008-02-07 15:09:39 +10:00
i830_dma.c drivers/char: replace remaining __FUNCTION__ occurrences 2008-04-30 08:29:54 -07:00
i830_drm.h drm: run cleanfile across drm tree 2008-02-07 15:09:38 +10:00
i830_drv.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
i830_drv.h drivers/char: replace remaining __FUNCTION__ occurrences 2008-04-30 08:29:54 -07:00
i830_irq.c drivers/char: replace remaining __FUNCTION__ occurrences 2008-04-30 08:29:54 -07:00
i915_dma.c Revert "drm/vbl rework: rework how the drm deals with vblank." 2008-05-07 12:15:39 +10:00
i915_drm.h Revert "drm/vbl rework: rework how the drm deals with vblank." 2008-05-07 12:15:39 +10:00
i915_drv.c enable bus mastering on i915 at resume time 2008-06-24 11:17:25 -07:00
i915_drv.h drm/i915: add support for Intel series 4 chipsets. 2008-06-20 12:12:56 +10:00
i915_ioc32.c [PATCH] struct path: convert drm 2006-12-08 08:28:44 -08:00
i915_irq.c DRM/i915: only use tiled blits on 965+ 2008-07-02 18:42:23 -07:00
i915_mem.c drm: cleanup DRM_DEBUG() parameters 2008-02-07 15:09:39 +10:00
Kconfig drm: run cleanfile across drm tree 2008-02-07 15:09:38 +10:00
Makefile drm: run cleanfile across drm tree 2008-02-07 15:09:38 +10:00
mga_dma.c drm: cleanup DRM_DEBUG() parameters 2008-02-07 15:09:39 +10:00
mga_drm.h drm: fixup other drivers for typedef removals 2007-07-11 16:09:54 +10:00
mga_drv.c Revert "drm/vbl rework: rework how the drm deals with vblank." 2008-05-07 12:15:39 +10:00
mga_drv.h Revert "drm/vbl rework: rework how the drm deals with vblank." 2008-05-07 12:15:39 +10:00
mga_ioc32.c [PATCH] struct path: convert drm 2006-12-08 08:28:44 -08:00
mga_irq.c Revert "drm/vbl rework: rework how the drm deals with vblank." 2008-05-07 12:15:39 +10:00
mga_state.c drm: cleanup DRM_DEBUG() parameters 2008-02-07 15:09:39 +10:00
mga_ucode.h drm: lindent the drm directory. 2005-09-25 14:28:13 +10:00
mga_warp.c drm: Remove DRM_ERR OS macro. 2007-10-15 10:38:19 +10:00
r128_cce.c drivers: atm, char fix integer as NULL pointer warnings 2008-04-28 17:29:18 -07:00
r128_drm.h drm: remove XFREE86_VERSION macros. 2007-10-15 10:38:20 +10:00
r128_drv.c Revert "drm/vbl rework: rework how the drm deals with vblank." 2008-05-07 12:15:39 +10:00
r128_drv.h Revert "drm/vbl rework: rework how the drm deals with vblank." 2008-05-07 12:15:39 +10:00
r128_ioc32.c [PATCH] struct path: convert drm 2006-12-08 08:28:44 -08:00
r128_irq.c Revert "drm/vbl rework: rework how the drm deals with vblank." 2008-05-07 12:15:39 +10:00
r128_state.c drm: cleanup DRM_DEBUG() parameters 2008-02-07 15:09:39 +10:00
r300_cmdbuf.c drm/radeon: add hier-z registers for r300 and r500 chipsets 2008-06-19 13:01:58 +10:00
r300_reg.h drm/radeon: add hier-z registers for r300 and r500 chipsets 2008-06-19 13:01:58 +10:00
radeon_cp.c drm/radeon: use DSTCACHE_CTLSTAT rather than RB2D_DSTCACHE_CTLSTAT 2008-06-19 12:39:23 +10:00
radeon_drm.h drm/radeon: add initial r500 support. 2008-06-19 11:27:40 +10:00
radeon_drv.c Revert "drm/vbl rework: rework how the drm deals with vblank." 2008-05-07 12:15:39 +10:00
radeon_drv.h drm/radeon: use DSTCACHE_CTLSTAT rather than RB2D_DSTCACHE_CTLSTAT 2008-06-19 12:39:23 +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/radeon: Restore sw interrupt on resume 2008-06-19 12:36:55 +10:00
radeon_mem.c drm: radeon: fix sparse integer as NULL pointer warnings in radeon_mem.c 2008-03-30 07:56:39 +10:00
radeon_microcode.h radeon: add production microcode from AMD 2008-06-19 11:27:38 +10:00
radeon_state.c drm/radeon: fix texture uploads with large 3d textures (bug 13980) 2008-06-19 11:36:04 +10:00
README.drm drm: run cleanfile across drm tree 2008-02-07 15:09:38 +10:00
savage_bci.c drm: remove remnants of DRM_COPY_FROM/TO_USER_IOCTL 2007-11-06 10:11:12 +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: Replace DRM_IOCTL_ARGS with (dev, data, file_priv) and remove DRM_DEVICE. 2007-10-15 10:38:20 +10:00
savage_state.c drm: run cleanfile across drm tree 2008-02-07 15:09:38 +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_ERR OS macro. 2007-10-15 10:38:19 +10:00
sis_drv.h drm: Replace DRM_IOCTL_ARGS with (dev, data, file_priv) and remove DRM_DEVICE. 2007-10-15 10:38:20 +10:00
sis_mm.c drm: cleanup DRM_DEBUG() parameters 2008-02-07 15:09:39 +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/via: attempt again to stabilise the AGP DMA command submission. 2008-03-17 10:07:20 +10:00
via_dmablit.c drm/via: attempt again to stabilise the AGP DMA command submission. 2008-03-17 10:07:20 +10:00
via_dmablit.h drm: run cleanfile across drm tree 2008-02-07 15:09:38 +10:00
via_drm.h drm: run cleanfile across drm tree 2008-02-07 15:09:38 +10:00
via_drv.c Revert "drm/vbl rework: rework how the drm deals with vblank." 2008-05-07 12:15:39 +10:00
via_drv.h Revert "drm/vbl rework: rework how the drm deals with vblank." 2008-05-07 12:15:39 +10:00
via_irq.c Revert "drm/vbl rework: rework how the drm deals with vblank." 2008-05-07 12:15:39 +10:00
via_map.c drm: cleanup DRM_DEBUG() parameters 2008-02-07 15:09:39 +10:00
via_mm.c drm: cleanup DRM_DEBUG() parameters 2008-02-07 15:09:39 +10:00
via_verifier.c drm: Remove DRM_ERR OS macro. 2007-10-15 10:38:19 +10:00
via_verifier.h Convert files to UTF-8 and some cleanups 2007-10-19 23:21:04 +02:00
via_video.c drm: cleanup DRM_DEBUG() parameters 2008-02-07 15:09:39 +10: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