linux/drivers/gpu/drm/sti
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
..
Kconfig drm: Kconfig: Let all DRM_GEM_CMA_HELPER related macros depend on HAVE_DMA_ATTRS 2015-02-03 11:12:37 +10:00
Makefile drm/sti: rename files and functions 2015-08-03 14:25:06 +02:00
NOTES
sti_awg_utils.c drm: sti: fix static checker warning in sti_awg_utils 2015-02-04 17:52:28 +01:00
sti_awg_utils.h drm: sti: add DVO output connector 2014-12-30 15:08:16 +01:00
sti_compositor.c drm/sti: atomic crtc/plane update 2015-08-03 14:26:05 +02:00
sti_compositor.h drm/sti: rename files and functions 2015-08-03 14:25:06 +02:00
sti_crtc.c Merge branch 'drm-sti-next-atomic-2015-08-11' of http://git.linaro.org/people/benjamin.gaignard/kernel into drm-next 2015-08-14 10:14:23 +10:00
sti_crtc.h drm/sti: rename files and functions 2015-08-03 14:25:06 +02:00
sti_cursor.c drm/sti: atomic crtc/plane update 2015-08-03 14:26:05 +02:00
sti_cursor.h drm/sti: atomic crtc/plane update 2015-08-03 14:26:05 +02:00
sti_drv.c drm/atomic-helper: Add option to update planes only on active crtc 2015-09-08 13:49:08 +02:00
sti_drv.h drm/sti: rename files and functions 2015-08-03 14:25:06 +02:00
sti_dvo.c drm/sti: correctly test devm_ioremap() return 2015-06-08 15:28:10 +02:00
sti_gdp.c drm/sti: atomic crtc/plane update 2015-08-03 14:26:05 +02:00
sti_gdp.h drm/sti: atomic crtc/plane update 2015-08-03 14:26:05 +02:00
sti_hda.c drm: sti: convert driver to atomic modeset 2015-03-19 13:35:16 +01:00
sti_hdmi_tx3g0c55phy.c drm: sti: add HDMI driver 2014-07-30 19:24:55 +02:00
sti_hdmi_tx3g0c55phy.h drm: sti: add HDMI driver 2014-07-30 19:24:55 +02:00
sti_hdmi_tx3g4c28phy.c drm: sti: add HDMI driver 2014-07-30 19:24:55 +02:00
sti_hdmi_tx3g4c28phy.h drm: sti: add HDMI driver 2014-07-30 19:24:55 +02:00
sti_hdmi.c drm/sti: code clean up 2015-08-03 14:25:01 +02:00
sti_hdmi.h drm: sti: remove gpio for HDMI hot plug detection 2014-12-11 13:58:12 +01:00
sti_hqvdp_lut.h drm: sti: add HQVDP plane 2014-12-11 14:00:13 +01:00
sti_hqvdp.c drm/sti: atomic crtc/plane update 2015-08-03 14:26:05 +02:00
sti_mixer.c drm/sti: atomic crtc/plane update 2015-08-03 14:26:05 +02:00
sti_mixer.h drm/sti: atomic crtc/plane update 2015-08-03 14:26:05 +02:00
sti_plane.c drm/sti: atomic crtc/plane update 2015-08-03 14:26:05 +02:00
sti_plane.h drm/sti: atomic crtc/plane update 2015-08-03 14:26:05 +02:00
sti_tvout.c drm/sti: rename files and functions 2015-08-03 14:25:06 +02:00
sti_vid.c drm/sti: atomic crtc/plane update 2015-08-03 14:26:05 +02:00
sti_vid.h drm/sti: atomic crtc/plane update 2015-08-03 14:26:05 +02:00
sti_vtac.c drm: use c99 initializers in structures 2014-09-12 16:49:34 +02:00
sti_vtg.c drm/sti: vtg fix CEA-861E video format timing error 2015-06-08 15:28:28 +02:00
sti_vtg.h