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
36struct 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
49struct ia_css_fpn_configuration {
50	const struct ia_css_frame_info *info;
51};
52
53#endif /* __IA_CSS_FPN_TYPES_H */
54