]> www.infradead.org Git - users/jedix/linux-maple.git/blob
68297296885e8296898c0cc3245502856e3de8d9
[users/jedix/linux-maple.git] /
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 #define IA_CSS_INCLUDE_PARAMETERS
16 #include "sh_css_params.h"
17 #include "isp/kernels/aa/aa_2/ia_css_aa2.host.h"
18 #include "isp/kernels/anr/anr_1.0/ia_css_anr.host.h"
19 #include "isp/kernels/anr/anr_2/ia_css_anr2.host.h"
20 #include "isp/kernels/bh/bh_2/ia_css_bh.host.h"
21 #include "isp/kernels/bnr/bnr_1.0/ia_css_bnr.host.h"
22 #include "isp/kernels/bnr/bnr2_2/ia_css_bnr2_2.host.h"
23 #include "isp/kernels/cnr/cnr_2/ia_css_cnr2.host.h"
24 #include "isp/kernels/crop/crop_1.0/ia_css_crop.host.h"
25 #include "isp/kernels/csc/csc_1.0/ia_css_csc.host.h"
26 #include "isp/kernels/ctc/ctc_1.0/ia_css_ctc.host.h"
27 #include "isp/kernels/ctc/ctc1_5/ia_css_ctc1_5.host.h"
28 #include "isp/kernels/ctc/ctc2/ia_css_ctc2.host.h"
29 #include "isp/kernels/de/de_1.0/ia_css_de.host.h"
30 #include "isp/kernels/de/de_2/ia_css_de2.host.h"
31 #include "isp/kernels/dp/dp_1.0/ia_css_dp.host.h"
32 #include "isp/kernels/fixedbds/fixedbds_1.0/ia_css_fixedbds_param.h"
33 #include "isp/kernels/fpn/fpn_1.0/ia_css_fpn.host.h"
34 #include "isp/kernels/gc/gc_1.0/ia_css_gc.host.h"
35 #include "isp/kernels/gc/gc_2/ia_css_gc2.host.h"
36 #include "isp/kernels/macc/macc_1.0/ia_css_macc.host.h"
37 #include "isp/kernels/macc/macc1_5/ia_css_macc1_5.host.h"
38 #include "isp/kernels/ob/ob_1.0/ia_css_ob.host.h"
39 #include "isp/kernels/ob/ob2/ia_css_ob2.host.h"
40 #include "isp/kernels/output/output_1.0/ia_css_output.host.h"
41 #include "isp/kernels/raw_aa_binning/raw_aa_binning_1.0/ia_css_raa.host.h"
42 #include "isp/kernels/s3a/s3a_1.0/ia_css_s3a.host.h"
43 #include "isp/kernels/sc/sc_1.0/ia_css_sc.host.h"
44 #include "isp/kernels/sdis/sdis_1.0/ia_css_sdis.host.h"
45 #include "isp/kernels/sdis/sdis_2/ia_css_sdis2.host.h"
46 #include "isp/kernels/tnr/tnr_1.0/ia_css_tnr.host.h"
47 #include "isp/kernels/uds/uds_1.0/ia_css_uds_param.h"
48 #include "isp/kernels/wb/wb_1.0/ia_css_wb.host.h"
49 #include "isp/kernels/xnr/xnr_1.0/ia_css_xnr.host.h"
50 #include "isp/kernels/xnr/xnr_3.0/ia_css_xnr3.host.h"
51 #include "isp/kernels/ynr/ynr_1.0/ia_css_ynr.host.h"
52 #include "isp/kernels/ynr/ynr_2/ia_css_ynr2.host.h"
53 #include "isp/kernels/fc/fc_1.0/ia_css_formats.host.h"
54 #include "isp/kernels/tdf/tdf_1.0/ia_css_tdf.host.h"
55 #include "isp/kernels/dpc2/ia_css_dpc2.host.h"
56 #include "isp/kernels/eed1_8/ia_css_eed1_8.host.h"
57 #include "isp/kernels/bnlm/ia_css_bnlm.host.h"
58 #include "isp/kernels/conversion/conversion_1.0/ia_css_conversion.host.h"
59 /* Generated code: do not edit or commmit. */
60
61 #include "ia_css_pipeline.h"
62 #include "ia_css_isp_params.h"
63 #include "ia_css_debug.h"
64 #include "assert_support.h"
65
66 /* Code generated by genparam/gencode.c:gen_process_function() */
67
68 static void
69 ia_css_process_aa(
70     unsigned int pipe_id,
71     const struct ia_css_pipeline_stage *stage,
72     struct ia_css_isp_parameters *params)
73 {
74         unsigned int size   =
75             stage->binary->info->mem_offsets.offsets.param->dmem.aa.size;
76         unsigned int offset =
77             stage->binary->info->mem_offsets.offsets.param->dmem.aa.offset;
78
79         if (size) {
80                 struct sh_css_isp_aa_params *t =  (struct sh_css_isp_aa_params *)
81                                                   &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset];
82                 t->strength = params->aa_config.strength;
83         }
84 }
85
86 /* Code generated by genparam/gencode.c:gen_process_function() */
87
88 static void
89 ia_css_process_anr(
90     unsigned int pipe_id,
91     const struct ia_css_pipeline_stage *stage,
92     struct ia_css_isp_parameters *params)
93 {
94         assert(params);
95
96         {
97                 unsigned int size   =
98                     stage->binary->info->mem_offsets.offsets.param->dmem.anr.size;
99
100                 unsigned int offset =
101                     stage->binary->info->mem_offsets.offsets.param->dmem.anr.offset;
102
103                 if (size) {
104                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
105                                             "ia_css_process_anr() enter:\n");
106
107                         ia_css_anr_encode((struct sh_css_isp_anr_params *)
108                                           &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
109                                           &params->anr_config,
110                                           size);
111                         params->isp_params_changed = true;
112                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
113                             true;
114
115                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
116                                             "ia_css_process_anr() leave:\n");
117                 }
118         }
119 }
120
121 /* Code generated by genparam/gencode.c:gen_process_function() */
122
123 static void
124 ia_css_process_anr2(
125     unsigned int pipe_id,
126     const struct ia_css_pipeline_stage *stage,
127     struct ia_css_isp_parameters *params)
128 {
129         assert(params);
130
131         {
132                 unsigned int size   =
133                     stage->binary->info->mem_offsets.offsets.param->vmem.anr2.size;
134
135                 unsigned int offset =
136                     stage->binary->info->mem_offsets.offsets.param->vmem.anr2.offset;
137
138                 if (size) {
139                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
140                                             "ia_css_process_anr2() enter:\n");
141
142                         ia_css_anr2_vmem_encode((struct ia_css_isp_anr2_params *)
143                                                 &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_VMEM].address[offset],
144                                                 &params->anr_thres,
145                                                 size);
146                         params->isp_params_changed = true;
147                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_VMEM] =
148                             true;
149
150                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
151                                             "ia_css_process_anr2() leave:\n");
152                 }
153         }
154 }
155
156 /* Code generated by genparam/gencode.c:gen_process_function() */
157
158 static void
159 ia_css_process_bh(
160     unsigned int pipe_id,
161     const struct ia_css_pipeline_stage *stage,
162     struct ia_css_isp_parameters *params)
163 {
164         assert(params);
165
166         {
167                 unsigned int size   =
168                     stage->binary->info->mem_offsets.offsets.param->dmem.bh.size;
169
170                 unsigned int offset =
171                     stage->binary->info->mem_offsets.offsets.param->dmem.bh.offset;
172
173                 if (size) {
174                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_bh() enter:\n");
175
176                         ia_css_bh_encode((struct sh_css_isp_bh_params *)
177                                          &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
178                                          &params->s3a_config,
179                                          size);
180                         params->isp_params_changed = true;
181                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
182                             true;
183
184                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_bh() leave:\n");
185                 }
186         }
187         {
188                 unsigned int size   =
189                     stage->binary->info->mem_offsets.offsets.param->hmem0.bh.size;
190
191                 if (size) {
192                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_bh() enter:\n");
193
194                         params->isp_params_changed = true;
195                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_HMEM0] =
196                             true;
197
198                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_bh() leave:\n");
199                 }
200         }
201 }
202
203 /* Code generated by genparam/gencode.c:gen_process_function() */
204
205 static void
206 ia_css_process_cnr(
207     unsigned int pipe_id,
208     const struct ia_css_pipeline_stage *stage,
209     struct ia_css_isp_parameters *params)
210 {
211         assert(params);
212
213         {
214                 unsigned int size   =
215                     stage->binary->info->mem_offsets.offsets.param->dmem.cnr.size;
216
217                 unsigned int offset =
218                     stage->binary->info->mem_offsets.offsets.param->dmem.cnr.offset;
219
220                 if (size) {
221                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
222                                             "ia_css_process_cnr() enter:\n");
223
224                         ia_css_cnr_encode((struct sh_css_isp_cnr_params *)
225                                           &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
226                                           &params->cnr_config,
227                                           size);
228                         params->isp_params_changed = true;
229                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
230                             true;
231
232                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
233                                             "ia_css_process_cnr() leave:\n");
234                 }
235         }
236 }
237
238 /* Code generated by genparam/gencode.c:gen_process_function() */
239
240 static void
241 ia_css_process_crop(
242     unsigned int pipe_id,
243     const struct ia_css_pipeline_stage *stage,
244     struct ia_css_isp_parameters *params)
245 {
246         assert(params);
247
248         {
249                 unsigned int size   =
250                     stage->binary->info->mem_offsets.offsets.param->dmem.crop.size;
251
252                 unsigned int offset =
253                     stage->binary->info->mem_offsets.offsets.param->dmem.crop.offset;
254
255                 if (size) {
256                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
257                                             "ia_css_process_crop() enter:\n");
258
259                         ia_css_crop_encode((struct sh_css_isp_crop_isp_params *)
260                                            &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
261                                            &params->crop_config,
262                                            size);
263                         params->isp_params_changed = true;
264                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
265                             true;
266
267                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
268                                             "ia_css_process_crop() leave:\n");
269                 }
270         }
271 }
272
273 /* Code generated by genparam/gencode.c:gen_process_function() */
274
275 static void
276 ia_css_process_csc(
277     unsigned int pipe_id,
278     const struct ia_css_pipeline_stage *stage,
279     struct ia_css_isp_parameters *params)
280 {
281         assert(params);
282
283         {
284                 unsigned int size   =
285                     stage->binary->info->mem_offsets.offsets.param->dmem.csc.size;
286
287                 unsigned int offset =
288                     stage->binary->info->mem_offsets.offsets.param->dmem.csc.offset;
289
290                 if (size) {
291                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
292                                             "ia_css_process_csc() enter:\n");
293
294                         ia_css_csc_encode((struct sh_css_isp_csc_params *)
295                                           &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
296                                           &params->cc_config,
297                                           size);
298                         params->isp_params_changed = true;
299                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
300                             true;
301
302                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
303                                             "ia_css_process_csc() leave:\n");
304                 }
305         }
306 }
307
308 /* Code generated by genparam/gencode.c:gen_process_function() */
309
310 static void
311 ia_css_process_dp(
312     unsigned int pipe_id,
313     const struct ia_css_pipeline_stage *stage,
314     struct ia_css_isp_parameters *params)
315 {
316         assert(params);
317
318         {
319                 unsigned int size   =
320                     stage->binary->info->mem_offsets.offsets.param->dmem.dp.size;
321
322                 unsigned int offset =
323                     stage->binary->info->mem_offsets.offsets.param->dmem.dp.offset;
324
325                 if (size) {
326                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_dp() enter:\n");
327
328                         ia_css_dp_encode((struct sh_css_isp_dp_params *)
329                                          &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
330                                          &params->dp_config,
331                                          size);
332                         params->isp_params_changed = true;
333                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
334                             true;
335
336                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_dp() leave:\n");
337                 }
338         }
339 }
340
341 /* Code generated by genparam/gencode.c:gen_process_function() */
342
343 static void
344 ia_css_process_bnr(
345     unsigned int pipe_id,
346     const struct ia_css_pipeline_stage *stage,
347     struct ia_css_isp_parameters *params)
348 {
349         assert(params);
350
351         {
352                 unsigned int size   =
353                     stage->binary->info->mem_offsets.offsets.param->dmem.bnr.size;
354
355                 unsigned int offset =
356                     stage->binary->info->mem_offsets.offsets.param->dmem.bnr.offset;
357
358                 if (size) {
359                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
360                                             "ia_css_process_bnr() enter:\n");
361
362                         ia_css_bnr_encode((struct sh_css_isp_bnr_params *)
363                                           &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
364                                           &params->nr_config,
365                                           size);
366                         params->isp_params_changed = true;
367                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
368                             true;
369
370                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
371                                             "ia_css_process_bnr() leave:\n");
372                 }
373         }
374 }
375
376 /* Code generated by genparam/gencode.c:gen_process_function() */
377
378 static void
379 ia_css_process_de(
380     unsigned int pipe_id,
381     const struct ia_css_pipeline_stage *stage,
382     struct ia_css_isp_parameters *params)
383 {
384         assert(params);
385
386         {
387                 unsigned int size   =
388                     stage->binary->info->mem_offsets.offsets.param->dmem.de.size;
389
390                 unsigned int offset =
391                     stage->binary->info->mem_offsets.offsets.param->dmem.de.offset;
392
393                 if (size) {
394                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_de() enter:\n");
395
396                         ia_css_de_encode((struct sh_css_isp_de_params *)
397                                          &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
398                                          &params->de_config,
399                                          size);
400                         params->isp_params_changed = true;
401                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
402                             true;
403
404                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_de() leave:\n");
405                 }
406         }
407 }
408
409 /* Code generated by genparam/gencode.c:gen_process_function() */
410
411 static void
412 ia_css_process_ecd(
413     unsigned int pipe_id,
414     const struct ia_css_pipeline_stage *stage,
415     struct ia_css_isp_parameters *params)
416 {
417         assert(params);
418
419         {
420                 unsigned int size   =
421                     stage->binary->info->mem_offsets.offsets.param->dmem.ecd.size;
422
423                 unsigned int offset =
424                     stage->binary->info->mem_offsets.offsets.param->dmem.ecd.offset;
425
426                 if (size) {
427                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
428                                             "ia_css_process_ecd() enter:\n");
429
430                         ia_css_ecd_encode((struct sh_css_isp_ecd_params *)
431                                           &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
432                                           &params->ecd_config,
433                                           size);
434                         params->isp_params_changed = true;
435                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
436                             true;
437
438                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
439                                             "ia_css_process_ecd() leave:\n");
440                 }
441         }
442 }
443
444 /* Code generated by genparam/gencode.c:gen_process_function() */
445
446 static void
447 ia_css_process_formats(
448     unsigned int pipe_id,
449     const struct ia_css_pipeline_stage *stage,
450     struct ia_css_isp_parameters *params)
451 {
452         assert(params);
453
454         {
455                 unsigned int size   =
456                     stage->binary->info->mem_offsets.offsets.param->dmem.formats.size;
457
458                 unsigned int offset =
459                     stage->binary->info->mem_offsets.offsets.param->dmem.formats.offset;
460
461                 if (size) {
462                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
463                                             "ia_css_process_formats() enter:\n");
464
465                         ia_css_formats_encode((struct sh_css_isp_formats_params *)
466                                               &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
467                                               &params->formats_config,
468                                               size);
469                         params->isp_params_changed = true;
470                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
471                             true;
472
473                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
474                                             "ia_css_process_formats() leave:\n");
475                 }
476         }
477 }
478
479 /* Code generated by genparam/gencode.c:gen_process_function() */
480
481 static void
482 ia_css_process_fpn(
483     unsigned int pipe_id,
484     const struct ia_css_pipeline_stage *stage,
485     struct ia_css_isp_parameters *params)
486 {
487         assert(params);
488
489         {
490                 unsigned int size   =
491                     stage->binary->info->mem_offsets.offsets.param->dmem.fpn.size;
492
493                 unsigned int offset =
494                     stage->binary->info->mem_offsets.offsets.param->dmem.fpn.offset;
495
496                 if (size) {
497                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
498                                             "ia_css_process_fpn() enter:\n");
499
500                         ia_css_fpn_encode((struct sh_css_isp_fpn_params *)
501                                           &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
502                                           &params->fpn_config,
503                                           size);
504                         params->isp_params_changed = true;
505                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
506                             true;
507
508                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
509                                             "ia_css_process_fpn() leave:\n");
510                 }
511         }
512 }
513
514 /* Code generated by genparam/gencode.c:gen_process_function() */
515
516 static void
517 ia_css_process_gc(
518     unsigned int pipe_id,
519     const struct ia_css_pipeline_stage *stage,
520     struct ia_css_isp_parameters *params)
521 {
522         assert(params);
523
524         {
525                 unsigned int size   =
526                     stage->binary->info->mem_offsets.offsets.param->dmem.gc.size;
527
528                 unsigned int offset =
529                     stage->binary->info->mem_offsets.offsets.param->dmem.gc.offset;
530
531                 if (size) {
532                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_gc() enter:\n");
533
534                         ia_css_gc_encode((struct sh_css_isp_gc_params *)
535                                          &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
536                                          &params->gc_config,
537                                          size);
538                         params->isp_params_changed = true;
539                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
540                             true;
541
542                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_gc() leave:\n");
543                 }
544         }
545         {
546                 unsigned int size   =
547                     stage->binary->info->mem_offsets.offsets.param->vamem1.gc.size;
548
549                 unsigned int offset =
550                     stage->binary->info->mem_offsets.offsets.param->vamem1.gc.offset;
551
552                 if (size) {
553                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_gc() enter:\n");
554
555                         ia_css_gc_vamem_encode((struct sh_css_isp_gc_vamem_params *)
556                                                &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_VAMEM1].address[offset],
557                                                &params->gc_table,
558                                                size);
559                         params->isp_params_changed = true;
560                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_VAMEM1] =
561                             true;
562
563                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_gc() leave:\n");
564                 }
565         }
566 }
567
568 /* Code generated by genparam/gencode.c:gen_process_function() */
569
570 static void
571 ia_css_process_ce(
572     unsigned int pipe_id,
573     const struct ia_css_pipeline_stage *stage,
574     struct ia_css_isp_parameters *params)
575 {
576         assert(params);
577
578         {
579                 unsigned int size   =
580                     stage->binary->info->mem_offsets.offsets.param->dmem.ce.size;
581
582                 unsigned int offset =
583                     stage->binary->info->mem_offsets.offsets.param->dmem.ce.offset;
584
585                 if (size) {
586                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_ce() enter:\n");
587
588                         ia_css_ce_encode((struct sh_css_isp_ce_params *)
589                                          &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
590                                          &params->ce_config,
591                                          size);
592                         params->isp_params_changed = true;
593                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
594                             true;
595
596                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_ce() leave:\n");
597                 }
598         }
599 }
600
601 /* Code generated by genparam/gencode.c:gen_process_function() */
602
603 static void
604 ia_css_process_yuv2rgb(
605     unsigned int pipe_id,
606     const struct ia_css_pipeline_stage *stage,
607     struct ia_css_isp_parameters *params)
608 {
609         assert(params);
610
611         {
612                 unsigned int size   =
613                     stage->binary->info->mem_offsets.offsets.param->dmem.yuv2rgb.size;
614
615                 unsigned int offset =
616                     stage->binary->info->mem_offsets.offsets.param->dmem.yuv2rgb.offset;
617
618                 if (size) {
619                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
620                                             "ia_css_process_yuv2rgb() enter:\n");
621
622                         ia_css_yuv2rgb_encode((struct sh_css_isp_csc_params *)
623                                               &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
624                                               &params->yuv2rgb_cc_config,
625                                               size);
626                         params->isp_params_changed = true;
627                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
628                             true;
629
630                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
631                                             "ia_css_process_yuv2rgb() leave:\n");
632                 }
633         }
634 }
635
636 /* Code generated by genparam/gencode.c:gen_process_function() */
637
638 static void
639 ia_css_process_rgb2yuv(
640     unsigned int pipe_id,
641     const struct ia_css_pipeline_stage *stage,
642     struct ia_css_isp_parameters *params)
643 {
644         assert(params);
645
646         {
647                 unsigned int size   =
648                     stage->binary->info->mem_offsets.offsets.param->dmem.rgb2yuv.size;
649
650                 unsigned int offset =
651                     stage->binary->info->mem_offsets.offsets.param->dmem.rgb2yuv.offset;
652
653                 if (size) {
654                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
655                                             "ia_css_process_rgb2yuv() enter:\n");
656
657                         ia_css_rgb2yuv_encode((struct sh_css_isp_csc_params *)
658                                               &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
659                                               &params->rgb2yuv_cc_config,
660                                               size);
661                         params->isp_params_changed = true;
662                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
663                             true;
664
665                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
666                                             "ia_css_process_rgb2yuv() leave:\n");
667                 }
668         }
669 }
670
671 /* Code generated by genparam/gencode.c:gen_process_function() */
672
673 static void
674 ia_css_process_r_gamma(
675     unsigned int pipe_id,
676     const struct ia_css_pipeline_stage *stage,
677     struct ia_css_isp_parameters *params)
678 {
679         assert(params);
680
681         {
682                 unsigned int size   =
683                     stage->binary->info->mem_offsets.offsets.param->vamem0.r_gamma.size;
684
685                 unsigned int offset =
686                     stage->binary->info->mem_offsets.offsets.param->vamem0.r_gamma.offset;
687
688                 if (size) {
689                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
690                                             "ia_css_process_r_gamma() enter:\n");
691
692                         ia_css_r_gamma_vamem_encode((struct sh_css_isp_rgb_gamma_vamem_params *)
693                                                     &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_VAMEM0].address[offset],
694                                                     &params->r_gamma_table,
695                                                     size);
696                         params->isp_params_changed = true;
697                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_VAMEM0] =
698                             true;
699
700                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
701                                             "ia_css_process_r_gamma() leave:\n");
702                 }
703         }
704 }
705
706 /* Code generated by genparam/gencode.c:gen_process_function() */
707
708 static void
709 ia_css_process_g_gamma(
710     unsigned int pipe_id,
711     const struct ia_css_pipeline_stage *stage,
712     struct ia_css_isp_parameters *params)
713 {
714         assert(params);
715
716         {
717                 unsigned int size   =
718                     stage->binary->info->mem_offsets.offsets.param->vamem1.g_gamma.size;
719
720                 unsigned int offset =
721                     stage->binary->info->mem_offsets.offsets.param->vamem1.g_gamma.offset;
722
723                 if (size) {
724                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
725                                             "ia_css_process_g_gamma() enter:\n");
726
727                         ia_css_g_gamma_vamem_encode((struct sh_css_isp_rgb_gamma_vamem_params *)
728                                                     &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_VAMEM1].address[offset],
729                                                     &params->g_gamma_table,
730                                                     size);
731                         params->isp_params_changed = true;
732                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_VAMEM1] =
733                             true;
734
735                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
736                                             "ia_css_process_g_gamma() leave:\n");
737                 }
738         }
739 }
740
741 /* Code generated by genparam/gencode.c:gen_process_function() */
742
743 static void
744 ia_css_process_b_gamma(
745     unsigned int pipe_id,
746     const struct ia_css_pipeline_stage *stage,
747     struct ia_css_isp_parameters *params)
748 {
749         assert(params);
750
751         {
752                 unsigned int size   =
753                     stage->binary->info->mem_offsets.offsets.param->vamem2.b_gamma.size;
754
755                 unsigned int offset =
756                     stage->binary->info->mem_offsets.offsets.param->vamem2.b_gamma.offset;
757
758                 if (size) {
759                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
760                                             "ia_css_process_b_gamma() enter:\n");
761
762                         ia_css_b_gamma_vamem_encode((struct sh_css_isp_rgb_gamma_vamem_params *)
763                                                     &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_VAMEM2].address[offset],
764                                                     &params->b_gamma_table,
765                                                     size);
766                         params->isp_params_changed = true;
767                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_VAMEM2] =
768                             true;
769
770                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
771                                             "ia_css_process_b_gamma() leave:\n");
772                 }
773         }
774 }
775
776 /* Code generated by genparam/gencode.c:gen_process_function() */
777
778 static void
779 ia_css_process_uds(
780     unsigned int pipe_id,
781     const struct ia_css_pipeline_stage *stage,
782     struct ia_css_isp_parameters *params)
783 {
784         assert(params);
785
786         {
787                 unsigned int size   =
788                     stage->binary->info->mem_offsets.offsets.param->dmem.uds.size;
789
790                 unsigned int offset =
791                     stage->binary->info->mem_offsets.offsets.param->dmem.uds.offset;
792
793                 if (size) {
794                         struct sh_css_sp_uds_params *p;
795
796                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
797                                             "ia_css_process_uds() enter:\n");
798
799                         p = (struct sh_css_sp_uds_params *)
800                             &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset];
801                         p->crop_pos = params->uds_config.crop_pos;
802                         p->uds = params->uds_config.uds;
803
804                         params->isp_params_changed = true;
805                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
806                             true;
807
808                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
809                                             "ia_css_process_uds() leave:\n");
810                 }
811         }
812 }
813
814 /* Code generated by genparam/gencode.c:gen_process_function() */
815
816 static void
817 ia_css_process_raa(
818     unsigned int pipe_id,
819     const struct ia_css_pipeline_stage *stage,
820     struct ia_css_isp_parameters *params)
821 {
822         assert(params);
823
824         {
825                 unsigned int size   =
826                     stage->binary->info->mem_offsets.offsets.param->dmem.raa.size;
827
828                 unsigned int offset =
829                     stage->binary->info->mem_offsets.offsets.param->dmem.raa.offset;
830
831                 if (size) {
832                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
833                                             "ia_css_process_raa() enter:\n");
834
835                         ia_css_raa_encode((struct sh_css_isp_aa_params *)
836                                           &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
837                                           &params->raa_config,
838                                           size);
839                         params->isp_params_changed = true;
840                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
841                             true;
842
843                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
844                                             "ia_css_process_raa() leave:\n");
845                 }
846         }
847 }
848
849 /* Code generated by genparam/gencode.c:gen_process_function() */
850
851 static void
852 ia_css_process_s3a(
853     unsigned int pipe_id,
854     const struct ia_css_pipeline_stage *stage,
855     struct ia_css_isp_parameters *params)
856 {
857         assert(params);
858
859         {
860                 unsigned int size   =
861                     stage->binary->info->mem_offsets.offsets.param->dmem.s3a.size;
862
863                 unsigned int offset =
864                     stage->binary->info->mem_offsets.offsets.param->dmem.s3a.offset;
865
866                 if (size) {
867                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
868                                             "ia_css_process_s3a() enter:\n");
869
870                         ia_css_s3a_encode((struct sh_css_isp_s3a_params *)
871                                           &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
872                                           &params->s3a_config,
873                                           size);
874                         params->isp_params_changed = true;
875                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
876                             true;
877
878                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
879                                             "ia_css_process_s3a() leave:\n");
880                 }
881         }
882 }
883
884 /* Code generated by genparam/gencode.c:gen_process_function() */
885
886 static void
887 ia_css_process_ob(
888     unsigned int pipe_id,
889     const struct ia_css_pipeline_stage *stage,
890     struct ia_css_isp_parameters *params)
891 {
892         assert(params);
893
894         {
895                 unsigned int size   =
896                     stage->binary->info->mem_offsets.offsets.param->dmem.ob.size;
897
898                 unsigned int offset =
899                     stage->binary->info->mem_offsets.offsets.param->dmem.ob.offset;
900
901                 if (size) {
902                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_ob() enter:\n");
903
904                         ia_css_ob_encode((struct sh_css_isp_ob_params *)
905                                          &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
906                                          &params->ob_config,
907                                          &params->stream_configs.ob, size);
908                         params->isp_params_changed = true;
909                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
910                             true;
911
912                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_ob() leave:\n");
913                 }
914         }
915         {
916                 unsigned int size   =
917                     stage->binary->info->mem_offsets.offsets.param->vmem.ob.size;
918
919                 unsigned int offset =
920                     stage->binary->info->mem_offsets.offsets.param->vmem.ob.offset;
921
922                 if (size) {
923                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_ob() enter:\n");
924
925                         ia_css_ob_vmem_encode((struct sh_css_isp_ob_vmem_params *)
926                                               &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_VMEM].address[offset],
927                                               &params->ob_config,
928                                               &params->stream_configs.ob, size);
929                         params->isp_params_changed = true;
930                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_VMEM] =
931                             true;
932
933                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_ob() leave:\n");
934                 }
935         }
936 }
937
938 /* Code generated by genparam/gencode.c:gen_process_function() */
939
940 static void
941 ia_css_process_output(
942     unsigned int pipe_id,
943     const struct ia_css_pipeline_stage *stage,
944     struct ia_css_isp_parameters *params)
945 {
946         assert(params);
947
948         {
949                 unsigned int size   =
950                     stage->binary->info->mem_offsets.offsets.param->dmem.output.size;
951
952                 unsigned int offset =
953                     stage->binary->info->mem_offsets.offsets.param->dmem.output.offset;
954
955                 if (size) {
956                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
957                                             "ia_css_process_output() enter:\n");
958
959                         ia_css_output_encode((struct sh_css_isp_output_params *)
960                                              &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
961                                              &params->output_config,
962                                              size);
963                         params->isp_params_changed = true;
964                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
965                             true;
966
967                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
968                                             "ia_css_process_output() leave:\n");
969                 }
970         }
971 }
972
973 /* Code generated by genparam/gencode.c:gen_process_function() */
974
975 static void
976 ia_css_process_sc(
977     unsigned int pipe_id,
978     const struct ia_css_pipeline_stage *stage,
979     struct ia_css_isp_parameters *params)
980 {
981         assert(params);
982
983         {
984                 unsigned int size   =
985                     stage->binary->info->mem_offsets.offsets.param->dmem.sc.size;
986
987                 unsigned int offset =
988                     stage->binary->info->mem_offsets.offsets.param->dmem.sc.offset;
989
990                 if (size) {
991                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_sc() enter:\n");
992
993                         ia_css_sc_encode((struct sh_css_isp_sc_params *)
994                                          &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
995                                          &params->sc_config,
996                                          size);
997                         params->isp_params_changed = true;
998                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
999                             true;
1000
1001                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_sc() leave:\n");
1002                 }
1003         }
1004 }
1005
1006 /* Code generated by genparam/gencode.c:gen_process_function() */
1007
1008 static void
1009 ia_css_process_bds(
1010     unsigned int pipe_id,
1011     const struct ia_css_pipeline_stage *stage,
1012     struct ia_css_isp_parameters *params)
1013 {
1014         assert(params);
1015
1016         {
1017                 unsigned int size   =
1018                     stage->binary->info->mem_offsets.offsets.param->dmem.bds.size;
1019
1020                 unsigned int offset =
1021                     stage->binary->info->mem_offsets.offsets.param->dmem.bds.offset;
1022
1023                 if (size) {
1024                         struct sh_css_isp_bds_params *p;
1025
1026                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1027                                             "ia_css_process_bds() enter:\n");
1028
1029                         p = (struct sh_css_isp_bds_params *)
1030                             &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset];
1031                         p->baf_strength = params->bds_config.strength;
1032
1033                         params->isp_params_changed = true;
1034                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
1035                             true;
1036
1037                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1038                                             "ia_css_process_bds() leave:\n");
1039                 }
1040         }
1041 }
1042
1043 /* Code generated by genparam/gencode.c:gen_process_function() */
1044
1045 static void
1046 ia_css_process_tnr(
1047     unsigned int pipe_id,
1048     const struct ia_css_pipeline_stage *stage,
1049     struct ia_css_isp_parameters *params)
1050 {
1051         assert(params);
1052
1053         {
1054                 unsigned int size   =
1055                     stage->binary->info->mem_offsets.offsets.param->dmem.tnr.size;
1056
1057                 unsigned int offset =
1058                     stage->binary->info->mem_offsets.offsets.param->dmem.tnr.offset;
1059
1060                 if (size) {
1061                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1062                                             "ia_css_process_tnr() enter:\n");
1063
1064                         ia_css_tnr_encode((struct sh_css_isp_tnr_params *)
1065                                           &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
1066                                           &params->tnr_config,
1067                                           size);
1068                         params->isp_params_changed = true;
1069                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
1070                             true;
1071
1072                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1073                                             "ia_css_process_tnr() leave:\n");
1074                 }
1075         }
1076 }
1077
1078 /* Code generated by genparam/gencode.c:gen_process_function() */
1079
1080 static void
1081 ia_css_process_macc(
1082     unsigned int pipe_id,
1083     const struct ia_css_pipeline_stage *stage,
1084     struct ia_css_isp_parameters *params)
1085 {
1086         assert(params);
1087
1088         {
1089                 unsigned int size   =
1090                     stage->binary->info->mem_offsets.offsets.param->dmem.macc.size;
1091
1092                 unsigned int offset =
1093                     stage->binary->info->mem_offsets.offsets.param->dmem.macc.offset;
1094
1095                 if (size) {
1096                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1097                                             "ia_css_process_macc() enter:\n");
1098
1099                         ia_css_macc_encode((struct sh_css_isp_macc_params *)
1100                                            &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
1101                                            &params->macc_config,
1102                                            size);
1103                         params->isp_params_changed = true;
1104                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
1105                             true;
1106
1107                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1108                                             "ia_css_process_macc() leave:\n");
1109                 }
1110         }
1111 }
1112
1113 /* Code generated by genparam/gencode.c:gen_process_function() */
1114
1115 static void
1116 ia_css_process_sdis_horicoef(
1117     unsigned int pipe_id,
1118     const struct ia_css_pipeline_stage *stage,
1119     struct ia_css_isp_parameters *params)
1120 {
1121         assert(params);
1122
1123         {
1124                 unsigned int size   =
1125                     stage->binary->info->mem_offsets.offsets.param->vmem.sdis_horicoef.size;
1126
1127                 unsigned int offset =
1128                     stage->binary->info->mem_offsets.offsets.param->vmem.sdis_horicoef.offset;
1129
1130                 if (size) {
1131                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1132                                             "ia_css_process_sdis_horicoef() enter:\n");
1133
1134                         ia_css_sdis_horicoef_vmem_encode((struct sh_css_isp_sdis_hori_coef_tbl *)
1135                                                          &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_VMEM].address[offset],
1136                                                          &params->dvs_coefs,
1137                                                          size);
1138                         params->isp_params_changed = true;
1139                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_VMEM] =
1140                             true;
1141
1142                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1143                                             "ia_css_process_sdis_horicoef() leave:\n");
1144                 }
1145         }
1146 }
1147
1148 /* Code generated by genparam/gencode.c:gen_process_function() */
1149
1150 static void
1151 ia_css_process_sdis_vertcoef(
1152     unsigned int pipe_id,
1153     const struct ia_css_pipeline_stage *stage,
1154     struct ia_css_isp_parameters *params)
1155 {
1156         assert(params);
1157
1158         {
1159                 unsigned int size   =
1160                     stage->binary->info->mem_offsets.offsets.param->vmem.sdis_vertcoef.size;
1161
1162                 unsigned int offset =
1163                     stage->binary->info->mem_offsets.offsets.param->vmem.sdis_vertcoef.offset;
1164
1165                 if (size) {
1166                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1167                                             "ia_css_process_sdis_vertcoef() enter:\n");
1168
1169                         ia_css_sdis_vertcoef_vmem_encode((struct sh_css_isp_sdis_vert_coef_tbl *)
1170                                                          &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_VMEM].address[offset],
1171                                                          &params->dvs_coefs,
1172                                                          size);
1173                         params->isp_params_changed = true;
1174                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_VMEM] =
1175                             true;
1176
1177                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1178                                             "ia_css_process_sdis_vertcoef() leave:\n");
1179                 }
1180         }
1181 }
1182
1183 /* Code generated by genparam/gencode.c:gen_process_function() */
1184
1185 static void
1186 ia_css_process_sdis_horiproj(
1187     unsigned int pipe_id,
1188     const struct ia_css_pipeline_stage *stage,
1189     struct ia_css_isp_parameters *params)
1190 {
1191         assert(params);
1192
1193         {
1194                 unsigned int size   =
1195                     stage->binary->info->mem_offsets.offsets.param->dmem.sdis_horiproj.size;
1196
1197                 unsigned int offset =
1198                     stage->binary->info->mem_offsets.offsets.param->dmem.sdis_horiproj.offset;
1199
1200                 if (size) {
1201                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1202                                             "ia_css_process_sdis_horiproj() enter:\n");
1203
1204                         ia_css_sdis_horiproj_encode((struct sh_css_isp_sdis_hori_proj_tbl *)
1205                                                     &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
1206                                                     &params->dvs_coefs,
1207                                                     size);
1208                         params->isp_params_changed = true;
1209                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
1210                             true;
1211
1212                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1213                                             "ia_css_process_sdis_horiproj() leave:\n");
1214                 }
1215         }
1216 }
1217
1218 /* Code generated by genparam/gencode.c:gen_process_function() */
1219
1220 static void
1221 ia_css_process_sdis_vertproj(
1222     unsigned int pipe_id,
1223     const struct ia_css_pipeline_stage *stage,
1224     struct ia_css_isp_parameters *params)
1225 {
1226         assert(params);
1227
1228         {
1229                 unsigned int size   =
1230                     stage->binary->info->mem_offsets.offsets.param->dmem.sdis_vertproj.size;
1231
1232                 unsigned int offset =
1233                     stage->binary->info->mem_offsets.offsets.param->dmem.sdis_vertproj.offset;
1234
1235                 if (size) {
1236                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1237                                             "ia_css_process_sdis_vertproj() enter:\n");
1238
1239                         ia_css_sdis_vertproj_encode((struct sh_css_isp_sdis_vert_proj_tbl *)
1240                                                     &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
1241                                                     &params->dvs_coefs,
1242                                                     size);
1243                         params->isp_params_changed = true;
1244                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
1245                             true;
1246
1247                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1248                                             "ia_css_process_sdis_vertproj() leave:\n");
1249                 }
1250         }
1251 }
1252
1253 /* Code generated by genparam/gencode.c:gen_process_function() */
1254
1255 static void
1256 ia_css_process_sdis2_horicoef(
1257     unsigned int pipe_id,
1258     const struct ia_css_pipeline_stage *stage,
1259     struct ia_css_isp_parameters *params)
1260 {
1261         assert(params);
1262
1263         {
1264                 unsigned int size   =
1265                     stage->binary->info->mem_offsets.offsets.param->vmem.sdis2_horicoef.size;
1266
1267                 unsigned int offset =
1268                     stage->binary->info->mem_offsets.offsets.param->vmem.sdis2_horicoef.offset;
1269
1270                 if (size) {
1271                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1272                                             "ia_css_process_sdis2_horicoef() enter:\n");
1273
1274                         ia_css_sdis2_horicoef_vmem_encode((struct sh_css_isp_sdis_hori_coef_tbl *)
1275                                                           &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_VMEM].address[offset],
1276                                                           &params->dvs2_coefs,
1277                                                           size);
1278                         params->isp_params_changed = true;
1279                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_VMEM] =
1280                             true;
1281
1282                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1283                                             "ia_css_process_sdis2_horicoef() leave:\n");
1284                 }
1285         }
1286 }
1287
1288 /* Code generated by genparam/gencode.c:gen_process_function() */
1289
1290 static void
1291 ia_css_process_sdis2_vertcoef(
1292     unsigned int pipe_id,
1293     const struct ia_css_pipeline_stage *stage,
1294     struct ia_css_isp_parameters *params)
1295 {
1296         assert(params);
1297
1298         {
1299                 unsigned int size   =
1300                     stage->binary->info->mem_offsets.offsets.param->vmem.sdis2_vertcoef.size;
1301
1302                 unsigned int offset =
1303                     stage->binary->info->mem_offsets.offsets.param->vmem.sdis2_vertcoef.offset;
1304
1305                 if (size) {
1306                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1307                                             "ia_css_process_sdis2_vertcoef() enter:\n");
1308
1309                         ia_css_sdis2_vertcoef_vmem_encode((struct sh_css_isp_sdis_vert_coef_tbl *)
1310                                                           &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_VMEM].address[offset],
1311                                                           &params->dvs2_coefs,
1312                                                           size);
1313                         params->isp_params_changed = true;
1314                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_VMEM] =
1315                             true;
1316
1317                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1318                                             "ia_css_process_sdis2_vertcoef() leave:\n");
1319                 }
1320         }
1321 }
1322
1323 /* Code generated by genparam/gencode.c:gen_process_function() */
1324
1325 static void
1326 ia_css_process_sdis2_horiproj(
1327     unsigned int pipe_id,
1328     const struct ia_css_pipeline_stage *stage,
1329     struct ia_css_isp_parameters *params)
1330 {
1331         assert(params);
1332
1333         {
1334                 unsigned int size   =
1335                     stage->binary->info->mem_offsets.offsets.param->dmem.sdis2_horiproj.size;
1336
1337                 unsigned int offset =
1338                     stage->binary->info->mem_offsets.offsets.param->dmem.sdis2_horiproj.offset;
1339
1340                 if (size) {
1341                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1342                                             "ia_css_process_sdis2_horiproj() enter:\n");
1343
1344                         ia_css_sdis2_horiproj_encode((struct sh_css_isp_sdis_hori_proj_tbl *)
1345                                                      &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
1346                                                      &params->dvs2_coefs,
1347                                                      size);
1348                         params->isp_params_changed = true;
1349                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
1350                             true;
1351
1352                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1353                                             "ia_css_process_sdis2_horiproj() leave:\n");
1354                 }
1355         }
1356 }
1357
1358 /* Code generated by genparam/gencode.c:gen_process_function() */
1359
1360 static void
1361 ia_css_process_sdis2_vertproj(
1362     unsigned int pipe_id,
1363     const struct ia_css_pipeline_stage *stage,
1364     struct ia_css_isp_parameters *params)
1365 {
1366         assert(params);
1367
1368         {
1369                 unsigned int size   =
1370                     stage->binary->info->mem_offsets.offsets.param->dmem.sdis2_vertproj.size;
1371
1372                 unsigned int offset =
1373                     stage->binary->info->mem_offsets.offsets.param->dmem.sdis2_vertproj.offset;
1374
1375                 if (size) {
1376                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1377                                             "ia_css_process_sdis2_vertproj() enter:\n");
1378
1379                         ia_css_sdis2_vertproj_encode((struct sh_css_isp_sdis_vert_proj_tbl *)
1380                                                      &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
1381                                                      &params->dvs2_coefs,
1382                                                      size);
1383                         params->isp_params_changed = true;
1384                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
1385                             true;
1386
1387                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1388                                             "ia_css_process_sdis2_vertproj() leave:\n");
1389                 }
1390         }
1391 }
1392
1393 /* Code generated by genparam/gencode.c:gen_process_function() */
1394
1395 static void
1396 ia_css_process_wb(
1397     unsigned int pipe_id,
1398     const struct ia_css_pipeline_stage *stage,
1399     struct ia_css_isp_parameters *params)
1400 {
1401         assert(params);
1402
1403         {
1404                 unsigned int size   =
1405                     stage->binary->info->mem_offsets.offsets.param->dmem.wb.size;
1406
1407                 unsigned int offset =
1408                     stage->binary->info->mem_offsets.offsets.param->dmem.wb.offset;
1409
1410                 if (size) {
1411                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_wb() enter:\n");
1412
1413                         ia_css_wb_encode((struct sh_css_isp_wb_params *)
1414                                          &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
1415                                          &params->wb_config,
1416                                          size);
1417                         params->isp_params_changed = true;
1418                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
1419                             true;
1420
1421                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_wb() leave:\n");
1422                 }
1423         }
1424 }
1425
1426 /* Code generated by genparam/gencode.c:gen_process_function() */
1427
1428 static void
1429 ia_css_process_nr(
1430     unsigned int pipe_id,
1431     const struct ia_css_pipeline_stage *stage,
1432     struct ia_css_isp_parameters *params)
1433 {
1434         assert(params);
1435
1436         {
1437                 unsigned int size   =
1438                     stage->binary->info->mem_offsets.offsets.param->dmem.nr.size;
1439
1440                 unsigned int offset =
1441                     stage->binary->info->mem_offsets.offsets.param->dmem.nr.offset;
1442
1443                 if (size) {
1444                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_nr() enter:\n");
1445
1446                         ia_css_nr_encode((struct sh_css_isp_ynr_params *)
1447                                          &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
1448                                          &params->nr_config,
1449                                          size);
1450                         params->isp_params_changed = true;
1451                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
1452                             true;
1453
1454                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_nr() leave:\n");
1455                 }
1456         }
1457 }
1458
1459 /* Code generated by genparam/gencode.c:gen_process_function() */
1460
1461 static void
1462 ia_css_process_yee(
1463     unsigned int pipe_id,
1464     const struct ia_css_pipeline_stage *stage,
1465     struct ia_css_isp_parameters *params)
1466 {
1467         assert(params);
1468
1469         {
1470                 unsigned int size   =
1471                     stage->binary->info->mem_offsets.offsets.param->dmem.yee.size;
1472
1473                 unsigned int offset =
1474                     stage->binary->info->mem_offsets.offsets.param->dmem.yee.offset;
1475
1476                 if (size) {
1477                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1478                                             "ia_css_process_yee() enter:\n");
1479
1480                         ia_css_yee_encode((struct sh_css_isp_yee_params *)
1481                                           &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
1482                                           &params->yee_config,
1483                                           size);
1484                         params->isp_params_changed = true;
1485                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
1486                             true;
1487
1488                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1489                                             "ia_css_process_yee() leave:\n");
1490                 }
1491         }
1492 }
1493
1494 /* Code generated by genparam/gencode.c:gen_process_function() */
1495
1496 static void
1497 ia_css_process_ynr(
1498     unsigned int pipe_id,
1499     const struct ia_css_pipeline_stage *stage,
1500     struct ia_css_isp_parameters *params)
1501 {
1502         assert(params);
1503
1504         {
1505                 unsigned int size   =
1506                     stage->binary->info->mem_offsets.offsets.param->dmem.ynr.size;
1507
1508                 unsigned int offset =
1509                     stage->binary->info->mem_offsets.offsets.param->dmem.ynr.offset;
1510
1511                 if (size) {
1512                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1513                                             "ia_css_process_ynr() enter:\n");
1514
1515                         ia_css_ynr_encode((struct sh_css_isp_yee2_params *)
1516                                           &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
1517                                           &params->ynr_config,
1518                                           size);
1519                         params->isp_params_changed = true;
1520                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
1521                             true;
1522
1523                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1524                                             "ia_css_process_ynr() leave:\n");
1525                 }
1526         }
1527 }
1528
1529 /* Code generated by genparam/gencode.c:gen_process_function() */
1530
1531 static void
1532 ia_css_process_fc(
1533     unsigned int pipe_id,
1534     const struct ia_css_pipeline_stage *stage,
1535     struct ia_css_isp_parameters *params)
1536 {
1537         assert(params);
1538
1539         {
1540                 unsigned int size   =
1541                     stage->binary->info->mem_offsets.offsets.param->dmem.fc.size;
1542
1543                 unsigned int offset =
1544                     stage->binary->info->mem_offsets.offsets.param->dmem.fc.offset;
1545
1546                 if (size) {
1547                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_fc() enter:\n");
1548
1549                         ia_css_fc_encode((struct sh_css_isp_fc_params *)
1550                                          &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
1551                                          &params->fc_config,
1552                                          size);
1553                         params->isp_params_changed = true;
1554                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
1555                             true;
1556
1557                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "ia_css_process_fc() leave:\n");
1558                 }
1559         }
1560 }
1561
1562 /* Code generated by genparam/gencode.c:gen_process_function() */
1563
1564 static void
1565 ia_css_process_ctc(
1566     unsigned int pipe_id,
1567     const struct ia_css_pipeline_stage *stage,
1568     struct ia_css_isp_parameters *params)
1569 {
1570         assert(params);
1571
1572         {
1573                 unsigned int size   =
1574                     stage->binary->info->mem_offsets.offsets.param->dmem.ctc.size;
1575
1576                 unsigned int offset =
1577                     stage->binary->info->mem_offsets.offsets.param->dmem.ctc.offset;
1578
1579                 if (size) {
1580                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1581                                             "ia_css_process_ctc() enter:\n");
1582
1583                         ia_css_ctc_encode((struct sh_css_isp_ctc_params *)
1584                                           &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
1585                                           &params->ctc_config,
1586                                           size);
1587                         params->isp_params_changed = true;
1588                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
1589                             true;
1590
1591                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1592                                             "ia_css_process_ctc() leave:\n");
1593                 }
1594         }
1595         {
1596                 unsigned int size   =
1597                     stage->binary->info->mem_offsets.offsets.param->vamem0.ctc.size;
1598
1599                 unsigned int offset =
1600                     stage->binary->info->mem_offsets.offsets.param->vamem0.ctc.offset;
1601
1602                 if (size) {
1603                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1604                                             "ia_css_process_ctc() enter:\n");
1605
1606                         ia_css_ctc_vamem_encode((struct sh_css_isp_ctc_vamem_params *)
1607                                                 &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_VAMEM0].address[offset],
1608                                                 &params->ctc_table,
1609                                                 size);
1610                         params->isp_params_changed = true;
1611                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_VAMEM0] =
1612                             true;
1613
1614                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1615                                             "ia_css_process_ctc() leave:\n");
1616                 }
1617         }
1618 }
1619
1620 /* Code generated by genparam/gencode.c:gen_process_function() */
1621
1622 static void
1623 ia_css_process_xnr_table(
1624     unsigned int pipe_id,
1625     const struct ia_css_pipeline_stage *stage,
1626     struct ia_css_isp_parameters *params)
1627 {
1628         assert(params);
1629
1630         {
1631                 unsigned int size   =
1632                     stage->binary->info->mem_offsets.offsets.param->vamem1.xnr_table.size;
1633
1634                 unsigned int offset =
1635                     stage->binary->info->mem_offsets.offsets.param->vamem1.xnr_table.offset;
1636
1637                 if (size) {
1638                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1639                                             "ia_css_process_xnr_table() enter:\n");
1640
1641                         ia_css_xnr_table_vamem_encode((struct sh_css_isp_xnr_vamem_params *)
1642                                                       &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_VAMEM1].address[offset],
1643                                                       &params->xnr_table,
1644                                                       size);
1645                         params->isp_params_changed = true;
1646                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_VAMEM1] =
1647                             true;
1648
1649                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1650                                             "ia_css_process_xnr_table() leave:\n");
1651                 }
1652         }
1653 }
1654
1655 /* Code generated by genparam/gencode.c:gen_process_function() */
1656
1657 static void
1658 ia_css_process_xnr(
1659     unsigned int pipe_id,
1660     const struct ia_css_pipeline_stage *stage,
1661     struct ia_css_isp_parameters *params)
1662 {
1663         assert(params);
1664
1665         {
1666                 unsigned int size   =
1667                     stage->binary->info->mem_offsets.offsets.param->dmem.xnr.size;
1668
1669                 unsigned int offset =
1670                     stage->binary->info->mem_offsets.offsets.param->dmem.xnr.offset;
1671
1672                 if (size) {
1673                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1674                                             "ia_css_process_xnr() enter:\n");
1675
1676                         ia_css_xnr_encode((struct sh_css_isp_xnr_params *)
1677                                           &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
1678                                           &params->xnr_config,
1679                                           size);
1680                         params->isp_params_changed = true;
1681                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
1682                             true;
1683
1684                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1685                                             "ia_css_process_xnr() leave:\n");
1686                 }
1687         }
1688 }
1689
1690 /* Code generated by genparam/gencode.c:gen_process_function() */
1691
1692 static void
1693 ia_css_process_xnr3(
1694     unsigned int pipe_id,
1695     const struct ia_css_pipeline_stage *stage,
1696     struct ia_css_isp_parameters *params)
1697 {
1698         assert(params);
1699
1700         {
1701                 unsigned int size   =
1702                     stage->binary->info->mem_offsets.offsets.param->dmem.xnr3.size;
1703
1704                 unsigned int offset =
1705                     stage->binary->info->mem_offsets.offsets.param->dmem.xnr3.offset;
1706
1707                 if (size) {
1708                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1709                                             "ia_css_process_xnr3() enter:\n");
1710
1711                         ia_css_xnr3_encode((struct sh_css_isp_xnr3_params *)
1712                                            &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_DMEM].address[offset],
1713                                            &params->xnr3_config,
1714                                            size);
1715                         params->isp_params_changed = true;
1716                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_DMEM] =
1717                             true;
1718
1719                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1720                                             "ia_css_process_xnr3() leave:\n");
1721                 }
1722         }
1723         {
1724                 unsigned int size   =
1725                     stage->binary->info->mem_offsets.offsets.param->vmem.xnr3.size;
1726
1727                 unsigned int offset =
1728                     stage->binary->info->mem_offsets.offsets.param->vmem.xnr3.offset;
1729
1730                 if (size) {
1731                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1732                                             "ia_css_process_xnr3() enter:\n");
1733
1734                         ia_css_xnr3_vmem_encode((struct sh_css_isp_xnr3_vmem_params *)
1735                                                 &stage->binary->mem_params.params[IA_CSS_PARAM_CLASS_PARAM][IA_CSS_ISP_VMEM].address[offset],
1736                                                 &params->xnr3_config,
1737                                                 size);
1738                         params->isp_params_changed = true;
1739                         params->isp_mem_params_changed[pipe_id][stage->stage_num][IA_CSS_ISP_VMEM] =
1740                             true;
1741
1742                         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1743                                             "ia_css_process_xnr3() leave:\n");
1744                 }
1745         }
1746 }
1747
1748 /* Code generated by genparam/gencode.c:gen_param_process_table() */
1749
1750 void (*ia_css_kernel_process_param[IA_CSS_NUM_PARAMETER_IDS])(
1751     unsigned int pipe_id,
1752     const struct ia_css_pipeline_stage *stage,
1753     struct ia_css_isp_parameters *params) = {
1754         ia_css_process_aa,
1755         ia_css_process_anr,
1756         ia_css_process_anr2,
1757         ia_css_process_bh,
1758         ia_css_process_cnr,
1759         ia_css_process_crop,
1760         ia_css_process_csc,
1761         ia_css_process_dp,
1762         ia_css_process_bnr,
1763         ia_css_process_de,
1764         ia_css_process_ecd,
1765         ia_css_process_formats,
1766         ia_css_process_fpn,
1767         ia_css_process_gc,
1768         ia_css_process_ce,
1769         ia_css_process_yuv2rgb,
1770         ia_css_process_rgb2yuv,
1771         ia_css_process_r_gamma,
1772         ia_css_process_g_gamma,
1773         ia_css_process_b_gamma,
1774         ia_css_process_uds,
1775         ia_css_process_raa,
1776         ia_css_process_s3a,
1777         ia_css_process_ob,
1778         ia_css_process_output,
1779         ia_css_process_sc,
1780         ia_css_process_bds,
1781         ia_css_process_tnr,
1782         ia_css_process_macc,
1783         ia_css_process_sdis_horicoef,
1784         ia_css_process_sdis_vertcoef,
1785         ia_css_process_sdis_horiproj,
1786         ia_css_process_sdis_vertproj,
1787         ia_css_process_sdis2_horicoef,
1788         ia_css_process_sdis2_vertcoef,
1789         ia_css_process_sdis2_horiproj,
1790         ia_css_process_sdis2_vertproj,
1791         ia_css_process_wb,
1792         ia_css_process_nr,
1793         ia_css_process_yee,
1794         ia_css_process_ynr,
1795         ia_css_process_fc,
1796         ia_css_process_ctc,
1797         ia_css_process_xnr_table,
1798         ia_css_process_xnr,
1799         ia_css_process_xnr3,
1800 };
1801
1802 /* Code generated by genparam/gencode.c:gen_get_function() */
1803
1804 static void
1805 ia_css_get_dp_config(const struct ia_css_isp_parameters *params,
1806                      struct ia_css_dp_config *config)
1807 {
1808         if (!config)
1809                 return;
1810
1811         assert(params);
1812         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1813                             "ia_css_get_dp_config() enter: config=%p\n",
1814                             config);
1815
1816         *config = params->dp_config;
1817
1818         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1819                             "ia_css_get_dp_config() leave\n");
1820         ia_css_dp_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
1821 }
1822
1823 /* Code generated by genparam/gencode.c:gen_set_function() */
1824
1825 void
1826 ia_css_set_dp_config(struct ia_css_isp_parameters *params,
1827                      const struct ia_css_dp_config *config)
1828 {
1829         if (!config)
1830                 return;
1831
1832         assert(params);
1833         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_dp_config() enter:\n");
1834         ia_css_dp_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
1835         params->dp_config = *config;
1836         params->config_changed[IA_CSS_DP_ID] = true;
1837         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1838                             "ia_css_set_dp_config() leave: return_void\n");
1839 }
1840
1841 /* Code generated by genparam/gencode.c:gen_get_function() */
1842
1843 static void
1844 ia_css_get_wb_config(const struct ia_css_isp_parameters *params,
1845                      struct ia_css_wb_config *config)
1846 {
1847         if (!config)
1848                 return;
1849
1850         assert(params);
1851         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1852                             "ia_css_get_wb_config() enter: config=%p\n",
1853                             config);
1854
1855         *config = params->wb_config;
1856
1857         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1858                             "ia_css_get_wb_config() leave\n");
1859         ia_css_wb_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
1860 }
1861
1862 /* Code generated by genparam/gencode.c:gen_set_function() */
1863
1864 void
1865 ia_css_set_wb_config(struct ia_css_isp_parameters *params,
1866                      const struct ia_css_wb_config *config)
1867 {
1868         if (!config)
1869                 return;
1870
1871         assert(params);
1872         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_wb_config() enter:\n");
1873         ia_css_wb_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
1874         params->wb_config = *config;
1875         params->config_changed[IA_CSS_WB_ID] = true;
1876         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1877                             "ia_css_set_wb_config() leave: return_void\n");
1878 }
1879
1880 /* Code generated by genparam/gencode.c:gen_get_function() */
1881
1882 static void
1883 ia_css_get_tnr_config(const struct ia_css_isp_parameters *params,
1884                       struct ia_css_tnr_config *config)
1885 {
1886         if (!config)
1887                 return;
1888
1889         assert(params);
1890         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1891                             "ia_css_get_tnr_config() enter: config=%p\n",
1892                             config);
1893
1894         *config = params->tnr_config;
1895
1896         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1897                             "ia_css_get_tnr_config() leave\n");
1898         ia_css_tnr_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
1899 }
1900
1901 /* Code generated by genparam/gencode.c:gen_set_function() */
1902
1903 void
1904 ia_css_set_tnr_config(struct ia_css_isp_parameters *params,
1905                       const struct ia_css_tnr_config *config)
1906 {
1907         if (!config)
1908                 return;
1909
1910         assert(params);
1911         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_tnr_config() enter:\n");
1912         ia_css_tnr_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
1913         params->tnr_config = *config;
1914         params->config_changed[IA_CSS_TNR_ID] = true;
1915         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1916                             "ia_css_set_tnr_config() leave: return_void\n");
1917 }
1918
1919 /* Code generated by genparam/gencode.c:gen_get_function() */
1920
1921 static void
1922 ia_css_get_ob_config(const struct ia_css_isp_parameters *params,
1923                      struct ia_css_ob_config *config)
1924 {
1925         if (!config)
1926                 return;
1927
1928         assert(params);
1929         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1930                             "ia_css_get_ob_config() enter: config=%p\n",
1931                             config);
1932
1933         *config = params->ob_config;
1934
1935         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1936                             "ia_css_get_ob_config() leave\n");
1937         ia_css_ob_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
1938 }
1939
1940 /* Code generated by genparam/gencode.c:gen_set_function() */
1941
1942 void
1943 ia_css_set_ob_config(struct ia_css_isp_parameters *params,
1944                      const struct ia_css_ob_config *config)
1945 {
1946         if (!config)
1947                 return;
1948
1949         assert(params);
1950         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_ob_config() enter:\n");
1951         ia_css_ob_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
1952         params->ob_config = *config;
1953         params->config_changed[IA_CSS_OB_ID] = true;
1954         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1955                             "ia_css_set_ob_config() leave: return_void\n");
1956 }
1957
1958 /* Code generated by genparam/gencode.c:gen_get_function() */
1959
1960 static void
1961 ia_css_get_de_config(const struct ia_css_isp_parameters *params,
1962                      struct ia_css_de_config *config)
1963 {
1964         if (!config)
1965                 return;
1966
1967         assert(params);
1968         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1969                             "ia_css_get_de_config() enter: config=%p\n",
1970                             config);
1971
1972         *config = params->de_config;
1973
1974         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1975                             "ia_css_get_de_config() leave\n");
1976         ia_css_de_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
1977 }
1978
1979 /* Code generated by genparam/gencode.c:gen_set_function() */
1980
1981 void
1982 ia_css_set_de_config(struct ia_css_isp_parameters *params,
1983                      const struct ia_css_de_config *config)
1984 {
1985         if (!config)
1986                 return;
1987
1988         assert(params);
1989         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_de_config() enter:\n");
1990         ia_css_de_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
1991         params->de_config = *config;
1992         params->config_changed[IA_CSS_DE_ID] = true;
1993         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
1994                             "ia_css_set_de_config() leave: return_void\n");
1995 }
1996
1997 /* Code generated by genparam/gencode.c:gen_get_function() */
1998
1999 static void
2000 ia_css_get_anr_config(const struct ia_css_isp_parameters *params,
2001                       struct ia_css_anr_config *config)
2002 {
2003         if (!config)
2004                 return;
2005
2006         assert(params);
2007         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2008                             "ia_css_get_anr_config() enter: config=%p\n",
2009                             config);
2010
2011         *config = params->anr_config;
2012
2013         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2014                             "ia_css_get_anr_config() leave\n");
2015         ia_css_anr_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2016 }
2017
2018 /* Code generated by genparam/gencode.c:gen_set_function() */
2019
2020 void
2021 ia_css_set_anr_config(struct ia_css_isp_parameters *params,
2022                       const struct ia_css_anr_config *config)
2023 {
2024         if (!config)
2025                 return;
2026
2027         assert(params);
2028         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_anr_config() enter:\n");
2029         ia_css_anr_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2030         params->anr_config = *config;
2031         params->config_changed[IA_CSS_ANR_ID] = true;
2032         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2033                             "ia_css_set_anr_config() leave: return_void\n");
2034 }
2035
2036 /* Code generated by genparam/gencode.c:gen_get_function() */
2037
2038 static void
2039 ia_css_get_anr2_config(const struct ia_css_isp_parameters *params,
2040                        struct ia_css_anr_thres *config)
2041 {
2042         if (!config)
2043                 return;
2044
2045         assert(params);
2046         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2047                             "ia_css_get_anr2_config() enter: config=%p\n",
2048                             config);
2049
2050         *config = params->anr_thres;
2051
2052         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2053                             "ia_css_get_anr2_config() leave\n");
2054         ia_css_anr2_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2055 }
2056
2057 /* Code generated by genparam/gencode.c:gen_set_function() */
2058
2059 void
2060 ia_css_set_anr2_config(struct ia_css_isp_parameters *params,
2061                        const struct ia_css_anr_thres *config)
2062 {
2063         if (!config)
2064                 return;
2065
2066         assert(params);
2067         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_anr2_config() enter:\n");
2068         ia_css_anr2_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2069         params->anr_thres = *config;
2070         params->config_changed[IA_CSS_ANR2_ID] = true;
2071         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2072                             "ia_css_set_anr2_config() leave: return_void\n");
2073 }
2074
2075 /* Code generated by genparam/gencode.c:gen_get_function() */
2076
2077 static void
2078 ia_css_get_ce_config(const struct ia_css_isp_parameters *params,
2079                      struct ia_css_ce_config *config)
2080 {
2081         if (!config)
2082                 return;
2083
2084         assert(params);
2085         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2086                             "ia_css_get_ce_config() enter: config=%p\n",
2087                             config);
2088
2089         *config = params->ce_config;
2090
2091         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2092                             "ia_css_get_ce_config() leave\n");
2093         ia_css_ce_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2094 }
2095
2096 /* Code generated by genparam/gencode.c:gen_set_function() */
2097
2098 void
2099 ia_css_set_ce_config(struct ia_css_isp_parameters *params,
2100                      const struct ia_css_ce_config *config)
2101 {
2102         if (!config)
2103                 return;
2104
2105         assert(params);
2106         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_ce_config() enter:\n");
2107         ia_css_ce_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2108         params->ce_config = *config;
2109         params->config_changed[IA_CSS_CE_ID] = true;
2110         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2111                             "ia_css_set_ce_config() leave: return_void\n");
2112 }
2113
2114 /* Code generated by genparam/gencode.c:gen_get_function() */
2115
2116 static void
2117 ia_css_get_ecd_config(const struct ia_css_isp_parameters *params,
2118                       struct ia_css_ecd_config *config)
2119 {
2120         if (!config)
2121                 return;
2122
2123         assert(params);
2124         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2125                             "ia_css_get_ecd_config() enter: config=%p\n",
2126                             config);
2127
2128         *config = params->ecd_config;
2129
2130         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2131                             "ia_css_get_ecd_config() leave\n");
2132         ia_css_ecd_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2133 }
2134
2135 /* Code generated by genparam/gencode.c:gen_set_function() */
2136
2137 void
2138 ia_css_set_ecd_config(struct ia_css_isp_parameters *params,
2139                       const struct ia_css_ecd_config *config)
2140 {
2141         if (!config)
2142                 return;
2143
2144         assert(params);
2145         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_ecd_config() enter:\n");
2146         ia_css_ecd_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2147         params->ecd_config = *config;
2148         params->config_changed[IA_CSS_ECD_ID] = true;
2149         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2150                             "ia_css_set_ecd_config() leave: return_void\n");
2151 }
2152
2153 /* Code generated by genparam/gencode.c:gen_get_function() */
2154
2155 static void
2156 ia_css_get_ynr_config(const struct ia_css_isp_parameters *params,
2157                       struct ia_css_ynr_config *config)
2158 {
2159         if (!config)
2160                 return;
2161
2162         assert(params);
2163         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2164                             "ia_css_get_ynr_config() enter: config=%p\n",
2165                             config);
2166
2167         *config = params->ynr_config;
2168
2169         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2170                             "ia_css_get_ynr_config() leave\n");
2171         ia_css_ynr_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2172 }
2173
2174 /* Code generated by genparam/gencode.c:gen_set_function() */
2175
2176 void
2177 ia_css_set_ynr_config(struct ia_css_isp_parameters *params,
2178                       const struct ia_css_ynr_config *config)
2179 {
2180         if (!config)
2181                 return;
2182
2183         assert(params);
2184         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_ynr_config() enter:\n");
2185         ia_css_ynr_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2186         params->ynr_config = *config;
2187         params->config_changed[IA_CSS_YNR_ID] = true;
2188         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2189                             "ia_css_set_ynr_config() leave: return_void\n");
2190 }
2191
2192 /* Code generated by genparam/gencode.c:gen_get_function() */
2193
2194 static void
2195 ia_css_get_fc_config(const struct ia_css_isp_parameters *params,
2196                      struct ia_css_fc_config *config)
2197 {
2198         if (!config)
2199                 return;
2200
2201         assert(params);
2202         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2203                             "ia_css_get_fc_config() enter: config=%p\n",
2204                             config);
2205
2206         *config = params->fc_config;
2207
2208         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2209                             "ia_css_get_fc_config() leave\n");
2210         ia_css_fc_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2211 }
2212
2213 /* Code generated by genparam/gencode.c:gen_set_function() */
2214
2215 void
2216 ia_css_set_fc_config(struct ia_css_isp_parameters *params,
2217                      const struct ia_css_fc_config *config)
2218 {
2219         if (!config)
2220                 return;
2221
2222         assert(params);
2223         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_fc_config() enter:\n");
2224         ia_css_fc_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2225         params->fc_config = *config;
2226         params->config_changed[IA_CSS_FC_ID] = true;
2227         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2228                             "ia_css_set_fc_config() leave: return_void\n");
2229 }
2230
2231 /* Code generated by genparam/gencode.c:gen_get_function() */
2232
2233 static void
2234 ia_css_get_cnr_config(const struct ia_css_isp_parameters *params,
2235                       struct ia_css_cnr_config *config)
2236 {
2237         if (!config)
2238                 return;
2239
2240         assert(params);
2241         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2242                             "ia_css_get_cnr_config() enter: config=%p\n",
2243                             config);
2244
2245         *config = params->cnr_config;
2246
2247         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2248                             "ia_css_get_cnr_config() leave\n");
2249         ia_css_cnr_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2250 }
2251
2252 /* Code generated by genparam/gencode.c:gen_set_function() */
2253
2254 void
2255 ia_css_set_cnr_config(struct ia_css_isp_parameters *params,
2256                       const struct ia_css_cnr_config *config)
2257 {
2258         if (!config)
2259                 return;
2260
2261         assert(params);
2262         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_cnr_config() enter:\n");
2263         ia_css_cnr_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2264         params->cnr_config = *config;
2265         params->config_changed[IA_CSS_CNR_ID] = true;
2266         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2267                             "ia_css_set_cnr_config() leave: return_void\n");
2268 }
2269
2270 /* Code generated by genparam/gencode.c:gen_get_function() */
2271
2272 static void
2273 ia_css_get_macc_config(const struct ia_css_isp_parameters *params,
2274                        struct ia_css_macc_config *config)
2275 {
2276         if (!config)
2277                 return;
2278
2279         assert(params);
2280         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2281                             "ia_css_get_macc_config() enter: config=%p\n",
2282                             config);
2283
2284         *config = params->macc_config;
2285
2286         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2287                             "ia_css_get_macc_config() leave\n");
2288         ia_css_macc_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2289 }
2290
2291 /* Code generated by genparam/gencode.c:gen_set_function() */
2292
2293 void
2294 ia_css_set_macc_config(struct ia_css_isp_parameters *params,
2295                        const struct ia_css_macc_config *config)
2296 {
2297         if (!config)
2298                 return;
2299
2300         assert(params);
2301         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_macc_config() enter:\n");
2302         ia_css_macc_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2303         params->macc_config = *config;
2304         params->config_changed[IA_CSS_MACC_ID] = true;
2305         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2306                             "ia_css_set_macc_config() leave: return_void\n");
2307 }
2308
2309 /* Code generated by genparam/gencode.c:gen_get_function() */
2310
2311 static void
2312 ia_css_get_ctc_config(const struct ia_css_isp_parameters *params,
2313                       struct ia_css_ctc_config *config)
2314 {
2315         if (!config)
2316                 return;
2317
2318         assert(params);
2319         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2320                             "ia_css_get_ctc_config() enter: config=%p\n",
2321                             config);
2322
2323         *config = params->ctc_config;
2324
2325         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2326                             "ia_css_get_ctc_config() leave\n");
2327         ia_css_ctc_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2328 }
2329
2330 /* Code generated by genparam/gencode.c:gen_set_function() */
2331
2332 void
2333 ia_css_set_ctc_config(struct ia_css_isp_parameters *params,
2334                       const struct ia_css_ctc_config *config)
2335 {
2336         if (!config)
2337                 return;
2338
2339         assert(params);
2340         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_ctc_config() enter:\n");
2341         ia_css_ctc_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2342         params->ctc_config = *config;
2343         params->config_changed[IA_CSS_CTC_ID] = true;
2344         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2345                             "ia_css_set_ctc_config() leave: return_void\n");
2346 }
2347
2348 /* Code generated by genparam/gencode.c:gen_get_function() */
2349
2350 static void
2351 ia_css_get_aa_config(const struct ia_css_isp_parameters *params,
2352                      struct ia_css_aa_config *config)
2353 {
2354         if (!config)
2355                 return;
2356
2357         assert(params);
2358         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2359                             "ia_css_get_aa_config() enter: config=%p\n",
2360                             config);
2361
2362         *config = params->aa_config;
2363
2364         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2365                             "ia_css_get_aa_config() leave\n");
2366 }
2367
2368 /* Code generated by genparam/gencode.c:gen_set_function() */
2369
2370 void
2371 ia_css_set_aa_config(struct ia_css_isp_parameters *params,
2372                      const struct ia_css_aa_config *config)
2373 {
2374         if (!config)
2375                 return;
2376
2377         assert(params);
2378         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_aa_config() enter:\n");
2379         params->aa_config = *config;
2380         params->config_changed[IA_CSS_AA_ID] = true;
2381         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2382                             "ia_css_set_aa_config() leave: return_void\n");
2383 }
2384
2385 /* Code generated by genparam/gencode.c:gen_get_function() */
2386
2387 static void
2388 ia_css_get_yuv2rgb_config(const struct ia_css_isp_parameters *params,
2389                           struct ia_css_cc_config *config)
2390 {
2391         if (!config)
2392                 return;
2393
2394         assert(params);
2395         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2396                             "ia_css_get_yuv2rgb_config() enter: config=%p\n",
2397                             config);
2398
2399         *config = params->yuv2rgb_cc_config;
2400
2401         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2402                             "ia_css_get_yuv2rgb_config() leave\n");
2403         ia_css_yuv2rgb_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2404 }
2405
2406 /* Code generated by genparam/gencode.c:gen_set_function() */
2407
2408 void
2409 ia_css_set_yuv2rgb_config(struct ia_css_isp_parameters *params,
2410                           const struct ia_css_cc_config *config)
2411 {
2412         if (!config)
2413                 return;
2414
2415         assert(params);
2416         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_yuv2rgb_config() enter:\n");
2417         ia_css_yuv2rgb_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2418         params->yuv2rgb_cc_config = *config;
2419         params->config_changed[IA_CSS_YUV2RGB_ID] = true;
2420         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2421                             "ia_css_set_yuv2rgb_config() leave: return_void\n");
2422 }
2423
2424 /* Code generated by genparam/gencode.c:gen_get_function() */
2425
2426 static void
2427 ia_css_get_rgb2yuv_config(const struct ia_css_isp_parameters *params,
2428                           struct ia_css_cc_config *config)
2429 {
2430         if (!config)
2431                 return;
2432
2433         assert(params);
2434         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2435                             "ia_css_get_rgb2yuv_config() enter: config=%p\n",
2436                             config);
2437
2438         *config = params->rgb2yuv_cc_config;
2439
2440         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2441                             "ia_css_get_rgb2yuv_config() leave\n");
2442         ia_css_rgb2yuv_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2443 }
2444
2445 /* Code generated by genparam/gencode.c:gen_set_function() */
2446
2447 void
2448 ia_css_set_rgb2yuv_config(struct ia_css_isp_parameters *params,
2449                           const struct ia_css_cc_config *config)
2450 {
2451         if (!config)
2452                 return;
2453
2454         assert(params);
2455         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_rgb2yuv_config() enter:\n");
2456         ia_css_rgb2yuv_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2457         params->rgb2yuv_cc_config = *config;
2458         params->config_changed[IA_CSS_RGB2YUV_ID] = true;
2459         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2460                             "ia_css_set_rgb2yuv_config() leave: return_void\n");
2461 }
2462
2463 /* Code generated by genparam/gencode.c:gen_get_function() */
2464
2465 static void
2466 ia_css_get_csc_config(const struct ia_css_isp_parameters *params,
2467                       struct ia_css_cc_config *config)
2468 {
2469         if (!config)
2470                 return;
2471
2472         assert(params);
2473         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2474                             "ia_css_get_csc_config() enter: config=%p\n",
2475                             config);
2476
2477         *config = params->cc_config;
2478
2479         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2480                             "ia_css_get_csc_config() leave\n");
2481         ia_css_csc_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2482 }
2483
2484 /* Code generated by genparam/gencode.c:gen_set_function() */
2485
2486 void
2487 ia_css_set_csc_config(struct ia_css_isp_parameters *params,
2488                       const struct ia_css_cc_config *config)
2489 {
2490         if (!config)
2491                 return;
2492
2493         assert(params);
2494         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_csc_config() enter:\n");
2495         ia_css_csc_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2496         params->cc_config = *config;
2497         params->config_changed[IA_CSS_CSC_ID] = true;
2498         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2499                             "ia_css_set_csc_config() leave: return_void\n");
2500 }
2501
2502 /* Code generated by genparam/gencode.c:gen_get_function() */
2503
2504 static void
2505 ia_css_get_nr_config(const struct ia_css_isp_parameters *params,
2506                      struct ia_css_nr_config *config)
2507 {
2508         if (!config)
2509                 return;
2510
2511         assert(params);
2512         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2513                             "ia_css_get_nr_config() enter: config=%p\n",
2514                             config);
2515
2516         *config = params->nr_config;
2517
2518         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2519                             "ia_css_get_nr_config() leave\n");
2520         ia_css_nr_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2521 }
2522
2523 /* Code generated by genparam/gencode.c:gen_set_function() */
2524
2525 void
2526 ia_css_set_nr_config(struct ia_css_isp_parameters *params,
2527                      const struct ia_css_nr_config *config)
2528 {
2529         if (!config)
2530                 return;
2531
2532         assert(params);
2533         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_nr_config() enter:\n");
2534         ia_css_nr_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2535         params->nr_config = *config;
2536         params->config_changed[IA_CSS_BNR_ID] = true;
2537         params->config_changed[IA_CSS_NR_ID] = true;
2538         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2539                             "ia_css_set_nr_config() leave: return_void\n");
2540 }
2541
2542 /* Code generated by genparam/gencode.c:gen_get_function() */
2543
2544 static void
2545 ia_css_get_gc_config(const struct ia_css_isp_parameters *params,
2546                      struct ia_css_gc_config *config)
2547 {
2548         if (!config)
2549                 return;
2550
2551         assert(params);
2552         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2553                             "ia_css_get_gc_config() enter: config=%p\n",
2554                             config);
2555
2556         *config = params->gc_config;
2557
2558         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2559                             "ia_css_get_gc_config() leave\n");
2560         ia_css_gc_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2561 }
2562
2563 /* Code generated by genparam/gencode.c:gen_set_function() */
2564
2565 void
2566 ia_css_set_gc_config(struct ia_css_isp_parameters *params,
2567                      const struct ia_css_gc_config *config)
2568 {
2569         if (!config)
2570                 return;
2571
2572         assert(params);
2573         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_gc_config() enter:\n");
2574         ia_css_gc_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2575         params->gc_config = *config;
2576         params->config_changed[IA_CSS_GC_ID] = true;
2577         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2578                             "ia_css_set_gc_config() leave: return_void\n");
2579 }
2580
2581 /* Code generated by genparam/gencode.c:gen_get_function() */
2582
2583 static void
2584 ia_css_get_sdis_horicoef_config(const struct ia_css_isp_parameters *params,
2585                                 struct ia_css_dvs_coefficients *config)
2586 {
2587         if (!config)
2588                 return;
2589
2590         assert(params);
2591         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2592                             "ia_css_get_sdis_horicoef_config() enter: config=%p\n",
2593                             config);
2594
2595         *config = params->dvs_coefs;
2596
2597         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2598                             "ia_css_get_sdis_horicoef_config() leave\n");
2599         ia_css_sdis_horicoef_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2600 }
2601
2602 /* Code generated by genparam/gencode.c:gen_set_function() */
2603
2604 void
2605 ia_css_set_sdis_horicoef_config(struct ia_css_isp_parameters *params,
2606                                 const struct ia_css_dvs_coefficients *config)
2607 {
2608         if (!config)
2609                 return;
2610
2611         assert(params);
2612         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE,
2613                             "ia_css_set_sdis_horicoef_config() enter:\n");
2614         ia_css_sdis_horicoef_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2615         params->dvs_coefs = *config;
2616         params->config_changed[IA_CSS_SDIS_HORICOEF_ID] = true;
2617         params->config_changed[IA_CSS_SDIS_VERTCOEF_ID] = true;
2618         params->config_changed[IA_CSS_SDIS_HORIPROJ_ID] = true;
2619         params->config_changed[IA_CSS_SDIS_VERTPROJ_ID] = true;
2620         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2621                             "ia_css_set_sdis_horicoef_config() leave: return_void\n");
2622 }
2623
2624 /* Code generated by genparam/gencode.c:gen_get_function() */
2625
2626 static void
2627 ia_css_get_sdis_vertcoef_config(const struct ia_css_isp_parameters *params,
2628                                 struct ia_css_dvs_coefficients *config)
2629 {
2630         if (!config)
2631                 return;
2632
2633         assert(params);
2634         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2635                             "ia_css_get_sdis_vertcoef_config() enter: config=%p\n",
2636                             config);
2637
2638         *config = params->dvs_coefs;
2639
2640         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2641                             "ia_css_get_sdis_vertcoef_config() leave\n");
2642         ia_css_sdis_vertcoef_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2643 }
2644
2645 /* Code generated by genparam/gencode.c:gen_set_function() */
2646
2647 void
2648 ia_css_set_sdis_vertcoef_config(struct ia_css_isp_parameters *params,
2649                                 const struct ia_css_dvs_coefficients *config)
2650 {
2651         if (!config)
2652                 return;
2653
2654         assert(params);
2655         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE,
2656                             "ia_css_set_sdis_vertcoef_config() enter:\n");
2657         ia_css_sdis_vertcoef_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2658         params->dvs_coefs = *config;
2659         params->config_changed[IA_CSS_SDIS_HORICOEF_ID] = true;
2660         params->config_changed[IA_CSS_SDIS_VERTCOEF_ID] = true;
2661         params->config_changed[IA_CSS_SDIS_HORIPROJ_ID] = true;
2662         params->config_changed[IA_CSS_SDIS_VERTPROJ_ID] = true;
2663         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2664                             "ia_css_set_sdis_vertcoef_config() leave: return_void\n");
2665 }
2666
2667 /* Code generated by genparam/gencode.c:gen_get_function() */
2668
2669 static void
2670 ia_css_get_sdis_horiproj_config(const struct ia_css_isp_parameters *params,
2671                                 struct ia_css_dvs_coefficients *config)
2672 {
2673         if (!config)
2674                 return;
2675
2676         assert(params);
2677         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2678                             "ia_css_get_sdis_horiproj_config() enter: config=%p\n",
2679                             config);
2680
2681         *config = params->dvs_coefs;
2682
2683         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2684                             "ia_css_get_sdis_horiproj_config() leave\n");
2685         ia_css_sdis_horiproj_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2686 }
2687
2688 /* Code generated by genparam/gencode.c:gen_set_function() */
2689
2690 void
2691 ia_css_set_sdis_horiproj_config(struct ia_css_isp_parameters *params,
2692                                 const struct ia_css_dvs_coefficients *config)
2693 {
2694         if (!config)
2695                 return;
2696
2697         assert(params);
2698         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE,
2699                             "ia_css_set_sdis_horiproj_config() enter:\n");
2700         ia_css_sdis_horiproj_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2701         params->dvs_coefs = *config;
2702         params->config_changed[IA_CSS_SDIS_HORICOEF_ID] = true;
2703         params->config_changed[IA_CSS_SDIS_VERTCOEF_ID] = true;
2704         params->config_changed[IA_CSS_SDIS_HORIPROJ_ID] = true;
2705         params->config_changed[IA_CSS_SDIS_VERTPROJ_ID] = true;
2706         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2707                             "ia_css_set_sdis_horiproj_config() leave: return_void\n");
2708 }
2709
2710 /* Code generated by genparam/gencode.c:gen_get_function() */
2711
2712 static void
2713 ia_css_get_sdis_vertproj_config(const struct ia_css_isp_parameters *params,
2714                                 struct ia_css_dvs_coefficients *config)
2715 {
2716         if (!config)
2717                 return;
2718
2719         assert(params);
2720         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2721                             "ia_css_get_sdis_vertproj_config() enter: config=%p\n",
2722                             config);
2723
2724         *config = params->dvs_coefs;
2725
2726         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2727                             "ia_css_get_sdis_vertproj_config() leave\n");
2728         ia_css_sdis_vertproj_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2729 }
2730
2731 /* Code generated by genparam/gencode.c:gen_set_function() */
2732
2733 void
2734 ia_css_set_sdis_vertproj_config(struct ia_css_isp_parameters *params,
2735                                 const struct ia_css_dvs_coefficients *config)
2736 {
2737         if (!config)
2738                 return;
2739
2740         assert(params);
2741         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE,
2742                             "ia_css_set_sdis_vertproj_config() enter:\n");
2743         ia_css_sdis_vertproj_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2744         params->dvs_coefs = *config;
2745         params->config_changed[IA_CSS_SDIS_HORICOEF_ID] = true;
2746         params->config_changed[IA_CSS_SDIS_VERTCOEF_ID] = true;
2747         params->config_changed[IA_CSS_SDIS_HORIPROJ_ID] = true;
2748         params->config_changed[IA_CSS_SDIS_VERTPROJ_ID] = true;
2749         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2750                             "ia_css_set_sdis_vertproj_config() leave: return_void\n");
2751 }
2752
2753 /* Code generated by genparam/gencode.c:gen_get_function() */
2754
2755 static void
2756 ia_css_get_sdis2_horicoef_config(const struct ia_css_isp_parameters *params,
2757                                  struct ia_css_dvs2_coefficients *config)
2758 {
2759         if (!config)
2760                 return;
2761
2762         assert(params);
2763         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2764                             "ia_css_get_sdis2_horicoef_config() enter: config=%p\n",
2765                             config);
2766
2767         *config = params->dvs2_coefs;
2768
2769         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2770                             "ia_css_get_sdis2_horicoef_config() leave\n");
2771         ia_css_sdis2_horicoef_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2772 }
2773
2774 /* Code generated by genparam/gencode.c:gen_set_function() */
2775
2776 void
2777 ia_css_set_sdis2_horicoef_config(struct ia_css_isp_parameters *params,
2778                                  const struct ia_css_dvs2_coefficients *config)
2779 {
2780         if (!config)
2781                 return;
2782
2783         assert(params);
2784         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE,
2785                             "ia_css_set_sdis2_horicoef_config() enter:\n");
2786         ia_css_sdis2_horicoef_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2787         params->dvs2_coefs = *config;
2788         params->config_changed[IA_CSS_SDIS2_HORICOEF_ID] = true;
2789         params->config_changed[IA_CSS_SDIS2_VERTCOEF_ID] = true;
2790         params->config_changed[IA_CSS_SDIS2_HORIPROJ_ID] = true;
2791         params->config_changed[IA_CSS_SDIS2_VERTPROJ_ID] = true;
2792         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2793                             "ia_css_set_sdis2_horicoef_config() leave: return_void\n");
2794 }
2795
2796 /* Code generated by genparam/gencode.c:gen_get_function() */
2797
2798 static void
2799 ia_css_get_sdis2_vertcoef_config(const struct ia_css_isp_parameters *params,
2800                                  struct ia_css_dvs2_coefficients *config)
2801 {
2802         if (!config)
2803                 return;
2804
2805         assert(params);
2806         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2807                             "ia_css_get_sdis2_vertcoef_config() enter: config=%p\n",
2808                             config);
2809
2810         *config = params->dvs2_coefs;
2811
2812         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2813                             "ia_css_get_sdis2_vertcoef_config() leave\n");
2814         ia_css_sdis2_vertcoef_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2815 }
2816
2817 /* Code generated by genparam/gencode.c:gen_set_function() */
2818
2819 void
2820 ia_css_set_sdis2_vertcoef_config(struct ia_css_isp_parameters *params,
2821                                  const struct ia_css_dvs2_coefficients *config)
2822 {
2823         if (!config)
2824                 return;
2825
2826         assert(params);
2827         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE,
2828                             "ia_css_set_sdis2_vertcoef_config() enter:\n");
2829         ia_css_sdis2_vertcoef_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2830         params->dvs2_coefs = *config;
2831         params->config_changed[IA_CSS_SDIS2_HORICOEF_ID] = true;
2832         params->config_changed[IA_CSS_SDIS2_VERTCOEF_ID] = true;
2833         params->config_changed[IA_CSS_SDIS2_HORIPROJ_ID] = true;
2834         params->config_changed[IA_CSS_SDIS2_VERTPROJ_ID] = true;
2835         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2836                             "ia_css_set_sdis2_vertcoef_config() leave: return_void\n");
2837 }
2838
2839 /* Code generated by genparam/gencode.c:gen_get_function() */
2840
2841 static void
2842 ia_css_get_sdis2_horiproj_config(const struct ia_css_isp_parameters *params,
2843                                  struct ia_css_dvs2_coefficients *config)
2844 {
2845         if (!config)
2846                 return;
2847
2848         assert(params);
2849         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2850                             "ia_css_get_sdis2_horiproj_config() enter: config=%p\n",
2851                             config);
2852
2853         *config = params->dvs2_coefs;
2854
2855         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2856                             "ia_css_get_sdis2_horiproj_config() leave\n");
2857         ia_css_sdis2_horiproj_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2858 }
2859
2860 /* Code generated by genparam/gencode.c:gen_set_function() */
2861
2862 void
2863 ia_css_set_sdis2_horiproj_config(struct ia_css_isp_parameters *params,
2864                                  const struct ia_css_dvs2_coefficients *config)
2865 {
2866         if (!config)
2867                 return;
2868
2869         assert(params);
2870         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE,
2871                             "ia_css_set_sdis2_horiproj_config() enter:\n");
2872         ia_css_sdis2_horiproj_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2873         params->dvs2_coefs = *config;
2874         params->config_changed[IA_CSS_SDIS2_HORICOEF_ID] = true;
2875         params->config_changed[IA_CSS_SDIS2_VERTCOEF_ID] = true;
2876         params->config_changed[IA_CSS_SDIS2_HORIPROJ_ID] = true;
2877         params->config_changed[IA_CSS_SDIS2_VERTPROJ_ID] = true;
2878         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2879                             "ia_css_set_sdis2_horiproj_config() leave: return_void\n");
2880 }
2881
2882 /* Code generated by genparam/gencode.c:gen_get_function() */
2883
2884 static void
2885 ia_css_get_sdis2_vertproj_config(const struct ia_css_isp_parameters *params,
2886                                  struct ia_css_dvs2_coefficients *config)
2887 {
2888         if (!config)
2889                 return;
2890
2891         assert(params);
2892         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2893                             "ia_css_get_sdis2_vertproj_config() enter: config=%p\n",
2894                             config);
2895
2896         *config = params->dvs2_coefs;
2897
2898         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2899                             "ia_css_get_sdis2_vertproj_config() leave\n");
2900         ia_css_sdis2_vertproj_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2901 }
2902
2903 /* Code generated by genparam/gencode.c:gen_set_function() */
2904
2905 void
2906 ia_css_set_sdis2_vertproj_config(struct ia_css_isp_parameters *params,
2907                                  const struct ia_css_dvs2_coefficients *config)
2908 {
2909         if (!config)
2910                 return;
2911
2912         assert(params);
2913         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE,
2914                             "ia_css_set_sdis2_vertproj_config() enter:\n");
2915         ia_css_sdis2_vertproj_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2916         params->dvs2_coefs = *config;
2917         params->config_changed[IA_CSS_SDIS2_HORICOEF_ID] = true;
2918         params->config_changed[IA_CSS_SDIS2_VERTCOEF_ID] = true;
2919         params->config_changed[IA_CSS_SDIS2_HORIPROJ_ID] = true;
2920         params->config_changed[IA_CSS_SDIS2_VERTPROJ_ID] = true;
2921         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2922                             "ia_css_set_sdis2_vertproj_config() leave: return_void\n");
2923 }
2924
2925 /* Code generated by genparam/gencode.c:gen_get_function() */
2926
2927 static void
2928 ia_css_get_r_gamma_config(const struct ia_css_isp_parameters *params,
2929                           struct ia_css_rgb_gamma_table *config)
2930 {
2931         if (!config)
2932                 return;
2933
2934         assert(params);
2935         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2936                             "ia_css_get_r_gamma_config() enter: config=%p\n",
2937                             config);
2938
2939         *config = params->r_gamma_table;
2940
2941         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2942                             "ia_css_get_r_gamma_config() leave\n");
2943         ia_css_r_gamma_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2944 }
2945
2946 /* Code generated by genparam/gencode.c:gen_set_function() */
2947
2948 void
2949 ia_css_set_r_gamma_config(struct ia_css_isp_parameters *params,
2950                           const struct ia_css_rgb_gamma_table *config)
2951 {
2952         if (!config)
2953                 return;
2954
2955         assert(params);
2956         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_r_gamma_config() enter:\n");
2957         ia_css_r_gamma_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2958         params->r_gamma_table = *config;
2959         params->config_changed[IA_CSS_R_GAMMA_ID] = true;
2960         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2961                             "ia_css_set_r_gamma_config() leave: return_void\n");
2962 }
2963
2964 /* Code generated by genparam/gencode.c:gen_get_function() */
2965
2966 static void
2967 ia_css_get_g_gamma_config(const struct ia_css_isp_parameters *params,
2968                           struct ia_css_rgb_gamma_table *config)
2969 {
2970         if (!config)
2971                 return;
2972
2973         assert(params);
2974         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2975                             "ia_css_get_g_gamma_config() enter: config=%p\n",
2976                             config);
2977
2978         *config = params->g_gamma_table;
2979
2980         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
2981                             "ia_css_get_g_gamma_config() leave\n");
2982         ia_css_g_gamma_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2983 }
2984
2985 /* Code generated by genparam/gencode.c:gen_set_function() */
2986
2987 void
2988 ia_css_set_g_gamma_config(struct ia_css_isp_parameters *params,
2989                           const struct ia_css_rgb_gamma_table *config)
2990 {
2991         if (!config)
2992                 return;
2993
2994         assert(params);
2995         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_g_gamma_config() enter:\n");
2996         ia_css_g_gamma_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
2997         params->g_gamma_table = *config;
2998         params->config_changed[IA_CSS_G_GAMMA_ID] = true;
2999         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3000                             "ia_css_set_g_gamma_config() leave: return_void\n");
3001 }
3002
3003 /* Code generated by genparam/gencode.c:gen_get_function() */
3004
3005 static void
3006 ia_css_get_b_gamma_config(const struct ia_css_isp_parameters *params,
3007                           struct ia_css_rgb_gamma_table *config)
3008 {
3009         if (!config)
3010                 return;
3011
3012         assert(params);
3013         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3014                             "ia_css_get_b_gamma_config() enter: config=%p\n",
3015                             config);
3016
3017         *config = params->b_gamma_table;
3018
3019         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3020                             "ia_css_get_b_gamma_config() leave\n");
3021         ia_css_b_gamma_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
3022 }
3023
3024 /* Code generated by genparam/gencode.c:gen_set_function() */
3025
3026 void
3027 ia_css_set_b_gamma_config(struct ia_css_isp_parameters *params,
3028                           const struct ia_css_rgb_gamma_table *config)
3029 {
3030         if (!config)
3031                 return;
3032
3033         assert(params);
3034         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_b_gamma_config() enter:\n");
3035         ia_css_b_gamma_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
3036         params->b_gamma_table = *config;
3037         params->config_changed[IA_CSS_B_GAMMA_ID] = true;
3038         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3039                             "ia_css_set_b_gamma_config() leave: return_void\n");
3040 }
3041
3042 /* Code generated by genparam/gencode.c:gen_get_function() */
3043
3044 static void
3045 ia_css_get_xnr_table_config(const struct ia_css_isp_parameters *params,
3046                             struct ia_css_xnr_table *config)
3047 {
3048         if (!config)
3049                 return;
3050
3051         assert(params);
3052         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3053                             "ia_css_get_xnr_table_config() enter: config=%p\n",
3054                             config);
3055
3056         *config = params->xnr_table;
3057
3058         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3059                             "ia_css_get_xnr_table_config() leave\n");
3060         ia_css_xnr_table_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
3061 }
3062
3063 /* Code generated by genparam/gencode.c:gen_set_function() */
3064
3065 void
3066 ia_css_set_xnr_table_config(struct ia_css_isp_parameters *params,
3067                             const struct ia_css_xnr_table *config)
3068 {
3069         if (!config)
3070                 return;
3071
3072         assert(params);
3073         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE,
3074                             "ia_css_set_xnr_table_config() enter:\n");
3075         ia_css_xnr_table_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
3076         params->xnr_table = *config;
3077         params->config_changed[IA_CSS_XNR_TABLE_ID] = true;
3078         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3079                             "ia_css_set_xnr_table_config() leave: return_void\n");
3080 }
3081
3082 /* Code generated by genparam/gencode.c:gen_get_function() */
3083
3084 static void
3085 ia_css_get_formats_config(const struct ia_css_isp_parameters *params,
3086                           struct ia_css_formats_config *config)
3087 {
3088         if (!config)
3089                 return;
3090
3091         assert(params);
3092         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3093                             "ia_css_get_formats_config() enter: config=%p\n",
3094                             config);
3095
3096         *config = params->formats_config;
3097
3098         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3099                             "ia_css_get_formats_config() leave\n");
3100         ia_css_formats_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
3101 }
3102
3103 /* Code generated by genparam/gencode.c:gen_set_function() */
3104
3105 void
3106 ia_css_set_formats_config(struct ia_css_isp_parameters *params,
3107                           const struct ia_css_formats_config *config)
3108 {
3109         if (!config)
3110                 return;
3111
3112         assert(params);
3113         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_formats_config() enter:\n");
3114         ia_css_formats_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
3115         params->formats_config = *config;
3116         params->config_changed[IA_CSS_FORMATS_ID] = true;
3117         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3118                             "ia_css_set_formats_config() leave: return_void\n");
3119 }
3120
3121 /* Code generated by genparam/gencode.c:gen_get_function() */
3122
3123 static void
3124 ia_css_get_xnr_config(const struct ia_css_isp_parameters *params,
3125                       struct ia_css_xnr_config *config)
3126 {
3127         if (!config)
3128                 return;
3129
3130         assert(params);
3131         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3132                             "ia_css_get_xnr_config() enter: config=%p\n",
3133                             config);
3134
3135         *config = params->xnr_config;
3136
3137         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3138                             "ia_css_get_xnr_config() leave\n");
3139         ia_css_xnr_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
3140 }
3141
3142 /* Code generated by genparam/gencode.c:gen_set_function() */
3143
3144 void
3145 ia_css_set_xnr_config(struct ia_css_isp_parameters *params,
3146                       const struct ia_css_xnr_config *config)
3147 {
3148         if (!config)
3149                 return;
3150
3151         assert(params);
3152         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_xnr_config() enter:\n");
3153         ia_css_xnr_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
3154         params->xnr_config = *config;
3155         params->config_changed[IA_CSS_XNR_ID] = true;
3156         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3157                             "ia_css_set_xnr_config() leave: return_void\n");
3158 }
3159
3160 /* Code generated by genparam/gencode.c:gen_get_function() */
3161
3162 static void
3163 ia_css_get_xnr3_config(const struct ia_css_isp_parameters *params,
3164                        struct ia_css_xnr3_config *config)
3165 {
3166         if (!config)
3167                 return;
3168
3169         assert(params);
3170         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3171                             "ia_css_get_xnr3_config() enter: config=%p\n",
3172                             config);
3173
3174         *config = params->xnr3_config;
3175
3176         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3177                             "ia_css_get_xnr3_config() leave\n");
3178         ia_css_xnr3_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
3179 }
3180
3181 /* Code generated by genparam/gencode.c:gen_set_function() */
3182
3183 void
3184 ia_css_set_xnr3_config(struct ia_css_isp_parameters *params,
3185                        const struct ia_css_xnr3_config *config)
3186 {
3187         if (!config)
3188                 return;
3189
3190         assert(params);
3191         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_xnr3_config() enter:\n");
3192         ia_css_xnr3_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
3193         params->xnr3_config = *config;
3194         params->config_changed[IA_CSS_XNR3_ID] = true;
3195         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3196                             "ia_css_set_xnr3_config() leave: return_void\n");
3197 }
3198
3199 /* Code generated by genparam/gencode.c:gen_get_function() */
3200
3201 static void
3202 ia_css_get_s3a_config(const struct ia_css_isp_parameters *params,
3203                       struct ia_css_3a_config *config)
3204 {
3205         if (!config)
3206                 return;
3207
3208         assert(params);
3209         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3210                             "ia_css_get_s3a_config() enter: config=%p\n",
3211                             config);
3212
3213         *config = params->s3a_config;
3214
3215         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3216                             "ia_css_get_s3a_config() leave\n");
3217         ia_css_s3a_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
3218 }
3219
3220 /* Code generated by genparam/gencode.c:gen_set_function() */
3221
3222 void
3223 ia_css_set_s3a_config(struct ia_css_isp_parameters *params,
3224                       const struct ia_css_3a_config *config)
3225 {
3226         if (!config)
3227                 return;
3228
3229         assert(params);
3230         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_s3a_config() enter:\n");
3231         ia_css_s3a_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
3232         params->s3a_config = *config;
3233         params->config_changed[IA_CSS_BH_ID] = true;
3234         params->config_changed[IA_CSS_S3A_ID] = true;
3235         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3236                             "ia_css_set_s3a_config() leave: return_void\n");
3237 }
3238
3239 /* Code generated by genparam/gencode.c:gen_get_function() */
3240
3241 static void
3242 ia_css_get_output_config(const struct ia_css_isp_parameters *params,
3243                          struct ia_css_output_config *config)
3244 {
3245         if (!config)
3246                 return;
3247
3248         assert(params);
3249         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3250                             "ia_css_get_output_config() enter: config=%p\n",
3251                             config);
3252
3253         *config = params->output_config;
3254
3255         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3256                             "ia_css_get_output_config() leave\n");
3257         ia_css_output_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
3258 }
3259
3260 /* Code generated by genparam/gencode.c:gen_set_function() */
3261
3262 void
3263 ia_css_set_output_config(struct ia_css_isp_parameters *params,
3264                          const struct ia_css_output_config *config)
3265 {
3266         if (!config)
3267                 return;
3268
3269         assert(params);
3270         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE, "ia_css_set_output_config() enter:\n");
3271         ia_css_output_debug_dtrace(config, IA_CSS_DEBUG_TRACE);
3272         params->output_config = *config;
3273         params->config_changed[IA_CSS_OUTPUT_ID] = true;
3274         ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE,
3275                             "ia_css_set_output_config() leave: return_void\n");
3276 }
3277
3278 /* Code generated by genparam/gencode.c:gen_global_access_function() */
3279
3280 void
3281 ia_css_get_configs(struct ia_css_isp_parameters *params,
3282                    const struct ia_css_isp_config *config)
3283 {
3284         ia_css_get_dp_config(params, config->dp_config);
3285         ia_css_get_wb_config(params, config->wb_config);
3286         ia_css_get_tnr_config(params, config->tnr_config);
3287         ia_css_get_ob_config(params, config->ob_config);
3288         ia_css_get_de_config(params, config->de_config);
3289         ia_css_get_anr_config(params, config->anr_config);
3290         ia_css_get_anr2_config(params, config->anr_thres);
3291         ia_css_get_ce_config(params, config->ce_config);
3292         ia_css_get_ecd_config(params, config->ecd_config);
3293         ia_css_get_ynr_config(params, config->ynr_config);
3294         ia_css_get_fc_config(params, config->fc_config);
3295         ia_css_get_cnr_config(params, config->cnr_config);
3296         ia_css_get_macc_config(params, config->macc_config);
3297         ia_css_get_ctc_config(params, config->ctc_config);
3298         ia_css_get_aa_config(params, config->aa_config);
3299         ia_css_get_yuv2rgb_config(params, config->yuv2rgb_cc_config);
3300         ia_css_get_rgb2yuv_config(params, config->rgb2yuv_cc_config);
3301         ia_css_get_csc_config(params, config->cc_config);
3302         ia_css_get_nr_config(params, config->nr_config);
3303         ia_css_get_gc_config(params, config->gc_config);
3304         ia_css_get_sdis_horicoef_config(params, config->dvs_coefs);
3305         ia_css_get_sdis_vertcoef_config(params, config->dvs_coefs);
3306         ia_css_get_sdis_horiproj_config(params, config->dvs_coefs);
3307         ia_css_get_sdis_vertproj_config(params, config->dvs_coefs);
3308         ia_css_get_sdis2_horicoef_config(params, config->dvs2_coefs);
3309         ia_css_get_sdis2_vertcoef_config(params, config->dvs2_coefs);
3310         ia_css_get_sdis2_horiproj_config(params, config->dvs2_coefs);
3311         ia_css_get_sdis2_vertproj_config(params, config->dvs2_coefs);
3312         ia_css_get_r_gamma_config(params, config->r_gamma_table);
3313         ia_css_get_g_gamma_config(params, config->g_gamma_table);
3314         ia_css_get_b_gamma_config(params, config->b_gamma_table);
3315         ia_css_get_xnr_table_config(params, config->xnr_table);
3316         ia_css_get_formats_config(params, config->formats_config);
3317         ia_css_get_xnr_config(params, config->xnr_config);
3318         ia_css_get_xnr3_config(params, config->xnr3_config);
3319         ia_css_get_s3a_config(params, config->s3a_config);
3320         ia_css_get_output_config(params, config->output_config);
3321 }
3322
3323 /* Code generated by genparam/gencode.c:gen_global_access_function() */
3324
3325 void
3326 ia_css_set_configs(struct ia_css_isp_parameters *params,
3327                    const struct ia_css_isp_config *config)
3328 {
3329         ia_css_set_dp_config(params, config->dp_config);
3330         ia_css_set_wb_config(params, config->wb_config);
3331         ia_css_set_tnr_config(params, config->tnr_config);
3332         ia_css_set_ob_config(params, config->ob_config);
3333         ia_css_set_de_config(params, config->de_config);
3334         ia_css_set_anr_config(params, config->anr_config);
3335         ia_css_set_anr2_config(params, config->anr_thres);
3336         ia_css_set_ce_config(params, config->ce_config);
3337         ia_css_set_ecd_config(params, config->ecd_config);
3338         ia_css_set_ynr_config(params, config->ynr_config);
3339         ia_css_set_fc_config(params, config->fc_config);
3340         ia_css_set_cnr_config(params, config->cnr_config);
3341         ia_css_set_macc_config(params, config->macc_config);
3342         ia_css_set_ctc_config(params, config->ctc_config);
3343         ia_css_set_aa_config(params, config->aa_config);
3344         ia_css_set_yuv2rgb_config(params, config->yuv2rgb_cc_config);
3345         ia_css_set_rgb2yuv_config(params, config->rgb2yuv_cc_config);
3346         ia_css_set_csc_config(params, config->cc_config);
3347         ia_css_set_nr_config(params, config->nr_config);
3348         ia_css_set_gc_config(params, config->gc_config);
3349         ia_css_set_sdis_horicoef_config(params, config->dvs_coefs);
3350         ia_css_set_sdis_vertcoef_config(params, config->dvs_coefs);
3351         ia_css_set_sdis_horiproj_config(params, config->dvs_coefs);
3352         ia_css_set_sdis_vertproj_config(params, config->dvs_coefs);
3353         ia_css_set_sdis2_horicoef_config(params, config->dvs2_coefs);
3354         ia_css_set_sdis2_vertcoef_config(params, config->dvs2_coefs);
3355         ia_css_set_sdis2_horiproj_config(params, config->dvs2_coefs);
3356         ia_css_set_sdis2_vertproj_config(params, config->dvs2_coefs);
3357         ia_css_set_r_gamma_config(params, config->r_gamma_table);
3358         ia_css_set_g_gamma_config(params, config->g_gamma_table);
3359         ia_css_set_b_gamma_config(params, config->b_gamma_table);
3360         ia_css_set_xnr_table_config(params, config->xnr_table);
3361         ia_css_set_formats_config(params, config->formats_config);
3362         ia_css_set_xnr_config(params, config->xnr_config);
3363         ia_css_set_xnr3_config(params, config->xnr3_config);
3364         ia_css_set_s3a_config(params, config->s3a_config);
3365         ia_css_set_output_config(params, config->output_config);
3366 }