blob: 88459b6c003d180f35f9eb82def73e29c0b1b6d9 [file] [log] [blame]
/*
* Support for Intel Camera Imaging ISP subsystem.
* Copyright (c) 2015, Intel Corporation.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms and conditions of the GNU General Public License,
* version 2, as published by the Free Software Foundation.
*
* This program is distributed in the hope it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*/
#ifndef __IA_CSS_OB_TYPES_H
#define __IA_CSS_OB_TYPES_H
/** @file
* CSS-API header file for Optical Black level parameters.
*/
#include "ia_css_frac.h"
/** Optical black mode.
*/
enum ia_css_ob_mode {
IA_CSS_OB_MODE_NONE, /**< OB has no effect. */
IA_CSS_OB_MODE_FIXED, /**< Fixed OB */
IA_CSS_OB_MODE_RASTER /**< Raster OB */
};
/** Optical Black level configuration.
*
* ISP block: OB1
* ISP1: OB1 is used.
* ISP2: OB1 is used.
*/
struct ia_css_ob_config {
enum ia_css_ob_mode mode; /**< Mode (None / Fixed / Raster).
enum, [0,2],
default 1, ineffective 0 */
ia_css_u0_16 level_gr; /**< Black level for GR pixels
(used for Fixed Mode only).
u0.16, [0,65535],
default/ineffective 0 */
ia_css_u0_16 level_r; /**< Black level for R pixels
(used for Fixed Mode only).
u0.16, [0,65535],
default/ineffective 0 */
ia_css_u0_16 level_b; /**< Black level for B pixels
(used for Fixed Mode only).
u0.16, [0,65535],
default/ineffective 0 */
ia_css_u0_16 level_gb; /**< Black level for GB pixels
(used for Fixed Mode only).
u0.16, [0,65535],
default/ineffective 0 */
uint16_t start_position; /**< Start position of OB area
(used for Raster Mode only).
u16.0, [0,63],
default/ineffective 0 */
uint16_t end_position; /**< End position of OB area
(used for Raster Mode only).
u16.0, [0,63],
default/ineffective 0 */
};
#endif /* __IA_CSS_OB_TYPES_H */