1. 11 1月, 2010 1 次提交
    • B
      drm/nv50: prevent a possible ctxprog hang · dc8d76ca
      Ben Skeggs 提交于
      The below is mainly an educated guess at what's going on, docs would
      sure be handy...  NVIDIA? :P
      
      It appears it's possible for a ctxprog to run even while a GPU exception
      is pending.  The GF8 and up ctxprogs appear to have a small snippet of
      code which detects this, and stalls the ctxprog until it's been handled,
      which essentially looks like:
      
      	if (r2 & 0x00008000) {
      		r0 |= 0x80000000;
      		while (r0 & 0x80000000) {}
      	}
      
      I don't know of any way that flag would get cleared unless the driver
      intervenes (and indeed, in the cases I've seen the hang, nothing steps
      in to automagically clear it for us).  This patch causes the driver to
      clear the flag during the PGRAPH IRQ handler.
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      dc8d76ca
  2. 11 12月, 2009 1 次提交
    • B
      drm/nouveau: Add DRM driver for NVIDIA GPUs · 6ee73861
      Ben Skeggs 提交于
      This adds a drm/kms staging non-API stable driver for GPUs from NVIDIA.
      
      This driver is a KMS-based driver and requires a compatible nouveau
      userspace libdrm and nouveau X.org driver.
      
      This driver requires firmware files not available in this kernel tree,
      interested parties can find them via the nouveau project git archive.
      
      This driver is reverse engineered, and is in no way supported by nVidia.
      
      Support for nearly the complete range of nvidia hw from nv04->g80 (nv50)
      is available, and the kms driver should support driving nearly all
      output types (displayport is under development still) along with supporting
      suspend/resume.
      
      This work is all from the upstream nouveau project found at
      nouveau.freedesktop.org.
      
      The original authors list from nouveau git tree is:
      Anssi Hannula <anssi.hannula@iki.fi>
      Ben Skeggs <bskeggs@redhat.com>
      Francisco Jerez <currojerez@riseup.net>
      Maarten Maathuis <madman2003@gmail.com>
      Marcin Kościelnicki <koriakin@0x04.net>
      Matthew Garrett <mjg@redhat.com>
      Matt Parnell <mparnell@gmail.com>
      Patrice Mandin <patmandin@gmail.com>
      Pekka Paalanen <pq@iki.fi>
      Xavier Chantry <shiningxc@gmail.com>
      along with project founder Stephane Marchesin <marchesin@icps.u-strasbg.fr>
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      6ee73861