1. 13 2月, 2014 2 次提交
    • D
      drm/i915: Make the intel_device_info structure kept in dev_priv writable · 5c969aa7
      Damien Lespiau 提交于
      Turns out it'd be nice to change some device information at run-time or simply
      have some code to fill in the info struct instead of having to declare the
      values in 30+ structures.
      
      What prompted this change is handling fused out display/pipe and tweaking
      num_pipes at run-time, but I'm quite sure we'll find other flags/limits to
      stick into dev_priv->info.
      
      Most of the changes were done with a sed:
      sed -i -e 's/dev_priv->info->/dev_priv->info./g' drivers/gpu/drm/i915/*[ch]
      
      with a few tweaks to make it all work:
      - Change the field definition in struct drm_i915_private
      - adjust i915_dump_device_info()
      - adjust i915_driver_load()
      - adjust the INTEL_INFO() macro
      
      v2: cast the info pointer returned by INTEL_INFO() to be const to catch
          uses that would modify the structure post-initialization.
          (Ville Syrjälä)
      
      v3: Redo the patch onto latest drm-nightly,
          Keep the info field const to catch post initialization writes
          instead of the v2 solution,
          Use a direct structure copy for the initial info initialization to
          use the compiler type safety (Ville Syrjälä)
      
      Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com> (for v2)
      Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> (for v2)
      Signed-off-by: NDamien Lespiau <damien.lespiau@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      5c969aa7
    • V
      drm/i915: Disable SF pipelined attribute fetch for SNB · e927ecde
      Ville Syrjälä 提交于
      According to Bspec we need to disable SF pipelined attribute fetch
      whenever SF outputs exceed 16 and normal clip mode is used. A quick
      glance at Mesa suggests that these conditions could happen. So let's
      just always set the magic bit.
      Signed-off-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Reviewed-by: NKenneth Graunke <kenneth@whitecape.org>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      e927ecde
  2. 06 2月, 2014 1 次提交
  3. 05 2月, 2014 1 次提交
    • A
      drm/i915: Reorganize display pipe register accesses · a57c774a
      Antti Koskipaa 提交于
      RFCv2: Reorganize array indexing so that full offsets can be used as
      is. It makes grepping for registers in i915_reg.h much easier. Also
      move offset arrays to intel_device_info.
      
      v1: Fixed offsets for VLV, proper eDP handling
      
      v2: Fixed BCLRPAT, PIPESRC, PIPECONF and DSP* macros.
      
      v3: Added EDP pipe comment, removed redundant offset arrays for
          MSA_MISC and DDI_FUNC_CTL.
      
      v4: Rename patch and report object size increase.
      
      v5: Change location of commas, add PIPE_EDP into enum pipe
      
      v6: Insert PIPE_EDP_OFFSET into pipe offset array
      
      v7: Set I915_MAX_PIPES back to 3, change more registers accessors
          to use the new macros, get rid of _PIPE_INC and add dev_priv
          as a parameter where required by the new macros.
      
      Upcoming hardware will not have the various display pipe register
      ranges evenly spaced in memory. Change register address calculations
      into array lookups.
      
      Tested on SNB, VLV, IVB, Gen2 and HSW w/eDP.
      
      I left the UMS cruft untouched.
      
      Size differences:
         text    data     bss     dec     hex filename
       596431    4634      56  601121   92c21 i915.ko (new)
       593199    4634      56  597889   91f81 i915.ko (old)
      Signed-off-by: NAntti Koskipaa <antti.koskipaa@linux.intel.com>
      Reviewed-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Tested-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      a57c774a
  4. 04 2月, 2014 1 次提交
  5. 30 1月, 2014 1 次提交
  6. 28 1月, 2014 2 次提交
  7. 26 1月, 2014 2 次提交
  8. 25 1月, 2014 3 次提交
    • J
      drm/i915: clock readout support for DDI v3 · 11578553
      Jesse Barnes 提交于
      Read out and calculate the port and pixel clocks on DDI configs as well.
      This means we have to grab the DP divider values and look at the port
      mapping to figure out which clock select reg to read out.
      
      v2: do the work from ddi_get_config (Ville)
      v3: check WRPLL reference clock (Ville)
          add additional SPLL freqs (Ville)
          clean up port/crtc clock calc (Ville)
          fix up crtc_clock conditionals (Ville)
          drop superfluous dp_get_m_n from get_config (Ville)
      Signed-off-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      Reviewed-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      11578553
    • D
      drm/i915: Only restore backlight combination mode reg for ums · 7f1bdbcb
      Daniel Vetter 提交于
      This was forgotten in
      
      commit 565ee389
      Author: Jani Nikula <jani.nikula@intel.com>
      Date:   Wed Nov 13 12:56:29 2013 +0200
      
          drm/i915: do not save/restore backlight registers in KMS
      
      Since the confusion was likely due to the duplicated definition for
      this pci config register, let's unify that, too.
      
      Cc: Jani Nikula <jani.nikula@intel.com>
      Reviewed-by: NJani Nikula <jani.nikula@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      7f1bdbcb
    • D
      Revert "drm/i915: Mask reserved bits in display/sprite address registers" · 85ba7b7d
      Daniel Vetter 提交于
      This reverts commit 446f2545.
      
      I've left the masking in the pageflip code since that seems to be some
      useful piece of preemptive robustness.
      
      Iirc I've merged this patch under the assumption that the BIOS leaves
      some random gunk in the lower bits and gets unhappy if we trample on
      them. We have quite a few case like this, so this made sense.
      
      Now I've just learned that there's actual hardware features bits in
      the low 12 bits, and the kernel needs to preserve them to allow a
      userspace blob to do its job. Given Dave Airlie's clear stance on
      userspace blob drivers I've quickly chatted with him and he doesn't
      seem too happy. So let's revert this.
      
      If there are indeed bits that we must preserve in this range then we
      can ressurrect this patch, but with proper documentation for those
      bits supplied. And we probably also need to think a bit about
      interactions with our driver.
      
      Cc: Armin Reese <armin.c.reese@intel.com>
      Cc: Jesse Barnes <jbarnes@virtuousgeek.org>
      Cc: Dave Airlie <airlied@linux.ie>
      Reviewed-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      85ba7b7d
  9. 23 1月, 2014 1 次提交
  10. 22 1月, 2014 1 次提交
  11. 11 1月, 2014 1 次提交
  12. 18 12月, 2013 1 次提交
  13. 17 12月, 2013 2 次提交
  14. 14 12月, 2013 2 次提交
  15. 12 12月, 2013 2 次提交
  16. 04 12月, 2013 1 次提交
  17. 29 11月, 2013 1 次提交
  18. 28 11月, 2013 3 次提交
  19. 21 11月, 2013 2 次提交
  20. 18 11月, 2013 1 次提交
    • D
      drm/i915: dp aux irq support for g4x/vlv · 4aeebd74
      Daniel Vetter 提交于
      Now we have this everywhere. Next up would be to wire up the DP
      hotplug pin to speed up panel power sequencing for eDP panels ...
      
      I've decided to leave the has_aux_irq logic in the code, it should
      come handy for hw bringup.
      
      For testing/fail-safety the dp aux code already has a timeout when
      waiting for interrupts to signal completion and screams rather loud if
      they don't arrive in time. Given that we need a real piece of hw to
      talk to anyway this is probably as good as it gets.
      
      v2: Don't check the dp aux channel bits on i965 machines, they have a
      different meaning there. Yay for reusing bits at will! Spotted by
      Jani.
      
      Cc: Jani Nikula <jani.nikula@intel.com>
      Reviewed-by: NJani Nikula <jani.nikula@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      4aeebd74
  21. 11 11月, 2013 1 次提交
  22. 09 11月, 2013 8 次提交