1. 20 1月, 2012 1 次提交
    • D
      drm/i915: protect force_wake_(get|put) with the gt_lock · 9f1f46a4
      Daniel Vetter 提交于
      The problem this patch solves is that the forcewake accounting
      necessary for register reads is protected by dev->struct_mutex. But the
      hangcheck and error_capture code need to access registers without
      grabbing this mutex because we hold it while waiting for the gpu.
      So a new lock is required. Because currently the error_state capture
      is called from the error irq handler and the hangcheck code runs from
      a timer, it needs to be an irqsafe spinlock (note that the registers
      used by the irq handler (neglecting the error handling part) only uses
      registers that don't need the forcewake dance).
      
      We could tune this down to a normal spinlock when we rework the
      error_state capture and hangcheck code to run from a workqueue.  But
      we don't have any read in a fastpath that needs forcewake, so I've
      decided to not care much about overhead.
      
      This prevents tests/gem_hangcheck_forcewake from i-g-t from killing my
      snb on recent kernels - something must have slightly changed the
      timings. On previous kernels it only trigger a WARN about the broken
      locking.
      
      v2: Drop the previous patch for the register writes.
      
      v3: Improve the commit message per Chris Wilson's suggestions.
      Signed-Off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Reviewed-by: NChris Wilson <chris@chris-wilson.co.uk>
      Reviewed-by: NEugeni Dodonov <eugeni.dodonov@intel.com>
      Signed-off-by: NKeith Packard <keithp@keithp.com>
      9f1f46a4
  2. 14 1月, 2012 3 次提交
  3. 13 1月, 2012 3 次提交
  4. 10 1月, 2012 3 次提交
  5. 07 1月, 2012 3 次提交
  6. 06 1月, 2012 1 次提交
  7. 05 1月, 2012 1 次提交
    • R
      drm: add support for private planes · 0a7eb243
      Rob Clark 提交于
      In cases where the scanout hw is sufficiently similar between "overlay"
      and traditional crtc layers, it might be convenient to allow the driver
      to create internal drm_plane helper objects used by the drm_crtc
      implementation, rather than duplicate code between the plane and crtc.
      A private plane is not exposed to userspace.
      Signed-off-by: NRob Clark <rob@ti.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      0a7eb243
  8. 04 1月, 2012 17 次提交
  9. 02 1月, 2012 1 次提交
  10. 27 12月, 2011 2 次提交
  11. 20 12月, 2011 5 次提交