aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/drivers/staging/media/atomisp/pci/ia_css_isp_params.h
blob: b8b3c48492ae98c058b5d5854582c01259b89192 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
/*
 * Support for Intel Camera Imaging ISP subsystem.
 * Copyright (c) 2015, Intel Corporation.
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms and conditions of the GNU General Public License,
 * version 2, as published by the Free Software Foundation.
 *
 * This program is distributed in the hope it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
 * more details.
 */

/* Generated code: do not edit or commmit. */

#ifndef _IA_CSS_ISP_PARAM_H
#define _IA_CSS_ISP_PARAM_H

/* Code generated by genparam/gencode.c:gen_param_enum() */

enum ia_css_parameter_ids {
	IA_CSS_AA_ID,
	IA_CSS_ANR_ID,
	IA_CSS_ANR2_ID,
	IA_CSS_BH_ID,
	IA_CSS_CNR_ID,
	IA_CSS_CROP_ID,
	IA_CSS_CSC_ID,
	IA_CSS_DP_ID,
	IA_CSS_BNR_ID,
	IA_CSS_DE_ID,
	IA_CSS_ECD_ID,
	IA_CSS_FORMATS_ID,
	IA_CSS_FPN_ID,
	IA_CSS_GC_ID,
	IA_CSS_CE_ID,
	IA_CSS_YUV2RGB_ID,
	IA_CSS_RGB2YUV_ID,
	IA_CSS_R_GAMMA_ID,
	IA_CSS_G_GAMMA_ID,
	IA_CSS_B_GAMMA_ID,
	IA_CSS_UDS_ID,
	IA_CSS_RAA_ID,
	IA_CSS_S3A_ID,
	IA_CSS_OB_ID,
	IA_CSS_OUTPUT_ID,
	IA_CSS_SC_ID,
	IA_CSS_BDS_ID,
	IA_CSS_TNR_ID,
	IA_CSS_MACC_ID,
	IA_CSS_SDIS_HORICOEF_ID,
	IA_CSS_SDIS_VERTCOEF_ID,
	IA_CSS_SDIS_HORIPROJ_ID,
	IA_CSS_SDIS_VERTPROJ_ID,
	IA_CSS_SDIS2_HORICOEF_ID,
	IA_CSS_SDIS2_VERTCOEF_ID,
	IA_CSS_SDIS2_HORIPROJ_ID,
	IA_CSS_SDIS2_VERTPROJ_ID,
	IA_CSS_WB_ID,
	IA_CSS_NR_ID,
	IA_CSS_YEE_ID,
	IA_CSS_YNR_ID,
	IA_CSS_FC_ID,
	IA_CSS_CTC_ID,
	IA_CSS_XNR_TABLE_ID,
	IA_CSS_XNR_ID,
	IA_CSS_XNR3_ID,
	IA_CSS_NUM_PARAMETER_IDS
};

/* Code generated by genparam/gencode.c:gen_param_offsets() */

struct ia_css_memory_offsets {
	struct {
		struct ia_css_isp_parameter aa;
		struct ia_css_isp_parameter anr;
		struct ia_css_isp_parameter bh;
		struct ia_css_isp_parameter cnr;
		struct ia_css_isp_parameter crop;
		struct ia_css_isp_parameter csc;
		struct ia_css_isp_parameter dp;
		struct ia_css_isp_parameter bnr;
		struct ia_css_isp_parameter de;
		struct ia_css_isp_parameter ecd;
		struct ia_css_isp_parameter formats;
		struct ia_css_isp_parameter fpn;
		struct ia_css_isp_parameter gc;
		struct ia_css_isp_parameter ce;
		struct ia_css_isp_parameter yuv2rgb;
		struct ia_css_isp_parameter rgb2yuv;
		struct ia_css_isp_parameter uds;
		struct ia_css_isp_parameter raa;
		struct ia_css_isp_parameter s3a;
		struct ia_css_isp_parameter ob;
		struct ia_css_isp_parameter output;
		struct ia_css_isp_parameter sc;
		struct ia_css_isp_parameter bds;
		struct ia_css_isp_parameter tnr;
		struct ia_css_isp_parameter macc;
		struct ia_css_isp_parameter sdis_horiproj;
		struct ia_css_isp_parameter sdis_vertproj;
		struct ia_css_isp_parameter sdis2_horiproj;
		struct ia_css_isp_parameter sdis2_vertproj;
		struct ia_css_isp_parameter wb;
		struct ia_css_isp_parameter nr;
		struct ia_css_isp_parameter yee;
		struct ia_css_isp_parameter ynr;
		struct ia_css_isp_parameter fc;
		struct ia_css_isp_parameter ctc;
		struct ia_css_isp_parameter xnr;
		struct ia_css_isp_parameter xnr3;
		struct ia_css_isp_parameter get;
		struct ia_css_isp_parameter put;
	} dmem;
	struct {
		struct ia_css_isp_parameter anr2;
		struct ia_css_isp_parameter ob;
		struct ia_css_isp_parameter sdis_horicoef;
		struct ia_css_isp_parameter sdis_vertcoef;
		struct ia_css_isp_parameter sdis2_horicoef;
		struct ia_css_isp_parameter sdis2_vertcoef;

