Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1410635 > unrolled thread

Re: [PATCHv5] support for AD5820 camera auto-focus coil

Started bySakari Ailus <sakari.ailus@iki.fi>
First post2016-05-31 23:30 +0200
Last post2016-06-10 00:40 +0200
Articles 16 — 4 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCHv5] support for AD5820 camera auto-focus coil Sakari Ailus <sakari.ailus@iki.fi> - 2016-05-31 23:30 +0200
    Re: [PATCHv5] support for AD5820 camera auto-focus coil Pavel Machek <pavel@ucw.cz> - 2016-05-31 23:40 +0200
      Re: [PATCHv5] support for AD5820 camera auto-focus coil Sakari Ailus <sakari.ailus@iki.fi> - 2016-06-01 17:30 +0200
        Re: [PATCHv5] support for AD5820 camera auto-focus coil Pavel Machek <pavel@ucw.cz> - 2016-06-02 00:10 +0200
          Re: [PATCHv5] support for AD5820 camera auto-focus coil Sakari Ailus <sakari.ailus@iki.fi> - 2016-06-02 09:50 +0200
            Re: [PATCHv5] support for AD5820 camera auto-focus coil Pavel Machek <pavel@ucw.cz> - 2016-06-02 21:30 +0200
              Re: [PATCHv5] support for AD5820 camera auto-focus coil Sakari Ailus <sakari.ailus@iki.fi> - 2016-06-02 23:30 +0200
            [PATCH] device tree description for AD5820 camera auto-focus coil Pavel Machek <pavel@ucw.cz> - 2016-06-02 21:40 +0200
              Re: [PATCH] device tree description for AD5820 camera auto-focus coil Sakari Ailus <sakari.ailus@iki.fi> - 2016-06-02 23:30 +0200
                Re: [PATCH] device tree description for AD5820 camera auto-focus coil Pavel Machek <pavel@ucw.cz> - 2016-06-03 08:20 +0200
                [PATCH] userspace API definitions for auto-focus coil Pavel Machek <pavel@ucw.cz> - 2016-06-05 21:10 +0200
                  Re: [PATCH] userspace API definitions for auto-focus coil Ivaylo Dimitrov <ivo.g.dimitrov.75@gmail.com> - 2016-06-06 08:10 +0200
                    Re: [PATCH] userspace API definitions for auto-focus coil Pavel Machek <pavel@ucw.cz> - 2016-06-06 09:30 +0200
              Re: [PATCH] device tree description for AD5820 camera auto-focus coil Rob Herring <robh@kernel.org> - 2016-06-06 15:30 +0200
              [PATCHv2] device tree description for AD5820 camera auto-focus coil Pavel Machek <pavel@ucw.cz> - 2016-06-07 09:20 +0200
                Re: [PATCHv2] device tree description for AD5820 camera auto-focus  coil Sakari Ailus <sakari.ailus@iki.fi> - 2016-06-10 00:40 +0200

#1410635 — Re: [PATCHv5] support for AD5820 camera auto-focus coil

FromSakari Ailus <sakari.ailus@iki.fi>
Date2016-05-31 23:30 +0200
SubjectRe: [PATCHv5] support for AD5820 camera auto-focus coil
Message-ID<rEZoC-7SC-7@gated-at.bofh.it>
Hi Pavel,

On Fri, May 27, 2016 at 10:51:40PM +0200, Pavel Machek wrote:
> 
> This adds support for AD5820 autofocus coil, found for example in
> Nokia N900 smartphone.
> 
> Signed-off-by: Pavel Machek <pavel@ucw.cz>

The patch looks good to me but then I came to think of a question I've
missed so far: is there DT documentation somewhere for the properties used
by the driver? I might put that to a separate patch, and cc the relevant
list.

Whether we decide to have the module in DT or not is orthogonal to this.

-- 
Kind regards,

Sakari Ailus
e-mail: sakari.ailus@iki.fi	XMPP: sailus@retiisi.org.uk

[toc] | [next] | [standalone]


#1410649

