GNU Linux-libre 4.14.259-gnu1
[releases.git] / drivers / staging / media / atomisp / pci / atomisp2 / css2400 / isp / kernels / ctc / ctc_1.0 / ia_css_ctc_param.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_CTC_PARAM_H
16 #define __IA_CSS_CTC_PARAM_H
17
18 #include "type_support.h"
19 #include <system_global.h>
20
21 #include "ia_css_ctc_types.h"
22
23 #ifndef PIPE_GENERATION
24 #if defined(HAS_VAMEM_VERSION_2)
25 #define SH_CSS_ISP_CTC_TABLE_SIZE_LOG2       IA_CSS_VAMEM_2_CTC_TABLE_SIZE_LOG2
26 #define SH_CSS_ISP_CTC_TABLE_SIZE            IA_CSS_VAMEM_2_CTC_TABLE_SIZE
27 #elif defined(HAS_VAMEM_VERSION_1)
28 #define SH_CSS_ISP_CTC_TABLE_SIZE_LOG2       IA_CSS_VAMEM_1_CTC_TABLE_SIZE_LOG2
29 #define SH_CSS_ISP_CTC_TABLE_SIZE            IA_CSS_VAMEM_1_CTC_TABLE_SIZE
30 #else
31 #error "VAMEM should be {VERSION1, VERSION2}" 
32 #endif
33
34 #else
35 /* For pipe generation, the size is not relevant */
36 #define SH_CSS_ISP_CTC_TABLE_SIZE 0
37 #endif
38
39 /* This should be vamem_data_t, but that breaks the pipe generator */
40 struct sh_css_isp_ctc_vamem_params {
41         uint16_t ctc[SH_CSS_ISP_CTC_TABLE_SIZE];
42 };
43
44 #endif /* __IA_CSS_CTC_PARAM_H */