media_entity_to_v4l2_subdev(link->source->entity);
        struct rkisp1_capture *cap = video_get_drvdata(vdev);
        struct rkisp1_isp *isp = &cap->rkisp1->isp;
+       u8 isp_pix_enc = isp->src_fmt->pixel_enc;
+       u8 cap_pix_enc = cap->pix.info->pixel_enc;
        struct v4l2_subdev_format sd_fmt;
        int ret;
 
                return -EPIPE;
        }
 
-       if (cap->pix.info->pixel_enc != isp->src_fmt->pixel_enc) {
+       if (cap_pix_enc != isp_pix_enc &&
+           !(isp_pix_enc == V4L2_PIXEL_ENC_YUV &&
+             cap_pix_enc == V4L2_PIXEL_ENC_RGB)) {
                dev_err(cap->rkisp1->dev,
                        "format type mismatch in link '%s:%d->%s:%d'\n",
                        link->source->entity->name, link->source->index,