Hi, On 18/11/21 18:26, Sakari Ailus wrote: > Hi Luca, > > On Thu, Nov 18, 2021 at 06:11:35PM +0100, Luca Ceresoli wrote: >> Hi Eugen, >> >> On 18/11/21 16:40, Eugen Hristev wrote: >>> Current driver supports only SRGGB 10 bit RAW bayer format. >>> Add the enum_mbus_code implementation to report this format supported. >>> >>> # v4l2-ctl -d /dev/v4l-subdev3 --list-subdev-mbus-codes >>> ioctl: VIDIOC_SUBDEV_ENUM_MBUS_CODE (pad=0) >>> 0x300f: MEDIA_BUS_FMT_SRGGB10_1X10 >>> # >>> >>> Signed-off-by: Eugen Hristev <eugen.hristev@xxxxxxxxxxxxx> >> >> Generally OK, but I have a few minor comments. >> >>> --- >>> drivers/media/i2c/imx274.c | 14 ++++++++++++++ >>> 1 file changed, 14 insertions(+) >>> >>> diff --git a/drivers/media/i2c/imx274.c b/drivers/media/i2c/imx274.c >>> index 2e804e3b70c4..25a4ef8f6187 100644 >>> --- a/drivers/media/i2c/imx274.c >>> +++ b/drivers/media/i2c/imx274.c >>> @@ -1909,7 +1909,21 @@ static int imx274_set_frame_interval(struct stimx274 *priv, >>> return err; >>> } >>> >>> +static int imx274_enum_mbus_code(struct v4l2_subdev *sd, >>> + struct v4l2_subdev_state *sd_state, >>> + struct v4l2_subdev_mbus_code_enum *code) >>> +{ >>> + if (code->index > 0) >>> + return -EINVAL; >> >> Many driver do check code->pad too, so you might want to do >> >> if (code->pad > 0 || code->index > 0) >> return -EINVAL; > > The caller will have checked the pad exists, and there's a single one on > the subdev I suppose. Thanks for your explanation. That's very reasonable indeed. Now, why do many drivers do that? Old checks that later turned useless and nobody ever removed? -- Luca