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