1. 31 1月, 2013 2 次提交
  2. 28 1月, 2013 2 次提交
  3. 27 1月, 2013 1 次提交
    • P
      drm/i915: fix intel_init_power_wells · fa42e23c
      Paulo Zanoni 提交于
      The current code was wrong in many different ways, so this is a full
      rewrite. We don't have "different power wells for different parts of
      the GPU", we have a single power well, but we have multiple registers
      that can be used to request enabling/disabling the power well. So
      let's be a good citizen and only use the register we're suppose to
      use, except when we're loading the driver, where we clear the request
      made by the BIOS.
      
      If any of the registers is requesting the power well to be enabled, it
      will be enabled. If none of the registers is requesting the power well
      to be enabled, it will be disabled.
      
      For now we're just forcing the power well to be enabled, but in the
      next commits we'll change this.
      
      V2:
        - Remove debug messages that could be misleading due to possible
          race conditions with KVMr, Debug and BIOS.
        - Don't wait on disabling: after a conversaion with a hardware
          engineer we discovered that the "restriction" on bit 31 is just
          for the "enable" case, and we don't even need to wait on the
          "disable" case.
      Signed-off-by: NPaulo Zanoni <paulo.r.zanoni@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      fa42e23c
  4. 18 12月, 2012 1 次提交
  5. 17 12月, 2012 5 次提交
  6. 11 12月, 2012 1 次提交
    • T
      drm/i915: Fix shifted screen on top of LVDS on IVY laptop · 335c07b7
      Takashi Iwai 提交于
      The commit [23670b32: drm/i915: CPT+ pch transcoder workaround]
      caused a regression on some HP laptops with IvyBridge.  The whole
      laptop screen is shifted downward for a few pixels constantly.
      The problem appears only on LVDS while DP and VGA seem unaffected.
      Also, the problem disappears once when go and back from S3.
      (S4 resume still shows the same problem.)
      
      This patch revives the minimum part the commit above dropped.
      For fixing this regression, only the setup of CHICKEN2 bit in
      cpt_init_clock_gating() is needed.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      335c07b7
  7. 05 12月, 2012 1 次提交
  8. 01 12月, 2012 1 次提交
    • C
      drm/i915: Delay allocation of stolen space for FBC · 11be49eb
      Chris Wilson 提交于
      As FBC is commonly disabled due to limitations of the chipset upon
      output configurations, on many systems FBC is never enabled. For those
      systems, it is advantageous to make use of the stolen memory for other
      objects and so we defer allocation of the FBC chunk until we actually
      require it. This increases the likelihood of that allocation failing,
      but that in turns means that we are already taking advantage of the
      stolen memory!
      
      As well as delaying the allocation from driver initialisation until the
      first use of FBC, we also return the stolen block after we finish using
      it - allowing greater flexibility in our usage of stolen space. A side
      effect of this is that we can then attempt to allocate only the required
      amount of space (with a little slack to reduce reallocation rate and
      avoid fragmentation).
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      11be49eb
  9. 29 11月, 2012 1 次提交
  10. 26 11月, 2012 1 次提交
    • C
      Revert "drm/i915: enable rc6 on ilk again" · 6567d748
      Chris Wilson 提交于
      Even with the cumulative set of ilk w/a, rc6 is demonstrably still
      failing and causing GPU hangs as found by Peter Wu. So we need to disable
      it again until it is stable.
      
      This reverts
      
      commit 456470eb
      Author: Daniel Vetter <daniel.vetter@ffwll.ch>
      Date:   Wed Aug 8 23:35:40 2012 +0200
      
          drm/i915: enable rc6 on ilk again
      
      and the follow-on
      
      commit cd7988ee
      Author: Daniel Vetter <daniel.vetter@ffwll.ch>
      Date:   Sun Aug 26 20:33:18 2012 +0200
      
          drm/i915: disable rc6 on ilk when vt-d is enabled
      
      Note: The situation around the gen4/5 gpu hangs that cropped up in 3.7
      is rather strange. Most useful bisects have lead to
      
      commit 6c085a72
      Author: Chris Wilson <chris@chris-wilson.co.uk>
      Date:   Mon Aug 20 11:40:46 2012 +0200
      
          drm/i915: Track unbound pages
      
      or even later commits that affect the gem bo recycling, which all is
      way past the point where we re-enabled rc6. But somehow
      reverting/disabling those commits doesn't help, but disabling rc6 at
      least helps for many hangs on ilk. Obviously it doesn't change
      anything at all on gen4, and there are still strange issues left on
      gen5 (which we unfortunately can't readily reproduce).
      
      Also, the error_state signature of the hangs which can be fixed with
      this patch look remarkably different to those which seem to be
      unaffected by the rc6 settings: The rc6 hangs are in the ring,
      somewhere in the MI_FLUSH/PIPE_CONTROL sequence to make ilk coherent,
      wheras all the other hangs tend to be at a random point in the middle
      of the user batch. So it could also be that we have different issues.
      
      Until we grow more clue, this at least helps some users.
      Reported-by: NPeter Wu <lekensteyn@gmail.com>
      References: https://bugs.freedesktop.org/show_bug.cgi?id=55984Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      [danvet: Added note with some more details about the gen4/5 3.7
      gpu hang regression.]
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      6567d748
  11. 22 11月, 2012 3 次提交
  12. 12 11月, 2012 14 次提交
  13. 20 10月, 2012 4 次提交
  14. 18 10月, 2012 2 次提交
  15. 16 10月, 2012 1 次提交
    • B
      drm/i915: Workaround to bump rc6 voltage to 450 · 31643d54
      Ben Widawsky 提交于
      BIOS should be setting the minimum voltage for rc6 to be 450mV. Old or
      buggy BIOSen may not be doing this, so we correct it for them. Ideally
      customers should update the BIOS as only it would know the optimal
      values for the platform, so we leave that fact as a DRM_ERROR for the
      user to see.
      
      Unfortunately this isn't fixing any of the issues it was targeted to
      fix, but it is documented that we must do it.
      
      CC: Jesse Barnes <jbarnes@virtuousgeek.org>
      CC: Matt Turner <mattst88@gmail.com>
      Signed-off-by: NBen Widawsky <ben@bwidawsk.net>
      Reviewed-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      [danvet: bikeshedded loglevel of the "your bios is broken message" to
      debug.]
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      31643d54