linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sakari Ailus <sakari.ailus@iki.fi>
To: Sylwester Nawrocki <snjw23@gmail.com>
Cc: linux-media@vger.kernel.org, laurent.pinchart@ideasonboard.com,
	dacohen@gmail.com, andriy.shevchenko@linux.intel.com,
	t.stanislaws@samsung.com, tuukkat76@gmail.com,
	k.debski@samsung.com, riverful@gmail.com, hverkuil@xs4all.nl,
	teturtia@gmail.com
Subject: Re: [PATCH v2 09/31] v4l: Image source control class
Date: Sat, 04 Feb 2012 22:23:22 +0200	[thread overview]
Message-ID: <4F2D93BA.7070703@iki.fi> (raw)
In-Reply-To: <4F2D7C28.6010909@gmail.com>

Hi Sylwester,

Thanks for the review!

Sylwester Nawrocki wrote:
> On 02/03/2012 12:54 AM, Sakari Ailus wrote:
>> Add image source control class. This control class is intended to contain
>> low level controls which deal with control of the image capture process ---
>> the A/D converter in image sensors, for example.
>>
>> Signed-off-by: Sakari Ailus<sakari.ailus@iki.fi>
>> ---
>>   Documentation/DocBook/media/v4l/controls.xml       |   86 ++++++++++++++++++++
>>   .../DocBook/media/v4l/vidioc-g-ext-ctrls.xml       |    6 ++
>>   drivers/media/video/v4l2-ctrls.c                   |    7 ++
>>   include/linux/videodev2.h                          |    9 ++
>>   4 files changed, 108 insertions(+), 0 deletions(-)
>>
>> diff --git a/Documentation/DocBook/media/v4l/controls.xml b/Documentation/DocBook/media/v4l/controls.xml
>> index a1be378..6842e80 100644
>> --- a/Documentation/DocBook/media/v4l/controls.xml
>> +++ b/Documentation/DocBook/media/v4l/controls.xml
>> @@ -3379,4 +3379,90 @@ interface and may change in the future.</para>
>>         </table>
>>
>>       </section>
>> +
>> +<section id="image-source-controls">
>> +<title>Image Source Control Reference</title>
>> +
>> +<note>
>> +	<title>Experimental</title>
>> +
>> +	<para>This is an<link
>> +	linkend="experimental">experimental</link>  interface and may
>> +	change in the future.</para>
>> +</note>
>> +
>> +<para>
>> +	The Image Source control class is intended for low-level
>> +	control of image source devices such as image sensors. The
>> +	devices feature an analogue to digital converter and a bus
>> +	transmitter to transmit the image data out of the device.
>> +</para>
>> +
>> +<table pgwide="1" frame="none" id="image-source-control-id">
>> +<title>Image Source Control IDs</title>
>> +
>> +<tgroup cols="4">
>> +	<colspec colname="c1" colwidth="1*" />
>> +	<colspec colname="c2" colwidth="6*" />
>> +	<colspec colname="c3" colwidth="2*" />
>> +	<colspec colname="c4" colwidth="6*" />
>> +	<spanspec namest="c1" nameend="c2" spanname="id" />
>> +	<spanspec namest="c2" nameend="c4" spanname="descr" />
>> +	<thead>
>> +	<row>
>> +	<entry spanname="id" align="left">ID</entry>
>> +	<entry align="left">Type</entry>
>> +	</row><row rowsep="1"><entry spanname="descr" align="left">Description</entry>
>> +	</row>
>> +	</thead>
>> +	<tbody valign="top">
>> +	<row><entry></entry></row>
>> +	<row>
>> +	<entry spanname="id"><constant>V4L2_CID_IMAGE_SOURCE_CLASS</constant></entry>
>> +	<entry>class</entry>
>> +	</row>
>> +	<row>
>> +	<entry spanname="descr">The IMAGE_SOURCE class descriptor.</entry>
>> +	</row>
>> +	<row>
>> +	<entry spanname="id"><constant>V4L2_CID_IMAGE_SOURCE_VBLANK</constant></entry>
>> +	<entry>integer</entry>
>> +	</row>
>> +	<row>
>> +	<entry spanname="descr">Vertical blanking. The idle
>> +	    preriod after every frame during which no image data is
>> +	    produced. The unit of vertical blanking is a line. Every
>> +	    line has length of the image width plus horizontal
>> +	    blanking at the pixel clock specified by struct
>> +	    v4l2_mbus_framefmt<xref linkend="v4l2-mbus-framefmt"
> 
> The pixel clock is no longer specified by struct v4l2_mbus_framefmt, it's
> now determined by V4L2_CID_IMAGE_PROC_LINK_FREQ controls, right ?

