GNU Linux-libre 4.14.266-gnu1
[releases.git] / drivers / staging / media / atomisp / pci / atomisp2 / css2400 / isp / kernels / fpn / fpn_1.0 / ia_css_fpn_types.h
1 /*
2  * Support for Intel Camera Imaging ISP subsystem.
3  * Copyright (c) 2015, Intel Corporation.
4  *
5  * This program is free software; you can redistribute it and/or modify it
6  * under the terms and conditions of the GNU General Public License,
7  * version 2, as published by the Free Software Foundation.
8  *
9  * This program is distributed in the hope it will be useful, but WITHOUT
10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
12  * more details.
13  */
14
15 #ifndef __IA_CSS_FPN_TYPES_H
16 #define __IA_CSS_FPN_TYPES_H
17
18 /** @file
19 * CSS-API header file for Fixed Pattern Noise parameters.
20 */
21
22 /** Fixed Pattern Noise table.
23  *
24  *  This contains the fixed patterns noise values
25  *  obtained from a black frame capture.
26  *
27  *  "shift" should be set as the smallest value
28  *  which satisfies the requirement the maximum data is less than 64.
29  *
30  *  ISP block: FPN1
31  *  ISP1: FPN1 is used.
32  *  ISP2: FPN1 is used.
33  */
34
35 struct ia_css_fpn_table {
36         int16_t *data;          /**< Table content (fixed patterns noise).
37                                         u0.[13-shift], [0,63] */
38         uint32_t width;         /**< Table width (in pixels).
39                                         This is the input frame width. */
40         uint32_t height;        /**< Table height (in pixels).
41                                         This is the input frame height. */
42         uint32_t shift;         /**< Common exponent of table content.
43                                         u8.0, [0,13] */
44         uint32_t enabled;       /**< Fpn is enabled.
45                                         bool */
46 };
47
48 struct ia_css_fpn_configuration {
49         const struct ia_css_frame_info *info;
50 };
51
52 #endif /* __IA_CSS_FPN_TYPES_H */