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_XNR_PARAM_H
17  #define __IA_CSS_XNR_PARAM_H
18  
19  #include "type_support.h"
20  #include <system_global.h>
21  
22  #ifndef PIPE_GENERATION
23  #define SH_CSS_ISP_XNR_TABLE_SIZE_LOG2       IA_CSS_VAMEM_2_XNR_TABLE_SIZE_LOG2
24  #define SH_CSS_ISP_XNR_TABLE_SIZE            IA_CSS_VAMEM_2_XNR_TABLE_SIZE
25  
26  #else
27  /* For pipe generation, the size is not relevant */
28  #define SH_CSS_ISP_XNR_TABLE_SIZE 0
29  #endif
30  
31  /* This should be vamem_data_t, but that breaks the pipe generator */
32  struct sh_css_isp_xnr_vamem_params {
33  	u16 xnr[SH_CSS_ISP_XNR_TABLE_SIZE];
34  };
35  
36  struct sh_css_isp_xnr_params {
37  	/* XNR threshold.
38  	 * type:u0.16 but actual valid range is:[0,255]
39  	 * valid range is dependent on SH_CSS_ISP_YUV_BITS (currently 8bits)
40  	 * default: 25 */
41  	u16 threshold;
42  };
43  
44  #endif /* __IA_CSS_XNR_PARAM_H */
45