media: mt9m111: set all mbus format field when G_FMT and S_FMT ioctls
authorAkinobu Mita <akinobu.mita@gmail.com>
Tue, 15 Jan 2019 14:05:40 +0000 (12:05 -0200)
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Fri, 25 Jan 2019 13:00:39 +0000 (11:00 -0200)
This driver doesn't set all members of mbus format field when the
VIDIOC_SUBDEV_{S,G}_FMT ioctls are called.

This is detected by v4l2-compliance.

Cc: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
Cc: Michael Grzeschik <m.grzeschik@pengutronix.de>
Cc: Marco Felsch <m.felsch@pengutronix.de>
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
drivers/media/i2c/mt9m111.c

index 63a5253..9c92eca 100644 (file)
@@ -543,6 +543,9 @@ static int mt9m111_get_fmt(struct v4l2_subdev *sd,
        mf->code        = mt9m111->fmt->code;
        mf->colorspace  = mt9m111->fmt->colorspace;
        mf->field       = V4L2_FIELD_NONE;
+       mf->ycbcr_enc   = V4L2_YCBCR_ENC_DEFAULT;
+       mf->quantization        = V4L2_QUANTIZATION_DEFAULT;
+       mf->xfer_func   = V4L2_XFER_FUNC_DEFAULT;
 
        return 0;
 }
@@ -670,6 +673,10 @@ static int mt9m111_set_fmt(struct v4l2_subdev *sd,
 
        mf->code = fmt->code;
        mf->colorspace = fmt->colorspace;
+       mf->field       = V4L2_FIELD_NONE;
+       mf->ycbcr_enc   = V4L2_YCBCR_ENC_DEFAULT;
+       mf->quantization        = V4L2_QUANTIZATION_DEFAULT;
+       mf->xfer_func   = V4L2_XFER_FUNC_DEFAULT;
 
        if (format->which == V4L2_SUBDEV_FORMAT_TRY) {
                cfg->try_fmt = *mf;