[media] smiapp: Obtain correct media bus code for try format
authorSakari Ailus <sakari.ailus@linux.intel.com>
Thu, 8 Sep 2016 08:49:27 +0000 (05:49 -0300)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Fri, 21 Oct 2016 17:13:26 +0000 (15:13 -0200)
The media bus code obtained for try format may have been a code that the
sensor did not even support. Use a supported code with the current pixel
order.

Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Reviewed-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/i2c/smiapp/smiapp-core.c

index 2e8b7bf..5f4680d 100644 (file)
@@ -2623,8 +2623,6 @@ static int smiapp_open(struct v4l2_subdev *sd, struct v4l2_subdev_fh *fh)
 {
        struct smiapp_subdev *ssd = to_smiapp_subdev(sd);
        struct smiapp_sensor *sensor = ssd->sensor;
-       u32 mbus_code =
-               smiapp_csi_data_formats[smiapp_pixel_order(sensor)].code;
        unsigned int i;
 
        mutex_lock(&sensor->mutex);
@@ -2640,7 +2638,7 @@ static int smiapp_open(struct v4l2_subdev *sd, struct v4l2_subdev_fh *fh)
 
                try_fmt->width = try_crop->width;
                try_fmt->height = try_crop->height;
-               try_fmt->code = mbus_code;
+               try_fmt->code = sensor->internal_csi_format->code;
                try_fmt->field = V4L2_FIELD_NONE;
 
                if (ssd != sensor->pixel_array)