From f030d07589524d07d5eaf7c2dfff607656889b8b Mon Sep 17 00:00:00 2001 From: Laurent Pinchart Date: Fri, 16 Mar 2012 15:48:30 +0100 Subject: iq: Make the IQ parameters configurable Signed-off-by: Laurent Pinchart --- iq.h | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) (limited to 'iq.h') diff --git a/iq.h b/iq.h index aeb29de..2b043a8 100644 --- a/iq.h +++ b/iq.h @@ -27,9 +27,39 @@ struct iq_tuning; struct omap3_isp_device; struct omap3_isp_aewb_stats; +/** + * struct iq_params - Image quality tuning parameters + * @mean_level: Target mean luminance level (fraction of the maximum) + * @exposure: Initial exposure value (sensor-specific units) + * @exposure_min: Minimum exposure value + * @exposure_max: Maximum exposure value + * @gain: Initial gain value (sensor-specific units) + * @gain_min: Minimum gain value + * @gain_max: Maximum gain value + * @black_level: Black level offset + */ +struct iq_params { + float mean_level; + + unsigned int exposure; + unsigned int exposure_min; + unsigned int exposure_max; + + unsigned int gain; + unsigned int gain_min; + unsigned int gain_max; + + unsigned int black_level; +}; + void iq_aewb_process(struct iq_tuning *iq, const struct omap3_isp_aewb_stats *stats); -struct iq_tuning *iq_init(struct omap3_isp_device *isp); + +void iq_params_init(struct iq_params *params); +int iq_params_parse(struct iq_params *params, const char *arg); + +struct iq_tuning *iq_init(struct omap3_isp_device *isp, + const struct iq_params *params); void iq_cleanup(struct iq_tuning *iq); #endif -- cgit v1.2.3