1. 03 9月, 2014 7 次提交
    • A
      drm/i915/bdw: Apply workarounds in render ring init function · 86d7f238
      Arun Siluvery 提交于
      For BDW workarounds are currently initialized in init_clock_gating() but
      they are lost during reset, suspend/resume etc; this patch moves the WAs
      that are part of register state context to render ring init fn otherwise
      default context ends up with incorrect values as they don't get initialized
      until init_clock_gating fn.
      
      v2: Add workarounds to golden render state
      This method has its own issues, first of all this is different for
      each gen and it is generated using a tool so adding new workaround
      and mainitaining them across gens is not a straightforward process.
      
      v3: Use LRIs to emit these workarounds (Ville)
      Instead of modifying the golden render state the same LRIs are
      emitted from within the driver.
      
      v4: Use abstract name when exporting gen specific routines (Chris)
      
      For: VIZ-4092
      Signed-off-by: NArun Siluvery <arun.siluvery@linux.intel.com>
      Reviewed-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      86d7f238
    • R
      drm/i915: FBC flush nuke for BDW · c5ad011d
      Rodrigo Vivi 提交于
      According to spec FBC on BDW and HSW are identical without any gaps.
      So let's copy the nuke and let FBC really start compressing stuff.
      
      Without this patch we can verify with false color that nothing is being
      compressed. With the nuke in place and false color it is possible
      to see false color debugs.
      
      Unfortunatelly on some rings like BCS on BDW we have to avoid Bits 22:18 on
      LRIs due to a high risk of hung. So, when using Blt ring for frontbuffer rend
      cache would never been cleaned and FBC would stop compressing buffer.
      One alternative is to cache clean on software frontbuffer tracking.
      
      v2: Fix rebase conflict.
      v3: Do not clean cache on BCS ring. Instead use sw frontbuffer tracking.
      Signed-off-by: NRodrigo Vivi <rodrigo.vivi@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      c5ad011d
    • P
      drm/i915: rename gen8_init_clock_gating to broadwell_init_clock_gating · 47c2bd97
      Paulo Zanoni 提交于
      Because CHV uses cherryview_init_clock_gating instead of
      gen8_init_clock_gating.
      Signed-off-by: NPaulo Zanoni <paulo.r.zanoni@intel.com>
      Reviewed-by: NDamien Lespiau <damien.lespiau@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      47c2bd97
    • P
      drm/i915: call lpt_init_clock_gating on BDW too · 89d6b2b8
      Paulo Zanoni 提交于
      Because BDW has WPT, which is equivalent to LPT. This is just like the
      CPT/PPT case.
      Signed-off-by: NPaulo Zanoni <paulo.r.zanoni@intel.com>
      Reviewed-by: NDamien Lespiau <damien.lespiau@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      89d6b2b8
    • D
      drm/i915: Bring UP Power Wells before disabling RC6. · 98a2e5f9
      Deepak S 提交于
      We need do forcewake before Disabling RC6, This is what the BIOS
      expects while going into suspend.
      
      v2: updated commit message. (Daniel)
      
      Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
      Signed-off-by: NDeepak S <deepak.s@intel.com>
      Signed-off-by: NRodrigo Vivi <rodrigo.vivi@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      98a2e5f9
    • D
      drm/i915: Use dev_priv as first argument of for_each_pipe() · 055e393f
      Damien Lespiau 提交于
      Chris has decided that enough is enough. It's time to fixup dev Vs
      dev_priv. This is a modest contribution to the crusade.
      
      v2: Still use INTEL_INFO(), for the (mythical!) case we want to hardcode
          the info struct with defines (Chris)
          Rename the macro argument from 'dev' to 'dev_priv' (Jani)
      
      v3: Use names unlikely to be used as macro arguments (Chris)
      Suggested-by: NChris Wilson <chris@chris-wilson.co.uk>
      Signed-off-by: NDamien Lespiau <damien.lespiau@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      055e393f
    • S
      drm/i915: Add 180 degree primary plane rotation support · 48404c1e
      Sonika Jindal 提交于
      Primary planes support 180 degree rotation. Expose the feature
      through rotation drm property.
      
      v2: Calculating linear/tiled offsets based on pipe source width and
      height. Added 180 degree rotation support in ironlake_update_plane.
      
      v3: Checking if CRTC is active before issueing update_plane. Added
      wait for vblank to make sure we dont overtake page flips. Disabling
      FBC since it does not work with rotated planes.
      
      v4: Updated rotation checks for pending flips, fbc disable. Creating
      rotation property only for Gen4 onwards. Property resetting as part
      of lastclose.
      
      v5: Resetting property in i915_driver_lastclose properly for planes
      and crtcs. Fixed linear offset calculation that was off by 1 w.r.t
      width in i9xx_update_plane and ironlake_update_plane. Removed tab
      based indentation and unnecessary braces in intel_crtc_set_property
      and intel_update_fbc. FBC and flip related checks should be done only
      for valid crtcs.
      
      v6: Minor nits in FBC disable checks for comments in intel_crtc_set_property
      and positioning the disable code in intel_update_fbc.
      
      v7: In case rotation property on inactive crtc is updated, we return
      successfully printing debug log as crtc is inactive and only property change
      is preserved.
      
      v8: update_plane is changed to update_primary_plane, crtc->fb is changed to
      crtc->primary->fb  and return value of update_primary_plane is ignored.
      
      v9: added rotation property to primary plane instead of crtc. Removing reset
      of rotation property from lastclose. rotation_property is moved to
      drm_mode_config, so drm layer will take care of resetting. Adding updation of
      fbc when rotation is set to 0. Allowing rotation only if value is
      different than old one.
      
      v10: Calling intel_primary_plane_setplane instead of update_primary_plane in
      set_property(Daniel).
      
      v11: Using same set_property function for both primary and sprite, Adding
      primary plane specific code in the same function (Matt).
      
      v12: Removing disabling/ enabling of fbc from set_property because it is done
      from intel_pipe_set_base. Other formatting
      
      v13: we need to call disable_fbc before changing the rotation to 180,
      disable_fbc from intel_pipe_set_base gets called very late, that will
      be used to re-enable fbc if rotation is set to 0 (Ville).
      
      Testcase: igt/kms_rotation_crc
      Signed-off-by: NUma Shankar <uma.shankar@intel.com>
      Signed-off-by: NSagar Kamble <sagar.a.kamble@intel.com>
      Signed-off-by: NSonika Jindal <sonika.jindal@intel.com>
      [danvet: Add FIXME to explain why we need the open-coded update_fbc
      hunk to disable fbc when rotated 180 degree. And make checkpatch
      happier.]
      Acked-by: NMatt Roper <matthew.d.roper@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      48404c1e
  2. 11 8月, 2014 1 次提交
  3. 08 8月, 2014 17 次提交
  4. 07 8月, 2014 4 次提交
  5. 24 7月, 2014 1 次提交
  6. 23 7月, 2014 6 次提交
  7. 12 7月, 2014 4 次提交