Add V4L2_CID_AUTO_EXPOSURE_BIAS control for the automatic exposure algorithm compensation. Signed-off-by: Sylwester Nawrocki <s.nawrocki@xxxxxxxxxxx> Signed-off-by: Kyungmin Park <kyungmin.park@xxxxxxxxxxx> --- Documentation/DocBook/media/v4l/controls.xml | 16 ++++++++++++++++ drivers/media/video/v4l2-ctrls.c | 4 ++++ include/linux/videodev2.h | 1 + 3 files changed, 21 insertions(+) diff --git a/Documentation/DocBook/media/v4l/controls.xml b/Documentation/DocBook/media/v4l/controls.xml index 133a176..ebb4431 100644 --- a/Documentation/DocBook/media/v4l/controls.xml +++ b/Documentation/DocBook/media/v4l/controls.xml @@ -2775,6 +2775,22 @@ remain constant.</entry> <row><entry></entry></row> <row> + <entry spanname="id"><constant>V4L2_CID_EXPOSURE_BIAS</constant> </entry> + <entry>integer menu</entry> + </row><row><entry spanname="descr"> Determines the exposure +compensation when <constant>V4L2_CID_EXPOSURE_AUTO</constant> control +is set to <constant>AUTO</constant>, <constant>SHUTTER_PRIORITY +</constant> or <constant>APERTURE_PRIORITY</constant>. It is expressed +in terms of EV, drivers should interpret the values as 0.001 EV units, +where the value 1000 stands for +1 EV. +<para>Increasing the exposure compensation value is equivalent to +decreasing the exposure value (EV) and will increase the amount of +light at the image sensor. The camera performs the exposure compensation +by adjusting absolute exposure time and/or aperture.</para></entry> + </row> + <row><entry></entry></row> + + <row> <entry spanname="id"><constant>V4L2_CID_PAN_RELATIVE</constant> </entry> <entry>integer</entry> </row><row><entry spanname="descr">This control turns the diff --git a/drivers/media/video/v4l2-ctrls.c b/drivers/media/video/v4l2-ctrls.c index 3061b89..53e56be 100644 --- a/drivers/media/video/v4l2-ctrls.c +++ b/drivers/media/video/v4l2-ctrls.c @@ -635,6 +635,7 @@ const char *v4l2_ctrl_get_name(u32 id) case V4L2_CID_WHITE_BALANCE_PRESET: return "White Balance, Preset"; case V4L2_CID_WIDE_DYNAMIC_RANGE: return "Wide Dynamic Range"; case V4L2_CID_IMAGE_STABILIZATION: return "Image Stabilization"; + case V4L2_CID_AUTO_EXPOSURE_BIAS: return "Auto Exposure, Bias"; /* FM Radio Modulator control */ /* Keep the order of the 'case's the same as in videodev2.h! */ @@ -791,6 +792,9 @@ void v4l2_ctrl_fill(u32 id, const char **name, enum v4l2_ctrl_type *type, case V4L2_CID_RDS_TX_RADIO_TEXT: *type = V4L2_CTRL_TYPE_STRING; break; + case V4L2_CID_AUTO_EXPOSURE_BIAS: + *type = V4L2_CTRL_TYPE_INTEGER_MENU; + break; case V4L2_CID_USER_CLASS: case V4L2_CID_CAMERA_CLASS: case V4L2_CID_MPEG_CLASS: diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h index 9f005bc..3d7bb3d 100644 --- a/include/linux/videodev2.h +++ b/include/linux/videodev2.h @@ -1730,6 +1730,7 @@ enum v4l2_white_balance_preset { #define V4L2_CID_WIDE_DYNAMIC_RANGE (V4L2_CID_CAMERA_CLASS_BASE+31) #define V4L2_CID_IMAGE_STABILIZATION (V4L2_CID_CAMERA_CLASS_BASE+32) +#define V4L2_CID_AUTO_EXPOSURE_BIAS (V4L2_CID_CAMERA_CLASS_BASE+33) /* FM Modulator class control IDs */ #define V4L2_CID_FM_TX_CLASS_BASE (V4L2_CTRL_CLASS_FM_TX | 0x900) -- 1.7.9.2 -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html