(__i)++) \
                for_each_if(crtc)
 
+#define for_each_oldnew_intel_crtc_in_state_reverse(__state, crtc, old_crtc_state, new_crtc_state, __i) \
+       for ((__i) = (__state)->base.dev->mode_config.num_crtc - 1; \
+            (__i) >= 0  && \
+            ((crtc) = to_intel_crtc((__state)->base.crtcs[__i].ptr), \
+             (old_crtc_state) = to_intel_crtc_state((__state)->base.crtcs[__i].old_state), \
+             (new_crtc_state) = to_intel_crtc_state((__state)->base.crtcs[__i].new_state), 1); \
+            (__i)--) \
+               for_each_if(crtc)
+
 void intel_link_compute_m_n(u16 bpp, int nlanes,
                            int pixel_clock, int link_clock,
                            struct intel_link_m_n *m_n,