1. 25 10月, 2016 1 次提交
    • C
      dma-buf: Rename struct fence to dma_fence · f54d1867
      Chris Wilson 提交于
      I plan to usurp the short name of struct fence for a core kernel struct,
      and so I need to rename the specialised fence/timeline for DMA
      operations to make room.
      
      A consensus was reached in
      https://lists.freedesktop.org/archives/dri-devel/2016-July/113083.html
      that making clear this fence applies to DMA operations was a good thing.
      Since then the patch has grown a bit as usage increases, so hopefully it
      remains a good thing!
      
      (v2...: rebase, rerun spatch)
      v3: Compile on msm, spotted a manual fixup that I broke.
      v4: Try again for msm, sorry Daniel
      
      coccinelle script:
      @@
      
      @@
      - struct fence
      + struct dma_fence
      @@
      
      @@
      - struct fence_ops
      + struct dma_fence_ops
      @@
      
      @@
      - struct fence_cb
      + struct dma_fence_cb
      @@
      
      @@
      - struct fence_array
      + struct dma_fence_array
      @@
      
      @@
      - enum fence_flag_bits
      + enum dma_fence_flag_bits
      @@
      
      @@
      (
      - fence_init
      + dma_fence_init
      |
      - fence_release
      + dma_fence_release
      |
      - fence_free
      + dma_fence_free
      |
      - fence_get
      + dma_fence_get
      |
      - fence_get_rcu
      + dma_fence_get_rcu
      |
      - fence_put
      + dma_fence_put
      |
      - fence_signal
      + dma_fence_signal
      |
      - fence_signal_locked
      + dma_fence_signal_locked
      |
      - fence_default_wait
      + dma_fence_default_wait
      |
      - fence_add_callback
      + dma_fence_add_callback
      |
      - fence_remove_callback
      + dma_fence_remove_callback
      |
      - fence_enable_sw_signaling
      + dma_fence_enable_sw_signaling
      |
      - fence_is_signaled_locked
      + dma_fence_is_signaled_locked
      |
      - fence_is_signaled
      + dma_fence_is_signaled
      |
      - fence_is_later
      + dma_fence_is_later
      |
      - fence_later
      + dma_fence_later
      |
      - fence_wait_timeout
      + dma_fence_wait_timeout
      |
      - fence_wait_any_timeout
      + dma_fence_wait_any_timeout
      |
      - fence_wait
      + dma_fence_wait
      |
      - fence_context_alloc
      + dma_fence_context_alloc
      |
      - fence_array_create
      + dma_fence_array_create
      |
      - to_fence_array
      + to_dma_fence_array
      |
      - fence_is_array
      + dma_fence_is_array
      |
      - trace_fence_emit
      + trace_dma_fence_emit
      |
      - FENCE_TRACE
      + DMA_FENCE_TRACE
      |
      - FENCE_WARN
      + DMA_FENCE_WARN
      |
      - FENCE_ERR
      + DMA_FENCE_ERR
      )
       (
       ...
       )
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Reviewed-by: NGustavo Padovan <gustavo.padovan@collabora.co.uk>
      Acked-by: NSumit Semwal <sumit.semwal@linaro.org>
      Acked-by: NChristian König <christian.koenig@amd.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Link: http://patchwork.freedesktop.org/patch/msgid/20161025120045.28839-1-chris@chris-wilson.co.uk
      f54d1867
  2. 16 9月, 2016 4 次提交
  3. 29 8月, 2016 2 次提交
  4. 16 7月, 2016 3 次提交
  5. 05 6月, 2016 2 次提交
  6. 08 5月, 2016 5 次提交
  7. 30 4月, 2016 1 次提交
  8. 04 3月, 2016 2 次提交
  9. 12 6月, 2015 1 次提交
    • R
      drm/msm: restart queued submits after hang · 1a370be9
      Rob Clark 提交于
      Track the list of in-flight submits.  If the gpu hangs, retire up to an
      including the offending submit, and then re-submit the remainder.  This
      way, for concurrently running piglit tests (for example), one failing
      test doesn't cause unrelated tests to fail simply because it's submit
      was queued up after one that triggered a hang.
      Signed-off-by: NRob Clark <robdclark@gmail.com>
      1a370be9
  10. 02 6月, 2014 1 次提交
    • R
      drm/msm: add rd logging debugfs · a7d3c950
      Rob Clark 提交于
      To ease debugging, add debugfs file which can be cat/tail'd to log
      submits, along with fence #.  If GPU hangs, you can look at 'gpu'
      debugfs file to find last completed fence and current register state,
      and compare with logged rd file to narrow down the DRAW_INDX which
      triggered the GPU hang.
      Signed-off-by: NRob Clark <robdclark@gmail.com>
      a7d3c950
  11. 31 3月, 2014 1 次提交
    • R
      drm/msm: validate flags, etc · 93ddb0d3
      Rob Clark 提交于
      After reading a nice article on LWN[1], I went back and double checked
      my handling of invalid-input checking.  Turns out there were a couple
      places I had missed.
      
      Since the driver is fairly young, and the devices it supports are really
      only just barely usable for basic stuff (serial console) with an
      upstream kernel, I think we should fix this now and revert specific
      parts of this patch later in the unlikely event that a regression is
      reported.
      
      [1] https://lwn.net/Articles/588444/Signed-off-by: NRob Clark <robdclark@gmail.com>
      93ddb0d3
  12. 07 2月, 2014 1 次提交
  13. 11 9月, 2013 1 次提交
  14. 25 8月, 2013 1 次提交
    • R
      drm/msm: add a3xx gpu support · 7198e6b0
      Rob Clark 提交于
      Add initial support for a3xx 3d core.
      
      So far, with hardware that I've seen to date, we can have:
       + zero, one, or two z180 2d cores
       + a3xx or a2xx 3d core, which share a common CP (the firmware
         for the CP seems to implement some different PM4 packet types
         but the basics of cmdstream submission are the same)
      
      Which means that the eventual complete "class" hierarchy, once
      support for all past and present hw is in place, becomes:
       + msm_gpu
         + adreno_gpu
           + a3xx_gpu
           + a2xx_gpu
         + z180_gpu
      
      This commit splits out the parts that will eventually be common
      between a2xx/a3xx into adreno_gpu, and the parts that are even
      common to z180 into msm_gpu.
      
      Note that there is no cmdstream validation required.  All memory access
      from the GPU is via IOMMU/MMU.  So as long as you don't map silly things
      to the GPU, there isn't much damage that the GPU can do.
      Signed-off-by: NRob Clark <robdclark@gmail.com>
      7198e6b0