{
        struct drm_device *dev = state->dev;
        struct drm_plane *plane;
-       struct drm_plane_state *old_plane_state;
+       struct drm_plane_state *old_plane_state, *new_plane_state;
        bool plane_disabling = false;
        int i;
 
 
        drm_atomic_helper_commit_modeset_enables(dev, state);
 
-       for_each_plane_in_state(state, plane, old_plane_state, i) {
-               if (drm_atomic_plane_disabling(old_plane_state, plane->state))
+       for_each_oldnew_plane_in_state(state, plane, old_plane_state, new_plane_state, i) {
+               if (drm_atomic_plane_disabling(old_plane_state, new_plane_state))
                        plane_disabling = true;
        }
 
        if (plane_disabling) {
                drm_atomic_helper_wait_for_vblanks(dev, state);
 
-               for_each_plane_in_state(state, plane, old_plane_state, i)
+               for_each_old_plane_in_state(state, plane, old_plane_state, i)
                        ipu_plane_disable_deferred(plane);
 
        }
 
        int available_pres = ipu_prg_max_active_channels();
        int i;
 
-       for_each_plane_in_state(state, plane, plane_state, i) {
+       for_each_new_plane_in_state(state, plane, plane_state, i) {
                struct ipu_plane_state *ipu_state =
                                to_ipu_plane_state(plane_state);
                struct ipu_plane *ipu_plane = to_ipu_plane(plane);