xref: /linux/drivers/staging/media/atomisp/pci/isp/kernels/fpn/fpn_1.0/ia_css_fpn_types.h (revision c771600c6af14749609b49565ffb4cac2959710d)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Support for Intel Camera Imaging ISP subsystem.
4  * Copyright (c) 2015, Intel Corporation.
5  */
6 
7 #ifndef __IA_CSS_FPN_TYPES_H
8 #define __IA_CSS_FPN_TYPES_H
9 
10 /* @file
11 * CSS-API header file for Fixed Pattern Noise parameters.
12 */
13 
14 /* Fixed Pattern Noise table.
15  *
16  *  This contains the fixed patterns noise values
17  *  obtained from a black frame capture.
18  *
19  *  "shift" should be set as the smallest value
20  *  which satisfies the requirement the maximum data is less than 64.
21  *
22  *  ISP block: FPN1
23  *  ISP1: FPN1 is used.
24  *  ISP2: FPN1 is used.
25  */
26 
27 struct ia_css_fpn_table {
28 	s16 *data;		/** Table content (fixed patterns noise).
29 					u0.[13-shift], [0,63] */
30 	u32 width;		/** Table width (in pixels).
31 					This is the input frame width. */
32 	u32 height;	/** Table height (in pixels).
33 					This is the input frame height. */
34 	u32 shift;		/** Common exponent of table content.
35 					u8.0, [0,13] */
36 	u32 enabled;	/** Fpn is enabled.
37 					bool */
38 };
39 
40 struct ia_css_fpn_configuration {
41 	const struct ia_css_frame_info *info;
42 };
43 
44 #endif /* __IA_CSS_FPN_TYPES_H */
45