Re: [PATCH] media: vimc: implement basic v4l2-ctrls

From: Hans Verkuil
Date: Wed Aug 22 2018 - 02:30:23 EST


Hi Guilherme,

Thank you for your patch. It looks good, but can you add support for V4L2_CID_SATURATION
as well? The TPG supports that as well, so there is no reason to leave that out.

Thank you!

Hans

On 08/22/2018 03:22 AM, Guilherme Gallo wrote:
> Implement brightness, contrast and hue controls in vimc-sensor
>
> Signed-off-by: Guilherme Alcarde Gallo <gagallo7@xxxxxxxxx>
> ---
> drivers/media/platform/vimc/vimc-sensor.c | 15 +++++++++++++++
> 1 file changed, 15 insertions(+)
>
> diff --git a/drivers/media/platform/vimc/vimc-sensor.c b/drivers/media/platform/vimc/vimc-sensor.c
> index 605e2a2d5dd5..ecc82cd60900 100644
> --- a/drivers/media/platform/vimc/vimc-sensor.c
> +++ b/drivers/media/platform/vimc/vimc-sensor.c
> @@ -316,6 +316,15 @@ static int vimc_sen_s_ctrl(struct v4l2_ctrl *ctrl)
> case V4L2_CID_VFLIP:
> tpg_s_vflip(&vsen->tpg, ctrl->val);
> break;
> + case V4L2_CID_BRIGHTNESS:
> + tpg_s_brightness(&vsen->tpg, ctrl->val);
> + break;
> + case V4L2_CID_CONTRAST:
> + tpg_s_contrast(&vsen->tpg, ctrl->val);
> + break;
> + case V4L2_CID_HUE:
> + tpg_s_hue(&vsen->tpg, ctrl->val);
> + break;
> default:
> return -EINVAL;
> }
> @@ -377,6 +386,12 @@ static int vimc_sen_comp_bind(struct device *comp, struct device *master,
> V4L2_CID_VFLIP, 0, 1, 1, 0);
> v4l2_ctrl_new_std(&vsen->hdl, &vimc_sen_ctrl_ops,
> V4L2_CID_HFLIP, 0, 1, 1, 0);
> + v4l2_ctrl_new_std(&vsen->hdl, &vimc_sen_ctrl_ops,
> + V4L2_CID_BRIGHTNESS, 0, 255, 1, 128);
> + v4l2_ctrl_new_std(&vsen->hdl, &vimc_sen_ctrl_ops,
> + V4L2_CID_CONTRAST, 0, 255, 1, 128);
> + v4l2_ctrl_new_std(&vsen->hdl, &vimc_sen_ctrl_ops,
> + V4L2_CID_HUE, 0, 255, 1, 128);
> vsen->sd.ctrl_handler = &vsen->hdl;
> if (vsen->hdl.error) {
> ret = vsen->hdl.error;
>