All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/2] Add iris absolute and relative control CIDs
@ 2010-03-18 12:56 Laurent Pinchart
  2010-03-18 12:56 ` [PATCH v2 1/2] v4l: Add V4L2_CID_IRIS_ABSOLUTE and V4L2_CID_IRIS_RELATIVE controls Laurent Pinchart
  2010-03-18 12:56 ` [PATCH v2 2/2] uvcvideo: Support iris absolute and relative controls Laurent Pinchart
  0 siblings, 2 replies; 5+ messages in thread
From: Laurent Pinchart @ 2010-03-18 12:56 UTC (permalink / raw)
  To: linux-media

Hi everybody,

Here's a second version of the iris control patch set that incorporates
comments from Sergio and Mauro (I modified the documentation to make the 
relationship between control values and iris opening clearer).

I can send a pull request for those patches after review.

Laurent Pinchart (2):
  v4l: Add V4L2_CID_IRIS_ABSOLUTE and V4L2_CID_IRIS_RELATIVE controls
  uvcvideo: Support iris absolute and relative controls

 Documentation/DocBook/v4l/compat.xml      |   11 +++++++++++
 Documentation/DocBook/v4l/controls.xml    |   19 +++++++++++++++++++
 Documentation/DocBook/v4l/videodev2.h.xml |    3 +++
 drivers/media/video/uvc/uvc_ctrl.c        |   20 ++++++++++++++++++++
 include/linux/videodev2.h                 |    3 +++
 5 files changed, 56 insertions(+), 0 deletions(-)

-- 
Regards,

Laurent Pinchart


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH v2 1/2] v4l: Add V4L2_CID_IRIS_ABSOLUTE and V4L2_CID_IRIS_RELATIVE controls
  2010-03-18 12:56 [PATCH v2 0/2] Add iris absolute and relative control CIDs Laurent Pinchart
