summaryrefslogtreecommitdiff
path: root/iq.h
diff options
context:
space:
mode:
Diffstat (limited to 'iq.h')
-rw-r--r--iq.h32
1 files changed, 31 insertions, 1 deletions
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