linux_dsm_epyc7002/drivers/gpu/drm/msm
Daniel Vetter aef9dbb8f7 drm/atomic-helper: Add option to update planes only on active crtc
With drivers supporting runtime pm it's generally not a good idea to
touch the hardware when it's off. Add an option to the commit_planes
helper to support this case.

Note that the helpers already add all planes on a crtc when a modeset
happens, hence plane updates will not be lost if drivers set this to
true.

v2: Check for NULL state->crtc before chasing the pointer. Also check
both old and new crtc if there's a switch. Finally just outright
disallow switching crtcs for a plane if the plane is in active use, on
most hardware that doesn't make sense.

v3: Since commit_planes(active_only = true) is for enabling things
only after all the crtc are on we should only look at the new crtc to
decide whether to call the plane hooks - if the current CRTC isn't on
then skip. If the old crtc (when moving a plane) went down then the
plane should have been disabled as part of the pipe shutdown work
already. For which there's currently no helper really unfortunately.
Also move the check for wether a plane gets a new CRTC assigned while
still in active use out of this patch.

v4: Rebase over exynos changes.

Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Thierry Reding <treding@nvidia.com>
Cc: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Reviewed-by: Thierry Reding <treding@nvidia.com>
Tested-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
2015-09-08 13:49:08 +02:00
..
adreno drm/msm: update generated headers 2015-08-15 18:27:10 -04:00
dsi drm/msm/dsi: Introduce DSI configuration module 2015-08-15 18:27:29 -04:00
edp drm/msm/dp: use flags argument of devm_gpiod_get to set direction 2015-08-15 18:27:18 -04:00
hdmi drm/msm/hdmi: standardize on lead chip for compatible names 2015-08-15 18:27:13 -04:00
mdp drm/atomic: Make prepare_fb/cleanup_fb only take state, v3. 2015-09-08 13:45:54 +02:00
Kconfig drm/msm/dsi: Make each PHY type compilation independent 2015-08-15 18:27:29 -04:00
Makefile drm/msm/dsi: Introduce DSI configuration module 2015-08-15 18:27:29 -04:00
msm_atomic.c drm/atomic-helper: Add option to update planes only on active crtc 2015-09-08 13:49:08 +02:00
msm_drv.c drm/msm: Enable clocks during enable/disable_vblank() callbacks 2015-08-15 18:27:22 -04:00
msm_drv.h drm/msm: mdp4 lvds: get panel node via of graph parsing 2015-08-15 18:27:23 -04:00
msm_fb.c drm/msm: fix unbalanced DRM framebuffer init/destroy 2015-05-14 11:48:54 -04:00
msm_fbdev.c drm/msm: Use new drm_fb_helper functions 2015-08-06 14:12:58 +02:00
msm_gem_prime.c drm/msm: fix msm_gem_prime_get_sg_table() 2015-08-14 17:10:13 -04:00
msm_gem_submit.c drm/msm: restart queued submits after hang 2015-06-11 13:11:06 -04:00
msm_gem.c drm/msm: change to uninterruptible wait in atomic commit 2015-08-14 17:10:14 -04:00
msm_gem.h drm/msm: restart queued submits after hang 2015-06-11 13:11:06 -04:00
msm_gpu.c drm/msm: restart queued submits after hang 2015-06-11 13:11:06 -04:00
msm_gpu.h drm/msm: restart queued submits after hang 2015-06-11 13:11:06 -04:00
msm_iommu.c drm/msm: Fix a couple of 64-bit build warnings 2015-05-14 11:19:25 -04:00
msm_kms.h drm/msm: Use customized function to wait for atomic commit done 2015-06-11 13:11:04 -04:00
msm_mmu.h
msm_perf.c
msm_rd.c
msm_ringbuffer.c drm/msm: fix locking inconsistencies in gpu->destroy() 2015-05-15 09:28:27 -04:00
msm_ringbuffer.h
NOTES