aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/msm/msm_kms.h
diff options
context:
space:
mode:
authorRob Clark <robdclark@gmail.com>2014-11-19 12:29:33 -0500
committerRob Clark <robdclark@gmail.com>2014-11-21 08:57:22 -0500
commit3e2f29e4137c78a3bd7e1b85cf287ff375f6367e (patch)
treec2c827f1ef39695cd1e62f57cb6fa08161d9962a /drivers/gpu/drm/msm/msm_kms.h
parentdrm/msm/mdp5: remove global mdp5_ctl_mgr (diff)
downloadlinux-dev-3e2f29e4137c78a3bd7e1b85cf287ff375f6367e.tar.xz
linux-dev-3e2f29e4137c78a3bd7e1b85cf287ff375f6367e.zip
drm/msm: atomic fixes
Fixes for a couple little issues found in testing. Signed-off-by: Rob Clark <robdclark@gmail.com>
Diffstat (limited to '')
-rw-r--r--drivers/gpu/drm/msm/msm_kms.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/gpu/drm/msm/msm_kms.h b/drivers/gpu/drm/msm/msm_kms.h
index 15a0fec99c70..1e9d8c2e6a5d 100644
--- a/drivers/gpu/drm/msm/msm_kms.h
+++ b/drivers/gpu/drm/msm/msm_kms.h
@@ -68,6 +68,11 @@ struct msm_kms *mdp5_kms_init(struct drm_device *dev);
/* TODO move these helper iterator macro somewhere common: */
#define for_each_plane_on_crtc(_crtc, _plane) \
list_for_each_entry((_plane), &(_crtc)->dev->mode_config.plane_list, head) \
- if ((_plane)->crtc == (_crtc))
+ if ((_plane)->state->crtc == (_crtc))
+
+#define for_each_pending_plane_on_crtc(_state, _crtc, _plane) \
+ list_for_each_entry((_plane), &(_crtc)->dev->mode_config.plane_list, head) \
+ if (({struct drm_plane_state *_ps = (_state)->plane_states[drm_plane_index(_plane)]; \
+ _ps && _ps->crtc == (_crtc);}))
#endif /* __MSM_KMS_H__ */