2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-25 13:43:55 +08:00
linux-next/drivers/gpu/drm/msm
Rob Clark 4a0f012da3 drm/msm/mdp5: dynamically assign hw pipes to planes
(re)assign the hw pipes to planes based on required caps, and to handle
situations where we could not modify an in-use plane (ie. SMP block
reallocation).

This means all planes advertise the superset of formats and properties.
Userspace must (as always) use atomic TEST_ONLY step for atomic updates,
as not all planes may be available for use on every frame.

The mapping of hwpipe to plane is stored in mdp5_state, so that state
updates are atomically committed in the same way that plane/etc state
updates are managed.  This is needed because the mdp5_plane_state keeps
a pointer to the hwpipe, and we don't want global state to become out
of sync with the plane state if an atomic update fails, we hit deadlock/
backoff scenario, etc.  The use of state_lock keeps multiple parallel
updates which both re-assign hwpipes properly serialized.

Signed-off-by: Rob Clark <robdclark@gmail.com>
2016-11-27 11:32:33 -05:00
..
adreno drm/msm: support multiple address spaces 2016-11-27 11:23:09 -05:00
dsi drm/msm/dsi: Fix return value check in msm_dsi_host_set_display_mode() 2016-07-16 10:29:28 -04:00
edp drm: msm: Rely on the default ->best_encoder() behavior where appropriate 2016-06-09 08:43:26 +02:00
hdmi drm/msm/hdmi: don't print error when adding i2c adapter fails 2016-09-15 17:21:12 -04:00
mdp drm/msm/mdp5: dynamically assign hw pipes to planes 2016-11-27 11:32:33 -05:00
Kconfig drm/msm: submit support for in-fences 2016-09-15 17:39:49 -04:00
Makefile drm/msm/mdp5: introduce mdp5_hw_pipe 2016-11-27 11:32:20 -05:00
msm_atomic.c drm/msm: subclass drm_atomic_state 2016-11-27 11:32:27 -05:00
msm_debugfs.c drm/msm: add missing header dependencies 2016-10-24 16:28:25 +02:00
msm_debugfs.h drm/msm: move debugfs code to it's own file 2016-05-08 10:16:02 -04:00
msm_drv.c drm/msm: subclass drm_atomic_state 2016-11-27 11:32:27 -05:00
msm_drv.h drm/msm: subclass drm_atomic_state 2016-11-27 11:32:27 -05:00
msm_fb.c drm/msm: Delete unnecessary checks before drm_gem_object_unreference_unlocked() 2016-07-16 10:29:34 -04:00
msm_fbdev.c drm/msm: use DRM_FB_HELPER_DEFAULT_OPS for fb_ops 2016-11-14 07:58:04 +01:00
msm_fence.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
msm_fence.h dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
msm_gem_prime.c drm/msm: change gem->vmap() to get/put 2016-07-16 10:09:07 -04:00
msm_gem_shrinker.c drm/msm: wire up vmap shrinker 2016-07-16 10:09:07 -04:00
msm_gem_submit.c dma-buf: Rename struct fence to dma_fence 2016-10-25 14:40:39 +02:00
msm_gem_vma.c drm/msm: support multiple address spaces 2016-11-27 11:23:09 -05:00
msm_gem.c drm/msm: support multiple address spaces 2016-11-27 11:23:09 -05:00
msm_gem.h drm/msm: support multiple address spaces 2016-11-27 11:23:09 -05:00
msm_gpu.c drm/msm: support multiple address spaces 2016-11-27 11:23:09 -05:00
msm_gpu.h drm/msm: support multiple address spaces 2016-11-27 11:23:09 -05:00
msm_iommu.c drm/msm: Print the correct virtual addresses in map/unmap funcs 2016-07-16 10:08:44 -04:00
msm_kms.h drm/msm: subclass drm_atomic_state 2016-11-27 11:32:27 -05:00
msm_mmu.h drm/msm: make iommu port names const'ier 2016-03-02 16:19:43 -05:00
msm_perf.c gpu: use %pd 2016-08-07 23:38:48 -04:00
msm_rd.c gpu: use %pd 2016-08-07 23:38:48 -04:00
msm_ringbuffer.c drm/msm: change gem->vmap() to get/put 2016-07-16 10:09:07 -04:00
msm_ringbuffer.h drm/msm: add a3xx gpu support 2013-08-24 14:57:18 -04:00
NOTES drm/msm: add mdp5/apq8x74 2014-01-09 14:44:06 -05:00