media: atomisp: ov2680: Add missing ov2680_calc_mode() call to probe()
authorHans de Goede <hdegoede@redhat.com>
Mon, 29 May 2023 10:37:24 +0000 (11:37 +0100)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Fri, 9 Jun 2023 14:23:04 +0000 (15:23 +0100)
Call ov2680_calc_mode() from probe() instead of relying on userspace
to make at least one s_fmt call to fill the mode parameters.

Link: https://lore.kernel.org/r/20230529103741.11904-5-hdegoede@redhat.com
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
drivers/staging/media/atomisp/i2c/atomisp-ov2680.c

index cf3f964..b1585b4 100644 (file)
@@ -195,8 +195,10 @@ static void ov2680_fill_format(struct ov2680_dev *sensor,
        ov2680_set_bayer_order(sensor, fmt);
 }
 
-static void ov2680_calc_mode(struct ov2680_dev *sensor, int width, int height)
+static void ov2680_calc_mode(struct ov2680_dev *sensor)
 {
+       int width = sensor->mode.fmt.width;
+       int height = sensor->mode.fmt.height;
        int orig_width = width;
        int orig_height = height;
 
@@ -338,7 +340,7 @@ static int ov2680_set_fmt(struct v4l2_subdev *sd,
                return 0;
 
        mutex_lock(&sensor->lock);
-       ov2680_calc_mode(sensor, fmt->width, fmt->height);
+       ov2680_calc_mode(sensor);
        mutex_unlock(&sensor->lock);
        return 0;
 }
@@ -660,6 +662,7 @@ static int ov2680_probe(struct i2c_client *client)
        }
 
        ov2680_fill_format(sensor, &sensor->mode.fmt, OV2680_NATIVE_WIDTH, OV2680_NATIVE_HEIGHT);
+       ov2680_calc_mode(sensor);
 
        ret = v4l2_async_register_subdev_sensor(&sensor->sd);
        if (ret) {