FromPavel Machek <pavel@ucw.cz>
Date2016-05-31 23:40 +0200
Message-ID<rEZyi-7VD-23@gated-at.bofh.it>
In reply to#1410635
On Wed 2016-06-01 00:22:22, Sakari Ailus wrote:
> Hi Pavel,
> 
> On Fri, May 27, 2016 at 10:51:40PM +0200, Pavel Machek wrote:
> > 
> > This adds support for AD5820 autofocus coil, found for example in
> > Nokia N900 smartphone.
> > 
> > Signed-off-by: Pavel Machek <pavel@ucw.cz>
> 
> The patch looks good to me but then I came to think of a question I've
> missed so far: is there DT documentation somewhere for the properties used
> by the driver? I might put that to a separate patch, and cc the relevant
> list.

Well, it does not use any dt properties. So there's not really much to
discuss with dt people...

Maybe "ad5820" needs to go to list of simple i2c drivers somewhere,
but...

Best regards,
									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[toc] | [prev] | [next] | [standalone]


#1411318

FromSakari Ailus <sakari.ailus@iki.fi>
Date2016-06-01 17:30 +0200
Message-ID<rFgfM-1DF-9@gated-at.bofh.it>
In reply to#1410649
Hi Pavel,

On Tue, May 31, 2016 at 11:34:37PM +0200, Pavel Machek wrote:
> On Wed 2016-06-01 00:22:22, Sakari Ailus wrote:
> > Hi Pavel,
> > 
> > On Fri, May 27, 2016 at 10:51:40PM +0200, Pavel Machek wrote:
> > > 
> > > This adds support for AD5820 autofocus coil, found for example in
> > > Nokia N900 smartphone.
> > > 
> > > Signed-off-by: Pavel Machek <pavel@ucw.cz>
> > 
> > The patch looks good to me but then I came to think of a question I've
> > missed so far: is there DT documentation somewhere for the properties used
> > by the driver? I might put that to a separate patch, and cc the relevant
> > list.
> 
> Well, it does not use any dt properties. So there's not really much to
> discuss with dt people...
> 
> Maybe "ad5820" needs to go to list of simple i2c drivers somewhere,
> but...

It's an I2C device and it does use a regulator. Not a lot, though, these are
both quite basic stuff. This should still be documented as the people who
write the DT bindings (in general) aren't expected to read driver code as
well. That's at least my understanding.

-- 
Kind regards,

Sakari Ailus
e-mail: sakari.ailus@iki.fi	XMPP: sailus@retiisi.org.uk

[toc] | [prev] | [next] | [standalone]


#1411619

FromPavel Machek <pavel@ucw.cz>
Date2016-06-02 00:10 +0200
Message-ID<rFmuS-60k-11@gated-at.bofh.it>
In reply to#1411318
On Wed 2016-06-01 18:24:39, Sakari Ailus wrote:
> Hi Pavel,

> > Well, it does not use any dt properties. So there's not really much to
> > discuss with dt people...
> > 
> > Maybe "ad5820" needs to go to list of simple i2c drivers somewhere,
> > but...
> 
> It's an I2C device and it does use a regulator. Not a lot, though, these are
> both quite basic stuff. This should still be documented as the people who
> write the DT bindings (in general) aren't expected to read driver code as
> well. That's at least my understanding.

Yep, you are right, I forgot about the regulator. Something like this?

Thanks,
									Pavel

diff --git a/Documentation/devicetree/bindings/media/i2c/ad5820.txt b/Documentation/devicetree/bindings/media/i2c/ad5820.txt
new file mode 100644
index 0000000..87c98f1
--- /dev/null
+++ b/Documentation/devicetree/bindings/media/i2c/ad5820.txt
@@ -0,0 +1,20 @@
+* Analog Devices AD5820 autofocus coil
+
+Required Properties:
+
+  - compatible: Must contain "adi,ad5820"
+
+  - reg: I2C slave address
+
+  - VANA-supply: supply of voltage for VANA pin
+
+Example:
+
+       /* D/A converter for auto-focus */
+       ad5820: dac@0c {
+               compatible = "adi,ad5820";
+               reg = <0x0c>;
+
+               VANA-supply = <&vaux4>;
+       };
+


-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[toc] | [prev] | [next] | [standalone]


#1411953

