Hi Niklas, Thank you for the review. On Tue, May 12, 2020 at 11:26 PM Niklas <niklas.soderlund@xxxxxxxxxxxx> wrote: > > Hi Lad, > > Thanks for your work. > > On 2020-04-15 11:19:06 +0100, Lad Prabhakar wrote: > > Up until now the VIN was capable to convert any of its supported input mbus > > formats to any of it's supported output pixel formats. With the addition of > > RAW formats this is no longer true. > > Add blank line. > > > This patch invalidates the pipeline by adding a check if given vin input > > format can be converted to supported output pixel format. > > > > Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx> > > I like this patch I think there is a typo bellow and patch [1] have been > merged in the media-tree which unfortunately addes one more thing to do > in this patch. In rvin_enum_fmt_vid_cap() there is a TODO noted for what > needs to be done. In imagine the fix is simple and the end result would > look something like this. > > switch (f->mbus_code) { > case 0: > case MEDIA_BUS_FMT_YUYV8_1X16: > case MEDIA_BUS_FMT_UYVY8_1X16: > case MEDIA_BUS_FMT_UYVY8_2X8: > case MEDIA_BUS_FMT_UYVY10_2X10: > case MEDIA_BUS_FMT_RGB888_1X24: > break; > case MEDIA_BUS_FMT_SRGGB8_1X8: > if (f->index) > return -EINVAL; > > f->pixelformat = V4L2_PIX_FMT_SRGGB8; > return 0; > case default: > return -EINVAL; > } > > 1. d5f74a1eff9aef3b ("media: rcar-vin: Make use of V4L2_CAP_IO_MC") > Sure Ill take of care of this and just repost this patch is that OK with you ? > > --- > > drivers/media/platform/rcar-vin/rcar-dma.c | 6 +++++- > > 1 file changed, 5 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/media/platform/rcar-vin/rcar-dma.c b/drivers/media/platform/rcar-vin/rcar-dma.c > > index 1a30cd036371..48bd9bfc3948 100644 > > --- a/drivers/media/platform/rcar-vin/rcar-dma.c > > +++ b/drivers/media/platform/rcar-vin/rcar-dma.c > > @@ -1109,13 +1109,17 @@ static int rvin_mc_validate_format(struct rvin_dev *vin, struct v4l2_subdev *sd, > > case MEDIA_BUS_FMT_UYVY8_1X16: > > case MEDIA_BUS_FMT_UYVY8_2X8: > > case MEDIA_BUS_FMT_UYVY10_2X10: > > + break; > > case MEDIA_BUS_FMT_RGB888_1X24: > > - vin->mbus_code = fmt.format.code; > > This is not right is it? > > Should you not add a case for MEDIA_BUS_FMT_SRGGB8_1X8 instead of taking > over MEDIA_BUS_FMT_RGB888_1X24? > Agreed, I blindly took this suggestion from your previous comments [1]. [1] https://lkml.org/lkml/2020/3/19/858 Cheers, --Prabhakar Lad > > + if (vin->format.pixelformat != V4L2_PIX_FMT_SRGGB8) > > + return -EPIPE; > > break; > > default: > > return -EPIPE; > > } > > > > + vin->mbus_code = fmt.format.code; > > + > > switch (fmt.format.field) { > > case V4L2_FIELD_TOP: > > case V4L2_FIELD_BOTTOM: > > -- > > 2.20.1 > > > > -- > Regards, > Niklas Söderlund