1. 14 5月, 2014 1 次提交
  2. 13 5月, 2014 3 次提交
    • D
      drm/i915: WARN_ON fence pin leaks · d8ffa60b
      Daniel Vetter 提交于
      The fence pin count should always be <= the bo pin count. If that's
      not the case then we have a funny problem and are leaking references
      somewhere.
      
      Which means we can catch fence pin leaks by checking for the same
      upper limit as we do for the bo pin count. Inspired by a discussion
      with Ville about a fence leak igt testcase.
      
      v2: Also check for fence->pin_count <= ggtt_vma->pin_count, since that
      might catch a leak even quicker. Also de-inline them, they're getting
      too big.
      
      v3: Don't separately check for MAX_PIN_COUNT since the > vma->pin_count
      check will catch that already (Chris).
      
      Cc: Chris Wilson <chris@chris-wilson.co.uk>
      Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      d8ffa60b
    • C
      drm/i915/chv: Add DPIO offset for Cherryview. v3 · a09caddd
      Chon Ming Lee 提交于
      CHV has 2 display phys.  First phy (IOSF offset 0x1A) has two channels,
      and second phy (IOSF offset 0x12) has single channel.  The first phy is
      used for port B and port C, while second phy is only for port D.
      
      v2: Move the pipe to determine which phy to select for
      vlv_dpio_read/vlv_dpio_write to another patch. (Daniel)
      v3: Rebase the code based on rework on how to calculate DPIO offset.
      Signed-off-by: NChon Ming Lee <chon.ming.lee@intel.com>
      Reviewed-by: NImre Deak <imre.deak@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      a09caddd
    • B
      drm/i915: Use hash tables for the command parser · 44e895a8
      Brad Volkin 提交于
      For clients that submit large batch buffers the command parser has
      a substantial impact on performance. On my HSW ULT system performance
      drops as much as ~20% on some tests. Most of the time is spent in the
      command lookup code. Converting that from the current naive search to
      a hash table lookup reduces the performance drop to ~10%.
      
      The choice of value for I915_CMD_HASH_ORDER allows all commands
      currently used in the parser tables to hash to their own bucket (except
      for one collision on the render ring). The tradeoff is that it wastes
      memory. Because the opcodes for the commands in the tables are not
      particularly well distributed, reducing the order still leaves many
      buckets empty. The increased collisions don't seem to have a huge
      impact on the performance gain, but for now anyhow, the parser trades
      memory for performance.
      
      NB: Ville noticed that the error paths through the ring init code
      will leak memory. I've not addressed that here. We can do a follow
      up pass to handle all of the leaks.
      
      v2: improved comment describing selection of hash key mask (Damien)
      replace a BUG_ON() with an error return (Tvrtko, Ville)
      commit message improvements
      Signed-off-by: NBrad Volkin <bradley.d.volkin@intel.com>
      Reviewed-by: NDamien Lespiau <damien.lespiau@intel.com>
      Reviewed-by: NTvrtko Ursulin <tvrtko.ursulin@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      44e895a8
  3. 08 5月, 2014 1 次提交
  4. 07 5月, 2014 3 次提交
  5. 05 5月, 2014 6 次提交
  6. 14 4月, 2014 1 次提交
  7. 11 4月, 2014 2 次提交
  8. 10 4月, 2014 3 次提交
  9. 09 4月, 2014 1 次提交
  10. 03 4月, 2014 1 次提交
    • D
      drm/i915: Add debug module option for VTd validation · 7a10dfa6
      Daniel Vetter 提交于
      VTd has a few too many "outright disable the damn thing" workarounds
      accumulated and for validation we want a simple knob to make sure we
      disable them all.
      
      Since this is for bdw+ validation and atm we don't have any
      workarounds for bdw this option currently does nothing. So currently
      this is just a placeholder to make sure reality will match with the
      documented process for our validation people.
      
      v2: Fix up param description (Jani).
      
      v3: Actually git add ...
      
      Cc: Jani Nikula <jani.nikula@linux.intel.com>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Reviewed-by: NJani Nikula <jani.nikula@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      7a10dfa6
  11. 02 4月, 2014 13 次提交
  12. 31 3月, 2014 2 次提交
  13. 29 3月, 2014 2 次提交
    • C
      drm/i915: Broadwell expands ACTHD to 64bit · 50877445
      Chris Wilson 提交于
      As Broadwell has an increased virtual address size, it requires more
      than 32 bits to store offsets into its address space. This includes the
      debug registers to track the current HEAD of the individual rings, which
      may be anywhere within the per-process address spaces. In order to find
      the full location, we need to read the high bits from a second register.
      We then also need to expand our storage to keep track of the larger
      address.
      
      v2: Carefully read the two registers to catch wraparound between
          the reads.
      v3: Use a WARN_ON rather than loop indefinitely on an unstable
          register read.
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Cc: Ben Widawsky <benjamin.widawsky@intel.com>
      Cc: Timo Aaltonen <tjaalton@ubuntu.com>
      Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
      Reviewed-by: NBen Widawsky <ben@bwidawsk.net>
      [danvet: Drop spurious hunk which conflicted.]
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      50877445
    • D
      drm/i915: Track the enabled PM interrupts in dev_priv. · a6706b45
      Deepak S 提交于
      When we use different rps events for different platforms or due to wa,
      we might end up needing this logic in a lot of places. Instead of
      this let's use a variable in dev_priv to track the enabled PM
      interrupts.
      
      v2: Initialize pm_rps_events in intel_irq_init() (Ville).
      Signed-off-by: NDeepak S <deepak.s@linux.intel.com>
      Reviewed-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      [danvet: Frob the commit message a bit since the English was a bit too
      garbled ;-) ]
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      a6706b45
  14. 21 3月, 2014 1 次提交