FromSakari Ailus <sakari.ailus@iki.fi>
Date2016-06-02 09:50 +0200
Message-ID<rFvya-32D-23@gated-at.bofh.it>
In reply to#1411619
On Thu, Jun 02, 2016 at 12:08:40AM +0200, Pavel Machek wrote:
> On Wed 2016-06-01 18:24:39, Sakari Ailus wrote:
> > Hi Pavel,
> 
> > > Well, it does not use any dt properties. So there's not really much to
> > > discuss with dt people...
> > > 
> > > Maybe "ad5820" needs to go to list of simple i2c drivers somewhere,
> > > but...
> > 
> > It's an I2C device and it does use a regulator. Not a lot, though, these are
> > both quite basic stuff. This should still be documented as the people who
> > write the DT bindings (in general) aren't expected to read driver code as
> > well. That's at least my understanding.
> 
> Yep, you are right, I forgot about the regulator. Something like this?
> 
> Thanks,
> 									Pavel
> 
> diff --git a/Documentation/devicetree/bindings/media/i2c/ad5820.txt b/Documentation/devicetree/bindings/media/i2c/ad5820.txt
> new file mode 100644
> index 0000000..87c98f1
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/media/i2c/ad5820.txt

I might use the compatible string as such as a part of the file name. Up to
you.

> @@ -0,0 +1,20 @@
> +* Analog Devices AD5820 autofocus coil
> +
> +Required Properties:
> +
> +  - compatible: Must contain "adi,ad5820"
> +
> +  - reg: I2C slave address
> +
> +  - VANA-supply: supply of voltage for VANA pin
> +
> +Example:
> +
> +       /* D/A converter for auto-focus */

There is definitely D/A conversion happening there but I'm not sure I'd
characterise the device as such. They're typically called "voice coil
drivers", perhaps because the devices are similar to a parts of a
loudspeaker.

> +       ad5820: dac@0c {
> +               compatible = "adi,ad5820";
> +               reg = <0x0c>;
> +
> +               VANA-supply = <&vaux4>;
> +       };
> +
> 
> 

-- 
Kind regards,

Sakari Ailus
e-mail: sakari.ailus@iki.fi	XMPP: sailus@retiisi.org.uk

[toc] | [prev] | [next] | [standalone]


#1412520

FromPavel Machek <pavel@ucw.cz>
Date2016-06-02 21:30 +0200
Message-ID<rFGtA-1H4-17@gated-at.bofh.it>
In reply to#1411953
On Thu 2016-06-02 10:45:45, Sakari Ailus wrote:
> On Thu, Jun 02, 2016 at 12:08:40AM +0200, Pavel Machek wrote:
> > On Wed 2016-06-01 18:24:39, Sakari Ailus wrote:
> > > Hi Pavel,
> > 
> > > > Well, it does not use any dt properties. So there's not really much to
> > > > discuss with dt people...
> > > > 
> > > > Maybe "ad5820" needs to go to list of simple i2c drivers somewhere,
> > > > but...
> > > 
> > > It's an I2C device and it does use a regulator. Not a lot, though, these are
> > > both quite basic stuff. This should still be documented as the people who
> > > write the DT bindings (in general) aren't expected to read driver code as
> > > well. That's at least my understanding.
> > 
> > Yep, you are right, I forgot about the regulator. Something like this?
> > 
> > Thanks,
> > 									Pavel
> > 
> > diff --git a/Documentation/devicetree/bindings/media/i2c/ad5820.txt b/Documentation/devicetree/bindings/media/i2c/ad5820.txt
> > new file mode 100644
> > index 0000000..87c98f1
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/media/i2c/ad5820.txt
> 
> I might use the compatible string as such as a part of the file name. Up to
> you.

Sorry, can't do that, for consistency with other ad* files in the directory.

> > @@ -0,0 +1,20 @@
> > +* Analog Devices AD5820 autofocus coil
> > +
> > +Required Properties:
> > +
> > +  - compatible: Must contain "adi,ad5820"
> > +
> > +  - reg: I2C slave address
> > +
> > +  - VANA-supply: supply of voltage for VANA pin
> > +
> > +Example:
> > +
> > +       /* D/A converter for auto-focus */
> 
> There is definitely D/A conversion happening there but I'm not sure I'd
> characterise the device as such. They're typically called "voice coil
> drivers", perhaps because the devices are similar to a parts of a
> loudspeaker.

Well, I'm pretty sure I did not invent that comment, but I can drop
it.

Best regards,
								Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[toc] | [prev] | [next] | [standalone]


