1. 23 7月, 2011 1 次提交
  2. 02 3月, 2011 1 次提交
  3. 20 12月, 2010 1 次提交
  4. 05 12月, 2010 1 次提交
  5. 29 10月, 2010 1 次提交
    • C
      drm/i915: Only enforce fence limits inside the GTT. · a00b10c3
      Chris Wilson 提交于
      So long as we adhere to the fence registers rules for alignment and no
      overlaps (including with unfenced accesses to linear memory) and account
      for the tiled access in our size allocation, we do not have to allocate
      the full fenced region for the object. This allows us to fight the bloat
      tiling imposed on pre-i965 chipsets and frees up RAM for real use. [Inside
      the GTT we still suffer the additional alignment constraints, so it doesn't
      magic allow us to render larger scenes without stalls -- we need the
      expanded GTT and fence pipelining to overcome those...]
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      a00b10c3
  6. 22 10月, 2010 1 次提交
  7. 17 8月, 2010 1 次提交
    • D
      drm: block userspace under allocating buffer and having drivers overwrite it (v2) · 1b2f1489
      Dave Airlie 提交于
      With the current screwed but its ABI, ioctls for the drm, Linus pointed out that we could allow userspace to specify the allocation size, but we pass it to the driver which then uses it blindly to store a struct. Now if userspace specifies the allocation size as smaller than the driver needs, the driver can possibly overwrite memory.
      
      This patch restructures the driver ioctls so we store the structure size we are expecting, and make sure we allocate at least that size. The copy from/to userspace are still restricted to the size the user specifies, this allows ioctl structs to grow on both sides of the equation.
      
      Up until now we didn't really use the DRM_IOCTL defines in the kernel, so this cleans them up and adds them for nouveau.
      
      v2:
      fix nouveau pushbuf arg (thanks to Ben for pointing it out)
      Reported-by: NLinus Torvalds <torvalds@linuxfoundation.org>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      1b2f1489
  8. 03 8月, 2010 1 次提交
    • J
      x86 platform driver: intelligent power sharing driver · aa7ffc01
      Jesse Barnes 提交于
      Intel Core i3/5 platforms with integrated graphics support both CPU and
      GPU turbo mode.  CPU turbo mode is opportunistic: the CPU will use any
      available power to increase core frequencies if thermal headroom is
      available.  The GPU side is more manual however; the graphics driver
      must monitor GPU power and temperature and coordinate with a core
      thermal driver to take advantage of available thermal and power headroom
      in the package.
      
      The intelligent power sharing (IPS) driver is intended to coordinate
      this activity by monitoring MCP (multi-chip package) temperature and
      power, allowing the CPU and/or GPU to increase their power consumption,
      and thus performance, when possible.  The goal is to maximize
      performance within a given platform's TDP (thermal design point).
      Signed-off-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      Signed-off-by: NMatthew Garrett <mjg@redhat.com>
      aa7ffc01
  9. 02 6月, 2010 1 次提交
  10. 27 5月, 2010 1 次提交
  11. 07 1月, 2010 1 次提交
  12. 04 12月, 2009 1 次提交
  13. 02 12月, 2009 2 次提交
  14. 06 11月, 2009 1 次提交
    • D
      drm/i915: implement drmmode overlay support v4 · 02e792fb
      Daniel Vetter 提交于
      This implements intel overlay support for kms via a device-specific
      ioctl. Thomas Hellstrom brought up the idea of a general ioctl (on
      dri-devel). We've reached the conclusion that such an infrastructure
      only makes sense when multiple kms overlay implementations exists,
      which atm don't (and it doesn't look like this is gonna change).
      
      Open issues:
      - Runs in sync with the gpu, i.e. unnecessary waiting. I've decided
        to wait on this because the hw tends to hang when changing something
        in this area. I left some dummy functions as infrastructure.
      - polyphase filtering uses a static table.
      - uses uninterruptible sleeps. Unfortunately the alternatives may
        unnecessarily wedged the hw if/when we timeout too early (and
        userspace only overloaded the batch buffers with stuff worth a few
        secs of gpu time).
      
      Changes since v1:
      - fix off-by-one misconception on my side. This fixes fullscreen
        playback.
      Changes since v2:
      - add underrun detection as spec'ed for i965.
      - flush caches properly, fixing visual corruptions.
      Changes since v4:
      - fix up cache flushing of overlay memory regs.
      - killed require_pipe_a logic - it hangs the chip.
      
      Tested-By: diego.abelenda@gmail.com (on a 865G)
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      [anholt: Resolved against the MADVISE ioctl going in before this one]
      Signed-off-by: NEric Anholt <eric@anholt.net>
      02e792fb
  15. 23 9月, 2009 1 次提交
  16. 18 9月, 2009 1 次提交
  17. 15 5月, 2009 1 次提交
  18. 09 4月, 2009 1 次提交
    • E
      drm/i915: Allow tiling of objects with bit 17 swizzling by the CPU. · 280b713b
      Eric Anholt 提交于
      Save the bit 17 state of the pages when freeing the page list, and
      reswizzle them if necessary when rebinding the pages (in case they were
      swapped out).  Since we have userland with expectations that the swizzle
      enums let it pread and pwrite contents accurately, we can't expose a new
      swizzle enum for bit 17 (which it would have to GTT map to handle), so we
      handle it down in pread and pwrite by swizzling the copy when bit 17 of the
      page address is set.
      Signed-off-by: NEric Anholt <eric@anholt.net>
      280b713b
  19. 27 3月, 2009 1 次提交
  20. 08 2月, 2009 1 次提交
  21. 29 12月, 2008 4 次提交
  22. 03 11月, 2008 1 次提交
  23. 18 10月, 2008 2 次提交
  24. 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
  25. 07 5月, 2008 1 次提交
  26. 26 4月, 2008 1 次提交
    • J
      drm/vbl rework: rework how the drm deals with vblank. · ac741ab7
      Jesse Barnes 提交于
      Other Authors: Michel Dänzer <michel@tungstengraphics.com>
      mga: Ian Romanick <idr@us.ibm.com>
      via: Thomas Hellstrom <thomas-at-tungstengraphics-dot-com>
      
      This re-works the DRM internals to provide a better interface for drivers
      to expose vblank on multiple crtcs.
      
      It also includes work done by Michel on making i915 triple buffering and pageflipping work properly.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      ac741ab7
  27. 11 7月, 2007 1 次提交
  28. 10 6月, 2007 1 次提交
  29. 07 12月, 2006 3 次提交
  30. 22 9月, 2006 1 次提交
  31. 24 6月, 2006 1 次提交
  32. 25 1月, 2006 1 次提交
  33. 02 1月, 2006 1 次提交