1. 12 11月, 2012 1 次提交
    • D
      drm/i915: Write the FDI RX TU size reg at the right time · cd986abb
      Daniel Vetter 提交于
      According to "Graphics BSpec: vol4g North Display Engine Registers [IVB],
      Display Mode Set Sequence" We need to write the TU size register
      of the fdi RX unit _before_ starting to train the link.
      
      Note: The current code is actually correct as Paulo mentioned in
      review, but it's a bit confusion since only the fdi rx/tx plls need to
      be enabled before the cpu pipes/planes. Hence it's still a good idea
      to move the TU_SIZE setting to the "right" spot in the sequence, to
      better match Bspec.
      Reviewed-by: NPaulo Zanoni <paulo.r.zanoni@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      cd986abb
  2. 02 11月, 2012 1 次提交
    • J
      drm/i915: pass adjusted_mode to intel_choose_pipe_bpp_dither(), again · c8241969
      Jani Nikula 提交于
      Daniel's backmerge
      
      commit c2fb7916
      Merge: 29de6ce5 6f0c0580
      Author: Daniel Vetter <daniel.vetter@ffwll.ch>
      Date:   Mon Oct 22 14:34:51 2012 +0200
      
          Merge tag 'v3.7-rc2' into drm-intel-next-queued
      
      to solve conflicts blew up (either git or Daniel was trying to be too
      clever for their own good; it's usually convenient to blame tools ;) and
      caused the changes of
      
      commit 0c96c65b
      Author: Jani Nikula <jani.nikula@intel.com>
      Date:   Wed Sep 26 18:43:10 2012 +0300
      
          drm/i915: use adjusted_mode instead of mode for checking the 6bpc force flag
      
      in ironlake_crtc_mode_set() to be dropped.
      
      Fix the call in ironlake_crtc_mode_set() again, and while at it, also fix
      the new, copy-pasted haswell_crtc_mode_set() to use adjusted_mode.
      Signed-off-by: NJani Nikula <jani.nikula@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      c8241969
  3. 26 10月, 2012 12 次提交
  4. 24 10月, 2012 1 次提交
  5. 19 10月, 2012 1 次提交
  6. 18 10月, 2012 2 次提交
  7. 12 10月, 2012 2 次提交
    • D
      drm/i915: fixup the plane->pipe fixup code · fa555837
      Daniel Vetter 提交于
      We need to check whether the _other plane is on our pipe, not whether
      our plane is on the other pipe. Otherwise if not both pipes/planes are
      active, we won't properly clean up the mess and set up our desired
      plane->pipe mapping.
      
      v2: Fixup the logic, I've totally fumbled it. Noticed by Chris Wilson.
      
      v3: I've checked Bspec, and the flexible plane->pipe mapping is a
      gen2/3 feature, so test for that instead of PCH_SPLIT
      
      v4: Check whether we indeed have 2 pipes before checking the other
      pipe, to avoid upsetting i845g/i865g. Noticed by Chris Wilson.
      
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=51265
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=49838Tested-by: NDave Airlie <airlied@gmail.com>
      Tested-by: Chris Wilson <chris@chris-wilson.co.uk> #855gm
      Reviewed-by: NChris Wilson <chris@chris-wilson.co.uk>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      fa555837
    • D
      drm/i915: rip out the pipe A quirk for i855gm · ccd0d36e
      Daniel Vetter 提交于
      This seems to be the root-cause that breaks resume on my i855gm when I
      apply the "drm/i915: fixup the plane->pipe fixup code" patch. And that
      code doesn't even run on my machine, so it's pure timing changes
      causing the regression.
      
      Furthermore resume has been constantly switching between working and
      broken on this machine ever since kms support has been merged,
      seemingly with no related change as a root cause. And always with the
      same symptoms of the backlight lighting up, but the lvds panel only
      displaying black.
      
      Also, of both i855gm variants only one is in the table. And in the
      past we've only ever removed entries from this quirk table because it
      breaks things.
      
      So let's just remove it - in case there's indeed a bios out there
      relying on a running pipe A, we can add back in a more precise quirk
      entry, like all the others (save for i830/i845).
      
      Tested-by: Chris Wilson <chris@chris-wilson.co.uk> #855gm
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      ccd0d36e
  8. 11 10月, 2012 1 次提交
  9. 10 10月, 2012 7 次提交
  10. 09 10月, 2012 1 次提交
  11. 04 10月, 2012 1 次提交
  12. 03 10月, 2012 1 次提交
  13. 02 10月, 2012 2 次提交
    • P
      drm/i915: extract intel_set_pipe_timings from crtc_mode_set · b0e77b9c
      Paulo Zanoni 提交于
      Version 2: call intel_set_pipe_timings from both i9xx_crtc_mode_set
      and ironlake_crtc_mode_set, instead of just ironlake, as requested by
      Daniel Vetter.
      
      The problem caused by calling this function from i9xx_crtc_mode_set
      too is that now on i9xx we write to PIPESRC before writing to DSPSIZE
      and DSPPOS. I could not find any evidence in our documentation that
      this won't work, and the docs actually say the pipe registers should
      be set before the plane registers.
      
      Version 3: don't remove pipeconf bits on i9xx_crtc_mode_set.
      Signed-off-by: NPaulo Zanoni <paulo.r.zanoni@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      b0e77b9c
    • C
      drm/i915: Flush the pending flips on the CRTC before modification · 5bb61643
      Chris Wilson 提交于
      This was meant to be the purpose of the
      intel_crtc_wait_for_pending_flips() function which is called whilst
      preparing the CRTC for a modeset or before disabling. However, as Ville
      Syrjala pointed out, we set the pending flip notification on the old
      framebuffer that is no longer attached to the CRTC by the time we come
      to flush the pending operations. Instead, we can simply wait on the
      pending unpin work to be finished on this CRTC, knowning that the
      hardware has therefore finished modifying the registers, before proceeding
      with our direct access.
      
      Fixes i-g-t/flip_test on non-pch platforms. pch platforms simply
      schedule the flip immediately when the pipe is disabled, leading
      to other funny issues.
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Cc: stable@vger.kernel.org
      [danvet: Added i-g-t note and cc: stable]
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      5bb61643
  14. 28 9月, 2012 4 次提交
  15. 27 9月, 2012 1 次提交
    • J
      drm/i915: use adjusted_mode instead of mode for checking the 6bpc force flag · 0c96c65b
      Jani Nikula 提交于
      The dithering introduced in
      
      commit 3b5c78a3
      Author: Adam Jackson <ajax@redhat.com>
      Date:   Tue Dec 13 15:41:00 2011 -0800
      
          drm/i915/dp: Dither down to 6bpc if it makes the mode fit
      
      stores the INTEL_MODE_DP_FORCE_6BPC flag in the private_flags of the
      adjusted mode, while i9xx_crtc_mode_set() and ironlake_crtc_mode_set() use
      the original mode, without the flag, so it would never have any
      effect. However, the BPC was clamped by VBT settings, making things work by
      coincidence, until that part was removed in
      
      commit 4344b813
      Author: Daniel Vetter <daniel.vetter@ffwll.ch>
      Date:   Fri Aug 10 11:10:20 2012 +0200
      
      Use adjusted_mode instead of mode when checking for
      INTEL_MODE_DP_FORCE_6BPC to make the flag have effect.
      
      v2: Don't forget to fix this in i9xx_crtc_mode_set() also, pointed out by
      Daniel both before and after sending the first patch.
      
      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=47621
      CC: Adam Jackson <ajax@redhat.com>
      CC: stable@vger.kernel.org
      Signed-off-by: NJani Nikula <jani.nikula@intel.com>
      Reviewed-by: NAdam Jackson <ajax@redhat.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      0c96c65b
  16. 25 9月, 2012 2 次提交