#1412564

FromSakari Ailus <sakari.ailus@iki.fi>
Date2016-06-02 23:30 +0200
Message-ID<rFIlH-2Qp-9@gated-at.bofh.it>
In reply to#1412520
On Thu, Jun 02, 2016 at 09:27:37PM +0200, Pavel Machek wrote:
> On Thu 2016-06-02 10:45:45, Sakari Ailus wrote:
> > On Thu, Jun 02, 2016 at 12:08:40AM +0200, Pavel Machek wrote:
> > > On Wed 2016-06-01 18:24:39, Sakari Ailus wrote:
> > > > Hi Pavel,
> > > 
> > > > > Well, it does not use any dt properties. So there's not really much to
> > > > > discuss with dt people...
> > > > > 
> > > > > Maybe "ad5820" needs to go to list of simple i2c drivers somewhere,
> > > > > but...
> > > > 
> > > > It's an I2C device and it does use a regulator. Not a lot, though, these are
> > > > both quite basic stuff. This should still be documented as the people who
> > > > write the DT bindings (in general) aren't expected to read driver code as
> > > > well. That's at least my understanding.
> > > 
> > > Yep, you are right, I forgot about the regulator. Something like this?
> > > 
> > > Thanks,
> > > 									Pavel
> > > 
> > > diff --git a/Documentation/devicetree/bindings/media/i2c/ad5820.txt b/Documentation/devicetree/bindings/media/i2c/ad5820.txt
> > > new file mode 100644
> > > index 0000000..87c98f1
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/media/i2c/ad5820.txt
> > 
> > I might use the compatible string as such as a part of the file name. Up to
> > you.
> 
> Sorry, can't do that, for consistency with other ad* files in the directory.
> 
> > > @@ -0,0 +1,20 @@
> > > +* Analog Devices AD5820 autofocus coil
> > > +
> > > +Required Properties:
> > > +
> > > +  - compatible: Must contain "adi,ad5820"
> > > +
> > > +  - reg: I2C slave address
> > > +
> > > +  - VANA-supply: supply of voltage for VANA pin
> > > +
> > > +Example:
> > > +
> > > +       /* D/A converter for auto-focus */
> > 
> > There is definitely D/A conversion happening there but I'm not sure I'd
> > characterise the device as such. They're typically called "voice coil
> > drivers", perhaps because the devices are similar to a parts of a
> > loudspeaker.
> 
> Well, I'm pretty sure I did not invent that comment, but I can drop
> it.

Both are fine for me.

-- 
Sakari Ailus
e-mail: sakari.ailus@iki.fi	XMPP: sailus@retiisi.org.uk

[toc] | [prev] | [next] | [standalone]


#1412522 — [PATCH] device tree description for AD5820 camera auto-focus coil

FromPavel Machek <pavel@ucw.cz>
Date2016-06-02 21:40 +0200
Subject[PATCH] device tree description for AD5820 camera auto-focus coil
Message-ID<rFGDf-1Km-7@gated-at.bofh.it>
In reply to#1411953
Add documentation for ad5820 device tree binding.

Signed-off-by: Pavel Machek <pavel@denx.de>

diff --git a/Documentation/devicetree/bindings/media/i2c/ad5820.txt b/Documentation/devicetree/bindings/media/i2c/ad5820.txt
new file mode 100644
index 0000000..fb70ca5
--- /dev/null
+++ b/Documentation/devicetree/bindings/media/i2c/ad5820.txt
@@ -0,0 +1,19 @@
+* Analog Devices AD5820 autofocus coil
+
+Required Properties:
+
+  - compatible: Must contain "adi,ad5820"
+
+  - reg: I2C slave address
+
+  - VANA-supply: supply of voltage for VANA pin
+
+Example:
+
+       ad5820: coil@0c {
+               compatible = "adi,ad5820";
+               reg = <0x0c>;
+
+               VANA-supply = <&vaux4>;
+       };
+

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[toc] | [prev] | [next] | [standalone]


#1412561 — Re: [PATCH] device tree description for AD5820 camera auto-focus coil

