#include "rcar_du_kms.h"
 #include "rcar_du_vsp.h"
 
-static void rcar_du_vsp_complete(void *private, bool completed, u32 crc)
+static void rcar_du_vsp_complete(void *private, unsigned int status, u32 crc)
 {
        struct rcar_du_crtc *crtc = private;
 
        if (crtc->vblank_enable)
                drm_crtc_handle_vblank(&crtc->crtc);
 
-       if (completed)
+       if (status & VSP1_DU_STATUS_COMPLETE)
                rcar_du_crtc_finish_page_flip(crtc);
 
        drm_crtc_add_crc_entry(&crtc->crtc, false, 0, &crc);
 
 struct vsp1_dl_list;
 struct vsp1_dl_manager;
 
+/* Keep these flags in sync with VSP1_DU_STATUS_* in include/media/vsp1.h. */
 #define VSP1_DL_FRAME_END_COMPLETED            BIT(0)
 #define VSP1_DL_FRAME_END_INTERNAL             BIT(1)
 
 
                                       unsigned int completion)
 {
        struct vsp1_drm_pipeline *drm_pipe = to_vsp1_drm_pipeline(pipe);
-       bool complete = completion & VSP1_DL_FRAME_END_COMPLETED;
 
        if (drm_pipe->du_complete) {
                struct vsp1_entity *uif = drm_pipe->uif;
+               unsigned int status = completion & VSP1_DU_STATUS_COMPLETE;
                u32 crc;
 
                crc = uif ? vsp1_uif_get_crc(to_uif(&uif->subdev)) : 0;
-               drm_pipe->du_complete(drm_pipe->du_private, complete, crc);
+               drm_pipe->du_complete(drm_pipe->du_private, status, crc);
        }
 
        if (completion & VSP1_DL_FRAME_END_INTERNAL) {
 
        struct vsp1_du_crc_config crc;
 
        /* Frame synchronisation */
-       void (*du_complete)(void *data, bool completed, u32 crc);
+       void (*du_complete)(void *data, unsigned int status, u32 crc);
        void *du_private;
 };
 
 
 
 int vsp1_du_init(struct device *dev);
 
+#define VSP1_DU_STATUS_COMPLETE                BIT(0)
+
 /**
  * struct vsp1_du_lif_config - VSP LIF configuration
  * @width: output frame width
        unsigned int height;
        bool interlaced;
 
-       void (*callback)(void *data, bool completed, u32 crc);
+       void (*callback)(void *data, unsigned int status, u32 crc);
        void *callback_data;
 };