1. 05 7月, 2012 6 次提交
  2. 04 7月, 2012 2 次提交
  3. 29 6月, 2012 1 次提交
  4. 21 6月, 2012 1 次提交
  5. 20 6月, 2012 3 次提交
  6. 19 6月, 2012 3 次提交
  7. 14 6月, 2012 3 次提交
    • B
      drm/i915: PIPE_CONTROL_TLB_INVALIDATE · cc0f6398
      Ben Widawsky 提交于
      This has showed up in several other patches. It's required for the next
      context workaround.
      
      I tested this one on its own and saw no differences in basic tests
      (performance or otherwise). This patch is relatively likely to cause
      regressions, hence why it's split out.
      Signed-off-by: NBen Widawsky <ben@bwidawsk.net>
      cc0f6398
    • B
      drm/i915: Ivybridge MI_ARB_ON_OFF context w/a · e37ec39b
      Ben Widawsky 提交于
      The workaround itself applies to gen7 only (according to the docs) and
      as Eric Anholt points out shouldn't be required since we don't use HW
      scheduling features, and therefore arbitration. Though since it is a
      small, and simple addition, and we don't really understand the issue,
      just do it.
      
      FWIW, I eventually want to play with some of the arbitration stuff, and
      I'd hate to forget about this.
      Signed-off-by: NBen Widawsky <ben@bwidawsk.net>
      e37ec39b
    • B
      drm/i915: CXT_SIZE register offsets added · fe1cc68f
      Ben Widawsky 提交于
      The GPUs can have different default context layouts, and the sizes could
      vary based on platform or BIOS. In order to back the context object with
      a properly sized BO, we must read this register in order to find out a
      sufficient size.
      
      Thankfully (sarcarm!), the register moves and changes meanings
      throughout generations.
      
      CTX and CXT differences are intentional as that is how it is in the
      documentation (prior to GEN6 it was CXT).
      Signed-off-by: NBen Widawsky <ben@bwidawsk.net>
      fe1cc68f
  8. 13 6月, 2012 2 次提交
    • D
      drm/i915: clear up backlight #define confusion on gen4+ · 7cf41601
      Daniel Vetter 提交于
      - Regroup definitions for BLC_PWM_CTL so that they're all together and
        and ordered according to the bitfields.
      
      - Add all missing definitions for BLC_PWM_CTL2.
      
      - Use the BLM_ (for backlight modulation) prefix consistently.
      
      - Note that combination mode (i.e. also taking the legacy backlight
        control value from pci config space into account) is gen4 only.
      
      - Move the new registers for PCH-split machines up, they're an almost
        match for the gen4 defitions.  Prefix the special PCH-only bits with
        BLM_PCH_. Also add the pipe C select bit for ivb.
      
      - Rip out the second pair of PCH polarity definitions - they're only
        valid on early (pre-production) ilk silicon.
      
      - Adapt the existing code to use the new definitions. This has the
        nice benefit of killing a magic (1 << 30) left behind be Jesse
        Barnes.
      
      No functional changes in this patch.
      Reviewed-by: NEugeni Dodonov <eugeni.dodonov@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      7cf41601
    • D
      drm/i915: pnv has a backlight polarity control bit, too · 534b5a53
      Daniel Vetter 提交于
      We already correctly ignore bit0 on gen < 4, now we also know why ;-)
      I've decided that losing that single bit of precision isn't worth the
      trouble to sprinkle IS_PINEVIEW checks all over the backlight control
      code - that code is way too fragile imo.
      Reviewed-by: NEugeni Dodonov <eugeni.dodonov@intel.com>
      Signed-Off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      534b5a53
  9. 07 6月, 2012 1 次提交
  10. 06 6月, 2012 1 次提交
  11. 31 5月, 2012 3 次提交
    • B
      drm/i915: remap l3 on hw init · b9524a1e
      Ben Widawsky 提交于
      If any l3 rows have been previously remapped, we must remap them after
      GPU reset/resume too.
      
      v2: Just return (no warn) on remapping init if not IVB (Jesse)
      Move the check of schizo userspace to i915_gem_l3_remap (Jesse)
      Signed-off-by: NBen Widawsky <ben@bwidawsk.net>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      b9524a1e
    • B
      drm/i915: Dynamic Parity Detection handling · e3689190
      Ben Widawsky 提交于
      On IVB hardware we are given an interrupt whenever a L3 parity error
      occurs in the L3 cache. The L3 cache is used by internal GPU clients
      only.  This is a very rare occurrence (in fact to test this I need to
      use specially instrumented silicon).
      
      When a row in the L3 cache detects a parity error the HW generates an
      interrupt. The interrupt is masked in GTIMR until we get a chance to
      read some registers and alert userspace via a uevent. With this
      information userspace can use a sysfs interface (follow-up patch) to
      remap those rows.
      
      Way above my level of understanding, but if a given row fails, it is
      statistically more likely to fail again than a row which has not failed.
      Therefore it is desirable for an operating system to maintain a lifelong
      list of failing rows and always remap any bad rows on driver load.
      Hardware limits the number of rows that are remappable per bank/subbank,
      and should more than that many rows detect parity errors, software
      should maintain a list of the most frequent errors, and remap those
      rows.
      
      V2: Drop WARN_ON(IS_GEN6) (Jesse)
      DRM_DEBUG row/bank/subbank on errror (Jesse)
      Comment updates (Jesse)
      Reviewed-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      Signed-off-by: NBen Widawsky <ben@bwidawsk.net>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      e3689190
    • P
      drm/i915: explicitly disable the DIPs we're not using · 0dd87d20
      Paulo Zanoni 提交于
      From this point on, the 'set_infoframe' functions always set the DIP
      registers to a known state, so anything done will always be undone at
      the modeset.
      Signed-off-by: NPaulo Zanoni <paulo.r.zanoni@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      0dd87d20
  12. 22 5月, 2012 2 次提交
  13. 20 5月, 2012 2 次提交
  14. 08 5月, 2012 4 次提交
  15. 06 5月, 2012 2 次提交
  16. 03 5月, 2012 3 次提交
  17. 28 4月, 2012 1 次提交