1. 14 5月, 2014 8 次提交
  2. 13 5月, 2014 26 次提交
  3. 08 5月, 2014 2 次提交
  4. 07 5月, 2014 4 次提交
    • B
      drm/i915: Make aliasing a 2nd class VM · 6e7186af
      Ben Widawsky 提交于
      There is a good debate to be had about how best to fit the aliasing
      PPGTT into the code. However, as it stands right now, getting aliasing
      PPGTT bindings is a hack, and done through implicit arguments. To make
      this absolutely clear, WARN and return an error if a driver writer tries
      to do something they shouldn't.
      
      I have no issue with an eventual revert of this patch. It makes sense
      for what we have today.
      Signed-off-by: NBen Widawsky <ben@bwidawsk.net>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      6e7186af
    • B
      drm/i915: Use topdown allocation for PPGTT PDEs on gen6/7 · 3e8b5ae9
      Ben Widawsky 提交于
      It was always the intention to do the topdown allocation for context
      objects (Chris' idea originally). Unfortunately, I never managed to land
      the patch, but someone else did, so now we can use it.
      
      As a reminder, hardware contexts never need to be in the precious GTT
      aperture space - which is what is what happens with the normal bottom up
      allocation we do today. Doing a top down allocation increases the odds
      that the HW contexts can get out of the way, especially with per FD
      contexts as is done in full PPGTT
      Signed-off-by: NBen Widawsky <ben@bwidawsk.net>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      3e8b5ae9
    • I
      drm/i915: vlv: enable runtime PM · fd7f8cce
      Imre Deak 提交于
      Signed-off-by: NImre Deak <imre.deak@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      fd7f8cce
    • I
      drm/i915: vlv: add runtime PM support · ddeea5b0
      Imre Deak 提交于
      Add runtime PM support for VLV, but leave it disabled. The next patch
      enables it.
      
      The suspend/resume sequence used is based on [1] and [2]. In practice we
      depend on the GT RC6 mechanism to save the HW context depending on the
      render and media power wells. By the time we run the runtime suspend
      callback the display side is also off and the HW context for that is
      managed by the display power domain framework.
      
      Besides the above there are Gunit registers that depend on a system-wide
      power well. This power well goes off once the device enters any of the
      S0i[R123] states. To handle this scenario, save/restore these Gunit
      registers. Note that this is not the complete register set dictated by
      [2], to remove some overhead, registers that are known not to be used are
      ignored. Also some registers are fully setup by initialization functions
      called during resume, these are not saved either. The list of registers
      can be further reduced, see the TODO note in the code.
      
      [1] VLV_gfx_clocking_PM_reset_y12w21d3 / "Driver D3 entry/exit"
      [2] VLV2_S0IXRegs
      
      v2:
      - unchanged
      v3:
      - fix s/GEN6_PMIIR/GEN6_PMIMR/ typo when saving/restoring registers
        (Ville)
      v4:
      - rebased on the previous patch fixing GEN register prefixes
      Reviewed-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      [ rebased (according to v4) ]
      Signed-off-by: NImre Deak <imre.deak@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      ddeea5b0