media: atomisp: set DFS to MAX if sensor doesn't report fps
authorMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Mon, 1 Jun 2020 08:38:47 +0000 (10:38 +0200)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Thu, 11 Jun 2020 17:12:14 +0000 (19:12 +0200)
If the sensor doesn't implement support for g_frame_interval,
it won't return the expected fps rate.

Instead of keeping DFS on its minimal value (which will likely
not work), set it to the max.

Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/staging/media/atomisp/pci/atomisp_cmd.c

index 9392503..93855f9 100644 (file)
@@ -243,8 +243,12 @@ int atomisp_freq_scaling(struct atomisp_device *isp,
        }
 
        fps = atomisp_get_sensor_fps(asd);
-       if (fps == 0)
-               return -EINVAL;
+       if (fps == 0) {
+               dev_info(isp->dev,
+                        "Sensor didn't report FPS. Using DFS max mode.\n");
+               new_freq = dfs->highest_freq;
+               goto done;
+       }
 
        curr_rules.width = asd->fmt[asd->capture_pad].fmt.width;
        curr_rules.height = asd->fmt[asd->capture_pad].fmt.height;