I've had so many references to the pixel rate in the media bus frame
format that it was inevitable some must have been left. :-o

The V4L2_CID_IMAGE_PROC_PIXEL_RATE control will replace this.

> When you drop the class name from the control names, it is perhaps better
> to just use V4L2_CID_LINK_FREQUENCY name.

I'll do that to the next patch.set.

>> +	    />.</entry>
>> +	</row>
>> +	<row>
>> +	<entry spanname="id"><constant>V4L2_CID_IMAGE_SOURCE_HBLANK</constant></entry>
>> +	<entry>integer</entry>
>> +	</row>
>> +	<row>
>> +	<entry spanname="descr">Horizontal blanking. The idle
>> +	    preriod after every line of image data during which no
> 
> s/preriod/period

Fixed.

>> +	    image data is produced. The unit of horizontal blanking is
>> +	    pixels.</entry>
>> +	</row>
>> +	<row>
>> +	<entry spanname="id"><constant>V4L2_CID_IMAGE_SOURCE_ANALOGUE_GAIN</constant></entry>
>> +	<entry>integer</entry>
>> +	</row>
>> +	<row>
>> +	<entry spanname="descr">Analogue gain is gain affecting
>> +	    all colour components in the pixel matrix. The gain
>> +	    operation is performed in the analogue domain before A/D
>> +	    conversion.
>> +	</entry>
>> +	</row>
>> +	<row><entry></entry></row>
>> +	</tbody>
>> +</tgroup>
>> +</table>
>> +
>> +</section>
>> +
>>   </section>
>> diff --git a/Documentation/DocBook/media/v4l/vidioc-g-ext-ctrls.xml b/Documentation/DocBook/media/v4l/vidioc-g-ext-ctrls.xml
>> index b17a7aa..f420034 100644
>> --- a/Documentation/DocBook/media/v4l/vidioc-g-ext-ctrls.xml
>> +++ b/Documentation/DocBook/media/v4l/vidioc-g-ext-ctrls.xml
>> @@ -265,6 +265,12 @@ These controls are described in<xref
>>   These controls are described in<xref
>>   		linkend="flash-controls" />.</entry>
>>   	</row>
>> +	<row>
>> +	<entry><constant>V4L2_CTRL_CLASS_IMAGE_SOURCE</constant></entry>
>> +	<entry>0x9d0000</entry>  <entry>The class containing image
>> +	    source controls. These controls are described in<xref
>> +	    linkend="image-source-controls" />.</entry>
>> +	</row>
>>   	</tbody>
>>         </tgroup>
>>       </table>
>> diff --git a/drivers/media/video/v4l2-ctrls.c b/drivers/media/video/v4l2-ctrls.c
>> index 139ba42..37249b7 100644
>> --- a/drivers/media/video/v4l2-ctrls.c
>> +++ b/drivers/media/video/v4l2-ctrls.c
>> @@ -607,6 +607,12 @@ const char *v4l2_ctrl_get_name(u32 id)
>>   	case V4L2_CID_FLASH_CHARGE:		return "Charge";
>>   	case V4L2_CID_FLASH_READY:		return "Ready to Strobe";
>>
>> +	/* Image source controls */
>> +	case V4L2_CID_IMAGE_SOURCE_CLASS:	return "Image source controls";
>> +	case V4L2_CID_IMAGE_SOURCE_VBLANK:	return "Vertical blanking";
>> +	case V4L2_CID_IMAGE_SOURCE_HBLANK:	return "Horizontal blanking";
>> +	case V4L2_CID_IMAGE_SOURCE_ANALOGUE_GAIN: return "Analogue gain";
> 
> All words in control descriptions need to be capitalized. :-)

