On 07/04/18 15:04, Marek Vasut wrote: > In VDIC direct mode, the VDIC applies combing filter during and > doubles the framerate, that is, after the first two half-frames > are received and the first frame is emitted by the VDIC, every > subsequent half-frame is patched into the result and a full frame > is produced. The half-frame order in the full frames is as follows > 12 32 34 54 etc. > > Drop every second frame to trim the framerate back to the original > one of the signal and skip the odd patched frames. > > Signed-off-by: Marek Vasut <marex@xxxxxxx> > Cc: Steve Longerbeam <steve_longerbeam@xxxxxxxxxx> > Cc: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx> Steve, Philipp, I saw there was a discussion about this patch, but no clear answer whether or not this patch is OK. If it is, then please Ack this patch. Regards, Hans > --- > drivers/staging/media/imx/imx-media-vdic.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/staging/media/imx/imx-media-vdic.c b/drivers/staging/media/imx/imx-media-vdic.c > index 482250d47e7c..b538bbebedc5 100644 > --- a/drivers/staging/media/imx/imx-media-vdic.c > +++ b/drivers/staging/media/imx/imx-media-vdic.c > @@ -289,6 +289,7 @@ static int vdic_setup_direct(struct vdic_priv *priv) > /* set VDIC to receive from CSI for direct path */ > ipu_fsu_link(priv->ipu, IPUV3_CHANNEL_CSI_DIRECT, > IPUV3_CHANNEL_CSI_VDI_PREV); > + ipu_set_vdi_skip(priv->ipu, 0x2); > > return 0; > } > @@ -313,6 +314,8 @@ static int vdic_setup_indirect(struct vdic_priv *priv) > const struct imx_media_pixfmt *incc; > int in_size, ret; > > + ipu_set_vdi_skip(priv->ipu, 0x0); > + > infmt = &priv->format_mbus[VDIC_SINK_PAD_IDMAC]; > incc = priv->cc[VDIC_SINK_PAD_IDMAC]; > >