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