diff options
Diffstat (limited to 'isp/controls.c')
-rw-r--r-- | isp/controls.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/isp/controls.c b/isp/controls.c index c7ceee2..4dc943f 100644 --- a/isp/controls.c +++ b/isp/controls.c @@ -153,6 +153,31 @@ static void matrix_float_to_s12q8(__u16 out[3][3], const struct matrix *in) } /* ----------------------------------------------------------------------------- + * CCDC parameters configuration + */ + +int omap3_isp_ccdc_set_black_level(struct omap3_isp_device *isp, unsigned int value) +{ + struct omap3isp_ccdc_update_config config; + struct omap3isp_ccdc_bclamp bclamp; + int ret; + + memset(&config, 0, sizeof config); + config.update = OMAP3ISP_CCDC_BLCLAMP; + config.flag = 0; + config.bclamp = &bclamp; + + memset(&bclamp, 0, sizeof bclamp); + bclamp.dcsubval = value; + + ret = ioctl(isp->ccdc->fd, VIDIOC_OMAP3ISP_CCDC_CFG, &config); + if (ret < 0) + return -errno; + + return ret; +} + +/* ----------------------------------------------------------------------------- * Preview engine parameters configuration */ |