FromSakari Ailus <sakari.ailus@iki.fi>
Date2016-06-02 23:30 +0200
SubjectRe: [PATCH] device tree description for AD5820 camera auto-focus coil
Message-ID<rFIlH-2Qp-1@gated-at.bofh.it>
In reply to#1412522
On Thu, Jun 02, 2016 at 09:30:27PM +0200, Pavel Machek wrote:
> 
> Add documentation for ad5820 device tree binding.
> 
> Signed-off-by: Pavel Machek <pavel@denx.de>

Thanks, Pavel!!

Can I pick the two patches (this one + the driver) or would you like to send
a pull request? In the latter case you can add:

Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>

-- 
Sakari Ailus
e-mail: sakari.ailus@iki.fi	XMPP: sailus@retiisi.org.uk

[toc] | [prev] | [next] | [standalone]


#1412831 — Re: [PATCH] device tree description for AD5820 camera auto-focus coil

FromPavel Machek <pavel@ucw.cz>
Date2016-06-03 08:20 +0200
SubjectRe: [PATCH] device tree description for AD5820 camera auto-focus coil
Message-ID<rFQCC-81c-13@gated-at.bofh.it>
In reply to#1412561
On Fri 2016-06-03 00:27:46, Sakari Ailus wrote:
> On Thu, Jun 02, 2016 at 09:30:27PM +0200, Pavel Machek wrote:
> > 
> > Add documentation for ad5820 device tree binding.
> > 
> > Signed-off-by: Pavel Machek <pavel@denx.de>
> 
> Thanks, Pavel!!
> 
> Can I pick the two patches (this one + the driver) or would you like to send
> a pull request? In the latter case you can add:

Yes please, pick up the two patches.

Best regards,
									Pavel

> Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
> 

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[toc] | [prev] | [next] | [standalone]


#1414146 — [PATCH] userspace API definitions for auto-focus coil

FromPavel Machek <pavel@ucw.cz>
Date2016-06-05 21:10 +0200
Subject[PATCH] userspace API definitions for auto-focus coil
Message-ID<rGLAS-2kr-13@gated-at.bofh.it>
In reply to#1412561
Add userspace API definitions.

Signed-off-by: Pavel Machek <pavel@ucw.cz>

diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h
index b6a357a..23011cc 100644
--- a/include/uapi/linux/v4l2-controls.h
+++ b/include/uapi/linux/v4l2-controls.h
@@ -974,4 +975,9 @@ enum v4l2_detect_md_mode {
 #define V4L2_CID_DETECT_MD_THRESHOLD_GRID	(V4L2_CID_DETECT_CLASS_BASE + 3)
 #define V4L2_CID_DETECT_MD_REGION_GRID		(V4L2_CID_DETECT_CLASS_BASE + 4)
 
+/* Control IDs specific to the AD5820 driver as defined by V4L2 */
+#define V4L2_CID_FOCUS_AD5820_BASE 	(V4L2_CTRL_CLASS_CAMERA | 0x10af)
+#define V4L2_CID_FOCUS_AD5820_RAMP_TIME	(V4L2_CID_FOCUS_AD5820_BASE+0)
+#define V4L2_CID_FOCUS_AD5820_RAMP_MODE	(V4L2_CID_FOCUS_AD5820_BASE+1)
+
 #endif

-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[toc] | [prev] | [next] | [standalone]


#1414662 — Re: [PATCH] userspace API definitions for auto-focus coil

FromIvaylo Dimitrov <ivo.g.dimitrov.75@gmail.com>
Date2016-06-06 08:10 +0200
SubjectRe: [PATCH] userspace API definitions for auto-focus coil
Message-ID<rGVTA-14x-1@gated-at.bofh.it>
In reply to#1414146
Hi,

On  5.06.2016 22:07, Pavel Machek wrote:
> Add userspace API definitions.
>
> Signed-off-by: Pavel Machek <pavel@ucw.cz>
>
> diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h
> index b6a357a..23011cc 100644
> --- a/include/uapi/linux/v4l2-controls.h
> +++ b/include/uapi/linux/v4l2-controls.h
> @@ -974,4 +975,9 @@ enum v4l2_detect_md_mode {
>   #define V4L2_CID_DETECT_MD_THRESHOLD_GRID	(V4L2_CID_DETECT_CLASS_BASE + 3)
>   #define V4L2_CID_DETECT_MD_REGION_GRID		(V4L2_CID_DETECT_CLASS_BASE + 4)
>
> +/* Control IDs specific to the AD5820 driver as defined by V4L2 */
> +#define V4L2_CID_FOCUS_AD5820_BASE 	(V4L2_CTRL_CLASS_CAMERA | 0x10af)
> +#define V4L2_CID_FOCUS_AD5820_RAMP_TIME	(V4L2_CID_FOCUS_AD5820_BASE+0)
> +#define V4L2_CID_FOCUS_AD5820_RAMP_MODE	(V4L2_CID_FOCUS_AD5820_BASE+1)
> +
>   #endif
>

Sakari, what about adding those as standard camera controls? It seems 
ad5820 is not the only VCM driver to implement "antiringing" controls, 
http://rohmfs.rohm.com/en/products/databook/datasheet/ic/motor/mobile_module/bu64241gwz-e.pdf 
is another example I found by quick search.

What about:

#define V4L2_CID_FOCUS_STEP_MODE xxx
enum v4l2_cid_focus_step_mode {
V4L2_CID_FOCUS_STEP_MODE_DIRECT,
V4L2_CID_FOCUS_STEP_MODE_LINEAR,
V4L2_CID_FOCUS_STEP_MODE_AUTO
};
#define V4L2_CID_FOCUS_STEP_TIME xxx+1

Also, how the userspace(or the kernel) is notified by v4l that there is 
an event? The point is - I think it is a good idea to notify when VCM 
has completed its movement, we can start a timer based on the current 
position, mode, step time etc and notify after the pre-calculated 
movement time.

Here ftp://ftp.analog.com/pub/evalcd/AD5820_v1_0/AD5820_Quickstart.pdf 
can be found the modes/timings description for ad5820 along with the 
equations needed to calculate timings etc.

Ivo

[toc] | [prev] | [next] | [standalone]


#1414695 — Re: [PATCH] userspace API definitions for auto-focus coil

FromPavel Machek <pavel@ucw.cz>
Date2016-06-06 09:30 +0200
SubjectRe: [PATCH] userspace API definitions for auto-focus coil
Message-ID<rGX8Z-1Ly-11@gated-at.bofh.it>
In reply to#1414662
Hi!

> On  5.06.2016 22:07, Pavel Machek wrote:
> >Add userspace API definitions.
> >
> >Signed-off-by: Pavel Machek <pavel@ucw.cz>
> >
> >diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h
> >index b6a357a..23011cc 100644
> >--- a/include/uapi/linux/v4l2-controls.h
> >+++ b/include/uapi/linux/v4l2-controls.h
> >@@ -974,4 +975,9 @@ enum v4l2_detect_md_mode {
> >  #define V4L2_CID_DETECT_MD_THRESHOLD_GRID	(V4L2_CID_DETECT_CLASS_BASE + 3)
> >  #define V4L2_CID_DETECT_MD_REGION_GRID		(V4L2_CID_DETECT_CLASS_BASE + 4)
> >
> >+/* Control IDs specific to the AD5820 driver as defined by V4L2 */
> >+#define V4L2_CID_FOCUS_AD5820_BASE 	(V4L2_CTRL_CLASS_CAMERA | 0x10af)
> >+#define V4L2_CID_FOCUS_AD5820_RAMP_TIME	(V4L2_CID_FOCUS_AD5820_BASE+0)
> >+#define V4L2_CID_FOCUS_AD5820_RAMP_MODE	(V4L2_CID_FOCUS_AD5820_BASE+1)
> >+
> >  #endif
> >
> 
> Sakari, what about adding those as standard camera controls? It seems ad5820
> is not the only VCM driver to implement "antiringing" controls, http://rohmfs.rohm.com/en/products/databook/datasheet/ic/motor/mobile_module/bu64241gwz-e.pdf
> is another example I found by quick search.

Well, standartized API may be good idea... but I'd really like the
driver to go in, and it looks like camera application needs to know
quite a lot of details about the autofocus subsystem. 

> 
> What about:
> 
> #define V4L2_CID_FOCUS_STEP_MODE xxx
> enum v4l2_cid_focus_step_mode {
> V4L2_CID_FOCUS_STEP_MODE_DIRECT,
> V4L2_CID_FOCUS_STEP_MODE_LINEAR,
> V4L2_CID_FOCUS_STEP_MODE_AUTO
> };
> #define V4L2_CID_FOCUS_STEP_TIME xxx+1
> 
> Also, how the userspace(or the kernel) is notified by v4l that there is an
> event? The point is - I think it is a good idea to notify when VCM has
> completed its movement, we can start a timer based on the current
> position,

Why? Look at how fcam-dev/ works. It is not interested when movement
is "done". It sets the focus to one distance, then says it to slowly
refocus to another distance, and watches the stream for
sharpness. When it is sharp, it computes likely lens position at the
time of sharpness, and asks hardware to go back there.

Best regards,
									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[toc] | [prev] | [next] | [standalone]


#1415033 — Re: [PATCH] device tree description for AD5820 camera auto-focus coil

FromRob Herring <robh@kernel.org>
Date2016-06-06 15:30 +0200
SubjectRe: [PATCH] device tree description for AD5820 camera auto-focus coil
Message-ID<rH2Ln-5ut-17@gated-at.bofh.it>
In reply to#1412522
On Thu, Jun 02, 2016 at 09:30:27PM +0200, Pavel Machek wrote:
> 
> Add documentation for ad5820 device tree binding.
> 
> Signed-off-by: Pavel Machek <pavel@denx.de>
> 
> diff --git a/Documentation/devicetree/bindings/media/i2c/ad5820.txt b/Documentation/devicetree/bindings/media/i2c/ad5820.txt
> new file mode 100644
> index 0000000..fb70ca5
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/media/i2c/ad5820.txt
> @@ -0,0 +1,19 @@
> +* Analog Devices AD5820 autofocus coil
> +
> +Required Properties:
> +
> +  - compatible: Must contain "adi,ad5820"
> +
> +  - reg: I2C slave address
> +
> +  - VANA-supply: supply of voltage for VANA pin
> +
> +Example:
> +
> +       ad5820: coil@0c {

Drop the leading 0. With that,

Acked-by: Rob Herring <robh@kernel.org>

[toc] | [prev] | [next] | [standalone]


#1415777 — [PATCHv2] device tree description for AD5820 camera auto-focus coil

FromPavel Machek <pavel@ucw.cz>
Date2016-06-07 09:20 +0200
Subject[PATCHv2] device tree description for AD5820 camera auto-focus coil
Message-ID<rHjsR-82q-1@gated-at.bofh.it>
In reply to#1412522
Add documentation for ad5820 device tree binding.

Signed-off-by: Pavel Machek <pavel@denx.de>
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Acked-by: Rob Herring <robh@kernel.org>

---

v2: Fixed nit in example, added acks.

diff --git a/Documentation/devicetree/bindings/media/i2c/ad5820.txt b/Documentation/devicetree/bindings/media/i2c/ad5820.txt
new file mode 100644
index 0000000..fb70ca5
--- /dev/null
+++ b/Documentation/devicetree/bindings/media/i2c/ad5820.txt
@@ -0,0 +1,19 @@
+* Analog Devices AD5820 autofocus coil
+
+Required Properties:
+
+  - compatible: Must contain "adi,ad5820"
+
+  - reg: I2C slave address
+
+  - VANA-supply: supply of voltage for VANA pin
+
+Example:
+
+       ad5820: coil@c {
+               compatible = "adi,ad5820";
+               reg = <0x0c>;
+
+               VANA-supply = <&vaux4>;
+       };
+


-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

[toc] | [prev] | [next] | [standalone]


#1418919 — Re: [PATCHv2] device tree description for AD5820 camera auto-focus coil

FromSakari Ailus <sakari.ailus@iki.fi>
Date2016-06-10 00:40 +0200
SubjectRe: [PATCHv2] device tree description for AD5820 camera auto-focus coil
Message-ID<rIgMh-4ht-11@gated-at.bofh.it>
In reply to#1415777
On Tue, Jun 07, 2016 at 09:10:04AM +0200, Pavel Machek wrote:
> 
> Add documentation for ad5820 device tree binding.
> 
> Signed-off-by: Pavel Machek <pavel@denx.de>
> Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
> Acked-by: Rob Herring <robh@kernel.org>

Thanks!

I've replaced the patch in my tree, will send a pull req later.

-- 
Cheers,

Sakari Ailus
e-mail: sakari.ailus@iki.fi	XMPP: sailus@retiisi.org.uk

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web