On 9/1/20 8:16 AM, Dafna Hirschfeld wrote: > Currently the resizer outputs the same media bus format > as the input. This is wrong since the resizer is also used > to downscale YUV formats. This patch changes the enumeration > of the supported formats. The supported formats on the sink pad > should be taken from the isp entity and the supported formats on > the source pad should be taken from the capture entity. > > Signed-off-by: Dafna Hirschfeld <dafna.hirschfeld@xxxxxxxxxxxxx> Acked-by: Helen Koike <helen.koike@xxxxxxxxxxxxx> Thanks Helen > --- > drivers/staging/media/rkisp1/rkisp1-resizer.c | 13 ++++++++++++- > 1 file changed, 12 insertions(+), 1 deletion(-) > > diff --git a/drivers/staging/media/rkisp1/rkisp1-resizer.c b/drivers/staging/media/rkisp1/rkisp1-resizer.c > index 066d22096a7d..0e4a2c931ab0 100644 > --- a/drivers/staging/media/rkisp1/rkisp1-resizer.c > +++ b/drivers/staging/media/rkisp1/rkisp1-resizer.c > @@ -437,6 +437,17 @@ static int rkisp1_rsz_enum_mbus_code(struct v4l2_subdev *sd, > u32 pad = code->pad; > int ret; > > + if (code->pad == RKISP1_RSZ_PAD_SRC) { > + /* supported mbus codes on the src are the same as in the capture */ > + struct rkisp1_capture *cap = &rsz->rkisp1->capture_devs[rsz->id]; > + > + return rkisp1_cap_enum_mbus_codes(cap, code); > + } > + > + /* > + * The selfpath capture doesn't support bayer formats. Therefore the selfpath resizer > + * should support only YUV422 on the sink pad > + */ > if (rsz->id == RKISP1_SELFPATH) { > if (code->index > 0) > return -EINVAL; > @@ -444,7 +455,7 @@ static int rkisp1_rsz_enum_mbus_code(struct v4l2_subdev *sd, > return 0; > } > > - /* supported mbus codes are the same in isp video src pad */ > + /* supported mbus codes on the sink pad are the same as isp src pad */ > code->pad = RKISP1_ISP_PAD_SOURCE_VIDEO; > ret = v4l2_subdev_call(&rsz->rkisp1->isp.sd, pad, enum_mbus_code, > &dummy_cfg, code); >