1. 04 May, 2013 2 commits
    • Imre Deak's avatar
      drm/i915: hsw: fix link training for eDP on port-A · 3ab9c637
      Imre Deak authored
      According to BSpec the link training sequence for eDP on HSW port-A
      should be as follows:
      
      1. link training: clock recovery
      2. link training: equalization
      3. link training: set idle transmission mode
      4. display pipe enable
      5. link training: disable (set normal mode)
      
      Contrary to this at the moment we don't do step 3. and we do step 5.
      before step 4. Fix this by setting idle transmission mode for eDP at
      the end of intel_dp_complete_link_train and adding a new
      intel_dp_stop_link_training function to disable link training. With
      these changes we'll end up with the following functions corresponding
      to the above steps:
      
      intel_dp_start_link_train    -> step 1.
      intel_dp_complete_link_train -> step 2., step 3.
      intel_dp_stop_link_train     -> step 5.
      
      For port-A we'll call intel_dp_stop_link_train only after enabling the
      pipe, for everything else we'll call it right after
      intel_dp_complete_link_train to preserve the current behavior.
      
      Tested on HSW/HSW-ULT.
      
      In v2:
      - Due to a HW issue we must set idle transmission mode for port-A too
        before enabling the pipe. Thanks for Arthur Runyan for explaining
        this.
      - Update the patch subject to make it clear that it's an eDP fix, DP is
        not affected.
      
      v3:
      - rename intel_dp_link_train() to intel_dp_set_link_train(), use 'val'
        instead 'l' as var name. (Paulo)
      Signed-off-by: default avatarImre Deak <imre.deak@intel.com>
      Reviewed-by: default avatarPaulo Zanoni <paulo.r.zanoni@intel.com>
      Tested-by: default avatarPaulo Zanoni <paulo.r.zanoni@intel.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      3ab9c637
    • Daniel Vetter's avatar
      Revert "drm/i915: revert eDP bpp clamping code changes" · 657445fe
      Daniel Vetter authored
      This reverts commit 57c21963.
      
      It's an ugly hack for a Haswell SDV platform where the vbt doesn't
      seem to fully agree with the panel. Since it seems to cause issues on
      real eDP platform let's just kill this hack again.
      Reported-and-tested-by: default avatarJosh Boyer <jwboyer@gmail.com>
      References: https://lkml.org/lkml/2013/5/3/467
      Cc: Paulo Zanoni <przanoni@gmail.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      657445fe
  2. 02 May, 2013 1 commit
  3. 01 May, 2013 1 commit
  4. 30 Apr, 2013 2 commits
  5. 27 Apr, 2013 1 commit
    • Zhang, Xiong Y's avatar
      drm/i915: correct the calculation of first_pd_entry_in_global_pt · 43b27290
      Zhang, Xiong Y authored
      When ppgtt is enabled, dev_priv->gtt.total has excluded the gtt space
      occupied by ppgtt table in i915_gem_init_global_gtt() function. So the
      calculation of first_pd_entry_in_global_pt doesn't need to subtract
      I915_PPGTT_PD_ENTRIES again. Or else PPGTT directory table will be
      destroyed by global gtt allocation.
      
      This regression has been introduced in
      
      commit a54c0c27
      Author: Ben Widawsky <ben@bwidawsk.net>
      Date:   Thu Jan 24 14:45:00 2013 -0800
      
          drm/i915: remove intel_gtt structure
      
      The breakage is pretty subtile since the old gtt_total_entries
      included the pde range, whereas the new on did not.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: Xiong Zhang<xiong.y.zhang@intel.com>
      [danvet: Add regression citation and cc: stable. Thanks to Chris for
      correcting my wrong guess about which commit broke things.]
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      43b27290
  6. 24 Apr, 2013 1 commit
    • Ben Widawsky's avatar
      Revert "drm/i915: Don't overclock on Haswell" · 988b36e5
      Ben Widawsky authored
      This reverts commit fec46b5e.
      
      The latest version of our PM programming doc (which is WAY better than
      previous versions, and thanks for that) says something along the lines
      of, "On Haswell overclocking is no long achieved via mailbox registers."
      Which I misinterpreted as, the driver must done something different than
      it did on IVB, and SNB.
      
      It appears I jumped the gun, and that's all false. We've gotten some
      clarification, and it appears at least *reading* the overclocking
      information works in exactly the same manner.
      
      Cc: kim.l.saw-chu@intel.com
      Signed-off-by: default avatarBen Widawsky <ben@bwidawsk.net>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      988b36e5
  7. 23 Apr, 2013 2 commits
  8. 19 Apr, 2013 1 commit
  9. 18 Apr, 2013 29 commits