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  /* Generated code: do not edit or commmit. */
17  
18  #ifndef _IA_CSS_ISP_PARAM_H
19  #define _IA_CSS_ISP_PARAM_H
20  
21  /* Code generated by genparam/gencode.c:gen_param_enum() */
22  
23  enum ia_css_parameter_ids {
24  	IA_CSS_AA_ID,
25  	IA_CSS_ANR_ID,
26  	IA_CSS_ANR2_ID,
27  	IA_CSS_BH_ID,
28  	IA_CSS_CNR_ID,
29  	IA_CSS_CROP_ID,
30  	IA_CSS_CSC_ID,
31  	IA_CSS_DP_ID,
32  	IA_CSS_BNR_ID,
33  	IA_CSS_DE_ID,
34  	IA_CSS_ECD_ID,
35  	IA_CSS_FORMATS_ID,
36  	IA_CSS_FPN_ID,
37  	IA_CSS_GC_ID,
38  	IA_CSS_CE_ID,
39  	IA_CSS_YUV2RGB_ID,
40  	IA_CSS_RGB2YUV_ID,
41  	IA_CSS_R_GAMMA_ID,
42  	IA_CSS_G_GAMMA_ID,
43  	IA_CSS_B_GAMMA_ID,
44  	IA_CSS_UDS_ID,
45  	IA_CSS_RAA_ID,
46  	IA_CSS_S3A_ID,
47  	IA_CSS_OB_ID,
48  	IA_CSS_OUTPUT_ID,
49  	IA_CSS_SC_ID,
50  	IA_CSS_BDS_ID,
51  	IA_CSS_TNR_ID,
52  	IA_CSS_MACC_ID,
53  	IA_CSS_SDIS_HORICOEF_ID,
54  	IA_CSS_SDIS_VERTCOEF_ID,
55  	IA_CSS_SDIS_HORIPROJ_ID,
56  	IA_CSS_SDIS_VERTPROJ_ID,
57  	IA_CSS_SDIS2_HORICOEF_ID,
58  	IA_CSS_SDIS2_VERTCOEF_ID,
59  	IA_CSS_SDIS2_HORIPROJ_ID,
60  	IA_CSS_SDIS2_VERTPROJ_ID,
61  	IA_CSS_WB_ID,
62  	IA_CSS_NR_ID,
63  	IA_CSS_YEE_ID,
64  	IA_CSS_YNR_ID,
65  	IA_CSS_FC_ID,
66  	IA_CSS_CTC_ID,
67  	IA_CSS_XNR_TABLE_ID,
68  	IA_CSS_XNR_ID,
69  	IA_CSS_XNR3_ID,
70  	IA_CSS_NUM_PARAMETER_IDS
71  };
72  
73  /* Code generated by genparam/gencode.c:gen_param_offsets() */
74  
75  struct ia_css_memory_offsets {
76  	struct {
77  		struct ia_css_isp_parameter aa;
78  		struct ia_css_isp_parameter anr;
79  		struct ia_css_isp_parameter bh;
80  		struct ia_css_isp_parameter cnr;
81  		struct ia_css_isp_parameter crop;
82  		struct ia_css_isp_parameter csc;
83  		struct ia_css_isp_parameter dp;
84  		struct ia_css_isp_parameter bnr;
85  		struct ia_css_isp_parameter de;
86  		struct ia_css_isp_parameter ecd;
87  		struct ia_css_isp_parameter formats;
88  		struct ia_css_isp_parameter fpn;
89  		struct ia_css_isp_parameter gc;
90  		struct ia_css_isp_parameter ce;
91  		struct ia_css_isp_parameter yuv2rgb;
92  		struct ia_css_isp_parameter rgb2yuv;
93  		struct ia_css_isp_parameter uds;
94  		struct ia_css_isp_parameter raa;
95  		struct ia_css_isp_parameter s3a;
96  		struct ia_css_isp_parameter ob;
97  		struct ia_css_isp_parameter output;
98  		struct ia_css_isp_parameter sc;
99  		struct ia_css_isp_parameter bds;
100  		struct ia_css_isp_parameter tnr;
101  		struct ia_css_isp_parameter macc;
102  		struct ia_css_isp_parameter sdis_horiproj;
103  		struct ia_css_isp_parameter sdis_vertproj;
104  		struct ia_css_isp_parameter sdis2_horiproj;
105  		struct ia_css_isp_parameter sdis2_vertproj;
106  		struct ia_css_isp_parameter wb;
107  		struct ia_css_isp_parameter nr;
108  		struct ia_css_isp_parameter yee;
109  		struct ia_css_isp_parameter ynr;
110  		struct ia_css_isp_parameter fc;
111  		struct ia_css_isp_parameter ctc;
112  		struct ia_css_isp_parameter xnr;
113  		struct ia_css_isp_parameter xnr3;
114  		struct ia_css_isp_parameter get;
115  		struct ia_css_isp_parameter put;
116  	} dmem;
117  	struct {
118  		struct ia_css_isp_parameter anr2;
119  		struct ia_css_isp_parameter ob;
120  		struct ia_css_isp_parameter sdis_horicoef;
121  		struct ia_css_isp_parameter sdis_vertcoef;
122  		struct ia_css_isp_parameter sdis2_horicoef;
123  		struct ia_css_isp_parameter sdis2_vertcoef;
124  	} vmem;
125  	struct {
126  		struct ia_css_isp_parameter bh;
127  	} hmem0;
128  	struct {
129  		struct ia_css_isp_parameter gc;
130  		struct ia_css_isp_parameter g_gamma;
131  		struct ia_css_isp_parameter xnr_table;
132  	} vamem1;
133  	struct {
134  		struct ia_css_isp_parameter r_gamma;
135  		struct ia_css_isp_parameter ctc;
136  	} vamem0;
137  	struct {
138  		struct ia_css_isp_parameter b_gamma;
139  	} vamem2;
140  };
141  
142  #if defined(IA_CSS_INCLUDE_PARAMETERS)
143  
144  #include "ia_css_stream.h"   /* struct ia_css_stream */
145  #include "ia_css_binary.h"   /* struct ia_css_binary */
146  /* Code generated by genparam/gencode.c:gen_param_process_table() */
147  
148  struct ia_css_pipeline_stage; /* forward declaration */
149  
150  extern void (*ia_css_kernel_process_param[IA_CSS_NUM_PARAMETER_IDS])(
151      unsigned int pipe_id,
152      const struct ia_css_pipeline_stage *stage,
153      struct ia_css_isp_parameters *params);
154  
155  /* Code generated by genparam/gencode.c:gen_set_function() */
156  
157  void
158  ia_css_set_dp_config(struct ia_css_isp_parameters *params,
159  		     const struct ia_css_dp_config *config);
160  
161  /* Code generated by genparam/gencode.c:gen_set_function() */
162  
163  void
164  ia_css_set_wb_config(struct ia_css_isp_parameters *params,
165  		     const struct ia_css_wb_config *config);
166  
167  /* Code generated by genparam/gencode.c:gen_set_function() */
168  
169  void
170  ia_css_set_tnr_config(struct ia_css_isp_parameters *params,
171  		      const struct ia_css_tnr_config *config);
172  
173  /* Code generated by genparam/gencode.c:gen_set_function() */
174  
175  void
176  ia_css_set_ob_config(struct ia_css_isp_parameters *params,
177  		     const struct ia_css_ob_config *config);
178  
179  /* Code generated by genparam/gencode.c:gen_set_function() */
180  
181  void
182  ia_css_set_de_config(struct ia_css_isp_parameters *params,
183  		     const struct ia_css_de_config *config);
184  
185  /* Code generated by genparam/gencode.c:gen_set_function() */
186  
187  void
188  ia_css_set_anr_config(struct ia_css_isp_parameters *params,
189  		      const struct ia_css_anr_config *config);
190  
191  /* Code generated by genparam/gencode.c:gen_set_function() */
192  
193  void
194  ia_css_set_anr2_config(struct ia_css_isp_parameters *params,
195  		       const struct ia_css_anr_thres *config);
196  
197  /* Code generated by genparam/gencode.c:gen_set_function() */
198  
199  void
200  ia_css_set_ce_config(struct ia_css_isp_parameters *params,
201  		     const struct ia_css_ce_config *config);
202  
203  /* Code generated by genparam/gencode.c:gen_set_function() */
204  
205  void
206  ia_css_set_ecd_config(struct ia_css_isp_parameters *params,
207  		      const struct ia_css_ecd_config *config);
208  
209  /* Code generated by genparam/gencode.c:gen_set_function() */
210  
211  void
212  ia_css_set_ynr_config(struct ia_css_isp_parameters *params,
213  		      const struct ia_css_ynr_config *config);
214  
215  /* Code generated by genparam/gencode.c:gen_set_function() */
216  
217  void
218  ia_css_set_fc_config(struct ia_css_isp_parameters *params,
219  		     const struct ia_css_fc_config *config);
220  
221  /* Code generated by genparam/gencode.c:gen_set_function() */
222  
223  void
224  ia_css_set_cnr_config(struct ia_css_isp_parameters *params,
225  		      const struct ia_css_cnr_config *config);
226  
227  /* Code generated by genparam/gencode.c:gen_set_function() */
228  
229  void
230  ia_css_set_macc_config(struct ia_css_isp_parameters *params,
231  		       const struct ia_css_macc_config *config);
232  
233  /* Code generated by genparam/gencode.c:gen_set_function() */
234  
235  void
236  ia_css_set_ctc_config(struct ia_css_isp_parameters *params,
237  		      const struct ia_css_ctc_config *config);
238  
239  /* Code generated by genparam/gencode.c:gen_set_function() */
240  
241  void
242  ia_css_set_aa_config(struct ia_css_isp_parameters *params,
243  		     const struct ia_css_aa_config *config);
244  
245  /* Code generated by genparam/gencode.c:gen_set_function() */
246  
247  void
248  ia_css_set_yuv2rgb_config(struct ia_css_isp_parameters *params,
249  			  const struct ia_css_cc_config *config);
250  
251  /* Code generated by genparam/gencode.c:gen_set_function() */
252  
253  void
254  ia_css_set_rgb2yuv_config(struct ia_css_isp_parameters *params,
255  			  const struct ia_css_cc_config *config);
256  
257  /* Code generated by genparam/gencode.c:gen_set_function() */
258  
259  void
260  ia_css_set_csc_config(struct ia_css_isp_parameters *params,
261  		      const struct ia_css_cc_config *config);
262  
263  /* Code generated by genparam/gencode.c:gen_set_function() */
264  
265  void
266  ia_css_set_nr_config(struct ia_css_isp_parameters *params,
267  		     const struct ia_css_nr_config *config);
268  
269  /* Code generated by genparam/gencode.c:gen_set_function() */
270  
271  void
272  ia_css_set_gc_config(struct ia_css_isp_parameters *params,
273  		     const struct ia_css_gc_config *config);
274  
275  /* Code generated by genparam/gencode.c:gen_set_function() */
276  
277  void
278  ia_css_set_sdis_horicoef_config(struct ia_css_isp_parameters *params,
279  				const struct ia_css_dvs_coefficients *config);
280  
281  /* Code generated by genparam/gencode.c:gen_set_function() */
282  
283  void
284  ia_css_set_sdis_vertcoef_config(struct ia_css_isp_parameters *params,
285  				const struct ia_css_dvs_coefficients *config);
286  
287  /* Code generated by genparam/gencode.c:gen_set_function() */
288  
289  void
290  ia_css_set_sdis_horiproj_config(struct ia_css_isp_parameters *params,
291  				const struct ia_css_dvs_coefficients *config);
292  
293  /* Code generated by genparam/gencode.c:gen_set_function() */
294  
295  void
296  ia_css_set_sdis_vertproj_config(struct ia_css_isp_parameters *params,
297  				const struct ia_css_dvs_coefficients *config);
298  
299  /* Code generated by genparam/gencode.c:gen_set_function() */
300  
301  void
302  ia_css_set_sdis2_horicoef_config(struct ia_css_isp_parameters *params,
303  				 const struct ia_css_dvs2_coefficients *config);
304  
305  /* Code generated by genparam/gencode.c:gen_set_function() */
306  
307  void
308  ia_css_set_sdis2_vertcoef_config(struct ia_css_isp_parameters *params,
309  				 const struct ia_css_dvs2_coefficients *config);
310  
311  /* Code generated by genparam/gencode.c:gen_set_function() */
312  
313  void
314  ia_css_set_sdis2_horiproj_config(struct ia_css_isp_parameters *params,
315  				 const struct ia_css_dvs2_coefficients *config);
316  
317  /* Code generated by genparam/gencode.c:gen_set_function() */
318  
319  void
320  ia_css_set_sdis2_vertproj_config(struct ia_css_isp_parameters *params,
321  				 const struct ia_css_dvs2_coefficients *config);
322  
323  /* Code generated by genparam/gencode.c:gen_set_function() */
324  
325  void
326  ia_css_set_r_gamma_config(struct ia_css_isp_parameters *params,
327  			  const struct ia_css_rgb_gamma_table *config);
328  
329  /* Code generated by genparam/gencode.c:gen_set_function() */
330  
331  void
332  ia_css_set_g_gamma_config(struct ia_css_isp_parameters *params,
333  			  const struct ia_css_rgb_gamma_table *config);
334  
335  /* Code generated by genparam/gencode.c:gen_set_function() */
336  
337  void
338  ia_css_set_b_gamma_config(struct ia_css_isp_parameters *params,
339  			  const struct ia_css_rgb_gamma_table *config);
340  
341  /* Code generated by genparam/gencode.c:gen_set_function() */
342  
343  void
344  ia_css_set_xnr_table_config(struct ia_css_isp_parameters *params,
345  			    const struct ia_css_xnr_table *config);
346  
347  /* Code generated by genparam/gencode.c:gen_set_function() */
348  
349  void
350  ia_css_set_formats_config(struct ia_css_isp_parameters *params,
351  			  const struct ia_css_formats_config *config);
352  
353  /* Code generated by genparam/gencode.c:gen_set_function() */
354  
355  void
356  ia_css_set_xnr_config(struct ia_css_isp_parameters *params,
357  		      const struct ia_css_xnr_config *config);
358  
359  /* Code generated by genparam/gencode.c:gen_set_function() */
360  
361  void
362  ia_css_set_xnr3_config(struct ia_css_isp_parameters *params,
363  		       const struct ia_css_xnr3_config *config);
364  
365  /* Code generated by genparam/gencode.c:gen_set_function() */
366  
367  void
368  ia_css_set_s3a_config(struct ia_css_isp_parameters *params,
369  		      const struct ia_css_3a_config *config);
370  
371  /* Code generated by genparam/gencode.c:gen_set_function() */
372  
373  void
374  ia_css_set_output_config(struct ia_css_isp_parameters *params,
375  			 const struct ia_css_output_config *config);
376  
377  /* Code generated by genparam/gencode.c:gen_global_access_function() */
378  
379  void
380  ia_css_get_configs(struct ia_css_isp_parameters *params,
381  		   const struct ia_css_isp_config *config)
382  ;
383  
384  /* Code generated by genparam/gencode.c:gen_global_access_function() */
385  
386  void
387  ia_css_set_configs(struct ia_css_isp_parameters *params,
388  		   const struct ia_css_isp_config *config)
389  ;
390  
391  #endif /* IA_CSS_INCLUDE_PARAMETER */
392  #endif /* _IA_CSS_ISP_PARAM_H */
393