Fixed.

Kind regards,

-- 
Sakari Ailus
sakari.ailus@iki.fi

  reply	other threads:[~2012-02-04 20:23 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-02 23:52 [PATCH v2 0/31] V4L2 subdev and sensor control changes, SMIA++ driver and N9 camera board code Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 01/31] v4l: Introduce integer menu controls Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 02/31] v4l: Document " Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 03/31] vivi: Add an integer menu test control Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 04/31] v4l: VIDIOC_SUBDEV_S_SELECTION and VIDIOC_SUBDEV_G_SELECTION IOCTLs Sakari Ailus
2012-02-04 19:02   ` Sylwester Nawrocki
2012-02-04 20:30     ` Sakari Ailus
2012-02-04 22:37       ` Sylwester Nawrocki
2012-02-05  9:04         ` Sakari Ailus
2012-02-05 14:24           ` Sylwester Nawrocki
2012-02-02 23:54 ` [PATCH v2 05/31] v4l: Support s_crop and g_crop through s/g_selection Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 06/31] v4l: Add subdev selections documentation: svg and dia files Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 07/31] v4l: Add subdev selections documentation Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 08/31] v4l: Mark VIDIOC_SUBDEV_G_CROP and VIDIOC_SUBDEV_S_CROP obsolete Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 09/31] v4l: Image source control class Sakari Ailus
2012-02-04 18:42   ` Sylwester Nawrocki
2012-02-04 20:23     ` Sakari Ailus [this message]
2012-02-02 23:54 ` [PATCH v2 10/31] v4l: Image processing " Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 11/31] v4l: Document raw bayer 4CC codes Sakari Ailus
2012-02-05 12:46   ` Prabhakar Lad
2012-02-08 18:16     ` Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 12/31] v4l: Add DPCM compressed formats Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 13/31] media: Add link_validate() op to check links to the sink pad Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 14/31] v4l: Improve sub-device documentation for pad ops Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 15/31] v4l: Implement v4l2_subdev_link_validate() Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 16/31] v4l: Allow changing control handler lock Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 17/31] omap3isp: Support additional in-memory compressed bayer formats Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 18/31] omap3isp: Move definitions required by board code under include/media Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 19/31] omap3: add definition for CONTROL_CAMERA_PHY_CTRL Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 20/31] omap3isp: Assume media_entity_pipeline_start may fail Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 21/31] omap3isp: Add lane configuration to platform data Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 22/31] omap3isp: Add information on external subdev to struct isp_pipeline Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 23/31] omap3isp: Introduce omap3isp_get_external_info() Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 24/31] omap3isp: Default link validation for ccp2, csi2, preview and resizer Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 25/31] omap3isp: Implement proper CCDC link validation, check pixel rate Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 26/31] omap3isp: Move setting constaints above media_entity_pipeline_start Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 27/31] omap3isp: Configure CSI-2 phy based on platform data Sakari Ailus
2012-02-10  2:05   ` Aguirre, Sergio
2012-02-10 20:32     ` Sakari Ailus
2012-02-11 17:17       ` Aguirre, Sergio
2012-02-11 17:24         ` Aguirre, Sergio
2012-02-14  6:21           ` Sakari Ailus
2012-02-16  7:40         ` [PATCH v2.1 1/1] " Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 28/31] omap3isp: Add resizer data rate configuration to resizer_set_stream Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 29/31] omap3isp: Remove isp_validate_pipeline and other old stuff Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 30/31] smiapp: Add driver Sakari Ailus
2012-02-02 23:54 ` [PATCH v2 31/31] rm680: Add camera init Sakari Ailus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4F2D93BA.7070703@iki.fi \
    --to=sakari.ailus@iki.fi \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=dacohen@gmail.com \
    --cc=hverkuil@xs4all.nl \
    --cc=k.debski@samsung.com \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-media@vger.kernel.org \
    --cc=riverful@gmail.com \
    --cc=snjw23@gmail.com \
    --cc=t.stanislaws@samsung.com \
    --cc=teturtia@gmail.com \
    --cc=tuukkat76@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).