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