[v2] [PATCH 00/11] drm/msm: A5XX preemption

Jordan Crouse jcrouse at codeaurora.org
Tue Mar 7 16:58:09 UTC 2017


Here is v2 of the preemption series - Changes:

 * Refactored API in DRM_IOCTL_MSM_GEM_INFO (Thanks Emil Velikov)
 * Removed preemption worker and fixed atomics (Thanks Stephen Boyd)
 * Various fixes and improvements based on testing

Thanks!
Jordan

Jordan Crouse (11):
  drm/msm: Make sure to detach the MMU during GPU cleanup
  drm/msm: Improve the zap shader
  drm/msm: Remove idle function hook
  drm/msm: Add hint to DRM_IOCTL_MSM_GEM_INFO to return an object IOVA
  drm/msm: get an iova from the address space instead of an id
  drm/msm: Add a struct to pass configuration to msm_gpu_init()
  drm/msm: Remove memptrs->wptr
  drm/msm: Support multiple ringbuffers
  drm/msm: Shadow current pointer in the ring until command is complete
  drm/msm: Make the value of RB_CNTL (almost) generic
  drm/msm: Implement preemption for A5XX targets

 arch/arm64/boot/dts/qcom/msm8996.dtsi     |   4 +-
 drivers/gpu/drm/msm/Makefile              |   1 +
 drivers/gpu/drm/msm/adreno/a3xx_gpu.c     |  13 +-
 drivers/gpu/drm/msm/adreno/a4xx_gpu.c     |  13 +-
 drivers/gpu/drm/msm/adreno/a5xx_gpu.c     | 292 +++++++++++++++++++------
 drivers/gpu/drm/msm/adreno/a5xx_gpu.h     | 103 ++++++++-
 drivers/gpu/drm/msm/adreno/a5xx_power.c   |  11 +-
 drivers/gpu/drm/msm/adreno/a5xx_preempt.c | 345 ++++++++++++++++++++++++++++++
 drivers/gpu/drm/msm/adreno/adreno_gpu.c   | 220 ++++++++++++-------
 drivers/gpu/drm/msm/adreno/adreno_gpu.h   |  44 ++--
 drivers/gpu/drm/msm/dsi/dsi_host.c        |  15 +-
 drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c  |   8 +-
 drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c   |  18 +-
 drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.h   |   4 -
 drivers/gpu/drm/msm/mdp/mdp4/mdp4_plane.c |  13 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c  |   5 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c   |  11 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.h   |   4 -
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_plane.c |  13 +-
 drivers/gpu/drm/msm/msm_drv.c             |  36 ++--
 drivers/gpu/drm/msm/msm_drv.h             |  27 ++-
 drivers/gpu/drm/msm/msm_fb.c              |  15 +-
 drivers/gpu/drm/msm/msm_fbdev.c           |  10 +-
 drivers/gpu/drm/msm/msm_fence.c           |  85 ++++++--
 drivers/gpu/drm/msm/msm_fence.h           |  13 +-
 drivers/gpu/drm/msm/msm_gem.c             | 134 ++++++++----
 drivers/gpu/drm/msm/msm_gem.h             |   5 +-
 drivers/gpu/drm/msm/msm_gem_submit.c      |  14 +-
 drivers/gpu/drm/msm/msm_gpu.c             | 141 +++++++-----
 drivers/gpu/drm/msm/msm_gpu.h             |  54 ++++-
 drivers/gpu/drm/msm/msm_kms.h             |   3 +
 drivers/gpu/drm/msm/msm_ringbuffer.c      |  14 +-
 drivers/gpu/drm/msm/msm_ringbuffer.h      |  21 +-
 include/uapi/drm/msm_drm.h                |  13 +-
 34 files changed, 1322 insertions(+), 400 deletions(-)
 create mode 100644 drivers/gpu/drm/msm/adreno/a5xx_preempt.c

-- 
1.9.1



More information about the dri-devel mailing list