]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
[media] dw9714: Set the v4l2 focus ctrl step as 1
authorRajmohan Mani <rajmohan.mani@intel.com>
Wed, 30 Aug 2017 17:48:52 +0000 (14:48 -0300)
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>
Wed, 4 Oct 2017 20:08:47 +0000 (17:08 -0300)
Current v4l2 focus ctrl step value of 16, limits the minimum granularity
of focus positions to 16. Setting this value as 1, enables more accurate
focus positions.

Signed-off-by: Rajmohan Mani <rajmohan.mani@intel.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
drivers/media/i2c/dw9714.c

index 95af4fc99cd043016c7c4e810019473a99acc5f9..ed01e8bd43313346846e22c2c0abccbc9e79bfbc 100644 (file)
 
 #define DW9714_NAME            "dw9714"
 #define DW9714_MAX_FOCUS_POS   1023
+/*
+ * This sets the minimum granularity for the focus positions.
+ * A value of 1 gives maximum accuracy for a desired focus position
+ */
+#define DW9714_FOCUS_STEPS     1
 /*
  * This acts as the minimum granularity of lens movement.
  * Keep this value power of 2, so the control steps can be
@@ -137,7 +142,7 @@ static int dw9714_init_controls(struct dw9714_device *dev_vcm)
        v4l2_ctrl_handler_init(hdl, 1);
 
        v4l2_ctrl_new_std(hdl, ops, V4L2_CID_FOCUS_ABSOLUTE,
-                         0, DW9714_MAX_FOCUS_POS, DW9714_CTRL_STEPS, 0);
+                         0, DW9714_MAX_FOCUS_POS, DW9714_FOCUS_STEPS, 0);
 
        if (hdl->error)
                dev_err(&client->dev, "%s fail error: 0x%x\n",