		/* ISP2401 */
		struct ia_css_isp_parameter xnr3;
	} vmem;
	struct {
		struct ia_css_isp_parameter bh;
	} hmem0;
	struct {
		struct ia_css_isp_parameter gc;
		struct ia_css_isp_parameter g_gamma;
		struct ia_css_isp_parameter xnr_table;
	} vamem1;
	struct {
		struct ia_css_isp_parameter r_gamma;
		struct ia_css_isp_parameter ctc;
	} vamem0;
	struct {
		struct ia_css_isp_parameter b_gamma;
	} vamem2;
};

#if defined(IA_CSS_INCLUDE_PARAMETERS)

#include "ia_css_stream.h"   /* struct ia_css_stream */
#include "ia_css_binary.h"   /* struct ia_css_binary */
/* Code generated by genparam/gencode.c:gen_param_process_table() */

struct ia_css_pipeline_stage; /* forward declaration */

extern void (*ia_css_kernel_process_param[IA_CSS_NUM_PARAMETER_IDS])(
    unsigned int pipe_id,
    const struct ia_css_pipeline_stage *stage,
    struct ia_css_isp_parameters *params);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_dp_config(struct ia_css_isp_parameters *params,
		     const struct ia_css_dp_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_wb_config(struct ia_css_isp_parameters *params,
		     const struct ia_css_wb_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_tnr_config(struct ia_css_isp_parameters *params,
		      const struct ia_css_tnr_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_ob_config(struct ia_css_isp_parameters *params,
		     const struct ia_css_ob_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_de_config(struct ia_css_isp_parameters *params,
		     const struct ia_css_de_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_anr_config(struct ia_css_isp_parameters *params,
		      const struct ia_css_anr_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_anr2_config(struct ia_css_isp_parameters *params,
		       const struct ia_css_anr_thres *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_ce_config(struct ia_css_isp_parameters *params,
		     const struct ia_css_ce_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_ecd_config(struct ia_css_isp_parameters *params,
		      const struct ia_css_ecd_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_ynr_config(struct ia_css_isp_parameters *params,
		      const struct ia_css_ynr_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_fc_config(struct ia_css_isp_parameters *params,
		     const struct ia_css_fc_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_cnr_config(struct ia_css_isp_parameters *params,
		      const struct ia_css_cnr_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_macc_config(struct ia_css_isp_parameters *params,
		       const struct ia_css_macc_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_ctc_config(struct ia_css_isp_parameters *params,
		      const struct ia_css_ctc_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_aa_config(struct ia_css_isp_parameters *params,
		     const struct ia_css_aa_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_yuv2rgb_config(struct ia_css_isp_parameters *params,
			  const struct ia_css_cc_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_rgb2yuv_config(struct ia_css_isp_parameters *params,
			  const struct ia_css_cc_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_csc_config(struct ia_css_isp_parameters *params,
		      const struct ia_css_cc_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_nr_config(struct ia_css_isp_parameters *params,
		     const struct ia_css_nr_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_gc_config(struct ia_css_isp_parameters *params,
		     const struct ia_css_gc_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_sdis_horicoef_config(struct ia_css_isp_parameters *params,
				const struct ia_css_dvs_coefficients *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_sdis_vertcoef_config(struct ia_css_isp_parameters *params,
				const struct ia_css_dvs_coefficients *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_sdis_horiproj_config(struct ia_css_isp_parameters *params,
				const struct ia_css_dvs_coefficients *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_sdis_vertproj_config(struct ia_css_isp_parameters *params,
				const struct ia_css_dvs_coefficients *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_sdis2_horicoef_config(struct ia_css_isp_parameters *params,
				 const struct ia_css_dvs2_coefficients *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_sdis2_vertcoef_config(struct ia_css_isp_parameters *params,
				 const struct ia_css_dvs2_coefficients *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_sdis2_horiproj_config(struct ia_css_isp_parameters *params,
				 const struct ia_css_dvs2_coefficients *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_sdis2_vertproj_config(struct ia_css_isp_parameters *params,
				 const struct ia_css_dvs2_coefficients *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_r_gamma_config(struct ia_css_isp_parameters *params,
			  const struct ia_css_rgb_gamma_table *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_g_gamma_config(struct ia_css_isp_parameters *params,
			  const struct ia_css_rgb_gamma_table *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_b_gamma_config(struct ia_css_isp_parameters *params,
			  const struct ia_css_rgb_gamma_table *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_xnr_table_config(struct ia_css_isp_parameters *params,
			    const struct ia_css_xnr_table *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_formats_config(struct ia_css_isp_parameters *params,
			  const struct ia_css_formats_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_xnr_config(struct ia_css_isp_parameters *params,
		      const struct ia_css_xnr_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_xnr3_config(struct ia_css_isp_parameters *params,
		       const struct ia_css_xnr3_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_s3a_config(struct ia_css_isp_parameters *params,
		      const struct ia_css_3a_config *config);

/* Code generated by genparam/gencode.c:gen_set_function() */

void
ia_css_set_output_config(struct ia_css_isp_parameters *params,
			 const struct ia_css_output_config *config);

/* Code generated by genparam/gencode.c:gen_global_access_function() */

void
ia_css_get_configs(struct ia_css_isp_parameters *params,
		   const struct ia_css_isp_config *config)
;

/* Code generated by genparam/gencode.c:gen_global_access_function() */

void
ia_css_set_configs(struct ia_css_isp_parameters *params,
		   const struct ia_css_isp_config *config)
;

#endif /* IA_CSS_INCLUDE_PARAMETER */
#endif /* _IA_CSS_ISP_PARAM_H */