aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/imx
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/gpu/drm/imx')
-rw-r--r--drivers/gpu/drm/imx/imx-drm-core.c8
-rw-r--r--drivers/gpu/drm/imx/ipuv3-crtc.c5
-rw-r--r--drivers/gpu/drm/imx/ipuv3-plane.c2
3 files changed, 8 insertions, 7 deletions
diff --git a/drivers/gpu/drm/imx/imx-drm-core.c b/drivers/gpu/drm/imx/imx-drm-core.c
index 95e2181963d9..f5c621219113 100644
--- a/drivers/gpu/drm/imx/imx-drm-core.c
+++ b/drivers/gpu/drm/imx/imx-drm-core.c
@@ -115,7 +115,7 @@ static void imx_drm_atomic_commit_tail(struct drm_atomic_state *state)
115{ 115{
116 struct drm_device *dev = state->dev; 116 struct drm_device *dev = state->dev;
117 struct drm_plane *plane; 117 struct drm_plane *plane;
118 struct drm_plane_state *old_plane_state; 118 struct drm_plane_state *old_plane_state, *new_plane_state;
119 bool plane_disabling = false; 119 bool plane_disabling = false;
120 int i; 120 int i;
121 121
@@ -127,15 +127,15 @@ static void imx_drm_atomic_commit_tail(struct drm_atomic_state *state)
127 127
128 drm_atomic_helper_commit_modeset_enables(dev, state); 128 drm_atomic_helper_commit_modeset_enables(dev, state);
129 129
130 for_each_plane_in_state(state, plane, old_plane_state, i) { 130 for_each_oldnew_plane_in_state(state, plane, old_plane_state, new_plane_state, i) {
131 if (drm_atomic_plane_disabling(old_plane_state, plane->state)) 131 if (drm_atomic_plane_disabling(old_plane_state, new_plane_state))
132 plane_disabling = true; 132 plane_disabling = true;
133 } 133 }
134 134
135 if (plane_disabling) { 135 if (plane_disabling) {
136 drm_atomic_helper_wait_for_vblanks(dev, state); 136 drm_atomic_helper_wait_for_vblanks(dev, state);
137 137
138 for_each_plane_in_state(state, plane, old_plane_state, i) 138 for_each_old_plane_in_state(state, plane, old_plane_state, i)
139 ipu_plane_disable_deferred(plane); 139 ipu_plane_disable_deferred(plane);
140 140
141 } 141 }
diff --git a/drivers/gpu/drm/imx/ipuv3-crtc.c b/drivers/gpu/drm/imx/ipuv3-crtc.c
index 5456c15d962c..53e0b24beda6 100644
--- a/drivers/gpu/drm/imx/ipuv3-crtc.c
+++ b/drivers/gpu/drm/imx/ipuv3-crtc.c
@@ -50,7 +50,8 @@ static inline struct ipu_crtc *to_ipu_crtc(struct drm_crtc *crtc)
50 return container_of(crtc, struct ipu_crtc, base); 50 return container_of(crtc, struct ipu_crtc, base);
51} 51}
52 52
53static void ipu_crtc_enable(struct drm_crtc *crtc) 53static void ipu_crtc_atomic_enable(struct drm_crtc *crtc,
54 struct drm_crtc_state *old_state)
54{ 55{
55 struct ipu_crtc *ipu_crtc = to_ipu_crtc(crtc); 56 struct ipu_crtc *ipu_crtc = to_ipu_crtc(crtc);
56 struct ipu_soc *ipu = dev_get_drvdata(ipu_crtc->dev->parent); 57 struct ipu_soc *ipu = dev_get_drvdata(ipu_crtc->dev->parent);
@@ -293,7 +294,7 @@ static const struct drm_crtc_helper_funcs ipu_helper_funcs = {
293 .atomic_check = ipu_crtc_atomic_check, 294 .atomic_check = ipu_crtc_atomic_check,
294 .atomic_begin = ipu_crtc_atomic_begin, 295 .atomic_begin = ipu_crtc_atomic_begin,
295 .atomic_disable = ipu_crtc_atomic_disable, 296 .atomic_disable = ipu_crtc_atomic_disable,
296 .enable = ipu_crtc_enable, 297 .atomic_enable = ipu_crtc_atomic_enable,
297}; 298};
298 299
299static void ipu_put_resources(struct ipu_crtc *ipu_crtc) 300static void ipu_put_resources(struct ipu_crtc *ipu_crtc)
diff --git a/drivers/gpu/drm/imx/ipuv3-plane.c b/drivers/gpu/drm/imx/ipuv3-plane.c
index 49546222c6d3..ff53c8dec633 100644
--- a/drivers/gpu/drm/imx/ipuv3-plane.c
+++ b/drivers/gpu/drm/imx/ipuv3-plane.c
@@ -675,7 +675,7 @@ int ipu_planes_assign_pre(struct drm_device *dev,
675 int available_pres = ipu_prg_max_active_channels(); 675 int available_pres = ipu_prg_max_active_channels();
676 int i; 676 int i;
677 677
678 for_each_plane_in_state(state, plane, plane_state, i) { 678 for_each_new_plane_in_state(state, plane, plane_state, i) {
679 struct ipu_plane_state *ipu_state = 679 struct ipu_plane_state *ipu_state =
680 to_ipu_plane_state(plane_state); 680 to_ipu_plane_state(plane_state);
681 struct ipu_plane *ipu_plane = to_ipu_plane(plane); 681 struct ipu_plane *ipu_plane = to_ipu_plane(plane);