1. 06 2月, 2014 3 次提交
    • R
      drm/msm/mdp4: pageflip fixes · b69720c0
      Rob Clark 提交于
      Backport a few fixes found in the course of getting mdp5 working.
      There is a window of time after pageflip is requested, before we
      start scanning out the new fb (ie. while we are waiting for gpu).
      During that time we need to continue holding a reference to the
      still-current scanout fb, to avoid the backing gem bo's from being
      destroyed.
      
      Possibly a common mdp_crtc parent class could be useful to share
      some of this logic between mdp4_crtc and mdp5_crtc.  OTOH, this
      all can be removed from the driver once atomic is in place, as
      plane/crtc updates get deferred until all fb's are ready before
      calling in to .page_flip(), etc.
      Signed-off-by: NRob Clark <robdclark@gmail.com>
      b69720c0
    • R
      drm/msm/mdp5: fix ref leaks in error paths · 37033a76
      Rob Clark 提交于
      Signed-off-by: NRob Clark <robdclark@gmail.com>
      37033a76
    • R
      drm/msm: fix inconsequential typo · 7896052d
      Rob Clark 提交于
      Small typo I noticed in the mdp4_plane code.. no consequence because
      PIPE_SRC_XY and PIPE_DST_XY have same register layout.
      Signed-off-by: NRob Clark <robdclark@gmail.com>
      7896052d
  2. 30 1月, 2014 15 次提交
  3. 29 1月, 2014 1 次提交
    • D
      drm: ast,cirrus,mgag200: use drm_can_sleep · f4b4718b
      Dave Airlie 提交于
      these 3 were checking in_interrupt but we have situations where
      calling vunmap under this could cause a BUG to be hit in
      smp_call_function_many. Use the drm_can_sleep macro instead,
      which should stop this path from been taken in this case.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      f4b4718b
  4. 28 1月, 2014 4 次提交
  5. 25 1月, 2014 2 次提交
    • S
      i915: remove pm_qos request on error · 22accca0
      Stanislaw Gruszka 提交于
      Not removing pm qos request and free memory for it can cause crash,
      when some other driver use pm qos. For example, this oops:
      
      BUG: unable to handle kernel paging request at fffffffffffffff8
      IP: [<ffffffff81307a6b>] plist_add+0x5b/0xd0
      Call Trace:
       [<ffffffff810acf25>] pm_qos_update_target+0x125/0x1e0
       [<ffffffff810ad071>] pm_qos_add_request+0x91/0x100
       [<ffffffffa053ec14>] e1000_open+0xe4/0x5b0 [e1000e]
      
      was caused by earlier i915 probe failure:
      
      [drm:i915_report_and_clear_eir] *ERROR* EIR stuck: 0x00000010, masking
      [drm:init_ring_common] *ERROR* render ring initialization failed ctl 0001f001 head 00003004 tail 00000000 start 00003000
      [drm:i915_driver_load] *ERROR* failed to init modeset
      i915: probe of 0000:00:02.0 failed with error -5
      
      Bug report:
      http://bugzilla.redhat.com/show_bug.cgi?id=1057533Reported-by: NGiandomenico De Tullio <ghisha@gmail.com>
      Cc: stable@vger.kernel.org
      Signed-off-by: NStanislaw Gruszka <sgruszka@redhat.com>
      [danvet: Drop unnecessary code movement.]
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      22accca0
    • 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
  6. 23 1月, 2014 15 次提交