@ 2010-03-18 12:56 ` Laurent Pinchart
  2010-03-19 15:26   ` Frank Schaefer
  2010-03-18 12:56 ` [PATCH v2 2/2] uvcvideo: Support iris absolute and relative controls Laurent Pinchart
  1 sibling, 1 reply; 5+ messages in thread
From: Laurent Pinchart @ 2010-03-18 12:56 UTC (permalink / raw)
  To: linux-media

Those control, as their names imply, control the camera aperture
settings.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 Documentation/DocBook/v4l/compat.xml      |   11 +++++++++++
 Documentation/DocBook/v4l/controls.xml    |   19 +++++++++++++++++++
 Documentation/DocBook/v4l/videodev2.h.xml |    3 +++
 include/linux/videodev2.h                 |    3 +++
 4 files changed, 36 insertions(+), 0 deletions(-)

diff --git a/Documentation/DocBook/v4l/compat.xml b/Documentation/DocBook/v4l/compat.xml
index b9dbdf9..854235b 100644
--- a/Documentation/DocBook/v4l/compat.xml
+++ b/Documentation/DocBook/v4l/compat.xml
@@ -2332,6 +2332,17 @@ more information.</para>
 	</listitem>
       </orderedlist>
     </section>
+    <section>
+      <title>V4L2 in Linux 2.6.34</title>
+      <orderedlist>
+	<listitem>
+	  <para>Added
+<constant>V4L2_CID_IRIS_ABSOLUTE</constant> and
+<constant>V4L2_CID_IRIS_RELATIVE</constant> controls to the
+	    <link linkend="camera-controls">Camera controls class</link>.
+	  </para>
+	</listitem>
+      </orderedlist>
    </section>
 
    <section id="other">
diff --git a/Documentation/DocBook/v4l/controls.xml b/Documentation/DocBook/v4l/controls.xml
index f464506..e47999d 100644
--- a/Documentation/DocBook/v4l/controls.xml
+++ b/Documentation/DocBook/v4l/controls.xml
@@ -1825,6 +1825,25 @@ wide-angle direction. The zoom speed unit is driver-specific.</entry>
 	  <row><entry></entry></row>
 
 	  <row>
+	    <entry spanname="id"><constant>V4L2_CID_IRIS_ABSOLUTE</constant>&nbsp;</entry>
+	    <entry>integer</entry>
+	  </row><row><entry spanname="descr">This control sets the
+camera's aperture to the specified value. The unit is undefined.
+Larger values open the iris wider, smaller values close it.</entry>
+	  </row>
+	  <row><entry></entry></row>
+
+	  <row>
+	    <entry spanname="id"><constant>V4L2_CID_IRIS_RELATIVE</constant>&nbsp;</entry>
+	    <entry>integer</entry>
+	  </row><row><entry spanname="descr">This control modifies the
+camera's aperture by the specified amount. The unit is undefined.
+Positive values open the iris one step further, negative values close
+it one step further. This is a write-only control.</entry>
+	  </row>
+	  <row><entry></entry></row>
+
+	  <row>
 	    <entry spanname="id"><constant>V4L2_CID_PRIVACY</constant>&nbsp;</entry>
 	    <entry>boolean</entry>
 	  </row><row><entry spanname="descr">Prevent video from being acquired
diff --git a/Documentation/DocBook/v4l/videodev2.h.xml b/Documentation/DocBook/v4l/videodev2.h.xml
index 0683259..c18dfeb 100644
--- a/Documentation/DocBook/v4l/videodev2.h.xml
+++ b/Documentation/DocBook/v4l/videodev2.h.xml
@@ -1271,6 +1271,9 @@ enum  <link linkend="v4l2-exposure-auto-type">v4l2_exposure_auto_type</link> {
 
 #define V4L2_CID_PRIVACY                        (V4L2_CID_CAMERA_CLASS_BASE+16)
 
+#define V4L2_CID_IRIS_ABSOLUTE                  (V4L2_CID_CAMERA_CLASS_BASE+17)
+#define V4L2_CID_IRIS_RELATIVE                  (V4L2_CID_CAMERA_CLASS_BASE+18)
+
 /* FM Modulator class control IDs */
 #define V4L2_CID_FM_TX_CLASS_BASE               (V4L2_CTRL_CLASS_FM_TX | 0x900)
 #define V4L2_CID_FM_TX_CLASS                    (V4L2_CTRL_CLASS_FM_TX | 1)
diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h
index 3c26560..c9d2120 100644
--- a/include/linux/videodev2.h
+++ b/include/linux/videodev2.h
@@ -1277,6 +1277,9 @@ enum  v4l2_exposure_auto_type {
 
 #define V4L2_CID_PRIVACY			(V4L2_CID_CAMERA_CLASS_BASE+16)
 
+#define V4L2_CID_IRIS_ABSOLUTE			(V4L2_CID_CAMERA_CLASS_BASE+17)
+#define V4L2_CID_IRIS_RELATIVE			(V4L2_CID_CAMERA_CLASS_BASE+18)
+
 /* FM Modulator class control IDs */
 #define V4L2_CID_FM_TX_CLASS_BASE		(V4L2_CTRL_CLASS_FM_TX | 0x900)
 #define V4L2_CID_FM_TX_CLASS			(V4L2_CTRL_CLASS_FM_TX | 1)
-- 
1.6.4.4


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH v2 2/2] uvcvideo: Support iris absolute and relative controls
  2010-03-18 12:56 [PATCH v2 0/2] Add iris absolute and relative control CIDs Laurent Pinchart
  2010-03-18 12:56 ` [PATCH v2 1/2] v4l: Add V4L2_CID_IRIS_ABSOLUTE and V4L2_CID_IRIS_RELATIVE controls Laurent Pinchart
@ 2010-03-18 12:56 ` Laurent Pinchart
  1 sibling, 0 replies; 5+ messages in thread
From: Laurent Pinchart @ 2010-03-18 12:56 UTC (permalink / raw)
  To: linux-media

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
---
 drivers/media/video/uvc/uvc_ctrl.c |   20 ++++++++++++++++++++
 1 files changed, 20 insertions(+), 0 deletions(-)

diff --git a/drivers/media/video/uvc/uvc_ctrl.c b/drivers/media/video/uvc/uvc_ctrl.c
index 3b2e780..3697d72 100644
--- a/drivers/media/video/uvc/uvc_ctrl.c
+++ b/drivers/media/video/uvc/uvc_ctrl.c
@@ -561,6 +561,26 @@ static struct uvc_control_mapping uvc_ctrl_mappings[] = {
 		.data_type	= UVC_CTRL_DATA_TYPE_BOOLEAN,
 	},
 	{
+		.id		= V4L2_CID_IRIS_ABSOLUTE,
+		.name		= "Iris, Absolute",
+		.entity		= UVC_GUID_UVC_CAMERA,
+		.selector	= UVC_CT_IRIS_ABSOLUTE_CONTROL,
+		.size		= 16,
+		.offset		= 0,
+		.v4l2_type	= V4L2_CTRL_TYPE_INTEGER,
+		.data_type	= UVC_CTRL_DATA_TYPE_UNSIGNED,
+	},
+	{
+		.id		= V4L2_CID_IRIS_RELATIVE,
+		.name		= "Iris, Relative",
+		.entity		= UVC_GUID_UVC_CAMERA,
+		.selector	= UVC_CT_IRIS_RELATIVE_CONTROL,
+		.size		= 8,
+		.offset		= 0,
+		.v4l2_type	= V4L2_CTRL_TYPE_INTEGER,
+		.data_type	= UVC_CTRL_DATA_TYPE_SIGNED,
+	},
+	{
 		.id		= V4L2_CID_ZOOM_ABSOLUTE,
 		.name		= "Zoom, Absolute",
 		.entity		= UVC_GUID_UVC_CAMERA,
-- 
1.6.4.4


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH v2 1/2] v4l: Add V4L2_CID_IRIS_ABSOLUTE and V4L2_CID_IRIS_RELATIVE controls
  2010-03-18 12:56 ` [PATCH v2 1/2] v4l: Add V4L2_CID_IRIS_ABSOLUTE and V4L2_CID_IRIS_RELATIVE controls Laurent Pinchart
