1. 20 9月, 2013 3 次提交
    • B
      drm/i915: Make l3 remapping use the ring · c3787e2e
      Ben Widawsky 提交于
      Using LRI for setting the remapping registers allows us to stream l3
      remapping information. This is necessary to handle per context remaps as
      we'll see implemented in an upcoming patch.
      
      Using the ring also means we don't need to frob the DOP clock gating
      bits.
      
      v2: Add comment about lack of worry for concurrent register access
      (Daniel)
      Signed-off-by: NBen Widawsky <ben@bwidawsk.net>
      Reviewed-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      [danvet: Bikeshed the comment a bit by doing a s/XXX/Note - there's
      nothing to fix.]
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      c3787e2e
    • B
      drm/i915: Add second slice l3 remapping · 35a85ac6
      Ben Widawsky 提交于
      Certain HSW SKUs have a second bank of L3. This L3 remapping has a
      separate register set, and interrupt from the first "slice". A slice is
      simply a term to define some subset of the GPU's l3 cache. This patch
      implements both the interrupt handler, and ability to communicate with
      userspace about this second slice.
      
      v2:  Remove redundant check about non-existent slice.
      Change warning about interrupts of unknown slices to WARN_ON_ONCE
      Handle the case where we get 2 slice interrupts concurrently, and switch
      the tracking of interrupts to be non-destructive (all Ville)
      Don't enable/mask the second slice parity interrupt for ivb/vlv (even
      though all docs I can find claim it's rsvd) (Ville + Bryan)
      Keep BYT excluded from L3 parity
      
      v3: Fix the slice = ffs to be decremented by one (found by Ville). When
      I initially did my testing on the series, I was using 1-based slice
      counting, so this code was correct. Not sure why my simpler tests that
      I've been running since then didn't pick it up sooner.
      Reviewed-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: NBen Widawsky <ben@bwidawsk.net>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      35a85ac6
    • B
      drm/i915: Fix HSW parity test · 1c966dd2
      Ben Widawsky 提交于
      Haswell changed the log registers to be WO, so we can no longer read
      them to determine the programming (which sucks, see later note). For
      now, simply use the cached value, and hope HW doesn't screw us over.
      
      v2: Simplify the logic to avoid an extra !, remove last, and fix the
      buffer offset which broke along the rebase (Ville)
      
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=57441
      CC: Ville Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: NBen Widawsky <ben@bwidawsk.net>
      Reviewed-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      1c966dd2
  2. 19 9月, 2013 3 次提交
  3. 18 9月, 2013 1 次提交
    • P
      drm/i915: check for more ASLC interrupts · 507c1a45
      Paulo Zanoni 提交于
      Sometimes I see the "non asle set request??" message on my Haswell
      machine, so I decided to get the spec and see if some bits are missing
      from the mask. We do have some bits missing from the mask, so this
      patch adds them, and the corresponding code to print "unsupported"
      messages just like we do with the other bits we don't support.
      
      But I still see the "non asle set request??" message on my machine :(
      
      Also use the proper ASLC name to indicate the registers we're talking
      about.
      
      v2: - Properly set the new FAILED bits
          - Rename the old FAILED bits
          - Print everything we don't support
      Signed-off-by: NPaulo Zanoni <paulo.r.zanoni@intel.com>
      Reviewed-by: NJani Nikula <jani.nikula@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      507c1a45
  4. 17 9月, 2013 30 次提交
  5. 13 9月, 2013 3 次提交