1. 09 7月, 2011 7 次提交
  2. 08 7月, 2011 18 次提交
  3. 02 7月, 2011 4 次提交
  4. 01 7月, 2011 1 次提交
  5. 30 6月, 2011 7 次提交
  6. 29 6月, 2011 3 次提交
    • J
      drm/i915: load a ring frequency scaling table v3 · 23b2f8bb
      Jesse Barnes 提交于
      The ring frequency scaling table tells the PCU to treat certain GPU
      frequencies as if they were a given CPU frequency for purposes of
      scaling the ring frequency.  Normally the PCU will scale the ring
      frequency based on the CPU P-state, but with the table present, it will
      also take the GPU frequency into account.
      
      The main downside of keeping the ring frequency high while the CPU is
      at a low frequency (or asleep altogether) is increased power
      consumption.  But then if you're keeping your GPU busy, you probably
      want the extra performance.
      
      v2:
        - add units to debug table header (from Eric)
        - use tsc_khz as a fallback if the cpufreq driver doesn't give us a freq
          (from Chris)
      v3:
        - fix comments & debug output
        - remove unneeded force wake get/put
      Reviewed-by: NBen Widawsky <ben@bwidawsk.net>
      Tested-by: NEric Anholt <eric@anholt.net>
      Reviewed-by: NEric Anholt <eric@anholt.net>
      Signed-off-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      Signed-off-by: NKeith Packard <keithp@keithp.com>
      23b2f8bb
    • C
      drm/i915: Use chipset-specific irq installers · f01c22fd
      Chris Wilson 提交于
      Konstantin Belousov pointed out that 4697995b replaced the generic
      i915_driver_irq_*install() functions with chipset specific routines
      accessible only through driver->irq_*install(). So update the sanity
      check in i915_request_wait() to match.
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Signed-off-by: NKeith Packard <keithp@keithp.com>
      f01c22fd
    • B
      drm/i915: forcewake fix after reset · 25732821
      Ben Widawsky 提交于
      The failure is as follows:
      
      1. Userspace gets forcewake lock, lock count >=1
      2. GPU hang/reset occurs (forcewake bit is reset)
      3. count is now incorrect
      
      The failure can only occur when using the forcewake userspace lock.
      
      This has the unfortunate consequence of messing up the driver as well as
      userspace, unless userspace closes the debugfs file, the kernel will
      never end up waking the GT since the refcount will be > 1.
      
      The solution is to try to recover the correct forcewake state based on
      the refcount. There is a period of time where userspace reads/writes may
      occur after the reset, before the GT has been forcewaked. The interface
      was never designed to be a perfect solution for userspace reads/writes,
      and the kernel portion is fixed by this patch.
      Suggested-by: NChris Wilson <chris@chris-wilson.co.uk>
      Signed-off-by: NBen Widawsky <ben@bwidawsk.net>
      Signed-off-by: NKeith Packard <keithp@keithp.com>
      25732821