@ 2010-03-19 15:26   ` Frank Schaefer
  2010-03-31 16:08     ` Laurent Pinchart
  0 siblings, 1 reply; 5+ messages in thread
From: Frank Schaefer @ 2010-03-19 15:26 UTC (permalink / raw)
  To: Laurent Pinchart; +Cc: linux-media

Laurent Pinchart schrieb:
> Those control, as their names imply, control the camera aperture
> settings.
>
> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> ---
>  Documentation/DocBook/v4l/compat.xml      |   11 +++++++++++
>  Documentation/DocBook/v4l/controls.xml    |   19 +++++++++++++++++++
>  Documentation/DocBook/v4l/videodev2.h.xml |    3 +++
>  include/linux/videodev2.h                 |    3 +++
>  4 files changed, 36 insertions(+), 0 deletions(-)
>
> diff --git a/Documentation/DocBook/v4l/compat.xml b/Documentation/DocBook/v4l/compat.xml
> index b9dbdf9..854235b 100644
> --- a/Documentation/DocBook/v4l/compat.xml
> +++ b/Documentation/DocBook/v4l/compat.xml
> @@ -2332,6 +2332,17 @@ more information.</para>
>  	</listitem>
>        </orderedlist>
>      </section>
> +    <section>
> +      <title>V4L2 in Linux 2.6.34</title>
> +      <orderedlist>
> +	<listitem>
> +	  <para>Added
> +<constant>V4L2_CID_IRIS_ABSOLUTE</constant> and
> +<constant>V4L2_CID_IRIS_RELATIVE</constant> controls to the
> +	    <link linkend="camera-controls">Camera controls class</link>.
> +	  </para>
> +	</listitem>
> +      </orderedlist>
>     </section>
>  
>     <section id="other">
> diff --git a/Documentation/DocBook/v4l/controls.xml b/Documentation/DocBook/v4l/controls.xml
> index f464506..e47999d 100644
> --- a/Documentation/DocBook/v4l/controls.xml
> +++ b/Documentation/DocBook/v4l/controls.xml
> @@ -1825,6 +1825,25 @@ wide-angle direction. The zoom speed unit is driver-specific.</entry>
>  	  <row><entry></entry></row>
>  
>  	  <row>
> +	    <entry spanname="id"><constant>V4L2_CID_IRIS_ABSOLUTE</constant>&nbsp;</entry>
> +	    <entry>integer</entry>
> +	  </row><row><entry spanname="descr">This control sets the
> +camera's aperture to the specified value. The unit is undefined.
> +Larger values open the iris wider, smaller values close it.</entry>
> +	  </row>
> +	  <row><entry></entry></row>
> +
> +	  <row>
> +	    <entry spanname="id"><constant>V4L2_CID_IRIS_RELATIVE</constant>&nbsp;</entry>
> +	    <entry>integer</entry>
> +	  </row><row><entry spanname="descr">This control modifies the
> +camera's aperture by the specified amount. The unit is undefined.
> +Positive values open the iris one step further, negative values close
> +it one step further. This is a write-only control.</entry>
> +	  </row>
> +	  <row><entry></entry></row>
> +
> +	  <row>
>  	    <entry spanname="id"><constant>V4L2_CID_PRIVACY</constant>&nbsp;</entry>
>  	    <entry>boolean</entry>
>  	  </row><row><entry spanname="descr">Prevent video from being acquired
> diff --git a/Documentation/DocBook/v4l/videodev2.h.xml b/Documentation/DocBook/v4l/videodev2.h.xml
> index 0683259..c18dfeb 100644
> --- a/Documentation/DocBook/v4l/videodev2.h.xml
> +++ b/Documentation/DocBook/v4l/videodev2.h.xml
> @@ -1271,6 +1271,9 @@ enum  <link linkend="v4l2-exposure-auto-type">v4l2_exposure_auto_type</link> {
>  
>  #define V4L2_CID_PRIVACY                        (V4L2_CID_CAMERA_CLASS_BASE+16)
>  
> +#define V4L2_CID_IRIS_ABSOLUTE                  (V4L2_CID_CAMERA_CLASS_BASE+17)
> +#define V4L2_CID_IRIS_RELATIVE                  (V4L2_CID_CAMERA_CLASS_BASE+18)
> +
>  /* FM Modulator class control IDs */
>  #define V4L2_CID_FM_TX_CLASS_BASE               (V4L2_CTRL_CLASS_FM_TX | 0x900)
>  #define V4L2_CID_FM_TX_CLASS                    (V4L2_CTRL_CLASS_FM_TX | 1)
> diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h
> index 3c26560..c9d2120 100644
> --- a/include/linux/videodev2.h
> +++ b/include/linux/videodev2.h
> @@ -1277,6 +1277,9 @@ enum  v4l2_exposure_auto_type {
>  
>  #define V4L2_CID_PRIVACY			(V4L2_CID_CAMERA_CLASS_BASE+16)
>  
> +#define V4L2_CID_IRIS_ABSOLUTE			(V4L2_CID_CAMERA_CLASS_BASE+17)
> +#define V4L2_CID_IRIS_RELATIVE			(V4L2_CID_CAMERA_CLASS_BASE+18)
> +
>  /* FM Modulator class control IDs */
>  #define V4L2_CID_FM_TX_CLASS_BASE		(V4L2_CTRL_CLASS_FM_TX | 0x900)
>  #define V4L2_CID_FM_TX_CLASS			(V4L2_CTRL_CLASS_FM_TX | 1)
>   
Please also add proper titles to v4l2_ctrl_get_name() in v4l2-common.c.

Thanks,
Frank

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v2 1/2] v4l: Add V4L2_CID_IRIS_ABSOLUTE and V4L2_CID_IRIS_RELATIVE controls
  2010-03-19 15:26   ` Frank Schaefer
@ 2010-03-31 16:08     ` Laurent Pinchart
  0 siblings, 0 replies; 5+ messages in thread
From: Laurent Pinchart @ 2010-03-31 16:08 UTC (permalink / raw)
  To: Frank Schaefer; +Cc: linux-media

Hi Frank,

On Friday 19 March 2010 16:26:12 Frank Schaefer wrote:
> Laurent Pinchart schrieb:
> > Those control, as their names imply, control the camera aperture
> > settings.
> > 
> > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> > ---
> > 
> >  Documentation/DocBook/v4l/compat.xml      |   11 +++++++++++
> >  Documentation/DocBook/v4l/controls.xml    |   19 +++++++++++++++++++
> >  Documentation/DocBook/v4l/videodev2.h.xml |    3 +++
> >  include/linux/videodev2.h                 |    3 +++
> >  4 files changed, 36 insertions(+), 0 deletions(-)
> > 
> > diff --git a/Documentation/DocBook/v4l/compat.xml
> > b/Documentation/DocBook/v4l/compat.xml index b9dbdf9..854235b 100644
> > --- a/Documentation/DocBook/v4l/compat.xml
> > +++ b/Documentation/DocBook/v4l/compat.xml
> > @@ -2332,6 +2332,17 @@ more information.</para>
> > 
> >  	</listitem>
> >  	
> >        </orderedlist>
> >      
> >      </section>
> > 
> > +    <section>
> > +      <title>V4L2 in Linux 2.6.34</title>
> > +      <orderedlist>
> > +	<listitem>
> > +	  <para>Added
> > +<constant>V4L2_CID_IRIS_ABSOLUTE</constant> and
> > +<constant>V4L2_CID_IRIS_RELATIVE</constant> controls to the
> > +	    <link linkend="camera-controls">Camera controls class</link>.
> > +	  </para>
> > +	</listitem>
> > +      </orderedlist>
> > 
> >     </section>
> >     
> >     <section id="other">
> > 
> > diff --git a/Documentation/DocBook/v4l/controls.xml
> > b/Documentation/DocBook/v4l/controls.xml index f464506..e47999d 100644
> > --- a/Documentation/DocBook/v4l/controls.xml
> > +++ b/Documentation/DocBook/v4l/controls.xml
> > @@ -1825,6 +1825,25 @@ wide-angle direction. The zoom speed unit is
> > driver-specific.</entry>
> > 
> >  	  <row><entry></entry></row>
> >  	  
> >  	  <row>
> > 
> > +	    <entry
> > spanname="id"><constant>V4L2_CID_IRIS_ABSOLUTE</constant>&nbsp;</entry>
> > +	    <entry>integer</entry>
> > +	  </row><row><entry spanname="descr">This control sets the
> > +camera's aperture to the specified value. The unit is undefined.
> > +Larger values open the iris wider, smaller values close it.</entry>
> > +	  </row>
> > +	  <row><entry></entry></row>
> > +
> > +	  <row>
> > +	    <entry
> > spanname="id"><constant>V4L2_CID_IRIS_RELATIVE</constant>&nbsp;</entry>
> > +	    <entry>integer</entry>
> > +	  </row><row><entry spanname="descr">This control modifies the
> > +camera's aperture by the specified amount. The unit is undefined.
> > +Positive values open the iris one step further, negative values close
> > +it one step further. This is a write-only control.</entry>
> > +	  </row>
> > +	  <row><entry></entry></row>
> > +
> > +	  <row>
> > 
> >  	    <entry
> >  	    spanname="id"><constant>V4L2_CID_PRIVACY</constant>&nbsp;</entry>
> >  	    <entry>boolean</entry>
> >  	  
> >  	  </row><row><entry spanname="descr">Prevent video from being acquired
> > 
> > diff --git a/Documentation/DocBook/v4l/videodev2.h.xml
> > b/Documentation/DocBook/v4l/videodev2.h.xml index 0683259..c18dfeb
> > 100644
> > --- a/Documentation/DocBook/v4l/videodev2.h.xml
> > +++ b/Documentation/DocBook/v4l/videodev2.h.xml
> > @@ -1271,6 +1271,9 @@ enum  <link
> > linkend="v4l2-exposure-auto-type">v4l2_exposure_auto_type</link> {
> > 
> >  #define V4L2_CID_PRIVACY                       
> >  (V4L2_CID_CAMERA_CLASS_BASE+16)
> > 
> > +#define V4L2_CID_IRIS_ABSOLUTE                 
> > (V4L2_CID_CAMERA_CLASS_BASE+17) +#define V4L2_CID_IRIS_RELATIVE         
> >         (V4L2_CID_CAMERA_CLASS_BASE+18) +
> > 
> >  /* FM Modulator class control IDs */
> >  #define V4L2_CID_FM_TX_CLASS_BASE               (V4L2_CTRL_CLASS_FM_TX |
> >  0x900) #define V4L2_CID_FM_TX_CLASS                   
> >  (V4L2_CTRL_CLASS_FM_TX | 1)
> > 
> > diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h
> > index 3c26560..c9d2120 100644
> > --- a/include/linux/videodev2.h
> > +++ b/include/linux/videodev2.h
> > @@ -1277,6 +1277,9 @@ enum  v4l2_exposure_auto_type {
> > 
> >  #define V4L2_CID_PRIVACY			(V4L2_CID_CAMERA_CLASS_BASE+16)
> > 
> > +#define V4L2_CID_IRIS_ABSOLUTE			(V4L2_CID_CAMERA_CLASS_BASE+17)
> > +#define V4L2_CID_IRIS_RELATIVE			(V4L2_CID_CAMERA_CLASS_BASE+18)
> > +
> > 
> >  /* FM Modulator class control IDs */
> >  #define V4L2_CID_FM_TX_CLASS_BASE		(V4L2_CTRL_CLASS_FM_TX | 0x900)
> >  #define V4L2_CID_FM_TX_CLASS			(V4L2_CTRL_CLASS_FM_TX | 1)
> 
> Please also add proper titles to v4l2_ctrl_get_name() in v4l2-common.c.

Very good point. I'll resubmit the patches.

-- 
Regards,

Laurent Pinchart

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2010-03-31 21:25 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-03-18 12:56 [PATCH v2 0/2] Add iris absolute and relative control CIDs Laurent Pinchart
2010-03-18 12:56 ` [PATCH v2 1/2] v4l: Add V4L2_CID_IRIS_ABSOLUTE and V4L2_CID_IRIS_RELATIVE controls Laurent Pinchart
2010-03-19 15:26   ` Frank Schaefer
2010-03-31 16:08     ` Laurent Pinchart
2010-03-18 12:56 ` [PATCH v2 2/2] uvcvideo: Support iris absolute and relative controls Laurent Pinchart

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.