1. 16 12月, 2014 1 次提交
    • B
      drm/cache: Use wbinvd helpers · b04d4a38
      Ben Widawsky 提交于
      When the original drm code was written there were no centralized functions for
      doing a coordinated wbinvd across all CPUs. Now (since 2010) there are, so use
      them instead of rolling a new one.
      
      v2: On x86 UP systems the wbinvd_on_all_cpus() is defined as a static inline in
      smp.h. We must therefore include this file so we don't get compiler errors.
      This error was found by 0-DAY kernel test infrastructure. We only need this for
      x86.
      
      Cc: Intel GFX <intel-gfx@lists.freedesktop.org>
      Signed-off-by: NBen Widawsky <ben@bwidawsk.net>
      Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> (v1)
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      b04d4a38
  2. 02 6月, 2014 1 次提交
  3. 02 4月, 2014 1 次提交
  4. 28 2月, 2014 2 次提交
  5. 28 3月, 2013 1 次提交
  6. 19 3月, 2013 1 次提交
  7. 03 10月, 2012 1 次提交
  8. 20 9月, 2012 1 次提交
    • C
      drm/i915: Replace the array of pages with a scatterlist · 9da3da66
      Chris Wilson 提交于
      Rather than have multiple data structures for describing our page layout
      in conjunction with the array of pages, we can migrate all users over to
      a scatterlist.
      
      One major advantage, other than unifying the page tracking structures,
      this offers is that we replace the vmalloc'ed array (which can be up to
      a megabyte in size) with a chain of individual pages which helps reduce
      memory pressure.
      
      The disadvantage is that we then do not have a simple array to iterate,
      or to access randomly. The common case for this is in the relocation
      processing, which will typically fit within a single scatterlist page
      and so be almost the same cost as the simple array. For iterating over
      the array, the extra function call could be optimised away, but in
      reality is an insignificant cost of either binding the pages, or
      performing the pwrite/pread.
      
      v2: Fix drm_clflush_sg() to not invoke wbinvd as well! And fix the
      trivial compile error from rebasing.
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      9da3da66
  9. 19 9月, 2012 1 次提交
  10. 27 3月, 2012 1 次提交
  11. 20 3月, 2012 1 次提交
  12. 01 11月, 2011 1 次提交
  13. 02 9月, 2009 1 次提交
  14. 27 8月, 2009 1 次提交
  15. 18 10月, 2008 2 次提交
    • D
      drm: wbinvd is cache coherent. · e0f0754f
      Dave Airlie 提交于
      doing an ipi for the wbinvd case isn't necessary.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      e0f0754f
    • E
      drm: Add GEM ("graphics execution manager") to i915 driver. · 673a394b
      Eric Anholt 提交于
      GEM allows the creation of persistent buffer objects accessible by the
      graphics device through new ioctls for managing execution of commands on the
      device.  The userland API is almost entirely driver-specific to ensure that
      any driver building on this model can easily map the interface to individual
      driver requirements.
      
      GEM is used by the 2d driver for managing its internal state allocations and
      will be used for pixmap storage to reduce memory consumption and enable
      zero-copy GLX_EXT_texture_from_pixmap, and in the 3d driver is used to enable
      GL_EXT_framebuffer_object and GL_ARB_pixel_buffer_object.
      Signed-off-by: NEric Anholt <eric@anholt.net>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      673a394b
  16. 14 7月, 2008 1 次提交
    • D
      drm: reorganise drm tree to be more future proof. · c0e09200
      Dave Airlie 提交于
      With the coming of kernel based modesetting and the memory manager stuff,
      the everything in one directory approach was getting very ugly and
      starting to be unmanageable.
      
      This restructures the drm along the lines of other kernel components.
      
      It creates a drivers/gpu/drm directory and moves the hw drivers into
      subdirectores. It moves the includes into an include/drm, and
      sets up the unifdef for the userspace headers we should be exporting.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      c0e09200
  17. 07 2月, 2008 1 次提交
  18. 20 10月, 2007 1 次提交
  19. 12 7月, 2007 1 次提交
  20. 11 3月, 2007 1 次提交
  21. 22 9月, 2006 3 次提交
    • T
      drm: update user token hashing and map handles · 8d153f71
      Thomas Hellstrom 提交于
      Keep hashed user tokens, with the following changes:
      32-bit physical device addresses are mapped directly to user-tokens. No
          duplicate maps are allowed, and the addresses are assumed to be outside
          of the range 0x10000000 through 0x30000000. The user-token is identical
          to the 32-bit physical start-address of the map.
      64-bit physical device addressed are mapped to user-tokens in the range
      0x10000000 to 0x30000000 with page-size increments. The user_token should
          not be interpreted as an address.
      Other map types, like upcoming TTM maps are mapped to user-tokens in the
          range
      0x10000000 to 0x30000000 with page-size increments. The user_token should
          not be interpreted as an address.
      
      Implement hashed map lookups.
      Signed-off-by: NDave Airlie <airlied@linux.ie>
      8d153f71
    • T
      drm: move drm authentication to new generic hash table. · 8669cbc5
      Thomas Hellstrom 提交于
      Fix drm_remove_magic potential memory leak / corruption. Move drm
      authentication token hashing to new generic hash table implementation.
      Signed-off-by: NDave Airlie <airlied@linux.ie>
      8669cbc5
    • T
      drm: add simple DRM memory manager, and hash table · 3a1bd924
      Thomas Hellstrom 提交于
      This adds the DRM hashtable and simple memory manager implementations from
      Tungsten Graphics, this is NOT the new memory manager, this is a replacement
      for the SIS and VIA memory managers.
      Signed-off-by: NDave Airlie <airlied@linux.ie>
      3a1bd924