linux/drivers/gpu/drm/msm
Krishna Manikandan b3d91800d9 drm/msm: Fix race condition in msm driver with async layer updates
When there are back to back commits with async cursor update,
there is a case where second commit can program the DPU hw
blocks while first didn't complete flushing config to HW.

Synchronize the compositions such that second commit waits
until first commit flushes the composition.

This change also introduces per crtc commit lock, such that
commits on different crtcs are not blocked by each other.

Changes in v2:
	- Use an array of mutexes in kms to handle commit
	  lock per crtc. (Rob Clark)

Changes in v3:
	- Add wrapper functions to handle lock and unlock of
	  commit_lock for each crtc. (Rob Clark)

Signed-off-by: Krishna Manikandan <mkrishn@codeaurora.org>
Reviewed-by: Rob Clark <robdclark@gmail.com>
Signed-off-by: Rob Clark <robdclark@chromium.org>
2020-11-01 10:11:59 -08:00
..
adreno drm/msm: fix 32b build warns 2020-09-29 10:20:51 +10:00
disp Merge tag 'drm-msm-next-2020-09-27' of https://gitlab.freedesktop.org/drm/msm into drm-next 2020-09-29 10:18:49 +10:00
dp drm/msm/dp: fix incorrect function prototype of dp_debug_get() 2020-09-25 20:31:06 -07:00
dsi drm/msm: fix 32b build warns 2020-09-29 10:20:51 +10:00
edp drm/msm: sync generated headers 2020-07-31 06:46:16 -07:00
hdmi drm/msm: sync generated headers 2020-07-31 06:46:16 -07:00
Kconfig drm/msm: Remove depends on interconnect 2020-09-20 10:48:18 -07:00
Makefile drm/msm/dp: Use qmp phy for DP PLL and PHY 2020-09-15 10:54:35 -07:00
msm_atomic.c drm/msm: Fix race condition in msm driver with async layer updates 2020-11-01 10:11:59 -08:00
msm_atomic_trace.h
msm_atomic_tracepoints.c
msm_debugfs.c
msm_debugfs.h
msm_drv.c drm/msm/dp: add displayPort driver support 2020-09-15 10:54:34 -07:00
msm_drv.h drm/msm/dp: fix incorrect function prototype of dp_debug_get() 2020-09-25 20:31:06 -07:00
msm_fb.c
msm_fbdev.c
msm_fence.c
msm_fence.h
msm_gem.c dma-mapping updates for 5.10 2020-10-15 14:43:29 -07:00
msm_gem.h drm/msm: Fix premature purging of BO 2020-09-22 08:28:15 -07:00
msm_gem_prime.c drm: allow limiting the scatter list size. 2020-09-09 07:58:56 +02:00
msm_gem_shrinker.c drm/msm: Convert shrinker msgs to tracepoints 2020-09-09 15:25:54 -07:00
msm_gem_submit.c drm/msm: Drop context arg to gpu->submit() 2020-09-12 10:45:56 -07:00
msm_gem_vma.c drm/msm: Leave inuse count intact on map failure 2020-09-22 08:28:15 -07:00
msm_gpu.c drm/msm: Fix premature purging of BO 2020-09-22 08:28:15 -07:00
msm_gpu.h drm/msm: Allow a5xx to mark the RPTR shadow as privileged 2020-09-15 10:47:44 -07:00
msm_gpu_trace.h drm/msm/gpu: Add suspend/resume tracepoints 2020-09-12 09:59:58 -07:00
msm_gpu_tracepoints.c
msm_gpummu.c Merge tag 'drm-msm-next-2020-09-27' of https://gitlab.freedesktop.org/drm/msm into drm-next 2020-09-29 10:18:49 +10:00
msm_iommu.c drm next for 5.10-rc1 2020-10-15 10:46:16 -07:00
msm_kms.h drm/msm: Fix race condition in msm driver with async layer updates 2020-11-01 10:11:59 -08:00
msm_mmu.h drm/msm: Add support to create a local pagetable 2020-09-12 10:48:32 -07:00
msm_perf.c
msm_rd.c
msm_ringbuffer.c drm/msm: Enable expanded apriv support for a650 2020-09-04 12:14:07 -07:00
msm_ringbuffer.h drm/msm/a6xx: Add support for per-instance pagetables 2020-09-12 10:48:32 -07:00
msm_submitqueue.c drm/msm: Add a context pointer to the submitqueue 2020-09-12 10:45:56 -07:00
NOTES