struct vop_win *vop_win = to_vop_win(plane);
        struct vop_plane_state *vop_plane_state = to_vop_plane_state(state);
        const struct vop_win_data *win = vop_win->data;
-       bool visible;
        int ret;
-       struct drm_rect *dest = &state->dst;
-       struct drm_rect *src = &state->src;
        struct drm_rect clip;
        int min_scale = win->phy->scl ? FRAC_16_16(1, 8) :
                                        DRM_PLANE_HELPER_NO_SCALING;
        if (WARN_ON(!crtc_state))
                return -EINVAL;
 
-       src->x1 = state->src_x;
-       src->y1 = state->src_y;
-       src->x2 = state->src_x + state->src_w;
-       src->y2 = state->src_y + state->src_h;
-       dest->x1 = state->crtc_x;
-       dest->y1 = state->crtc_y;
-       dest->x2 = state->crtc_x + state->crtc_w;
-       dest->y2 = state->crtc_y + state->crtc_h;
-
        clip.x1 = 0;
        clip.y1 = 0;
        clip.x2 = crtc_state->adjusted_mode.hdisplay;
        clip.y2 = crtc_state->adjusted_mode.vdisplay;
 
-       ret = drm_plane_helper_check_update(plane, crtc, state->fb,
-                                           src, dest, &clip,
-                                           state->rotation,
-                                           min_scale,
-                                           max_scale,
-                                           true, true, &visible);
+       ret = drm_plane_helper_check_state(state, &clip,
+                                          min_scale, max_scale,
+                                          true, true);
        if (ret)
                return ret;
 
-       if (!visible)
+       if (!state->visible)
                goto out_disable;
 
        vop_plane_state->format = vop_convert_format(fb->pixel_format);
         * Src.x1 can be odd when do clip, but yuv plane start point
         * need align with 2 pixel.
         */
-       if (is_yuv_support(fb->pixel_format) && ((src->x1 >> 16) % 2))
+       if (is_yuv_support(fb->pixel_format) && ((state->src.x1 >> 16) % 2))
                return -EINVAL;
 
        vop_plane_state->enable = true;