1 /*
2 * Copyright (c) 2019 Rockchip Corporation
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *
16 */
17
18 #include "RkAiqCalibTag.h"
19
20 //#define CALIBDB_CHECK_DEBUG
21 #ifndef XML_STRICT_CHECK
22 #ifdef DCT_ASSERT
23 #undef DCT_ASSERT
24 #define DCT_ASSERT(x)
25 #endif
26 #endif
27
28 #define calib_uint32_array_size(x) (sizeof(x)/sizeof(uint32_t))
29 #define check_tags_array_info(x) \
30 x, \
31 calib_uint32_array_size(x)
32
33 #define check_tags_array_ignore \
34 NULL, \
35 -1
36
37 uint32_t calib_filestart_sub_tags[] = {
38 CALIB_HEADER_TAG_ID,
39 CALIB_SENSOR_TAG_ID,
40 CALIB_SYSTEM_TAG_ID,
41 CALIB_EXPSET_TAG_ID,
42 CALIB_MODULEINFO_TAG_ID,
43 };
44
45 uint32_t calib_header_sub_tags[] = {
46 CALIB_HEADER_CODE_XML_PARSE_VERSION_TAG_ID,
47 CALIB_HEADER_CREATION_DATE_TAG_ID,
48 CALIB_HEADER_CREATOR_TAG_ID,
49 CALIB_HEADER_SENSOR_NAME_TAG_ID,
50 CALIB_HEADER_SAMPLE_NAME_TAG_ID,
51 CALIB_HEADER_GENERATOR_VERSION_TAG_ID,
52 CALIB_HEADER_MAGIC_CODE_TAG_ID,
53 };
54
55 uint32_t calib_sensor_sub_tags[] = {
56 CALIB_SENSOR_AWB_TAG_ID,
57 CALIB_SENSOR_AEC_TAG_ID,
58 CALIB_SENSOR_AEC_V21_TAG_ID,
59 CALIB_SENSOR_AF_TAG_ID,
60 CALIB_SENSOR_AHDR_MERGE_TAG_ID,
61 CALIB_SENSOR_AHDR_TMO_TAG_ID,
62 CALIB_SENSOR_DRC_TAG_ID,
63 CALIB_SENSOR_BLC_TAG_ID,
64 CALIB_SENSOR_DPCC_TAG_ID,
65 CALIB_SENSOR_BAYERNR_TAG_ID,
66 CALIB_SENSOR_LSC_TAG_ID,
67 CALIB_SENSOR_RKDM_TAG_ID,
68 CALIB_SENSOR_CCM_TAG_ID,
69 CALIB_SENSOR_UVNR_TAG_ID,
70 CALIB_SENSOR_GAMMA_TAG_ID,
71 CALIB_SENSOR_DEGAMMA_TAG_ID,
72 CALIB_SENSOR_YNR_TAG_ID,
73 CALIB_SENSOR_GIC_TAG_ID,
74 CALIB_SENSOR_MFNR_TAG_ID,
75 CALIB_SENSOR_SHARP_TAG_ID,
76 CALIB_SENSOR_EDGEFILTER_TAG_ID,
77 CALIB_SENSOR_DEHAZE_TAG_ID,
78 CALIB_SENSOR_SENSORINFO_TAG_ID,
79 CALIB_SENSOR_MODULEINFO_TAG_ID,
80 CALIB_SENSOR_CPSL_TAG_ID,
81 CALIB_SENSOR_LUT3D_TAG_ID,
82 CALIB_SENSOR_LDCH_TAG_ID,
83 CALIB_SENSOR_FEC_TAG_ID,
84 CALIB_SENSOR_EIS_TAG_ID,
85 CALIB_SENSOR_LUMA_DETECT_TAG_ID,
86 CALIB_SENSOR_ORB_TAG_ID,
87 CALIB_SENSOR_COLOR_AS_GREY_TAG_ID,
88 CALIB_SENSOR_CPROC_TAG_ID,
89 CALIB_SENSOR_IE_TAG_ID,
90 CALIB_SENSOR_BAYERNR_V2_TAG_ID,
91 CALIB_SENSOR_YNR_V2_TAG_ID,
92 CALIB_SENSOR_CNR_V1_TAG_ID,
93 CALIB_SENSOR_SHARP_V3_TAG_ID,
94
95 };
96
97 uint32_t calib_sensor_awb_sub_tags[] = {
98 CALIB_SENSOR_AWB_V200_TAG_ID,
99 CALIB_SENSOR_AWB_V201_TAG_ID,
100 CALIB_SENSOR_AWB_ADJUSTPARA_TAG_ID,
101 };
102
103 uint32_t calib_sensor_awb_v200_sub_tags[] = {
104 CALIIB_SCENE_TAG_ID,
105 CALIB_SENSOR_AWB_V200_GLOBALS_TAG_ID,
106 CALIB_SENSOR_AWB_V200_LIGHTSOURCES_TAG_ID,
107 };
108
109 uint32_t calib_sensor_awb_v200_global_sub_tags[] = {
110 CALIB_SENSOR_AWB_HDRFRAMECHOOSE_TAG_ID,
111 CALIB_SENSOR_AWB_LSCBYPASSENABLE_TAG_ID,
112 CALIB_SENSOR_AWB_UVDETECTIONENABLE_TAG_ID,
113 CALIB_SENSOR_AWB_XYDETECTIONENABLE_TAG_ID,
114 CALIB_SENSOR_AWB_YUVDETECTIONENABLE_TAG_ID,
115 CALIB_SENSOR_AWB_WBGAINDAYLIGHTCLIPENABLE_TAG_ID,
116 CALIB_SENSOR_AWB_WBGAINCLIPEANBLE_TAG_ID,
117 CALIB_SENSOR_AWB_LSUSEDFORYUVDET_TAG_ID,
118 CALIB_SENSOR_AWB_DOWNSCALEMODE_TAG_ID,
119 CALIB_SENSOR_AWB_BLCKMEASUREMODE_TAG_ID,
120 CALIB_SENSOR_AWB_MEASUREWINDOW_TAG_ID,
121 CALIB_SENSOR_AWB_MULTIWINDOWENABLE_TAG_ID,
122 CALIB_SENSOR_AWB_LIMITRANGE_TAG_ID,
123 CALIB_SENSOR_AWB_LIMITRANGE_CELL_TAG_ID,
124 CALIB_SENSOR_AWB_PSEUDOLUMWEIGHT_TAG_ID,
125 CALIB_SENSOR_AWB_ROTATIONMAT_TAG_ID,
126 CALIB_SENSOR_AWB_MULTIWINDOW_TAG_ID,
127 CALIB_SENSOR_AWB_EXCLUDERANGE_TAG_ID,
128 CALIB_SENSOR_AWB_SPATIALGAIN_L_TAG_ID,
129 CALIB_SENSOR_AWB_SPATIALGAIN_H_TAG_ID,
130 CALIB_SENSOR_AWB_TEMPORALDEFAULTGAIN_TAG_ID,
131 CALIB_SENSOR_AWB_CA_TARGETGAIN_TAG_ID,
132 CALIB_SENSOR_AWB_SINGLECOLORPROCESS_TAG_ID,
133 CALIB_SENSOR_AWB_LINERGBG_TAG_ID,
134 CALIB_SENSOR_AWB_LINERGBGPROJCCT_TAG_ID,
135 CALIB_SENSOR_AWB_WBGAINDAYLIGHTCLIP_TAG_ID,
136 CALIB_SENSOR_AWB_WBGAINCLIP_TAG_ID,
137 };
138
139 uint32_t calib_sensor_awb_v200_lightSources_sub_tags[] = {
140 CALIB_SENSOR_AWB_LIGHTSOURCES_NAME_TAG_ID,
141 CALIB_SENSOR_AWB_LIGHTSOURCES_DOORTYPE_TAG_ID,
142 CALIB_SENSOR_AWB_LIGHTSOURCES_STANDARDGAINVALUE_TAG_ID,
143 CALIB_SENSOR_AWB_LIGHTSOURCES_LIGHTUREGION_TAG_ID,
144 CALIB_SENSOR_AWB_LIGHTSOURCES_LIGHTVREGION_TAG_ID,
145 CALIB_SENSOR_AWB_LIGHTSOURCES_LIGHTXYREGION_TAG_ID,
146 CALIB_SENSOR_AWB_LIGHTSOURCES_YUVREGION_TAG_ID,
147 };
148
149 uint32_t calib_sensor_awb_lightXYRegion_sub_tags[] = {
150 CALIB_SENSOR_AWB_LIGHTSOURCES_NORMAL_TAG_ID,
151 CALIB_SENSOR_AWB_LIGHTSOURCES_BIG_TAG_ID,
152 CALIB_SENSOR_AWB_LIGHTSOURCES_SMALL_TAG_ID,
153 };
154
155 uint32_t calib_sensor_awb_yuvRegion_sub_tags[] = {
156 CALIB_SENSOR_AWB_LIGHTSOURCES_K2SET_TAG_ID,
157 CALIB_SENSOR_AWB_LIGHTSOURCES_B0SET_TAG_ID,
158 CALIB_SENSOR_AWB_LIGHTSOURCES_K3SET_TAG_ID,
159 CALIB_SENSOR_AWB_LIGHTSOURCES_K_YDISSET_TAG_ID,
160 CALIB_SENSOR_AWB_LIGHTSOURCES_B_YDISSET_TAG_ID,
161 CALIB_SENSOR_AWB_LIGHTSOURCES_UREFSET_TAG_ID,
162 CALIB_SENSOR_AWB_LIGHTSOURCES_VREFSET_TAG_ID,
163 CALIB_SENSOR_AWB_LIGHTSOURCES_DISSET_TAG_ID,
164 CALIB_SENSOR_AWB_LIGHTSOURCES_THSET_TAG_ID,
165 };
166
167 uint32_t calib_sensor_awb_rtYuvRegion_sub_tags[] = {
168 CALIB_SENSOR_AWB_LIGHTSOURCES_THCURVE_U_SET_TAG_ID,
169 CALIB_SENSOR_AWB_LIGHTSOURCES_THCURVE_TH_SET_TAG_ID,
170 CALIB_SENSOR_AWB_LIGHTSOURCES_LINEVECTOR_TAG_ID,
171 };
172
173 uint32_t calib_sensor_awb_v201_sub_tags[] = {
174 CALIIB_SCENE_TAG_ID,
175 CALIB_SENSOR_AWB_V201_GLOBALS_TAG_ID,
176 CALIB_SENSOR_AWB_V201_LIGHTSOURCES_TAG_ID,
177 };
178
179 uint32_t calib_sensor_awb_v201_global_sub_tags[] = {
180 CALIB_SENSOR_AWB_HDRFRAMECHOOSE_TAG_ID,
181 CALIB_SENSOR_AWB_LSCBYPASSENABLE_TAG_ID,
182 CALIB_SENSOR_AWB_UVDETECTIONENABLE_TAG_ID,
183 CALIB_SENSOR_AWB_XYDETECTIONENABLE_TAG_ID,
184 CALIB_SENSOR_AWB_YUVDETECTIONENABLE_TAG_ID,
185 CALIB_SENSOR_AWB_WBGAINDAYLIGHTCLIPENABLE_TAG_ID,
186 CALIB_SENSOR_AWB_WBGAINCLIPEANBLE_TAG_ID,
187 CALIB_SENSOR_AWB_WPDIFFWEIENABLE_TAG_ID,
188 CALIB_SENSOR_AWB_WPDIFFBLKWEIENABLE_TAG_ID,
189 CALIB_SENSOR_AWB_BLKSTATISTICSENABLE_TAG_ID,
190 CALIB_SENSOR_AWB_LSUSEDFORYUVDET_TAG_ID,
191 CALIB_SENSOR_AWB_DOWNSCALEMODE_TAG_ID,
192 CALIB_SENSOR_AWB_BLCKMEASUREMODE_TAG_ID,
193 CALIB_SENSOR_AWB_MEASUREWINDOW_TAG_ID,
194 CALIB_SENSOR_AWB_MULTIWINDOWENABLE_TAG_ID,
195 CALIB_SENSOR_AWB_LIMITRANGE_TAG_ID,
196 CALIB_SENSOR_AWB_LIMITRANGE_CELL_TAG_ID,
197 CALIB_SENSOR_AWB_PSEUDOLUMWEIGHT_TAG_ID,
198 CALIB_SENSOR_AWB_ROTATIONMAT_TAG_ID,
199 CALIB_SENSOR_AWB_RGB2ROTATIONYUVMAT_TAG_ID,
200 CALIB_SENSOR_AWB_MULTIWINDOW_TAG_ID,
201 CALIB_SENSOR_AWB_EXCLUDERANGE_TAG_ID,
202 CALIB_SENSOR_AWB_SPATIALGAIN_L_TAG_ID,
203 CALIB_SENSOR_AWB_SPATIALGAIN_H_TAG_ID,
204 CALIB_SENSOR_AWB_TEMPORALDEFAULTGAIN_TAG_ID,
205 CALIB_SENSOR_AWB_CA_TARGETGAIN_TAG_ID,
206 CALIB_SENSOR_AWB_SINGLECOLORPROCESS_TAG_ID,
207 CALIB_SENSOR_AWB_LINERGBG_TAG_ID,
208 CALIB_SENSOR_AWB_LINERGBGPROJCCT_TAG_ID,
209 CALIB_SENSOR_AWB_WBGAINDAYLIGHTCLIP_TAG_ID,
210 CALIB_SENSOR_AWB_WBGAINCLIP_TAG_ID,
211 CALIB_SENSOR_AWB_WPDIFFWEIGHT_TAG_ID,
212 CALIB_SENSOR_AWB_WPDIFFBLKWEIGHT_TAG_ID,
213 };
214
215 uint32_t calib_sensor_awb_v201_lightSources_sub_tags[] = {
216 CALIB_SENSOR_AWB_LIGHTSOURCES_NAME_TAG_ID,
217 CALIB_SENSOR_AWB_LIGHTSOURCES_DOORTYPE_TAG_ID,
218 CALIB_SENSOR_AWB_LIGHTSOURCES_STANDARDGAINVALUE_TAG_ID,
219 CALIB_SENSOR_AWB_LIGHTSOURCES_LIGHTUREGION_TAG_ID,
220 CALIB_SENSOR_AWB_LIGHTSOURCES_LIGHTVREGION_TAG_ID,
221 CALIB_SENSOR_AWB_LIGHTSOURCES_SMALLUREGION_TAG_ID,
222 CALIB_SENSOR_AWB_LIGHTSOURCES_SMALLVREGION_TAG_ID,
223 CALIB_SENSOR_AWB_LIGHTSOURCES_LIGHTXYREGION_TAG_ID,
224 CALIB_SENSOR_AWB_LIGHTSOURCES_RTYUVREGION_TAG_ID,
225 };
226
227 uint32_t calib_sensor_awb_hfc_sub_tags[] = {
228 CALIB_SENSOR_AWB_MODE_TAG_ID,
229 CALIB_SENSOR_AWB_FRAMECHOOSE_TAG_ID,
230 };
231
232 uint32_t calib_sensor_awb_lsusedforyuvdet_sub_tags[] = {
233 CALIB_SENSOR_AWB_LSUSEDFORYUVDET_NAME_TAG_ID,
234 };
235
236 uint32_t calib_sensor_awb_measurewindow_sub_tags[] = {
237 CALIB_SENSOR_AWB_MODE_TAG_ID,
238 CALIB_SENSOR_AWB_RESALL_TAG_ID,
239 };
240
241 uint32_t calib_sensor_awb_resall_sub_tags[] = {
242 CALIB_SENSOR_AWB_RESOLUTION_TAG_ID,
243 CALIB_SENSOR_AWB_MEASUREWINDOWSIZE_TAG_ID,
244 };
245
246 uint32_t calib_sensor_awb_limitRange_sub_tags[] = {
247 CALIB_SENSOR_AWB_LIMITRANGE_LV_TAG_ID,
248 CALIB_SENSOR_AWB_LIMITRANGE_Y_TAG_ID,
249 CALIB_SENSOR_AWB_LIMITRANGE_R_TAG_ID,
250 CALIB_SENSOR_AWB_LIMITRANGE_G_TAG_ID,
251 CALIB_SENSOR_AWB_LIMITRANGE_B_TAG_ID,
252 };
253
254 uint32_t calib_sensor_awb_excludeRange_sub_tags[] = {
255 CALIB_SENSOR_AWB_EXCLUDERANGE_DOMAIN_TAG_ID,
256 CALIB_SENSOR_AWB_EXCLUDE_MODE_TAG_ID,
257 CALIB_SENSOR_AWB_EXCLUDE_WINDOW_TAG_ID
258 };
259
260 uint32_t calib_sensor_awb_wpDiffWeiEnableTh_sub_tags[] = {
261 CALIB_SENSOR_AWB_WPNOTH_TAG_ID,
262 CALIB_SENSOR_AWB_LVVALUETH_TAG_ID,
263 };
264
265 uint32_t calib_sensor_awb_wpDiffwei_w_HighLV_sub_tags[] = {
266 CALIB_SENSOR_AWB_WPRATIO1_TAG_ID,
267 CALIB_SENSOR_AWB_WPRATIO2_TAG_ID,
268 CALIB_SENSOR_AWB_WPRATIO3_TAG_ID,
269 };
270
271 uint32_t calib_sensor_awb_wpDiffwei_w_LowLV_sub_tags[] = {
272 CALIB_SENSOR_AWB_WPRATIO1_TAG_ID,
273 CALIB_SENSOR_AWB_WPRATIO2_TAG_ID,
274 CALIB_SENSOR_AWB_WPRATIO3_TAG_ID,
275 };
276
277 uint32_t calib_sensor_awb_tolerance_sub_tags[] = {
278 CALIB_SENSOR_AWB_LV_TAG_ID,
279 CALIB_SENSOR_AWB_VALUE_TAG_ID,
280 };
281
282 uint32_t calib_sensor_awb_runInterval_sub_tags[] = {
283 CALIB_SENSOR_AWB_LV_TAG_ID,
284 CALIB_SENSOR_AWB_VALUE_TAG_ID,
285 };
286 uint32_t calib_sensor_awb_dampFactor_sub_tags[] = {
287 CALIB_SENSOR_AWB_DFSTEP_TAG_ID,
288 CALIB_SENSOR_AWB_DFMIN_TAG_ID,
289 CALIB_SENSOR_AWB_DFMAX_TAG_ID,
290 CALIB_SENSOR_AWB_LVIIRSIZE_TAG_ID,
291 CALIB_SENSOR_AWB_LVVARTH_TAG_ID,
292 };
293
294 uint32_t calib_sensor_awb_singleColorProcess_sub_tags[] = {
295 CALIB_SENSOR_AWB_COLORBLOCK_TAG_ID,
296 CALIB_SENSOR_AWB_LIGHTSOURCEUSEDFORESTIMIATION_TAG_ID,
297 CALIB_SENSOR_AWB_ALPHA_TAG_ID,
298 };
299
300 uint32_t calib_sensor_awb_colorBlock_sub_tags[] = {
301 CALIB_SENSOR_AWB_INDEX_TAG_ID,
302 CALIB_SENSOR_AWB_MEANC_TAG_ID,
303 CALIB_SENSOR_AWB_MEANH_TAG_ID,
304 };
305
306 uint32_t calib_sensor_awb_lsUsedForEstimation_sub_tags[] = {
307 CALIB_SENSOR_AWB_LSUSEDFORESTIMIATION_NAME_TAG_ID,
308 CALIB_SENSOR_AWB_RGAIN_TAG_ID,
309 CALIB_SENSOR_AWB_BGAIN_TAG_ID,
310 };
311
312 uint32_t calib_sensor_awb_wpDiffLumaWeight_sub_tags[] = {
313 CALIB_SENSOR_AWB_WPDIFFWEIENABLETH_TAG_ID,
314 CALIB_SENSOR_AWB_WPDIFFWEI_Y_TAG_ID,
315 CALIB_SENSOR_AWB_PERFECTBINCONF_TAG_ID,
316 CALIB_SENSOR_AWB_WPDIFFWEIRATIOTH_TAG_ID,
317 CALIB_SENSOR_AWB_WPDIFFWEILVTH_TAG_ID,
318 CALIB_SENSOR_AWB_WPDIFFWEI_W_HIGHLV_TAG_ID,
319 CALIB_SENSOR_AWB_WPDIFFWEI_W_LOWLV_TAG_ID,
320 };
321
322 uint32_t calib_sensor_awb_adjustpara_sub_tags[] = {
323 CALIIB_SCENE_TAG_ID,
324 CALIB_SENSOR_AWB_ADJUSTPARA_GLOBALS_TAG_ID,
325 CALIB_SENSOR_AWB_ADJUSTPARA_LIGHTSOURCES_TAG_ID,
326 };
327 uint32_t calib_sensor_awb_strategypara_global_wpth_sub_tags[] = {
328 CALIB_SENSOR_AWB_WP_LV_TAG_ID,
329 CALIB_SENSOR_AWB_WP_THL_TAG_ID,
330 CALIB_SENSOR_AWB_WP_THH_TAG_ID,
331 };
332 uint32_t calib_sensor_awb_adjustpara_global_sub_tags[] = {
333 CALIB_SENSOR_AWB_AWB_ENABLE_TAG_ID,
334 CALIB_SENSOR_AWB_WB_BYPASS_TAG_ID,
335 CALIB_SENSOR_AWB_WBGAINADJUSTENABLE_TAG_ID,
336 CALIB_SENSOR_AWB_LSFORFIRSTFRAME_TAG_ID,
337 CALIB_SENSOR_AWB_UVRANGESMALLENABLE_TAG_ID,
338 CALIB_SENSOR_AWB_CA_ENABLE_TAG_ID,
339 CALIB_SENSOR_AWB_TOLERANCE_TAG_ID,
340 CALIB_SENSOR_AWB_RUNINTERNAL_TAG_ID,
341 CALIB_SENSOR_AWB_MULTIWINDOWMODE_TAG_ID,
342 CALIB_SENSOR_AWB_DAMPFACTOR_TAG_ID,
343 CALIB_SENSOR_AWB_LVMATRIX_TAG_ID,
344 CALIB_SENSOR_AWB_LV_THL_TAG_ID,
345 CALIB_SENSOR_AWB_LV_THL2_TAG_ID,
346 CALIB_SENSOR_AWB_LV_THH_TAG_ID,
347 CALIB_SENSOR_AWB_LV_THH2_TAG_ID,
348 CALIB_SENSOR_AWB_WP_TH_TAG_ID,
349 CALIB_SENSOR_AWB_WP_THL_TAG_ID,
350 CALIB_SENSOR_AWB_WP_THH_TAG_ID,
351 CALIB_SENSOR_AWB_PRODIS_THL_TAG_ID,
352 CALIB_SENSOR_AWB_PRODIS_THH_TAG_ID,
353 CALIB_SENSOR_AWB_PROLV_INDOOR_THL_TAG_ID,
354 CALIB_SENSOR_AWB_PROLV_INDOOR_THH_TAG_ID,
355 CALIB_SENSOR_AWB_PROLV_OUTDOOR_THL_TAG_ID,
356 CALIB_SENSOR_AWB_PROLV_OUTDOOR_THH_TAG_ID,
357 CALIB_SENSOR_AWB_TEMPORALCALGAINSETSIZE_TAG_ID,
358 CALIB_SENSOR_AWB_TEMPORALGAINSETWEIGHT_TAG_ID,
359 CALIB_SENSOR_AWB_WPNUMPERCTH_TAG_ID,
360 CALIB_SENSOR_AWB_TEMPWEIGTH_TAG_ID,
361 CALIB_SENSOR_AWB_CA_LACALCFACTOR_TAG_ID,
362 CALIB_SENSOR_AWB_CONVERGEDVARTH_TAG_ID,
363 CALIB_SENSOR_AWB_XYREGIONSTABLESELECTION_TAG_ID,
364 CALIB_SENSOR_AWB_WBGAINADJUST_TAG_ID,
365 CALIB_SENSOR_AWB_WBGAINOFFSET_TAG_ID,
366 CALIB_SENSOR_AWB_WBGAINDAYLIGHTCLIP_TAG_ID,
367 CALIB_SENSOR_AWB_WBGAINCLIP_TAG_ID,
368 CALIB_SENSOR_AWB_REMOSAICPARA_TAG_ID,
369 };
370
371 uint32_t calib_sensor_awb_adjustpara_lightSources_sub_tags[] = {
372 CALIB_SENSOR_AWB_LIGHTSOURCES_NAME_TAG_ID,
373 CALIB_SENSOR_AWB_LIGHTSOURCES_STAWEIGTHSET_TAG_ID,
374 CALIB_SENSOR_AWB_LIGHTSOURCES_SPATIALGAIN_LV_THSET_TAG_ID,
375 CALIB_SENSOR_AWB_LIGHTSOURCES_XYTYPE2ENABLE_TAG_ID,
376 CALIB_SENSOR_AWB_LIGHTSOURCES_WEIGHTCURVE_RATIO_TAG_ID,
377 CALIB_SENSOR_AWB_LIGHTSOURCES_WEIGHTCURVE_WEIGHT_TAG_ID,
378 };
379
380 uint32_t calib_sensor_awb_xyRegionStableSelection_sub_tags[] = {
381 CALIB_SENSOR_AWB_XYREGIONSIZE_TAG_ID,
382 CALIB_SENSOR_AWB_LVVARTH_TAG_ID,
383 CALIB_SENSOR_AWB_XYREGION_WPNUMTH_CELL_TAG_ID,
384 };
385 uint32_t calib_sensor_awb_xyregion_wpnumth_sub_tags[] = {
386 CALIB_SENSOR_AWB_XYREGION_LV_TAG_ID,
387 CALIB_SENSOR_AWB_XYREGION_WPNUMTHFORBIGTYPE_TAG_ID,
388 CALIB_SENSOR_AWB_XYREGION_WPNUMTHFOREXTRATYPE_TAG_ID,
389 };
390
391 uint32_t calib_sensor_awb_wbGainAdjust_sub_tags[] = {
392 CALIB_SENSOR_AWB_CTGRID_NUM_TAG_ID,
393 CALIB_SENSOR_AWB_CTINRANGE_TAG_ID,
394 CALIB_SENSOR_AWB_CRIGRID_NUM_TAG_ID,
395 CALIB_SENSOR_AWB_CRIINRANGE_TAG_ID,
396 CALIB_SENSOR_AWB_LUTALL_TAG_ID,
397 };
398 uint32_t calib_sensor_awb_wbGainOffset_sub_tags[] = {
399 CALIB_SENSOR_AWB_WBGAINOFFSET_ENABLE_TAG_ID,
400 CALIB_SENSOR_AWB_WBGAINOFFSET_OFFSET_TAG_ID,
401 };
402
403 uint32_t calib_sensor_awb_lutAll_sub_tags[] = {
404 CALIB_SENSOR_AWB_LVVALUE_TAG_ID,
405 CALIB_SENSOR_AWB_CTOUT_TAG_ID,
406 CALIB_SENSOR_AWB_CRIOUT_TAG_ID,
407 };
408
409 uint32_t calib_sensor_awb_wbGainDaylightClip_sub_tags[] = {
410 CALIB_SENSOR_AWB_OUTDOORCCTMIN_TAG_ID,
411 };
412
413 uint32_t calib_sensor_awb_wbGainClip_sub_tags[] = {
414 CALIB_SENSOR_AWB_CCT_TAG_ID,
415 CALIB_SENSOR_AWB_CRIBOUNDUP_TAG_ID,
416 CALIB_SENSOR_AWB_CRIBOUNDLOW_TAG_ID,
417 };
418
419 uint32_t calib_sensor_awb_RemosaicPara_sub_tags[] = {
420 CALIB_SENSOR_AWB_REMOSAICPARA_ENABLE_TAG_ID,
421 CALIB_SENSOR_AWB_REMOSAICPARA_WBGAIN_TAG_ID,
422 };
423
424 //AEC V20
425 uint32_t calib_sensor_aec_sub_tags[] = {
426 CALIB_SENSOR_AEC_ENABLE_TAG_ID,
427 CALIB_SENSOR_AEC_AECRUNINTERVAL_TAG_ID,
428 CALIB_SENSOR_AEC_AECOPTYPE_TAG_ID,
429 CALIB_SENSOR_AEC_HISTSTATSMODE_TAG_ID,
430 CALIB_SENSOR_AEC_RAWSTATSMODE_TAG_ID,
431 CALIB_SENSOR_AEC_YRANGEMODE_TAG_ID,
432 CALIB_SENSOR_AEC_SYNCTEST_TAG_ID,
433 CALIB_SENSOR_AEC_AECSPEED_TAG_ID,
434 CALIB_SENSOR_AEC_AECDELAYFRMNUM_TAG_ID,
435 CALIB_SENSOR_AEC_AECFRAMERATEMODE_TAG_ID,
436 CALIB_SENSOR_AEC_ANTIFLICKER_TAG_ID,
437 CALIB_SENSOR_AEC_AECINITVALUE_TAG_ID,
438 CALIB_SENSOR_AEC_AECGRIDWEIGHT_TAG_ID,
439 CALIB_SENSOR_AEC_AECROUTE_TAG_ID,
440 CALIB_SENSOR_AEC_AECDNSWITCH_TAG_ID,
441 CALIB_SENSOR_AEC_IRISCTRL_TAG_ID,
442 CALIB_SENSOR_AEC_MANUALCTRL_TAG_ID,
443 CALIB_SENSOR_AEC_ENVLVCALIB_TAG_ID,
444 CALIB_SENSOR_AEC_LINEARAE_CTRL_TAG_ID,
445 CALIB_SENSOR_AEC_HDRAECTRL_TAG_ID,
446 };
447
448 uint32_t calib_sensor_aec_AecSyncTest_sub_tags[] = {
449 CALIB_SENSOR_AEC_SYNCTEST_ENABLE_TAG_ID,
450 CALIB_SENSOR_AEC_SYNCTEST_INTERVALFRM_TAG_ID,
451 CALIB_SENSOR_AEC_SYNCTEST_ALTEREXP_TAG_ID,
452 };
453
454 uint32_t calib_sensor_aec_AecSyncTest_AlterExp_sub_tags[] = {
455 CALIB_SENSOR_AEC_SYNCTEST_LINALTEREXP_TAG_ID,
456 CALIB_SENSOR_AEC_SYNCTEST_HDRALTEREXP_TAG_ID,
457 };
458
459 uint32_t calib_sensor_aec_AecSyncTest_LinAlterExp_sub_tags[] = {
460 CALIB_SENSOR_AEC_SYNCTEST_TIMEVALUE_TAG_ID,
461 CALIB_SENSOR_AEC_SYNCTEST_GAINVALUE_TAG_ID,
462 CALIB_SENSOR_AEC_SYNCTEST_ISPGAINVALUE_TAG_ID,
463 CALIB_SENSOR_AEC_SYNCTEST_DCGMODE_TAG_ID,
464 CALIB_SENSOR_AEC_SYNCTEST_PIRISVALUE_TAG_ID,
465 };
466
467 uint32_t calib_sensor_aec_AecSyncTest_HdrAlterExp_sub_tags[] = {
468 CALIB_SENSOR_AEC_SYNCTEST_TIMEVALUE_TAG_ID,
469 CALIB_SENSOR_AEC_SYNCTEST_GAINVALUE_TAG_ID,
470 CALIB_SENSOR_AEC_SYNCTEST_ISPGAINVALUE_TAG_ID,
471 CALIB_SENSOR_AEC_SYNCTEST_DCGMODE_TAG_ID,
472 CALIB_SENSOR_AEC_SYNCTEST_PIRISVALUE_TAG_ID,
473 };
474
475 uint32_t calib_sensor_aec_AecSpeed_sub_tags[] = {
476 CALIB_SENSOR_AEC_SMOOTHEN_TAG_ID,
477 CALIB_SENSOR_AEC_DYDAMPEN_TAG_ID,
478 CALIB_SENSOR_AEC_DAMPOVER_TAG_ID,
479 CALIB_SENSOR_AEC_DAMPUNDER_TAG_ID,
480 CALIB_SENSOR_AEC_DAMPDARK2BRIGHT_TAG_ID,
481 CALIB_SENSOR_AEC_DAMPBRIGHT2DARK_TAG_ID,
482 };
483
484 uint32_t calib_sensor_aec_AecDelayFrmNum_sub_tags[] = {
485 CALIB_SENSOR_AEC_BLACKDELAY_TAG_ID,
486 CALIB_SENSOR_AEC_WHITEDELAY_TAG_ID,
487 };
488
489 uint32_t calib_sensor_aec_AecFrameRateMode_sub_tags[] = {
490 CALIB_SENSOR_AEC_ISFPSFIX_TAG_ID,
491 CALIB_SENSOR_AEC_FPSVALUE_TAG_ID,
492 };
493
494 uint32_t calib_sensor_aec_AecAntiFlicker_sub_tags[] = {
495 CALIB_SENSOR_AEC_ANTIFLICKER_ENABLE_TAG_ID,
496 CALIB_SENSOR_AEC_ANTIFLICKER_FREQ_TAG_ID,
497 CALIB_SENSOR_AEC_ANTIFLICKER_MODE_TAG_ID,
498 };
499
500 uint32_t calib_sensor_aec_AecInitValue_sub_tags[] = {
501 CALIB_SENSOR_AEC_AECINITVALUE_LINEARAE_TAG_ID,
502 CALIB_SENSOR_AEC_AECINITVALUE_HDRAE_TAG_ID,
503 };
504
505 uint32_t calib_sensor_aec_AecInitValue_LinearAE_sub_tags[] = {
506 CALIB_SENSOR_AEC_INITTIMEVALUE_TAG_ID,
507 CALIB_SENSOR_AEC_INITGAINVALUE_TAG_ID,
508 CALIB_SENSOR_AEC_INITISPDGAINVALUE_TAG_ID,
509 CALIB_SENSOR_AEC_INITPIRISVALUE_TAG_ID,
510 CALIB_SENSOR_AEC_INITDCIRISVALUE_TAG_ID,
511 CALIB_SENSOR_AEC_INITHDCIRISVALUE_TAG_ID,
512 };
513
514 uint32_t calib_sensor_aec_AecInitValue_HdrAE_sub_tags[] = {
515 CALIB_SENSOR_AEC_INITTIMEVALUE_TAG_ID,
516 CALIB_SENSOR_AEC_INITGAINVALUE_TAG_ID,
517 CALIB_SENSOR_AEC_INITISPDGAINVALUE_TAG_ID,
518 CALIB_SENSOR_AEC_INITPIRISVALUE_TAG_ID,
519 CALIB_SENSOR_AEC_INITDCIRISVALUE_TAG_ID,
520 CALIB_SENSOR_AEC_INITHDCIRISVALUE_TAG_ID,
521 };
522
523 uint32_t calib_sensor_aec_AecGridWeight_sub_tags[] = {
524 CALIB_SENSOR_AEC_DAYGRIDWEIGHTS_TAG_ID,
525 CALIB_SENSOR_AEC_NIGHTGRIDWEIGHTS_TAG_ID,
526 };
527
528 uint32_t calib_sensor_aec_AecRoute_sub_tags[] = {
529 CALIB_SENSOR_AEC_AECROUTE_LINEARAE_TAG_ID,
530 CALIB_SENSOR_AEC_AECROUTE_HDRAE_TAG_ID,
531 };
532
533 uint32_t calib_sensor_aec_AecRoute_LinearAE_sub_tags[] = {
534 CALIB_SENSOR_AEC_NAME_TAG_ID,
535 CALIB_SENSOR_AEC_TIMEDOT_TAG_ID,
536 CALIB_SENSOR_AEC_GAINDOT_TAG_ID,
537 CALIB_SENSOR_AEC_ISPDGAINDOT_TAG_ID,
538 CALIB_SENSOR_AEC_PIRISDOT_TAG_ID,
539 };
540
541 uint32_t calib_sensor_aec_AecRoute_HdrAE_sub_tags[] = {
542 CALIB_SENSOR_AEC_NAME_TAG_ID,
543 CALIB_SENSOR_AEC_LTIMEDOT_TAG_ID,
544 CALIB_SENSOR_AEC_MTIMEDOT_TAG_ID,
545 CALIB_SENSOR_AEC_STIMEDOT_TAG_ID,
546 CALIB_SENSOR_AEC_LGAINDOT_TAG_ID,
547 CALIB_SENSOR_AEC_MGAINDOT_TAG_ID,
548 CALIB_SENSOR_AEC_SGAINDOT_TAG_ID,
549 CALIB_SENSOR_AEC_LISPDGAINDOT_TAG_ID,
550 CALIB_SENSOR_AEC_MISPDGAINDOT_TAG_ID,
551 CALIB_SENSOR_AEC_SISPDGAINDOT_TAG_ID,
552 CALIB_SENSOR_AEC_PIRISDOT_TAG_ID,
553 };
554
555 uint32_t calib_sensor_aec_AecDNSwitch_sub_tags[] = {
556 CALIB_SENSOR_AEC_AECDNSWITCH_DNTRIGGER_TAG_ID,
557 CALIB_SENSOR_AEC_AECDNSWITCH_DNMODE_TAG_ID,
558 CALIB_SENSOR_AEC_AECDNSWITCH_FILLLIGHTMODE_TAG_ID,
559 CALIB_SENSOR_AEC_AECDNSWITCH_D2NFACTH_TAG_ID,
560 CALIB_SENSOR_AEC_AECDNSWITCH_D2NFRMCNT_TAG_ID,
561 CALIB_SENSOR_AEC_AECDNSWITCH_VBNIGHTMODE_TAG_ID,
562 CALIB_SENSOR_AEC_AECDNSWITCH_IRNIGHTMODE_TAG_ID,
563 };
564
565 uint32_t calib_sensor_aec_VBNightMode_sub_tags[] = {
566 CALIB_SENSOR_AEC_ENABLE_TAG_ID,
567 CALIB_SENSOR_AEC_AECDNSWITCH_N2DFRMCNT_TAG_ID,
568 CALIB_SENSOR_AEC_AECDNSWITCH_N2DFACTH_TAG_ID,
569 };
570
571 uint32_t calib_sensor_aec_IRNightMode_sub_tags[] = {
572 CALIB_SENSOR_AEC_ENABLE_TAG_ID,
573 CALIB_SENSOR_AEC_AECDNSWITCH_IR_RG_TAG_ID,
574 CALIB_SENSOR_AEC_AECDNSWITCH_IR_BG_TAG_ID,
575 CALIB_SENSOR_AEC_AECDNSWITCH_MAX_DIS_TAG_ID,
576 CALIB_SENSOR_AEC_AECDNSWITCH_N2DFRMCNT_TAG_ID,
577 CALIB_SENSOR_AEC_AECDNSWITCH_N2DFACTH_TAG_ID,
578 CALIB_SENSOR_AEC_AECDNSWITCH_VB_PERCENT_TAG_ID,
579 };
580
581 uint32_t calib_sensor_aec_AecIrisCtrl_sub_tags[] = {
582 CALIB_SENSOR_AEC_IRISCTRL_ENABLE_TAG_ID,
583 CALIB_SENSOR_AEC_IRISCTRL_TYPE_TAG_ID,
584 CALIB_SENSOR_AEC_IRISCTRL_P_ATTR_TAG_ID,
585 CALIB_SENSOR_AEC_IRISCTRL_DC_ATTR_TAG_ID,
586 CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_TAG_ID,
587 };
588
589 uint32_t calib_sensor_aec_AecIrisCtrl_PAttr_sub_tags[] = {
590 CALIB_SENSOR_AEC_IRISCTRL_P_ATTR_TOTALSTEP_TAG_ID,
591 CALIB_SENSOR_AEC_IRISCTRL_P_ATTR_EFFCSTEP_TAG_ID,
592 CALIB_SENSOR_AEC_IRISCTRL_P_ATTR_ZEROISMAX_TAG_ID,
593 CALIB_SENSOR_AEC_IRISCTRL_P_ATTR_STEPTABLE_TAG_ID,
594 };
595
596 uint32_t calib_sensor_aec_AecIrisCtrl_DCAttr_sub_tags[] = {
597 CALIB_SENSOR_AEC_IRISCTRL_DC_ATTR_KP_TAG_ID,
598 CALIB_SENSOR_AEC_IRISCTRL_DC_ATTR_KI_TAG_ID,
599 CALIB_SENSOR_AEC_IRISCTRL_DC_ATTR_KD_TAG_ID,
600 CALIB_SENSOR_AEC_IRISCTRL_DC_ATTR_MIN_PWMDUTY_TAG_ID,
601 CALIB_SENSOR_AEC_IRISCTRL_DC_ATTR_MAX_PWMDUTY_TAG_ID,
602 CALIB_SENSOR_AEC_IRISCTRL_DC_ATTR_OPEN_PWMDUTY_TAG_ID,
603 CALIB_SENSOR_AEC_IRISCTRL_DC_ATTR_CLOSE_PWMDUTY_TAG_ID,
604 };
605
606 uint32_t calib_sensor_aec_AecIrisCtrl_HDCAttr_sub_tags[] = {
607 CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_DAMPOVER_TAG_ID,
608 CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_DAMPUNDER_TAG_ID,
609 CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_ZEROISMAX_TAG_ID,
610 CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_MINTARGET_TAG_ID,
611 CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_MAXTARGET_TAG_ID,
612 CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_ZOOMTARGETDOT_TAG_ID,
613 CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_ZOOMDOT_TAG_ID,
614 CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_IRISTARGETDOT_TAG_ID,
615 CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_GAINDOT_TAG_ID,
616 };
617
618 uint32_t calib_sensor_aec_AecManualCtrl_sub_tags[] = {
619 CALIB_SENSOR_AEC_MANUALCTRL_LINEARAE_TAG_ID,
620 CALIB_SENSOR_AEC_MANUALCTRL_HDRAE_TAG_ID,
621 };
622
623 uint32_t calib_sensor_aec_AecManualCtrl_LinearAE_sub_tags[] = {
624 CALIB_SENSOR_AEC_MANUALCTRL_TIMEEN_TAG_ID,
625 CALIB_SENSOR_AEC_MANUALCTRL_GAINEN_TAG_ID,
626 CALIB_SENSOR_AEC_MANUALCTRL_ISPDGAINEN_TAG_ID,
627 CALIB_SENSOR_AEC_MANUALCTRL_IRISEN_TAG_ID,
628 CALIB_SENSOR_AEC_MANUALCTRL_TIMEVALUE_TAG_ID,
629 CALIB_SENSOR_AEC_MANUALCTRL_GAINVALUE_TAG_ID,
630 CALIB_SENSOR_AEC_MANUALCTRL_ISPDGAINVALUE_TAG_ID,
631 CALIB_SENSOR_AEC_MANUALCTRL_PIRISVALUE_TAG_ID,
632 CALIB_SENSOR_AEC_MANUALCTRL_DCIRISVALUE_TAG_ID,
633 CALIB_SENSOR_AEC_MANUALCTRL_HDCIRISVALUE_TAG_ID,
634 };
635 uint32_t calib_sensor_aec_AecManualCtrl_HdrAE_sub_tags[] = {
636 CALIB_SENSOR_AEC_MANUALCTRL_TIMEEN_TAG_ID,
637 CALIB_SENSOR_AEC_MANUALCTRL_GAINEN_TAG_ID,
638 CALIB_SENSOR_AEC_MANUALCTRL_ISPDGAINEN_TAG_ID,
639 CALIB_SENSOR_AEC_MANUALCTRL_IRISEN_TAG_ID,
640 CALIB_SENSOR_AEC_MANUALCTRL_TIMEVALUE_TAG_ID,
641 CALIB_SENSOR_AEC_MANUALCTRL_GAINVALUE_TAG_ID,
642 CALIB_SENSOR_AEC_MANUALCTRL_ISPDGAINVALUE_TAG_ID,
643 CALIB_SENSOR_AEC_MANUALCTRL_PIRISVALUE_TAG_ID,
644 CALIB_SENSOR_AEC_MANUALCTRL_DCIRISVALUE_TAG_ID,
645 CALIB_SENSOR_AEC_MANUALCTRL_HDCIRISVALUE_TAG_ID,
646 };
647
648 uint32_t calib_sensor_aec_AecEnvLvCalib_sub_tags[] = {
649 CALIB_SENSOR_AEC_ENVLVCALIB_CALIBFNUMBER_TAG_ID,
650 CALIB_SENSOR_AEC_ENVLVCALIB_CURVECOEFF_TAG_ID,
651 };
652
653
654 uint32_t calib_sensor_aec_LinearAECtrl_sub_tags[] = {
655 CALIB_SENSOR_AEC_SETPOINT_TAG_ID,
656 CALIB_SENSOR_AEC_RAWSTATS_EN_TAG_ID,
657 CALIB_SENSOR_AEC_NIGHTSETPOINT_TAG_ID,
658 CALIB_SENSOR_AEC_DYSETPOINTEN_TAG_ID,
659 CALIB_SENSOR_AEC_DYNAMICSETPOINT_TAG_ID,
660 CALIB_SENSOR_AEC_EVBIAS_TAG_ID,
661 CALIB_SENSOR_AEC_TOLERANCE_IN_TAG_ID,
662 CALIB_SENSOR_AEC_TOLERANCE_OUT_TAG_ID,
663 CALIB_SENSOR_AEC_STRATEGYMODE_TAG_ID,
664 CALIB_SENSOR_LINAECTRL_BACKLIGHT_CONFIG_TAG_ID,
665 CALIB_SENSOR_LINAECTRL_OVEREXP_CONTROL_TAG_ID,
666 };
667
668 uint32_t calib_sensor_aec_DySetPointEn_sub_tags[] = {
669 CALIB_SENSOR_AEC_NAME_TAG_ID,
670 CALIB_SENSOR_AEC_EXPLEVEL_TAG_ID,
671 CALIB_SENSOR_AEC_DYSETPOINT_TAG_ID,
672 };
673
674
675 uint32_t calib_sensor_aec_BackLight_sub_tags[] = {
676 CALIB_SENSOR_LINAECTRL_BACKLIGHT_ENABLE_TAG_ID,
677 CALIB_SENSOR_LINAECTRL_BACKLIGHT_MEASAREA_TAG_ID,
678 CALIB_SENSOR_LINAECTRL_BACKLIGHT_OEROI_LOWTH_TAG_ID,
679 CALIB_SENSOR_LINAECTRL_BACKLIGHT_LV_LOWTH_TAG_ID,
680 CALIB_SENSOR_LINAECTRL_BACKLIGHT_LV_HIGHTH_TAG_ID,
681 CALIB_SENSOR_LINAECTRL_BACKLIGHT_NONOEPDFTH_TAG_ID,
682 CALIB_SENSOR_LINAECTRL_BACKLIGHT_LOWLIGHTPDFTH_TAG_ID,
683 CALIB_SENSOR_LINAECTRL_BACKLIGHT_EXPLEVEL_TAG_ID,
684 CALIB_SENSOR_LINAECTRL_BACKLIGHT_TARGETLLLUMA_TAG_ID,
685 CALIB_SENSOR_LINAECTRL_BACKLIGHT_LUMADISTTH_TAG_ID,
686 };
687
688 uint32_t calib_sensor_aec_OverExp_sub_tags[] = {
689 CALIB_SENSOR_LINAECTRL_OVEREXP_ENABLE_TAG_ID,
690 CALIB_SENSOR_LINAECTRL_OVEREXP_HIGHLIGHT_TH_TAG_ID,
691 CALIB_SENSOR_LINAECTRL_OVEREXP_LOWLIGHT_TH_TAG_ID,
692 CALIB_SENSOR_LINAECTRL_OVEREXP_MAXWEIGHT_TAG_ID,
693 CALIB_SENSOR_LINAECTRL_OVEREXP_OEPDF_TAG_ID,
694 CALIB_SENSOR_LINAECTRL_OVEREXP_HIGHLIGHT_WEIGHT_TAG_ID,
695 CALIB_SENSOR_LINAECTRL_OVEREXP_LOWLIGHT_WEIGHT_TAG_ID,
696 };
697
698 uint32_t calib_sensor_aec_HdrAECtrl_sub_tags[] = {
699 CALIB_SENSOR_AEC_EVBIAS_TAG_ID,
700 CALIB_SENSOR_AEC_TOLERANCE_IN_TAG_ID,
701 CALIB_SENSOR_AEC_TOLERANCE_OUT_TAG_ID,
702 CALIB_SENSOR_AEC_STRATEGYMODE_TAG_ID,
703 CALIB_SENSOR_AEC_HDRAECTRL_EXPRATIOCTRL_TAG_ID,
704 CALIB_SENSOR_AEC_HDRAECTRL_LUMADISTTH_TAG_ID,
705 CALIB_SENSOR_AEC_HDRAECTRL_LFRAMECTRL_TAG_ID,
706 CALIB_SENSOR_AEC_HDRAECTRL_LONGFRMMODE_TAG_ID,
707 CALIB_SENSOR_AEC_HDRAECTRL_MFRAMECTRL_TAG_ID,
708 CALIB_SENSOR_AEC_HDRAECTRL_SFRAMECTRL_TAG_ID,
709 };
710
711 uint32_t calib_sensor_aec_LongFrmMode_sub_tags[] = {
712 CALIB_SENSOR_AEC_HDRAECTRL_LONGFRMMODE_MODE_TAG_ID,
713 CALIB_SENSOR_AEC_HDRAECTRL_LONGFRMMODE_SFRMMINLINE_TAG_ID,
714 CALIB_SENSOR_AEC_HDRAECTRL_LONGFRMMODE_LFRMMODEEXPTH_TAG_ID,
715 };
716
717 uint32_t calib_sensor_aec_ExpRatioCtrl_sub_tags[] = {
718 CALIB_SENSOR_AEC_HDRAECTRL_EXPRATIOTYPE_TAG_ID,
719 CALIB_SENSOR_AEC_HDRAECTRL_RATIOEXPDOT_TAG_ID,
720 CALIB_SENSOR_AEC_HDRAECTRL_M2SRATIOFIX_TAG_ID,
721 CALIB_SENSOR_AEC_HDRAECTRL_L2MRATIOFIX_TAG_ID,
722 CALIB_SENSOR_AEC_HDRAECTRL_M2SRATIOMAX_TAG_ID,
723 CALIB_SENSOR_AEC_HDRAECTRL_L2MRATIOMAX_TAG_ID,
724 };
725
726 uint32_t calib_sensor_aec_LframeCtrl_sub_tags[] = {
727 CALIB_SENSOR_AEC_HDRAECTRL_OEROILOWTH_TAG_ID,
728 CALIB_SENSOR_AEC_HDRAECTRL_LVHIGHTH_TAG_ID,
729 CALIB_SENSOR_AEC_HDRAECTRL_LVLOWTH_TAG_ID,
730 CALIB_SENSOR_AEC_HDRAECTRL_LEXPLEVEL_TAG_ID,
731 CALIB_SENSOR_AEC_HDRAECTRL_LSETPOINT_TAG_ID,
732 CALIB_SENSOR_AEC_HDRAECTRL_TARGETLLLUMA_TAG_ID,
733 CALIB_SENSOR_AEC_HDRAECTRL_NONOEPDFTH_TAG_ID,
734 CALIB_SENSOR_AEC_HDRAECTRL_LOWLIGHTPDFTH_TAG_ID,
735 };
736
737 uint32_t calib_sensor_aec_MframeCtrl_sub_tags[] = {
738 CALIB_SENSOR_AEC_HDRAECTRL_MEXPLEVEL_TAG_ID,
739 CALIB_SENSOR_AEC_HDRAECTRL_MSETPOINT_TAG_ID,
740 };
741
742 uint32_t calib_sensor_aec_SframeCtrl_sub_tags[] = {
743 CALIB_SENSOR_AEC_HDRAECTRL_SEXPLEVEL_TAG_ID,
744 CALIB_SENSOR_AEC_HDRAECTRL_SSETPOINT_TAG_ID,
745 CALIB_SENSOR_AEC_HDRAECTRL_TARGETHLLUMA_TAG_ID,
746 CALIB_SENSOR_AEC_HDRAECTRL_HLROIEXPANDEN_TAG_ID,
747 CALIB_SENSOR_AEC_HDRAECTRL_HLLUMATOLERANCE_TAG_ID,
748 };
749
750 //AEC V21
751 uint32_t calib_sensor_aec_v21_sub_tags[] = {
752 CALIB_SENSOR_AEC_V21_CALIBPARA_TAG_ID,
753 CALIB_SENSOR_AEC_V21_TUNEPARA_TAG_ID,
754 };
755
756 uint32_t calib_sensor_aec_calibpara_v21_sub_tags[] = {
757 CALIB_SENSOR_AEC_V21_CALIBSCENE_TAG_ID,
758 CALIB_SENSOR_AEC_V21_WINSCALE_TAG_ID,
759 CALIB_SENSOR_AEC_V21_ENVLVCALIB_TAG_ID,
760 };
761
762 uint32_t calib_sensor_aec_winscale_v21_sub_tags[] = {
763 CALIB_SENSOR_AEC_V21_WINSCALE_INRAW_TAG_ID,
764 CALIB_SENSOR_AEC_V21_WINSCALE_TMORAW_TAG_ID,
765 CALIB_SENSOR_AEC_V21_WINSCALE_YUVRAW_TAG_ID,
766 };
767
768 uint32_t calib_sensor_aec_tunepara_v21_sub_tags[] = {
769 CALIB_SENSOR_AEC_V21_TUNESCENE_TAG_ID,
770 CALIB_SENSOR_AEC_V21_ENABLE_TAG_ID,
771 CALIB_SENSOR_AEC_V21_AECRUNINTERVAL_TAG_ID,
772 CALIB_SENSOR_AEC_V21_AECOPTYPE_TAG_ID,
773 CALIB_SENSOR_AEC_V21_HISTSTATSMODE_TAG_ID,
774 CALIB_SENSOR_AEC_V21_RAWSTATSMODE_TAG_ID,
775 CALIB_SENSOR_AEC_V21_YRANGEMODE_TAG_ID,
776 CALIB_SENSOR_AEC_V21_SYNCTEST_TAG_ID,
777 CALIB_SENSOR_AEC_V21_AECSPEED_TAG_ID,
778 CALIB_SENSOR_AEC_V21_AECDELAYFRMNUM_TAG_ID,
779 CALIB_SENSOR_AEC_V21_AECFRAMERATEMODE_TAG_ID,
780 CALIB_SENSOR_AEC_V21_ANTIFLICKER_TAG_ID,
781 CALIB_SENSOR_AEC_V21_AECINITVALUE_TAG_ID,
782 CALIB_SENSOR_AEC_V21_AECGRIDWEIGHT_TAG_ID,
783 CALIB_SENSOR_AEC_V21_AECROUTE_TAG_ID,
784 CALIB_SENSOR_AEC_V21_AECDNSWITCH_TAG_ID,
785 CALIB_SENSOR_AEC_V21_IRISCTRL_TAG_ID,
786 CALIB_SENSOR_AEC_V21_MANUALCTRL_TAG_ID,
787 CALIB_SENSOR_AEC_V21_LINEARAE_CTRL_TAG_ID,
788 CALIB_SENSOR_AEC_V21_HDRAECTRL_TAG_ID,
789 };
790
791 uint32_t calib_sensor_aec_AecSyncTest_v21_sub_tags[] = {
792 CALIB_SENSOR_AEC_V21_SYNCTEST_ENABLE_TAG_ID,
793 CALIB_SENSOR_AEC_V21_SYNCTEST_INTERVALFRM_TAG_ID,
794 CALIB_SENSOR_AEC_V21_SYNCTEST_ALTEREXP_TAG_ID,
795 };
796
797 uint32_t calib_sensor_aec_AecSyncTest_AlterExp_v21_sub_tags[] = {
798 CALIB_SENSOR_AEC_V21_SYNCTEST_LINALTEREXP_TAG_ID,
799 CALIB_SENSOR_AEC_V21_SYNCTEST_HDRALTEREXP_TAG_ID,
800 };
801
802 uint32_t calib_sensor_aec_AecSyncTest_LinAlterExp_v21_sub_tags[] = {
803 CALIB_SENSOR_AEC_V21_SYNCTEST_TIMEVALUE_TAG_ID,
804 CALIB_SENSOR_AEC_V21_SYNCTEST_GAINVALUE_TAG_ID,
805 CALIB_SENSOR_AEC_V21_SYNCTEST_ISPGAINVALUE_TAG_ID,
806 CALIB_SENSOR_AEC_V21_SYNCTEST_DCGMODE_TAG_ID,
807 CALIB_SENSOR_AEC_V21_SYNCTEST_PIRISVALUE_TAG_ID,
808 };
809
810 uint32_t calib_sensor_aec_AecSyncTest_HdrAlterExp_v21_sub_tags[] = {
811 CALIB_SENSOR_AEC_V21_SYNCTEST_TIMEVALUE_TAG_ID,
812 CALIB_SENSOR_AEC_V21_SYNCTEST_GAINVALUE_TAG_ID,
813 CALIB_SENSOR_AEC_V21_SYNCTEST_ISPGAINVALUE_TAG_ID,
814 CALIB_SENSOR_AEC_V21_SYNCTEST_DCGMODE_TAG_ID,
815 CALIB_SENSOR_AEC_V21_SYNCTEST_PIRISVALUE_TAG_ID,
816 };
817
818 uint32_t calib_sensor_aec_AecSpeed_v21_sub_tags[] = {
819 CALIB_SENSOR_AEC_V21_DAMPOVER_TAG_ID,
820 CALIB_SENSOR_AEC_V21_DAMPUNDER_TAG_ID,
821 CALIB_SENSOR_AEC_V21_DAMPDARK2BRIGHT_TAG_ID,
822 CALIB_SENSOR_AEC_V21_DAMPBRIGHT2DARK_TAG_ID,
823 };
824
825 uint32_t calib_sensor_aec_AecDelayFrmNum_v21_sub_tags[] = {
826 CALIB_SENSOR_AEC_V21_BLACKDELAY_TAG_ID,
827 CALIB_SENSOR_AEC_V21_WHITEDELAY_TAG_ID,
828 };
829
830 uint32_t calib_sensor_aec_AecFrameRateMode_v21_sub_tags[] = {
831 CALIB_SENSOR_AEC_V21_ISFPSFIX_TAG_ID,
832 CALIB_SENSOR_AEC_V21_FPSVALUE_TAG_ID,
833 };
834
835 uint32_t calib_sensor_aec_AecAntiFlicker_v21_sub_tags[] = {
836 CALIB_SENSOR_AEC_V21_ANTIFLICKER_ENABLE_TAG_ID,
837 CALIB_SENSOR_AEC_V21_ANTIFLICKER_FREQ_TAG_ID,
838 CALIB_SENSOR_AEC_V21_ANTIFLICKER_MODE_TAG_ID,
839 };
840
841 uint32_t calib_sensor_aec_AecInitValue_v21_sub_tags[] = {
842 CALIB_SENSOR_AEC_V21_AECINITVALUE_LINEARAE_TAG_ID,
843 CALIB_SENSOR_AEC_V21_AECINITVALUE_HDRAE_TAG_ID,
844 };
845
846 uint32_t calib_sensor_aec_AecInitValue_LinearAE_v21_sub_tags[] = {
847 CALIB_SENSOR_AEC_V21_INITTIMEVALUE_TAG_ID,
848 CALIB_SENSOR_AEC_V21_INITGAINVALUE_TAG_ID,
849 CALIB_SENSOR_AEC_V21_INITISPDGAINVALUE_TAG_ID,
850 CALIB_SENSOR_AEC_V21_INITPIRISVALUE_TAG_ID,
851 CALIB_SENSOR_AEC_V21_INITDCIRISVALUE_TAG_ID,
852 CALIB_SENSOR_AEC_V21_INITHDCIRISVALUE_TAG_ID,
853 };
854
855 uint32_t calib_sensor_aec_AecInitValue_HdrAE_v21_sub_tags[] = {
856 CALIB_SENSOR_AEC_V21_INITTIMEVALUE_TAG_ID,
857 CALIB_SENSOR_AEC_V21_INITGAINVALUE_TAG_ID,
858 CALIB_SENSOR_AEC_V21_INITISPDGAINVALUE_TAG_ID,
859 CALIB_SENSOR_AEC_V21_INITPIRISVALUE_TAG_ID,
860 CALIB_SENSOR_AEC_V21_INITDCIRISVALUE_TAG_ID,
861 CALIB_SENSOR_AEC_V21_INITHDCIRISVALUE_TAG_ID,
862 };
863
864 uint32_t calib_sensor_aec_AecRoute_v21_sub_tags[] = {
865 CALIB_SENSOR_AEC_V21_AECROUTE_LINEARAE_TAG_ID,
866 CALIB_SENSOR_AEC_V21_AECROUTE_HDRAE_TAG_ID,
867 };
868
869 uint32_t calib_sensor_aec_AecRoute_LinearAE_v21_sub_tags[] = {
870 CALIB_SENSOR_AEC_V21_TIMEDOT_TAG_ID,
871 CALIB_SENSOR_AEC_V21_GAINDOT_TAG_ID,
872 CALIB_SENSOR_AEC_V21_ISPDGAINDOT_TAG_ID,
873 CALIB_SENSOR_AEC_V21_PIRISDOT_TAG_ID,
874 };
875
876 uint32_t calib_sensor_aec_AecRoute_HdrAE_v21_sub_tags[] = {
877 CALIB_SENSOR_AEC_V21_LTIMEDOT_TAG_ID,
878 CALIB_SENSOR_AEC_V21_MTIMEDOT_TAG_ID,
879 CALIB_SENSOR_AEC_V21_STIMEDOT_TAG_ID,
880 CALIB_SENSOR_AEC_V21_LGAINDOT_TAG_ID,
881 CALIB_SENSOR_AEC_V21_MGAINDOT_TAG_ID,
882 CALIB_SENSOR_AEC_V21_SGAINDOT_TAG_ID,
883 CALIB_SENSOR_AEC_V21_LISPDGAINDOT_TAG_ID,
884 CALIB_SENSOR_AEC_V21_MISPDGAINDOT_TAG_ID,
885 CALIB_SENSOR_AEC_V21_SISPDGAINDOT_TAG_ID,
886 CALIB_SENSOR_AEC_V21_PIRISDOT_TAG_ID,
887 };
888
889 uint32_t calib_sensor_aec_AecDNSwitch_v21_sub_tags[] = {
890 CALIB_SENSOR_AEC_V21_AECDNSWITCH_DNTRIGGER_TAG_ID,
891 CALIB_SENSOR_AEC_V21_AECDNSWITCH_DNMODE_TAG_ID,
892 CALIB_SENSOR_AEC_V21_AECDNSWITCH_FILLLIGHTMODE_TAG_ID,
893 CALIB_SENSOR_AEC_V21_AECDNSWITCH_D2NFACTH_TAG_ID,
894 CALIB_SENSOR_AEC_V21_AECDNSWITCH_D2NFRMCNT_TAG_ID,
895 CALIB_SENSOR_AEC_V21_AECDNSWITCH_VBNIGHTMODE_TAG_ID,
896 CALIB_SENSOR_AEC_V21_AECDNSWITCH_IRNIGHTMODE_TAG_ID,
897 };
898
899 uint32_t calib_sensor_aec_VBNightMode_v21_sub_tags[] = {
900 CALIB_SENSOR_AEC_V21_ENABLE_TAG_ID,
901 CALIB_SENSOR_AEC_V21_AECDNSWITCH_N2DFRMCNT_TAG_ID,
902 CALIB_SENSOR_AEC_V21_AECDNSWITCH_N2DFACTH_TAG_ID,
903 };
904
905 uint32_t calib_sensor_aec_IRNightMode_v21_sub_tags[] = {
906 CALIB_SENSOR_AEC_V21_ENABLE_TAG_ID,
907 CALIB_SENSOR_AEC_V21_AECDNSWITCH_IR_RG_TAG_ID,
908 CALIB_SENSOR_AEC_V21_AECDNSWITCH_IR_BG_TAG_ID,
909 CALIB_SENSOR_AEC_V21_AECDNSWITCH_MAX_DIS_TAG_ID,
910 CALIB_SENSOR_AEC_V21_AECDNSWITCH_N2DFRMCNT_TAG_ID,
911 CALIB_SENSOR_AEC_V21_AECDNSWITCH_N2DFACTH_TAG_ID,
912 CALIB_SENSOR_AEC_V21_AECDNSWITCH_VB_PERCENT_TAG_ID,
913 };
914
915 uint32_t calib_sensor_aec_AecIrisCtrl_v21_sub_tags[] = {
916 CALIB_SENSOR_AEC_V21_IRISCTRL_ENABLE_TAG_ID,
917 CALIB_SENSOR_AEC_V21_IRISCTRL_TYPE_TAG_ID,
918 CALIB_SENSOR_AEC_V21_IRISCTRL_P_ATTR_TAG_ID,
919 CALIB_SENSOR_AEC_V21_IRISCTRL_DC_ATTR_TAG_ID,
920 CALIB_SENSOR_AEC_V21_INITHDCIRISVALUE_TAG_ID,
921 };
922 uint32_t calib_sensor_aec_AecIrisCtrl_PAttr_v21_sub_tags[] = {
923 CALIB_SENSOR_AEC_V21_IRISCTRL_P_ATTR_TOTALSTEP_TAG_ID,
924 CALIB_SENSOR_AEC_V21_IRISCTRL_P_ATTR_EFFCSTEP_TAG_ID,
925 CALIB_SENSOR_AEC_V21_IRISCTRL_P_ATTR_ZEROISMAX_TAG_ID,
926 CALIB_SENSOR_AEC_V21_IRISCTRL_P_ATTR_STEPTABLE_TAG_ID,
927 };
928
929 uint32_t calib_sensor_aec_AecIrisCtrl_DCAttr_v21_sub_tags[] = {
930 CALIB_SENSOR_AEC_V21_IRISCTRL_DC_ATTR_KP_TAG_ID,
931 CALIB_SENSOR_AEC_V21_IRISCTRL_DC_ATTR_KI_TAG_ID,
932 CALIB_SENSOR_AEC_V21_IRISCTRL_DC_ATTR_KD_TAG_ID,
933 CALIB_SENSOR_AEC_V21_IRISCTRL_DC_ATTR_MIN_PWMDUTY_TAG_ID,
934 CALIB_SENSOR_AEC_V21_IRISCTRL_DC_ATTR_MAX_PWMDUTY_TAG_ID,
935 CALIB_SENSOR_AEC_V21_IRISCTRL_DC_ATTR_OPEN_PWMDUTY_TAG_ID,
936 CALIB_SENSOR_AEC_V21_IRISCTRL_DC_ATTR_CLOSE_PWMDUTY_TAG_ID,
937 };
938
939 uint32_t calib_sensor_aec_AecIrisCtrl_HDCAttr_v21_sub_tags[] = {
940 CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_DAMPOVER_TAG_ID,
941 CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_DAMPUNDER_TAG_ID,
942 CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_ZEROISMAX_TAG_ID,
943 CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_MINTARGET_TAG_ID,
944 CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_MAXTARGET_TAG_ID,
945 CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_ZOOMTARGETDOT_TAG_ID,
946 CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_ZOOMDOT_TAG_ID,
947 CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_IRISTARGETDOT_TAG_ID,
948 CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_GAINDOT_TAG_ID,
949 };
950
951 uint32_t calib_sensor_aec_AecManualCtrl_v21_sub_tags[] = {
952 CALIB_SENSOR_AEC_V21_MANUALCTRL_LINEARAE_TAG_ID,
953 CALIB_SENSOR_AEC_V21_MANUALCTRL_HDRAE_TAG_ID,
954 };
955
956 uint32_t calib_sensor_aec_AecManualCtrl_LinearAE_v21_sub_tags[] = {
957 CALIB_SENSOR_AEC_V21_MANUALCTRL_TIMEEN_TAG_ID,
958 CALIB_SENSOR_AEC_V21_MANUALCTRL_GAINEN_TAG_ID,
959 CALIB_SENSOR_AEC_V21_MANUALCTRL_ISPDGAINEN_TAG_ID,
960 CALIB_SENSOR_AEC_V21_MANUALCTRL_IRISEN_TAG_ID,
961 CALIB_SENSOR_AEC_V21_MANUALCTRL_TIMEVALUE_TAG_ID,
962 CALIB_SENSOR_AEC_V21_MANUALCTRL_GAINVALUE_TAG_ID,
963 CALIB_SENSOR_AEC_V21_MANUALCTRL_ISPDGAINVALUE_TAG_ID,
964 CALIB_SENSOR_AEC_V21_MANUALCTRL_PIRISVALUE_TAG_ID,
965 CALIB_SENSOR_AEC_V21_MANUALCTRL_DCIRISVALUE_TAG_ID,
966 CALIB_SENSOR_AEC_V21_MANUALCTRL_HDCIRISVALUE_TAG_ID,
967 };
968 uint32_t calib_sensor_aec_AecManualCtrl_HdrAE_v21_sub_tags[] = {
969 CALIB_SENSOR_AEC_V21_MANUALCTRL_TIMEEN_TAG_ID,
970 CALIB_SENSOR_AEC_V21_MANUALCTRL_GAINEN_TAG_ID,
971 CALIB_SENSOR_AEC_V21_MANUALCTRL_ISPDGAINEN_TAG_ID,
972 CALIB_SENSOR_AEC_V21_MANUALCTRL_IRISEN_TAG_ID,
973 CALIB_SENSOR_AEC_V21_MANUALCTRL_TIMEVALUE_TAG_ID,
974 CALIB_SENSOR_AEC_V21_MANUALCTRL_GAINVALUE_TAG_ID,
975 CALIB_SENSOR_AEC_V21_MANUALCTRL_ISPDGAINVALUE_TAG_ID,
976 CALIB_SENSOR_AEC_V21_MANUALCTRL_PIRISVALUE_TAG_ID,
977 CALIB_SENSOR_AEC_V21_MANUALCTRL_DCIRISVALUE_TAG_ID,
978 CALIB_SENSOR_AEC_V21_MANUALCTRL_HDCIRISVALUE_TAG_ID,
979 };
980
981 uint32_t calib_sensor_aec_AecEnvLvCalib_v21_sub_tags[] = {
982 CALIB_SENSOR_AEC_V21_ENVLVCALIB_CALIBFNUMBER_TAG_ID,
983 CALIB_SENSOR_AEC_V21_ENVLVCALIB_CURVECOEFF_TAG_ID,
984 };
985
986
987 uint32_t calib_sensor_aec_LinearAECtrl_v21_sub_tags[] = {
988 CALIB_SENSOR_AEC_V21_SETPOINT_TAG_ID,
989 CALIB_SENSOR_AEC_V21_RAWSTATS_EN_TAG_ID,
990 CALIB_SENSOR_AEC_V21_NIGHTSETPOINT_TAG_ID,
991 CALIB_SENSOR_AEC_V21_DYSETPOINTEN_TAG_ID,
992 CALIB_SENSOR_AEC_V21_DYNAMICSETPOINT_TAG_ID,
993 CALIB_SENSOR_AEC_V21_EVBIAS_TAG_ID,
994 CALIB_SENSOR_AEC_V21_TOLERANCE_IN_TAG_ID,
995 CALIB_SENSOR_AEC_V21_TOLERANCE_OUT_TAG_ID,
996 CALIB_SENSOR_AEC_V21_STRATEGYMODE_TAG_ID,
997 CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_CONFIG_TAG_ID,
998 CALIB_SENSOR_AEC_V21_LINAECTRL_OVEREXP_CONTROL_TAG_ID,
999 };
1000
1001 uint32_t calib_sensor_aec_DySetPointEn_v21_sub_tags[] = {
1002 CALIB_SENSOR_AEC_V21_EXPLEVEL_TAG_ID,
1003 CALIB_SENSOR_AEC_V21_DYSETPOINT_TAG_ID,
1004 };
1005
1006
1007 uint32_t calib_sensor_aec_BackLight_v21_sub_tags[] = {
1008 CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_ENABLE_TAG_ID,
1009 CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_MEASAREA_TAG_ID,
1010 CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_OEROI_LOWTH_TAG_ID,
1011 CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_LV_LOWTH_TAG_ID,
1012 CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_LV_HIGHTH_TAG_ID,
1013 CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_NONOEPDFTH_TAG_ID,
1014 CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_LOWLIGHTPDFTH_TAG_ID,
1015 CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_EXPLEVEL_TAG_ID,
1016 CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_TARGETLLLUMA_TAG_ID,
1017 CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_LUMADISTTH_TAG_ID,
1018 };
1019
1020 uint32_t calib_sensor_aec_OverExp_v21_sub_tags[] = {
1021 CALIB_SENSOR_AEC_V21_LINAECTRL_OVEREXP_ENABLE_TAG_ID,
1022 CALIB_SENSOR_AEC_V21_LINAECTRL_OVEREXP_HIGHLIGHT_TH_TAG_ID,
1023 CALIB_SENSOR_AEC_V21_LINAECTRL_OVEREXP_LOWLIGHT_TH_TAG_ID,
1024 CALIB_SENSOR_AEC_V21_LINAECTRL_OVEREXP_MAXWEIGHT_TAG_ID,
1025 CALIB_SENSOR_AEC_V21_LINAECTRL_OVEREXP_OEPDF_TAG_ID,
1026 CALIB_SENSOR_AEC_V21_LINAECTRL_OVEREXP_HIGHLIGHT_WEIGHT_TAG_ID,
1027 CALIB_SENSOR_AEC_V21_LINAECTRL_OVEREXP_LOWLIGHT_WEIGHT_TAG_ID,
1028 };
1029
1030 uint32_t calib_sensor_aec_HdrAECtrl_v21_sub_tags[] = {
1031 CALIB_SENSOR_AEC_V21_EVBIAS_TAG_ID,
1032 CALIB_SENSOR_AEC_V21_TOLERANCE_IN_TAG_ID,
1033 CALIB_SENSOR_AEC_V21_TOLERANCE_OUT_TAG_ID,
1034 CALIB_SENSOR_AEC_V21_STRATEGYMODE_TAG_ID,
1035 CALIB_SENSOR_AEC_V21_HDRAECTRL_EXPRATIOCTRL_TAG_ID,
1036 CALIB_SENSOR_AEC_V21_HDRAECTRL_LUMADISTTH_TAG_ID,
1037 CALIB_SENSOR_AEC_V21_HDRAECTRL_LFRAMECTRL_TAG_ID,
1038 CALIB_SENSOR_AEC_V21_HDRAECTRL_LONGFRMMODE_TAG_ID,
1039 CALIB_SENSOR_AEC_V21_HDRAECTRL_MFRAMECTRL_TAG_ID,
1040 CALIB_SENSOR_AEC_V21_HDRAECTRL_SFRAMECTRL_TAG_ID,
1041 };
1042
1043 uint32_t calib_sensor_aec_LongFrmMode_v21_sub_tags[] = {
1044 CALIB_SENSOR_AEC_V21_HDRAECTRL_LONGFRMMODE_MODE_TAG_ID,
1045 CALIB_SENSOR_AEC_V21_HDRAECTRL_LONGFRMMODE_SFRMMINLINE_TAG_ID,
1046 CALIB_SENSOR_AEC_V21_HDRAECTRL_LONGFRMMODE_LFRMMODEEXPTH_TAG_ID,
1047 };
1048
1049 uint32_t calib_sensor_aec_ExpRatioCtrl_v21_sub_tags[] = {
1050 CALIB_SENSOR_AEC_V21_HDRAECTRL_EXPRATIOTYPE_TAG_ID,
1051 CALIB_SENSOR_AEC_V21_HDRAECTRL_RATIOEXPDOT_TAG_ID,
1052 CALIB_SENSOR_AEC_V21_HDRAECTRL_M2SRATIOFIX_TAG_ID,
1053 CALIB_SENSOR_AEC_V21_HDRAECTRL_L2MRATIOFIX_TAG_ID,
1054 CALIB_SENSOR_AEC_V21_HDRAECTRL_M2SRATIOMAX_TAG_ID,
1055 CALIB_SENSOR_AEC_V21_HDRAECTRL_L2MRATIOMAX_TAG_ID,
1056 };
1057
1058 uint32_t calib_sensor_aec_LframeCtrl_v21_sub_tags[] = {
1059 CALIB_SENSOR_AEC_V21_HDRAECTRL_OEROILOWTH_TAG_ID,
1060 CALIB_SENSOR_AEC_V21_HDRAECTRL_LVHIGHTH_TAG_ID,
1061 CALIB_SENSOR_AEC_V21_HDRAECTRL_LVLOWTH_TAG_ID,
1062 CALIB_SENSOR_AEC_V21_HDRAECTRL_LEXPLEVEL_TAG_ID,
1063 CALIB_SENSOR_AEC_V21_HDRAECTRL_LSETPOINT_TAG_ID,
1064 CALIB_SENSOR_AEC_V21_HDRAECTRL_TARGETLLLUMA_TAG_ID,
1065 CALIB_SENSOR_AEC_V21_HDRAECTRL_NONOEPDFTH_TAG_ID,
1066 CALIB_SENSOR_AEC_V21_HDRAECTRL_LOWLIGHTPDFTH_TAG_ID,
1067 };
1068
1069 uint32_t calib_sensor_aec_MframeCtrl_v21_sub_tags[] = {
1070 CALIB_SENSOR_AEC_V21_HDRAECTRL_MEXPLEVEL_TAG_ID,
1071 CALIB_SENSOR_AEC_V21_HDRAECTRL_MSETPOINT_TAG_ID,
1072 };
1073
1074 uint32_t calib_sensor_aec_SframeCtrl_v21_sub_tags[] = {
1075 CALIB_SENSOR_AEC_V21_HDRAECTRL_SEXPLEVEL_TAG_ID,
1076 CALIB_SENSOR_AEC_V21_HDRAECTRL_SSETPOINT_TAG_ID,
1077 CALIB_SENSOR_AEC_V21_HDRAECTRL_TARGETHLLUMA_TAG_ID,
1078 CALIB_SENSOR_AEC_V21_HDRAECTRL_HLROIEXPANDEN_TAG_ID,
1079 CALIB_SENSOR_AEC_V21_HDRAECTRL_HLLUMATOLERANCE_TAG_ID,
1080 };
1081
1082
1083
1084
1085
1086
1087
1088 uint32_t calib_sensor_af_sub_tags[] = {
1089 CALIB_SENSOR_AF_MODE_TAG_ID,
1090 CALIB_SENSOR_AF_WINDOW_TAG_ID,
1091 CALIB_SENSOR_AF_FIXED_MODE_TAG_ID,
1092 CALIB_SENSOR_AF_MACRO_MODE_TAG_ID,
1093 CALIB_SENSOR_AF_INFINITY_MODE_TAG_ID,
1094 CALIB_SENSOR_AF_CONTRAST_AF_TAG_ID,
1095 CALIB_SENSOR_AF_LASER_AF_TAG_ID,
1096 CALIB_SENSOR_AF_PDAF_TAG_ID,
1097 CALIB_SENSOR_AF_VCM_TAG_ID,
1098 CALIB_SENSOR_AF_MEAS_ISO_TAG_ID,
1099 CALIB_SENSOR_AF_ZOOM_FOCUS_TBL_TAG_ID
1100 };
1101
1102 uint32_t calib_sensor_af_Window_sub_tags[] = {
1103 CALIB_SENSOR_AF_H_OFFS_TAG_ID,
1104 CALIB_SENSOR_AF_V_OFFS_TAG_ID,
1105 CALIB_SENSOR_AF_H_SIZE_TAG_ID,
1106 CALIB_SENSOR_AF_V_SIZE_TAG_ID,
1107 };
1108
1109 uint32_t calib_sensor_af_fixed_mode_sub_tags[] = {
1110 CALIB_SENSOR_AF_DEF_CODE_TAG_ID,
1111 };
1112
1113 uint32_t calib_sensor_af_macro_mode_sub_tags[] = {
1114 CALIB_SENSOR_AF_DEF_CODE_TAG_ID,
1115 };
1116
1117 uint32_t calib_sensor_af_infinity_mode_sub_tags[] = {
1118 CALIB_SENSOR_AF_DEF_CODE_TAG_ID,
1119 };
1120
1121 uint32_t calib_sensor_af_contrast_af_sub_tags[] = {
1122 CALIB_SENSOR_AF_CONTRAST_ENABLE_TAG_ID,
1123 CALIB_SENSOR_AF_SEARCH_STRATEGY_TAG_ID,
1124 CALIB_SENSOR_AF_FULL_DIR_TAG_ID,
1125 CALIB_SENSOR_AF_FULL_RANGE_TBL_TAG_ID,
1126 CALIB_SENSOR_AF_ADAPTIVE_DIR_TAG_ID,
1127 CALIB_SENSOR_AF_ADAPTIVE_RANGE_TBL_TAG_ID,
1128 CALIB_SENSOR_AF_TRIG_THERS_TAG_ID,
1129 CALIB_SENSOR_AF_LUMA_TRIG_THERS_TAG_ID,
1130 CALIB_SENSOR_AF_STABLE_THERS_TAG_ID,
1131 CALIB_SENSOR_AF_STABLE_FRAMES_TAG_ID,
1132 CALIB_SENSOR_AF_STABLE_TIME_TAG_ID,
1133 CALIB_SENSOR_AF_SCENE_DIFF_ENABLE_TAG_ID,
1134 CALIB_SENSOR_AF_SCENE_DIFF_THERS_TAG_ID,
1135 CALIB_SENSOR_AF_SCENE_DIFF_BLK_THERS_TAG_ID,
1136 CALIB_SENSOR_AF_CENTER_SCENE_DIFF_THERS_TAG_ID,
1137 CALIB_SENSOR_AF_VALID_MAX_MIN_RATIO_TAG_ID,
1138 CALIB_SENSOR_AF_VALID_VALUE_THERS_TAG_ID,
1139 CALIB_SENSOR_AF_OUT_FOCUS_VALUE_TAG_ID,
1140 CALIB_SENSOR_AF_OUT_FOCUS_POS_TAG_ID,
1141 CALIB_SENSOR_AF_FLAT_VALUE_TAG_ID,
1142 CALIB_SENSOR_AF_SEARCH_PAUSE_LUMA_ENABLE_TAG_ID,
1143 CALIB_SENSOR_AF_SEARCH_PAUSE_LUMA_THERS_TAG_ID,
1144 CALIB_SENSOR_AF_SEARCH_PAUSE_LUMA_STABLE_FRAMES_TAG_ID,
1145 CALIB_SENSOR_AF_SEARCH_PAUSE_LUMA_STABLE_THERS_TAG_ID,
1146 CALIB_SENSOR_AF_WEIGHT_ENABLE_TAG_ID,
1147 CALIB_SENSOR_AF_WEIGHT_MATRIX_TAG_ID,
1148 };
1149
1150 uint32_t calib_sensor_af_laser_af_sub_tags[] = {
1151 CALIB_SENSOR_AF_LASERAF_ENABLE_TAG_ID,
1152 CALIB_SENSOR_AF_LASER_AF_VCMDOT_TAG_ID,
1153 CALIB_SENSOR_AF_LASER_AF_DISTANCEDOT_TAG_ID,
1154 };
1155
1156 uint32_t calib_sensor_af_pdaf_sub_tags[] = {
1157 CALIB_SENSOR_AF_PDAF_ENABLE_TAG_ID,
1158 };
1159
1160 uint32_t calib_sensor_af_meas_iso_sub_tags[] = {
1161 CALIB_SENSOR_AF_MEAS_ISO_ISO_TAG_ID,
1162 CALIB_SENSOR_AF_MEAS_ISO_AFMTHRES_TAG_ID,
1163 CALIB_SENSOR_AF_MEAS_ISO_GAMMA_Y_TAG_ID,
1164 CALIB_SENSOR_AF_MEAS_ISO_GAUSS_WEIGHT_TAG_ID,
1165 };
1166
1167 uint32_t calib_sensor_af_zoomfocus_tbl_sub_tags[] = {
1168 CALIB_SENSOR_AF_ZOOM_FOCUS_FOCUS_LENGTH_TAG_ID,
1169 CALIB_SENSOR_AF_ZOOM_FOCUS_ZOOMPOS_TAG_ID,
1170 CALIB_SENSOR_AF_ZOOM_FOCUS_FOCUSINFPOS_TAG_ID,
1171 CALIB_SENSOR_AF_ZOOM_FOCUS_FOCUSMACROPOS_TAG_ID,
1172 };
1173
1174 uint32_t calib_sensor_af_vcmcfg_sub_tags[] = {
1175 CALIB_SENSOR_AF_VCM_START_CURRENT_TAG_ID,
1176 CALIB_SENSOR_AF_VCM_RATED_CURRENT_TAG_ID,
1177 CALIB_SENSOR_AF_VCM_STEP_MODE_TAG_ID,
1178 CALIB_SENSOR_AF_EXTRA_DELAY_TAG_ID
1179 };
1180
1181 uint32_t calib_sensor_ahdr_Merge_sub_tags[] = {
1182 CALIB_SENSOR_AHDR_ENVLV_TAG_ID,
1183 CALIB_SENSOR_AHDR_MERGE_OECURVE_SMOOTH_TAG_ID,
1184 CALIB_SENSOR_AHDR_MERGE_OECURVE_OFFSET_TAG_ID,
1185 CALIB_SENSOR_AHDR_MERGE_MOVECOEF_TAG_ID,
1186 CALIB_SENSOR_AHDR_MERGE_MDCURVELM_SMOOTH_TAG_ID,
1187 CALIB_SENSOR_AHDR_MERGE_MDCURVELM_OFFSET_TAG_ID,
1188 CALIB_SENSOR_AHDR_MERGE_MDCURVEMS_SMOOTH_TAG_ID,
1189 CALIB_SENSOR_AHDR_MERGE_MDCURVEMS_OFFSET_TAG_ID,
1190 CALIB_SENSOR_AHDR_MERGE_OECURVE_DAMP_TAG_ID,
1191 CALIB_SENSOR_AHDR_MERGE_MDCURVELM_DAMP_TAG_ID,
1192 CALIB_SENSOR_AHDR_MERGE_MDCURVEMS_DAMP_TAG_ID,
1193 };
1194
1195 uint32_t calib_sensor_ahdr_Tmo_sub_tags[] = {
1196 CALIB_SENSOR_AHDR_TMO_TMO_EN_TAG_ID,
1197 CALIB_SENSOR_AHDR_TMO_GLOBALLUMA_TAG_ID,
1198 CALIB_SENSOR_AHDR_TMO_DETAILSHIGHLIGHT_TAG_ID,
1199 CALIB_SENSOR_AHDR_TMO_DETAILSLOWLIGHT_TAG_ID,
1200 CALIB_SENSOR_AHDR_TMO_GLOBALTMO_TAG_ID,
1201 CALIB_SENSOR_AHDR_TMO_LOCALTMO_TAG_ID,
1202 CALIB_SENSOR_AHDR_TMO_DAMP_TAG_ID,
1203
1204 };
1205
1206 uint32_t calib_sensor_ahdr_Tmo_En_sub_tags[] = {
1207 CALIB_SENSOR_AHDR_TMO_NAME_TAG_ID,
1208 CALIB_SENSOR_AHDR_TMO_TMO_EN_CELL_EN_TAG_ID,
1209 };
1210
1211 uint32_t calib_sensor_ahdr_GlobalLuma_sub_tags[] = {
1212 CALIB_SENSOR_AHDR_TMO_NAME_TAG_ID,
1213 CALIB_SENSOR_AHDR_TMO_GLOBALLUMAMODE_TAG_ID,
1214 CALIB_SENSOR_AHDR_ENVLV_TAG_ID,
1215 CALIB_SENSOR_AHDR_TMO_ISO_TAG_ID,
1216 CALIB_SENSOR_AHDR_TOLERANCE_TAG_ID,
1217 CALIB_SENSOR_AHDR_TMO_GLOBALLUMA_GLOBALLUMA_TAG_ID,
1218 };
1219
1220 uint32_t calib_sensor_ahdr_DetailsHighLight_sub_tags[] = {
1221 CALIB_SENSOR_AHDR_TMO_NAME_TAG_ID,
1222 CALIB_SENSOR_AHDR_TMO_DETAILSHIGHLIGHTMODE_TAG_ID,
1223 CALIB_SENSOR_AHDR_TMO_OEPDF_TAG_ID,
1224 CALIB_SENSOR_AHDR_ENVLV_TAG_ID,
1225 CALIB_SENSOR_AHDR_TOLERANCE_TAG_ID,
1226 CALIB_SENSOR_AHDR_TMO_DETAILSHIGHLIGHT_DETAILSHIGHLIGHT_TAG_ID,
1227 };
1228
1229 uint32_t calib_sensor_ahdr_DetailsLowLight_sub_tags[] = {
1230 CALIB_SENSOR_AHDR_TMO_NAME_TAG_ID,
1231 CALIB_SENSOR_AHDR_TMO_DETAILSLOWLIGHTMODE_TAG_ID,
1232 CALIB_SENSOR_AHDR_TMO_FOCUSLUMA_TAG_ID,
1233 CALIB_SENSOR_AHDR_TMO_DARKPDF_TAG_ID,
1234 CALIB_SENSOR_AHDR_TMO_ISO_TAG_ID,
1235 CALIB_SENSOR_AHDR_TOLERANCE_TAG_ID,
1236 CALIB_SENSOR_AHDR_TMO_DETAILSLOWLIGHT_DETAILSLOWLIGHT_TAG_ID,
1237 };
1238
1239 uint32_t calib_sensor_ahdr_LocalTMO_sub_tags[] = {
1240 CALIB_SENSOR_AHDR_TMO_NAME_TAG_ID,
1241 CALIB_SENSOR_AHDR_TMO_LOCALTMOMODE_TAG_ID,
1242 CALIB_SENSOR_AHDR_TMO_DYNAMICRANGE_TAG_ID,
1243 CALIB_SENSOR_AHDR_ENVLV_TAG_ID,
1244 CALIB_SENSOR_AHDR_TOLERANCE_TAG_ID,
1245 CALIB_SENSOR_AHDR_TMO_LOCALTMO_STRENGTH_TAG_ID,
1246 };
1247
1248 uint32_t calib_sensor_ahdr_GlobalTMO_sub_tags[] = {
1249 CALIB_SENSOR_AHDR_TMO_NAME_TAG_ID,
1250 CALIB_SENSOR_AHDR_TMO_GLOBALTMO_EN_TAG_ID,
1251 CALIB_SENSOR_AHDR_TMO_GLOBALTMO_IIR_TAG_ID,
1252 CALIB_SENSOR_AHDR_TMO_GLOBALTMO_MODE_TAG_ID,
1253 CALIB_SENSOR_AHDR_TMO_GLOBALTMO_DYNAMICRANGE_TAG_ID,
1254 CALIB_SENSOR_AHDR_TMO_GLOBALTMO_ENVLV_TAG_ID,
1255 CALIB_SENSOR_AHDR_TMO_GLOBALTMO_TOLERANCE_TAG_ID,
1256 CALIB_SENSOR_AHDR_TMO_GLOBALTMO_STRENGTH_TAG_ID,
1257 };
1258
1259 uint32_t calib_sensor_Drc_sub_tags[] = {
1260 CALIB_SENSOR_DRC_CALIBPARA_TAG_ID,
1261 CALIB_SENSOR_DRC_TUNINGPARA_TAG_ID,
1262 };
1263
1264 uint32_t calib_sensor_Drc_CalibPara_sub_tags[] = {
1265 CALIB_SENSOR_DRC_SCENE_TAG_ID,
1266 CALIB_SENSOR_DRC_POSITION_TAG_ID,
1267 CALIB_SENSOR_DRC_OFFSET_POW2_TAG_ID,
1268 CALIB_SENSOR_DRC_LPDETAIL_RATIO_TAG_ID,
1269 CALIB_SENSOR_DRC_HPDETAIL_RATIO_TAG_ID,
1270 CALIB_SENSOR_DRC_WEIPRE_FRAME_TAG_ID,
1271 CALIB_SENSOR_DRC_WEICUR_PIX_TAG_ID,
1272 CALIB_SENSOR_DRC_EDGE_SCL_TAG_ID,
1273 CALIB_SENSOR_DRC_MOTION_SCL_TAG_ID,
1274 CALIB_SENSOR_DRC_FORCE_SGM_INV0_TAG_ID,
1275 CALIB_SENSOR_DRC_SPACE_SGM_INV0_TAG_ID,
1276 CALIB_SENSOR_DRC_SPACE_SGM_INV1_TAG_ID,
1277 CALIB_SENSOR_DRC_RANGE_SGM_INV0_TAG_ID,
1278 CALIB_SENSOR_DRC_RANGE_SGM_INV1_TAG_ID,
1279 CALIB_SENSOR_DRC_WEIG_BILAT_TAG_ID,
1280 CALIB_SENSOR_DRC_WEIG_MAXL_TAG_ID,
1281 CALIB_SENSOR_DRC_MIN_OGAIN_TAG_ID,
1282 CALIB_SENSOR_DRC_IIR_FRAME_TAG_ID,
1283 CALIB_SENSOR_DRC_GAIN_TAG_ID,
1284 CALIB_SENSOR_DRC_SCALE_Y0_TAG_ID,
1285 };
1286
1287 uint32_t calib_sensor_Drc_TuningPara_sub_tags[] = {
1288 CALIB_SENSOR_DRC_SCENE_TAG_ID,
1289 CALIB_SENSOR_DRC_POSITION_TAG_ID,
1290 CALIB_SENSOR_DRC_OFFSET_POW2_TAG_ID,
1291 CALIB_SENSOR_DRC_LPDETAIL_RATIO_TAG_ID,
1292 CALIB_SENSOR_DRC_HPDETAIL_RATIO_TAG_ID,
1293 CALIB_SENSOR_DRC_WEIPRE_FRAME_TAG_ID,
1294 CALIB_SENSOR_DRC_WEICUR_PIX_TAG_ID,
1295 CALIB_SENSOR_DRC_EDGE_SCL_TAG_ID,
1296 CALIB_SENSOR_DRC_MOTION_SCL_TAG_ID,
1297 CALIB_SENSOR_DRC_FORCE_SGM_INV0_TAG_ID,
1298 CALIB_SENSOR_DRC_SPACE_SGM_INV0_TAG_ID,
1299 CALIB_SENSOR_DRC_SPACE_SGM_INV1_TAG_ID,
1300 CALIB_SENSOR_DRC_RANGE_SGM_INV0_TAG_ID,
1301 CALIB_SENSOR_DRC_RANGE_SGM_INV1_TAG_ID,
1302 CALIB_SENSOR_DRC_WEIG_BILAT_TAG_ID,
1303 CALIB_SENSOR_DRC_WEIG_MAXL_TAG_ID,
1304 CALIB_SENSOR_DRC_MIN_OGAIN_TAG_ID,
1305 CALIB_SENSOR_DRC_IIR_FRAME_TAG_ID,
1306 CALIB_SENSOR_DRC_GAIN_TAG_ID,
1307 CALIB_SENSOR_DRC_SCALE_Y0_TAG_ID,
1308 };
1309
1310 uint32_t calib_sensor_blc_sub_tags[] = {
1311 CALIB_SENSOR_BLC_ENABLE_TAG_ID,
1312 CALIB_SENSOR_BLC_MODE_CELL_TAG_ID,
1313 };
1314
1315 uint32_t calib_sensor_blc_mode_cell_sub_tags[] = {
1316 CALIB_SENSOR_BLC_MODE_NAME_TAG_ID,
1317 CALIB_SENSOR_BLC_ISO_TAG_ID,
1318 CALIB_SENSOR_BLC_BLACK_LEVEL_TAG_ID,
1319 };
1320
1321
1322 uint32_t calib_sensor_dpcc_sub_tags[] = {
1323 CALIB_SENSOR_DPCC_ENABLE_TAG_ID,
1324 CALIB_SENSOR_DPCC_VERSION_TAG_ID,
1325 CALIB_SENSOR_DPCC_FAST_MODE_TAG_ID,
1326 CALIB_SENSOR_DPCC_EXPERT_MODE_TAG_ID,
1327 CALIB_SENSOR_DPCC_PDAF_TAG_ID,
1328 CALIB_SENSOR_DPCC_SENSOR_TAG_ID,
1329 };
1330
1331 uint32_t calib_sensor_dpcc_fast_mode_sub_tags[] = {
1332 CALIB_SENSOR_DPCC_FAST_MODE_ENABLE_TAG_ID,
1333 CALIB_SENSOR_DPCC_FAST_MODE_ISO_TAG_ID,
1334 CALIB_SENSOR_DPCC_FAST_MODE_SINGLE_ENABLE_TAG_ID,
1335 CALIB_SENSOR_DPCC_FAST_MODE_SINGLE_LEVEL_TAG_ID,
1336 CALIB_SENSOR_DPCC_FAST_MODE_DOUBLE_ENABLE_TAG_ID,
1337 CALIB_SENSOR_DPCC_FAST_MODE_DOUBLE_LEVEL_TAG_ID,
1338 CALIB_SENSOR_DPCC_FAST_MODE_TRIPLE_ENABLE_TAG_ID,
1339 CALIB_SENSOR_DPCC_FAST_MODE_TRIPLE_LEVEL_TAG_ID,
1340 };
1341
1342 uint32_t calib_sensor_dpcc_expert_mode_sub_tags[] = {
1343 CALIB_SENSOR_DPCC_ISO_TAG_ID,
1344 CALIB_SENSOR_DPCC_STAGE1_ENABLE_TAG_ID,
1345 CALIB_SENSOR_DPCC_GRAYSCALE_MODE_TAG_ID,
1346 CALIB_SENSOR_DPCC_RK_OUT_SEL_TAG_ID,
1347 CALIB_SENSOR_DPCC_DPCC_OUT_SEL_TAG_ID,
1348 CALIB_SENSOR_DPCC_STAGE1_RB_3X3_TAG_ID,
1349 CALIB_SENSOR_DPCC_STAGE1_G_3X3_TAG_ID,
1350 CALIB_SENSOR_DPCC_STAGE1_INC_RB_CENTER_TAG_ID,
1351 CALIB_SENSOR_DPCC_STAGE1_INC_G_CENTER_TAG_ID,
1352 CALIB_SENSOR_DPCC_STAGE1_USE_FIX_SET_TAG_ID,
1353 CALIB_SENSOR_DPCC_STAGE1_USE_SET1_TAG_ID,
1354 CALIB_SENSOR_DPCC_STAGE1_USE_SET2_TAG_ID,
1355 CALIB_SENSOR_DPCC_STAGE1_USE_SET3_TAG_ID,
1356 CALIB_SENSOR_DPCC_SET_CELL_TAG_ID,
1357 };
1358
1359 uint32_t calib_sensor_set_cell_sub_tags[] = {
1360 CALIB_SENSOR_DPCC_SET_CELL_RK_TAG_ID,
1361 CALIB_SENSOR_DPCC_SET_CELL_LC_TAG_ID,
1362 CALIB_SENSOR_DPCC_SET_CELL_PG_TAG_ID,
1363 CALIB_SENSOR_DPCC_SET_CELL_RND_TAG_ID,
1364 CALIB_SENSOR_DPCC_SET_CELL_RG_TAG_ID,
1365 CALIB_SENSOR_DPCC_SET_CELL_RO_TAG_ID,
1366 };
1367
1368 uint32_t calib_sensor_set_cell_RK_sub_tags[] = {
1369 CALIB_SENSOR_DPCC_RK_RED_BLUE_ENABLE_TAG_ID,
1370 CALIB_SENSOR_DPCC_RK_GREEN_ENABLE_TAG_ID,
1371 CALIB_SENSOR_DPCC_RK_RED_BLUE_SW_MINDIS_TAG_ID,
1372 CALIB_SENSOR_DPCC_RK_GREEN_SW_MINDIS_TAG_ID,
1373 CALIB_SENSOR_DPCC_RK_SW_DIS_SCALE_MIN_TAG_ID,
1374 CALIB_SENSOR_DPCC_RK_SW_DIS_SCALE_MAX_TAG_ID,
1375 };
1376
1377 uint32_t calib_sensor_set_cell_LC_sub_tags[] = {
1378 CALIB_SENSOR_DPCC_LC_RED_BLUE_ENABLE_TAG_ID,
1379 CALIB_SENSOR_DPCC_LC_GREEN_ENABLE_TAG_ID,
1380 CALIB_SENSOR_DPCC_LC_RED_BLUE_LINE_MAD_FAC_TAG_ID,
1381 CALIB_SENSOR_DPCC_LC_GREEN_LINE_MAD_FAC_TAG_ID,
1382 CALIB_SENSOR_DPCC_LC_RED_BLUE_LINE_THR_TAG_ID,
1383 CALIB_SENSOR_DPCC_LC_GREEN_LINE_THR_TAG_ID,
1384 };
1385
1386 uint32_t calib_sensor_set_cell_PG_sub_tags[] = {
1387 CALIB_SENSOR_DPCC_PG_RED_BLUE_ENABLE_TAG_ID,
1388 CALIB_SENSOR_DPCC_PG_GREEN_ENABLE_TAG_ID,
1389 CALIB_SENSOR_DPCC_PG_RED_BLUE_FAC_TAG_ID,
1390 CALIB_SENSOR_DPCC_PG_GREEN_FAC_TAG_ID,
1391 };
1392
1393 uint32_t calib_sensor_set_cell_RND_sub_tags[] = {
1394 CALIB_SENSOR_DPCC_RND_RED_BLUE_ENABLE_TAG_ID,
1395 CALIB_SENSOR_DPCC_RND_GREEN_ENABLE_TAG_ID,
1396 CALIB_SENSOR_DPCC_RND_RED_BLUE_THR_TAG_ID,
1397 CALIB_SENSOR_DPCC_RND_GREEN_THR_TAG_ID,
1398 CALIB_SENSOR_DPCC_RND_RED_BLUE_OFFS_TAG_ID,
1399 CALIB_SENSOR_DPCC_RND_GREEN_OFFS_TAG_ID,
1400 };
1401
1402 uint32_t calib_sensor_set_cell_RG_sub_tags[] = {
1403 CALIB_SENSOR_DPCC_RG_RED_BLUE_ENABLE_TAG_ID,
1404 CALIB_SENSOR_DPCC_RG_GREEN_ENABLE_TAG_ID,
1405 CALIB_SENSOR_DPCC_RG_RED_BLUE_FAC_TAG_ID,
1406 CALIB_SENSOR_DPCC_RG_GREEN_FAC_TAG_ID,
1407 };
1408
1409 uint32_t calib_sensor_set_cell_RO_sub_tags[] = {
1410 CALIB_SENSOR_DPCC_RO_RED_BLUE_ENABLE_TAG_ID,
1411 CALIB_SENSOR_DPCC_RO_GREEN_ENABLE_TAG_ID,
1412 CALIB_SENSOR_DPCC_RO_RED_BLUE_LIM_TAG_ID,
1413 CALIB_SENSOR_DPCC_RO_GREEN_LIM_TAG_ID,
1414 };
1415
1416 uint32_t calib_sensor_dpcc_pdaf_sub_tags[] = {
1417 CALIB_SENSOR_DPCC_PDAF_ENABLE_TAG_ID,
1418 CALIB_SENSOR_DPCC_PDAF_POINT_ENABLE_TAG_ID,
1419 CALIB_SENSOR_DPCC_PDAF_OFFSETX_TAG_ID,
1420 CALIB_SENSOR_DPCC_PDAF_OFFSETY_TAG_ID,
1421 CALIB_SENSOR_DPCC_PDAF_WRAPX_NUM_TAG_ID,
1422 CALIB_SENSOR_DPCC_PDAF_WRAPY_NUM_TAG_ID,
1423 CALIB_SENSOR_DPCC_PDAF_POINT_X_TAG_ID,
1424 CALIB_SENSOR_DPCC_PDAF_POINT_Y_TAG_ID,
1425 CALIB_SENSOR_DPCC_PDAF_POINT_FORWARD_MED_TAG_ID,
1426 };
1427
1428 uint32_t calib_sensor_dpcc_sensor_dpcc_sub_tags[] = {
1429 CALIB_SENSOR_DPCC_SENSOR_AUTO_ENABLE_TAG_ID,
1430 CALIB_SENSOR_DPCC_SENSOR_MAX_LEVEL_TAG_ID,
1431 CALIB_SENSOR_DPCC_ISO_TAG_ID,
1432 CALIB_SENSOR_DPCC_SENSOR_LEVEL_SINGLE_TAG_ID,
1433 CALIB_SENSOR_DPCC_SENSOR_LEVEL_MULTIPLE_TAG_ID,
1434 };
1435
1436 uint32_t calib_sensor_bayernr_sub_tags[] = {
1437 CALIB_SENSOR_BAYERNR_ENABLE_TAG_ID,
1438 CALIB_SENSOR_BAYERNR_VERSION_TAG_ID,
1439 CALIB_SENSOR_BAYERNR_MODE_CELL_TAG_ID,
1440 };
1441
1442 uint32_t calib_sensor_bayernr_mode_cell_sub_tags[] = {
1443 CALIB_SENSOR_BAYERNR_MODE_NAME_TAG_ID,
1444 CALIB_SENSOR_BAYERNR_SETTING_TAG_ID,
1445 };
1446
1447
1448 uint32_t calib_sensor_Bayernr_Setting_sub_tags[] = {
1449 CALIB_SENSOR_BAYERNR_SETTING_SNR_MODE_TAG_ID,
1450 CALIB_SENSOR_BAYERNR_SETTING_SENSOR_MODE_TAG_ID,
1451 CALIB_SENSOR_BAYERNR_ISO_TAG_ID,
1452 CALIB_SENSOR_BAYERNR_FILTPARA_TAG_ID,
1453 CALIB_SENSOR_BAYERNR_LULEVEL_TAG_ID,
1454 CALIB_SENSOR_BAYERNR_LULEVELVAL_TAG_ID,
1455 CALIB_SENSOR_BAYERNR_LURATIO_TAG_ID,
1456 CALIB_SENSOR_BAYERNR_LAMDA_TAG_ID,
1457 CALIB_SENSOR_BAYERNR_FIXW_TAG_ID,
1458 CALIB_SENSOR_BAYERNR_GAUSS_EN_TAG_ID,
1459 CALIB_SENSOR_BAYERNR_RGAINOFF_TAG_ID,
1460 CALIB_SENSOR_BAYERNR_RGAINFILP_TAG_ID,
1461 CALIB_SENSOR_BAYERNR_BGAINOFF_TAG_ID,
1462 CALIB_SENSOR_BAYERNR_BGAINFILP_TAG_ID,
1463 CALIB_SENSOR_BAYERNR_EDGESOFTNESS_TAG_ID,
1464 CALIB_SENSOR_BAYERNR_GAUSSWEIGHT0_TAG_ID,
1465 CALIB_SENSOR_BAYERNR_GAUSSWEIGHT1_TAG_ID,
1466 CALIB_SENSOR_BAYERNR_BILEDGEFILTER_TAG_ID,
1467 CALIB_SENSOR_BAYERNR_BILFILTERSTRENG_TAG_ID,
1468 CALIB_SENSOR_BAYERNR_BILEDGESOFT_TAG_ID,
1469 CALIB_SENSOR_BAYERNR_BILEDGESOFTRATIO_TAG_ID,
1470 CALIB_SENSOR_BAYERNR_BILREGWGT_TAG_ID,
1471 };
1472
1473 uint32_t calib_sensor_lsc_sub_tags[] = {
1474 CALIB_SENSOR_LSC_ENABLE_TAG_ID,
1475 CALIB_SENSOR_LSC_DAMP_ENABLE_TAG_ID,
1476 CALIB_SENSOR_LSC_ALSCCOF_TAG_ID,
1477 CALIB_SENSOR_LSC_TABLEALL_TAG_ID,
1478 };
1479
1480 uint32_t calib_sensor_alscCoef_sub_tags[] = {
1481 CALIB_SENSOR_LSC_ALSCCOF_RESALL_TAG_ID,
1482 CALIB_SENSOR_LSC_ALSCCOF_IllALL_TAG_ID,
1483 };
1484
1485 uint32_t calib_sensor_resolutionAlll_sub_tags[] = {
1486 CALIB_SENSOR_LSC_ALSCCOF_RESALL_NAME_TAG_ID,
1487 };
1488
1489 uint32_t calib_sensor_illAll_sub_tags[] = {
1490 CALIB_SENSOR_LSC_ALSCCOF_CASE_TAG_ID,
1491 CALIB_SENSOR_LSC_ALSCCOF_NAME_TAG_ID,
1492 CALIB_SENSOR_LSC_ALSCCOF_WBGAIN_TAG_ID,
1493 CALIB_SENSOR_LSC_ALSCCOF_TABLEUSED_TAG_ID,
1494 CALIB_SENSOR_LSC_ALSCCOF_GAINS_TAG_ID,
1495 CALIB_SENSOR_LSC_ALSCCOF_VIG_TAG_ID,
1496 };
1497
1498 uint32_t calib_sensor_tableAll_sub_tags[] = {
1499 CALIB_SENSOR_LSC_TABLEALL_NAME_TAG_ID,
1500 CALIB_SENSOR_LSC_TABLEALL_RESOLUTION_TAG_ID,
1501 CALIB_SENSOR_LSC_TABLEALL_ILLUMINATION_TAG_ID,
1502 CALIB_SENSOR_LSC_TABLEALL_LSC_SECTORS_TAG_ID,
1503 CALIB_SENSOR_LSC_TABLEALL_LSC_NO_TAG_ID,
1504 CALIB_SENSOR_LSC_TABLEALL_LSC_XO_TAG_ID,
1505 CALIB_SENSOR_LSC_TABLEALL_LSC_YO_TAG_ID,
1506 CALIB_SENSOR_LSC_TABLEALL_LSC_SECTOR_SIZE_X_TAG_ID,
1507 CALIB_SENSOR_LSC_TABLEALL_LSC_SECTOR_SIZE_Y_TAG_ID,
1508 CALIB_SENSOR_LSC_TABLEALL_LSC_VIGNETTING_TAG_ID,
1509 CALIB_SENSOR_LSC_TABLEALL_LSC_SAMPLES_RED_TAG_ID,
1510 CALIB_SENSOR_LSC_TABLEALL_LSC_SAMPLES_GREENR_TAG_ID,
1511 CALIB_SENSOR_LSC_TABLEALL_LSC_SAMPLES_GREENB_TAG_ID,
1512 CALIB_SENSOR_LSC_TABLEALL_LSC_SAMPLES_BLUE_TAG_ID,
1513 };
1514
1515 uint32_t calib_sensor_rkdm_sub_tags[] = {
1516 CALIB_SENSOR_RKDM_ENABLE_TAG_ID,
1517 CALIB_SENSOR_RKDM_DEBAYER_FILTER1_TAG_ID,
1518 CALIB_SENSOR_RKDM_DEBAYER_FILTER2_TAG_ID,
1519 CALIB_SENSOR_RKDM_DEBAYER_GAIN_OFFSET_TAG_ID,
1520 CALIB_SENSOR_RKDM_ISO_TAG_ID,
1521 CALIB_SENSOR_RKDM_SHARP_STRENGTH_TAG_ID,
1522 CALIB_SENSOR_RKDM_DEBAYER_HF_OFFSET_TAG_ID,
1523 CALIB_SENSOR_RKDM_DEBAYER_OFFSET_TAG_ID,
1524 CALIB_SENSOR_RKDM_DEBAYER_CLIP_EN_TAG_ID,
1525 CALIB_SENSOR_RKDM_DEBAYER_FILTER_G_EN_TAG_ID,
1526 CALIB_SENSOR_RKDM_DEBAYER_FILTER_C_EN_TAG_ID,
1527 CALIB_SENSOR_RKDM_DEBAYER_THED0_TAG_ID,
1528 CALIB_SENSOR_RKDM_DEBAYER_THED1_TAG_ID,
1529 CALIB_SENSOR_RKDM_DEBAYER_DIST_SCALE_TAG_ID,
1530 CALIB_SENSOR_RKDM_DEBAYER_CNR_STRENGTH_TAG_ID,
1531 CALIB_SENSOR_RKDM_DEBAYER_SHIFT_NUM_TAG_ID,
1532 };
1533
1534 uint32_t calib_sensor_ccm_sub_tags[] = {
1535 CALIB_SENSOR_CCM_ENABLE_TAG_ID,
1536 CALIB_SENSOR_CCM_MODE_CELL_TAG_ID,
1537 };
1538
1539
1540 uint32_t calib_sensor_ccm_mode_cell_sub_tags[] = {
1541 CALIB_SENSOR_CCM_MODE_NAME_TAG_ID,
1542 CALIB_SENSOR_CCM_DAMP_ENABLE_TAG_ID,
1543 CALIB_SENSOR_CCM_LUMA_CCM_TAG_ID,
1544 CALIB_SENSOR_CCM_ACCMCOF_TAG_ID,
1545 CALIB_SENSOR_CCM_MATRIXALL_TAG_ID,
1546 };
1547
1548 uint32_t calib_sensor_lumaCCM_sub_tags[] = {
1549 CALIB_SENSOR_CCM_LUMA_CCM_RGB2Y_PARA_TAG_ID,
1550 CALIB_SENSOR_CCM_LUMA_CCM_LOW_BOUND_POS_BIT_TAG_ID,
1551 CALIB_SENSOR_CCM_LUMA_CCM_Y_ALPHA_CURVE_TAG_ID,
1552 CALIB_SENSOR_CCM_LUMA_CCM_GAIN_ALPHASCALE_CURVE_TAG_ID,
1553 };
1554
1555 uint32_t calib_sensor_gain_alphaScale_curve_sub_tags[] = {
1556 CALIB_SENSOR_CCM_LUMA_CCM_GAIN_TAG_ID,
1557 CALIB_SENSOR_CCM_LUMA_CCM_SCALE_TAG_ID,
1558 };
1559
1560
1561 uint32_t calib_sensor_ccm_illAll_sub_tags[] = {
1562 CALIB_SENSOR_CCM_ACCMCOF_NAME_TAG_ID,
1563 CALIB_SENSOR_CCM_ACCMCOF_WBGAIN_TAG_ID,
1564 CALIB_SENSOR_CCM_ACCMCOF_MATRIXUSED_TAG_ID,
1565 CALIB_SENSOR_CCM_ACCMCOF_GAINS_TAG_ID,
1566 CALIB_SENSOR_CCM_ACCMCOF_SAT_TAG_ID,
1567 };
1568
1569 uint32_t calib_sensor_ccm_aCcmCof_sub_tags[] = {
1570 CALIB_SENSOR_CCM_ACCMCOF_IllALL_TAG_ID,
1571 };
1572
1573 uint32_t calib_sensor_ccm_matrixAll_sub_tags[] = {
1574 CALIB_SENSOR_CCM_MATRIXALL_NAME_TAG_ID,
1575 CALIB_SENSOR_CCM_MATRIXALL_ILLUMINATION_TAG_ID,
1576 CALIB_SENSOR_CCM_MATRIXALL_SAT_TAG_ID,
1577 CALIB_SENSOR_CCM_MATRIXALL_MATRIX_TAG_ID,
1578 CALIB_SENSOR_CCM_MATRIXALL_OFFSET_TAG_ID,
1579 };
1580
1581 uint32_t calib_sensor_uvnr_sub_tags[] = {
1582 CALIB_SENSOR_UVNR_ENABLE_TAG_ID,
1583 CALIB_SENSOR_UVNR_VERSION_TAG_ID,
1584 CALIB_SENSOR_UVNR_MODE_CELL_TAG_ID,
1585 };
1586
1587 uint32_t calib_sensor_uvnr_mode_cell_sub_tags[] = {
1588 CALIB_SENSOR_UVNR_MODE_NAME_TAG_ID,
1589 CALIB_SENSOR_UVNR_SETTING_TAG_ID,
1590 };
1591
1592 uint32_t calib_sensor_uvnr_setting_sub_tags[] = {
1593 CALIB_SENSOR_UVNR_SETTING_SNR_MODE_TAG_ID,
1594 CALIB_SENSOR_UVNR_SETTING_SENSOR_MODE_TAG_ID,
1595 CALIB_SENSOR_UVNR_ISO_TAG_ID,
1596 CALIB_SENSOR_UVNR_STEP0_UVGRAD_RATIO_TAG_ID,
1597 CALIB_SENSOR_UVNR_STEP0_UVGRAD_OFFSET_TAG_ID,
1598 CALIB_SENSOR_UVNR_STEP1_NONMED1_TAG_ID,
1599 CALIB_SENSOR_UVNR_STEP1_NONBF1_TAG_ID,
1600 CALIB_SENSOR_UVNR_STEP1_DOWNSAMPLE_W_TAG_ID,
1601 CALIB_SENSOR_UVNR_STEP1_DOWNSAMPLE_H_TAG_ID,
1602 CALIB_SENSOR_UVNR_STEP1_DOWNSAMPLE_MEANSIZE_TAG_ID,
1603 CALIB_SENSOR_UVNR_STEP1_MEDIAN_RATIO_TAG_ID,
1604 CALIB_SENSOR_UVNR_STEP1_MEDIAN_SIZE_TAG_ID,
1605 CALIB_SENSOR_UVNR_STEP1_MEDIAN_IIR_TAG_ID,
1606 CALIB_SENSOR_UVNR_STEP1_BF_SIGMAR_TAG_ID,
1607 CALIB_SENSOR_UVNR_STEP1_BF_UVGAIN_TAG_ID,
1608 CALIB_SENSOR_UVNR_STEP1_BF_RATIO_TAG_ID,
1609 CALIB_SENSOR_UVNR_STEP1_BF_SIZE_TAG_ID,
1610 CALIB_SENSOR_UVNR_STEP1_BF_SIGMAD_TAG_ID,
1611 CALIB_SENSOR_UVNR_STEP1_BF_ISROWIIR_TAG_ID,
1612 CALIB_SENSOR_UVNR_STEP1_BF_ISYCOPY_TAG_ID,
1613 CALIB_SENSOR_UVNR_STEP2_NONEXT_BLOCK_TAG_ID,
1614 CALIB_SENSOR_UVNR_STEP2_NONMED_TAG_ID,
1615 CALIB_SENSOR_UVNR_STEP2_NONBF_TAG_ID,
1616 CALIB_SENSOR_UVNR_STEP2_DOWNSAMPLE_W_TAG_ID,
1617 CALIB_SENSOR_UVNR_STEP2_DOWNSAMPLE_H_TAG_ID,
1618 CALIB_SENSOR_UVNR_STEP2_DOWNSAMPLE_MEANSIZE_TAG_ID,
1619 CALIB_SENSOR_UVNR_STEP2_MEDIAN_RATIO_TAG_ID,
1620 CALIB_SENSOR_UVNR_STEP2_MEDIAN_SIZE_TAG_ID,
1621 CALIB_SENSOR_UVNR_STEP2_MEDIAN_IIR_TAG_ID,
1622 CALIB_SENSOR_UVNR_STEP2_BF_SIGMAR_TAG_ID,
1623 CALIB_SENSOR_UVNR_STEP2_BF_UVGAIN_TAG_ID,
1624 CALIB_SENSOR_UVNR_STEP2_BF_RATIO_TAG_ID,
1625 CALIB_SENSOR_UVNR_STEP2_BF_SIZE_TAG_ID,
1626 CALIB_SENSOR_UVNR_STEP2_BF_SIGMAD_TAG_ID,
1627 CALIB_SENSOR_UVNR_STEP2_BF_ISROWIIR_TAG_ID,
1628 CALIB_SENSOR_UVNR_STEP2_BF_ISYCOPY_TAG_ID,
1629 CALIB_SENSOR_UVNR_STEP3_NONBF3_TAG_ID,
1630 CALIB_SENSOR_UVNR_STEP3_BF_SIGMAR_TAG_ID,
1631 CALIB_SENSOR_UVNR_STEP3_BF_UVGAIN_TAG_ID,
1632 CALIB_SENSOR_UVNR_STEP3_BF_RATIO_TAG_ID,
1633 CALIB_SENSOR_UVNR_STEP3_BF_SIZE_TAG_ID,
1634 CALIB_SENSOR_UVNR_STEP3_BF_SIGMAD_TAG_ID,
1635 CALIB_SENSOR_UVNR_STEP3_BF_ISROWIIR_TAG_ID,
1636 CALIB_SENSOR_UVNR_STEP3_BF_ISYCOPY_TAG_ID,
1637 CALIB_SENSOR_UVNR_KERNEL_3X3_TAG_ID,
1638 CALIB_SENSOR_UVNR_KERNEL_5X5_TAG_ID,
1639 CALIB_SENSOR_UVNR_KERNEL_9X9_TAG_ID,
1640 CALIB_SENSOR_UVNR_KERNEL_9X9_NUM_TAG_ID,
1641 CALIB_SENSOR_UVNR_SIGMA_ADJ_LUMA_TAG_ID,
1642 CALIB_SENSOR_UVNR_SIGMA_ADJ_RATIO_TAG_ID,
1643 CALIB_SENSOR_UVNR_THRESHOLD_ADJ_LUMA_TAG_ID,
1644 CALIB_SENSOR_UVNR_THRESHOLD_ADJ_THRE_TAG_ID,
1645 };
1646
1647 uint32_t calib_sensor_gamma_sub_tags[] = {
1648 CALIB_SENSOR_GAMMA_GAMMA_EN_TAG_ID,
1649 CALIB_SENSOR_GAMMA_GAMMA_OUT_SEGNUM_TAG_ID,
1650 CALIB_SENSOR_GAMMA_GAMMA_OUT_OFFSET_TAG_ID,
1651 CALIB_SENSOR_GAMMA_CURVE_NORMAL_TAG_ID,
1652 CALIB_SENSOR_GAMMA_CURVE_HDR_TAG_ID,
1653 CALIB_SENSOR_GAMMA_CURVE_NIGHT_TAG_ID,
1654 };
1655
1656 uint32_t calib_sensor_degamma_sub_tags[] = {
1657 CALIB_SENSOR_DEGAMMA_EN_TAG_ID,
1658 CALIB_SENSOR_DEGAMMA_MODE_CELL_TAG_ID,
1659 };
1660
1661 uint32_t calib_sensor_degamma_cell_sub_tags[] = {
1662 CALIB_SENSOR_DEGAMMA_MODE_NAME_TAG_ID,
1663 CALIB_SENSOR_DEGAMMA_SCENE_EN_TAG_ID,
1664 CALIB_SENSOR_DEGAMMA_CURVE_X_TAG_ID,
1665 CALIB_SENSOR_DEGAMMA_CURVE_R_TAG_ID,
1666 CALIB_SENSOR_DEGAMMA_CURVE_G_TAG_ID,
1667 CALIB_SENSOR_DEGAMMA_CURVE_B_TAG_ID,
1668 };
1669
1670
1671 uint32_t calib_sensor_ynr_sub_tags[] = {
1672 CALIB_SENSOR_YNR_ENABLE_TAG_ID,
1673 CALIB_SENSOR_YNR_VERSION_TAG_ID,
1674 CALIB_SENSOR_YNR_MODE_CELL_TAG_ID,
1675 };
1676
1677 uint32_t calib_sensor_ynr_mode_cell_sub_tags[] = {
1678 CALIB_SENSOR_YNR_MODE_NAME_TAG_ID,
1679 CALIB_SENSOR_YNR_SETTING_CELL_TAG_ID,
1680 };
1681
1682
1683 uint32_t calib_sensor_YNR_Setting_sub_tags[] = {
1684 CALIB_SENSOR_YNR_SETTING_SNR_MODE_TAG_ID,
1685 CALIB_SENSOR_YNR_SETTING_SENSOR_MODE_TAG_ID,
1686 CALIB_SENSOR_YNR_ISO_CELL_TAG_ID,
1687 };
1688
1689 uint32_t calib_sensor_YNR_ISO_sub_tags[] = {
1690 CALIB_SENSOR_YNR_ISO_TAG_ID,
1691 CALIB_SENSOR_YNR_SIGMA_CURVE_TAG_ID,
1692 CALIB_SENSOR_YNR_YNR_LCI_TAG_ID,
1693 CALIB_SENSOR_YNR_YNR_LHCI_TAG_ID,
1694 CALIB_SENSOR_YNR_YNR_HLCI_TAG_ID,
1695 CALIB_SENSOR_YNR_YNR_HHCI_TAG_ID,
1696 CALIB_SENSOR_YNR_LO_LUMAPOINT_TAG_ID,
1697 CALIB_SENSOR_YNR_LO_LUMARATIO_TAG_ID,
1698 CALIB_SENSOR_YNR_LO_DIRECTIONSTRENGTH_TAG_ID,
1699 CALIB_SENSOR_YNR_LO_BFSCALE_TAG_ID,
1700 CALIB_SENSOR_YNR_IMERGE_RATIO_TAG_ID,
1701 CALIB_SENSOR_YNR_IMERGE_BOUND_TAG_ID,
1702 CALIB_SENSOR_YNR_DENOISE_WEIGHT_TAG_ID,
1703 CALIB_SENSOR_YNR_HI_LUMAPOINT_TAG_ID,
1704 CALIB_SENSOR_YNR_HI_LUMARATIO_TAG_ID,
1705 CALIB_SENSOR_YNR_HI_BFSCALE_TAG_ID,
1706 CALIB_SENSOR_YNR_HWITH_D_TAG_ID,
1707 CALIB_SENSOR_YNR_HI_DENOISESTRENGTH_TAG_ID,
1708 CALIB_SENSOR_YNR_HI_DETAILMINADJDNW_TAG_ID,
1709 CALIB_SENSOR_YNR_HI_DENOISEWEIGHT_TAG_ID,
1710 CALIB_SENSOR_YNR_Y_LUMA_POINT_TAG_ID,
1711 CALIB_SENSOR_YNR_HGRAD_Y_LEVEL1_TAG_ID,
1712 CALIB_SENSOR_YNR_HGRAD_Y_LEVEL2_TAG_ID,
1713 CALIB_SENSOR_YNR_HGRAD_Y_LEVEL3_TAG_ID,
1714 CALIB_SENSOR_YNR_HGRAD_Y_LEVEL4_TAG_ID,
1715 CALIB_SENSOR_YNR_HI_SOFT_THRESH_SCALE_TAG_ID,
1716 };
1717
1718 uint32_t calib_sensor_gic_sub_tags[] = {
1719 CALIB_SENSOR_GIC_CALIBPARA_V20_TAG_ID,
1720 CALIB_SENSOR_GIC_CALIBPARA_V21_TAG_ID,
1721 CALIB_SENSOR_GIC_TUNINGPARA_V20_TAG_ID,
1722 CALIB_SENSOR_GIC_TUNINGPARA_V21_TAG_ID,
1723 };
1724
1725 uint32_t calib_sensor_gic_CalibParaV20_sub_tags[] = {
1726 CALIB_SENSOR_GIC_SCENE_TAG_ID,
1727 CALIB_SENSOR_GIC_ENABLE_TAG_ID,
1728 CALIB_SENSOR_GIC_EDGE_EN_TAG_ID,
1729 CALIB_SENSOR_GIC_GR_RATION_TAG_ID,
1730 CALIB_SENSOR_GIC_NOISE_CUT_EN_TAG_ID,
1731 CALIB_SENSOR_GIC_SETTING_TAG_ID,
1732 };
1733
1734 uint32_t calib_sensor_gic_TuningParaV20_sub_tags[] = {
1735 CALIB_SENSOR_GIC_SCENE_TAG_ID,
1736 CALIB_SENSOR_GIC_ENABLE_TAG_ID,
1737 CALIB_SENSOR_GIC_EDGE_EN_TAG_ID,
1738 CALIB_SENSOR_GIC_GR_RATION_TAG_ID,
1739 CALIB_SENSOR_GIC_NOISE_CUT_EN_TAG_ID,
1740 CALIB_SENSOR_GIC_SETTING_TAG_ID,
1741 };
1742
1743 uint32_t calib_sensor_gic_CalibParaV21_sub_tags[] = {
1744 CALIB_SENSOR_GIC_SCENE_TAG_ID,
1745 CALIB_SENSOR_GIC_ENABLE_TAG_ID,
1746 CALIB_SENSOR_GIC_GR_RATION_TAG_ID,
1747 CALIB_SENSOR_GIC_SETTING_V21_TAG_ID,
1748 };
1749
1750 uint32_t calib_sensor_gic_TuningParaV21_sub_tags[] = {
1751 CALIB_SENSOR_GIC_SCENE_TAG_ID,
1752 CALIB_SENSOR_GIC_ENABLE_TAG_ID,
1753 CALIB_SENSOR_GIC_GR_RATION_TAG_ID,
1754 CALIB_SENSOR_GIC_SETTING_V21_TAG_ID,
1755 };
1756
1757 uint32_t calib_sensor_GIC_Setting_v21_sub_tags[] = {
1758 CALIB_SENSOR_GIC_SETTING_ISO_TAG_ID,
1759 CALIB_SENSOR_GIC_MIN_BUSY_THRE_TAG_ID,
1760 CALIB_SENSOR_GIC_MIN_GRAD_THR1_TAG_ID,
1761 CALIB_SENSOR_GIC_MIN_GRAD_THR2_TAG_ID,
1762 CALIB_SENSOR_GIC_K_GRAD1_TAG_ID,
1763 CALIB_SENSOR_GIC_K_GRAD2_TAG_ID,
1764 CALIB_SENSOR_GIC_GB_THRE_TAG_ID,
1765 CALIB_SENSOR_GIC_MAXCORV_TAG_ID,
1766 CALIB_SENSOR_GIC_MAXCORVBOTH_TAG_ID,
1767 CALIB_SENSOR_GIC_DARK_THRE_TAG_ID,
1768 CALIB_SENSOR_GIC_DARK_THREHI_TAG_ID,
1769 CALIB_SENSOR_GIC_K_GRAD1_DARK_TAG_ID,
1770 CALIB_SENSOR_GIC_K_GRAD2_DARK_TAG_ID,
1771 CALIB_SENSOR_GIC_MIN_GRAD_THR_DARK1_TAG_ID,
1772 CALIB_SENSOR_GIC_MIN_GRAD_THR_DARK2_TAG_ID,
1773 CALIB_SENSOR_GIC_NOISECURVE0_TAG_ID,
1774 CALIB_SENSOR_GIC_NOISECURVE1_TAG_ID,
1775 CALIB_SENSOR_GIC_GLOBALSTRENGTH_TAG_ID,
1776 CALIB_SENSOR_GIC_DIFF_CLIP_TAG_ID,
1777 CALIB_SENSOR_GIC_NOISESCALE_TAG_ID,
1778 CALIB_SENSOR_GIC_NOISEBASE_TAG_ID,
1779 };
1780
1781 uint32_t calib_sensor_GIC_Setting_v20_sub_tags[] = {
1782 CALIB_SENSOR_GIC_SETTING_ISO_TAG_ID,
1783 CALIB_SENSOR_GIC_MIN_BUSY_THRE_TAG_ID,
1784 CALIB_SENSOR_GIC_MIN_GRAD_THR1_TAG_ID,
1785 CALIB_SENSOR_GIC_MIN_GRAD_THR2_TAG_ID,
1786 CALIB_SENSOR_GIC_K_GRAD1_TAG_ID,
1787 CALIB_SENSOR_GIC_K_GRAD2_TAG_ID,
1788 CALIB_SENSOR_GIC_GB_THRE_TAG_ID,
1789 CALIB_SENSOR_GIC_MAXCORV_TAG_ID,
1790 CALIB_SENSOR_GIC_MAXCORVBOTH_TAG_ID,
1791 CALIB_SENSOR_GIC_DARK_THRE_TAG_ID,
1792 CALIB_SENSOR_GIC_DARK_THREHI_TAG_ID,
1793 CALIB_SENSOR_GIC_K_GRAD1_DARK_TAG_ID,
1794 CALIB_SENSOR_GIC_K_GRAD2_DARK_TAG_ID,
1795 CALIB_SENSOR_GIC_MIN_GRAD_THR_DARK1_TAG_ID,
1796 CALIB_SENSOR_GIC_MIN_GRAD_THR_DARK2_TAG_ID,
1797 CALIB_SENSOR_GIC_NOISECURVE0_TAG_ID,
1798 CALIB_SENSOR_GIC_NOISECURVE1_TAG_ID,
1799 CALIB_SENSOR_GIC_GVALUELIMITLO_TAG_ID,
1800 CALIB_SENSOR_GIC_GVALUELIMITHI_TAG_ID,
1801 CALIB_SENSOR_GIC_TEXTURESTRENGTH_TAG_ID,
1802 CALIB_SENSOR_GIC_SCALELO_TAG_ID,
1803 CALIB_SENSOR_GIC_SCALEHI_TAG_ID,
1804 CALIB_SENSOR_GIC_GLOBALSTRENGTH_TAG_ID,
1805 CALIB_SENSOR_GIC_NOISE_COEA_TAG_ID,
1806 CALIB_SENSOR_GIC_NOISE_COEB_TAG_ID,
1807 CALIB_SENSOR_GIC_DIFF_CLIP_TAG_ID,
1808 };
1809
1810 uint32_t calib_sensor_mfnr_sub_tags[] = {
1811 CALIB_SENSOR_MFNR_ENABLE_TAG_ID,
1812 CALIB_SENSOR_MFNR_VERSION_TAG_ID,
1813 CALIB_SENSOR_MFNR_LOCAL_GAIN_EN_TAG_ID,
1814 CALIB_SENSOR_MFNR_MOTION_DETECT_EN_TAG_ID,
1815 CALIB_SENSOR_MFNR_MODE_3TO1_TAG_ID,
1816 CALIB_SENSOR_MFNR_MAX_LEVEL_TAG_ID,
1817 CALIB_SENSOR_MFNR_MAX_LEVEL_UV_TAG_ID,
1818 CALIB_SENSOR_MFNR_BACK_REF_NUM_TAG_ID,
1819 CALIB_SENSOR_MFNR_AWB_UV_RATIO_TAG_ID,
1820 CALIB_SENSOR_MFNR_MODE_CELL_TAG_ID,
1821 };
1822
1823 uint32_t calib_sensor_awb_uv_ratio_sub_tags[] = {
1824 CALIB_SENSOR_MFNR_AWB_UV_RATIO_NAME_TAG_ID,
1825 CALIB_SENSOR_MFNR_AWB_UV_RATIO_RATIO_TAG_ID,
1826 };
1827
1828 uint32_t calib_sensor_mfnr_mode_cell_sub_tags[] = {
1829 CALIB_SENSOR_MFNR_MODE_NAME_TAG_ID,
1830 CALIB_SENSOR_MFNR_DYNAMIC_TAG_ID,
1831 CALIB_SENSOR_MFNR_SETTING_TAG_ID,
1832 CALIB_SENSOR_MFNR_MOTION_DETECTION_TAG_ID,
1833 };
1834
1835 uint32_t calib_sensor_MFNR_DynamicEN_sub_tags[] = {
1836 CALIB_SENSOR_MFNR_DYNAMIC_ENABLE_TAG_ID,
1837 CALIB_SENSOR_MFNR_DYNAMIC_LOWTH_ISO_TAG_ID,
1838 CALIB_SENSOR_MFNR_DYNAMIC_LOWTH_TIME_TAG_ID,
1839 CALIB_SENSOR_MFNR_DYNAMIC_HIGHTH_ISO_TAG_ID,
1840 CALIB_SENSOR_MFNR_DYNAMIC_HIGHTH_TIME_TAG_ID,
1841 };
1842
1843 uint32_t calib_sensor_MFNR_Setting_sub_tags[] = {
1844 CALIB_SENSOR_MFNR_SETTING_SNR_MODE_TAG_ID,
1845 CALIB_SENSOR_MFNR_SETTING_SENSOR_MODE_TAG_ID,
1846 CALIB_SENSOR_MFNR_ISO_TAG_ID,
1847 };
1848
1849 uint32_t calib_sensor_MFNR_ISO_sub_tags[] = {
1850 CALIB_SENSOR_MFNR_ISO_ISO_TAG_ID,
1851 CALIB_SENSOR_MFNR_ISO_WEIGHT_LIMIT_Y_TAG_ID,
1852 CALIB_SENSOR_MFNR_ISO_WEIGHT_LIMIT_UV_TAG_ID,
1853 CALIB_SENSOR_MFNR_ISO_RATIO_FRQ_TAG_ID,
1854 CALIB_SENSOR_MFNR_ISO_LUMA_W_IN_CHROMA_TAG_ID,
1855 CALIB_SENSOR_MFNR_ISO_NOISE_CURVE_TAG_ID,
1856 CALIB_SENSOR_MFNR_ISO_NOISE_CURVE_X00_TAG_ID,
1857 CALIB_SENSOR_MFNR_ISO_Y_LO_NOISEPROFILE_TAG_ID,
1858 CALIB_SENSOR_MFNR_ISO_Y_HI_NOISEPROFILE_TAG_ID,
1859 CALIB_SENSOR_MFNR_ISO_Y_LO_DENOISEWEIGHT_TAG_ID,
1860 CALIB_SENSOR_MFNR_ISO_Y_HI_DENOISEWEIGHT_TAG_ID,
1861 CALIB_SENSOR_MFNR_ISO_Y_LO_BFSCALE_TAG_ID,
1862 CALIB_SENSOR_MFNR_ISO_Y_HI_BFSCALE_TAG_ID,
1863 CALIB_SENSOR_MFNR_ISO_Y_LUMANRPOINT_TAG_ID,
1864 CALIB_SENSOR_MFNR_ISO_Y_LUMANRCURVE_TAG_ID,
1865 CALIB_SENSOR_MFNR_ISO_Y_DENOISESTRENGTH_TAG_ID,
1866 CALIB_SENSOR_MFNR_ISO_Y_LO_LVL0_GFDELTA_TAG_ID,
1867 CALIB_SENSOR_MFNR_ISO_Y_HI_LVL0_GFDELTA_TAG_ID,
1868 CALIB_SENSOR_MFNR_ISO_Y_LO_LVL1_GFDELTA_TAG_ID,
1869 CALIB_SENSOR_MFNR_ISO_Y_HI_LVL1_GFDELTA_TAG_ID,
1870 CALIB_SENSOR_MFNR_ISO_Y_LO_LVL2_GFDELTA_TAG_ID,
1871 CALIB_SENSOR_MFNR_ISO_Y_HI_LVL2_GFDELTA_TAG_ID,
1872 CALIB_SENSOR_MFNR_ISO_Y_LO_LVL3_GFDELTA_TAG_ID,
1873 CALIB_SENSOR_MFNR_ISO_Y_HI_LVL3_GFDELTA_TAG_ID,
1874 CALIB_SENSOR_MFNR_ISO_UV_LO_NOISEPROFILE_TAG_ID,
1875 CALIB_SENSOR_MFNR_ISO_UV_HI_NOISEPROFILE_TAG_ID,
1876 CALIB_SENSOR_MFNR_ISO_UV_LO_DENOISEWEIGHT_TAG_ID,
1877 CALIB_SENSOR_MFNR_ISO_UV_HI_DENOISEWEIGHT_TAG_ID,
1878 CALIB_SENSOR_MFNR_ISO_UV_LO_BFSCALE_TAG_ID,
1879 CALIB_SENSOR_MFNR_ISO_UV_HI_BFSCALE_TAG_ID,
1880 CALIB_SENSOR_MFNR_ISO_UV_LUMANRPOINT_TAG_ID,
1881 CALIB_SENSOR_MFNR_ISO_UV_LUMANRCURVE_TAG_ID,
1882 CALIB_SENSOR_MFNR_ISO_UV_DENOISESTRENGTH_TAG_ID,
1883 CALIB_SENSOR_MFNR_ISO_UV_LO_LVL0_GFDELTA_TAG_ID,
1884 CALIB_SENSOR_MFNR_ISO_UV_HI_LVL0_GFDELTA_TAG_ID,
1885 CALIB_SENSOR_MFNR_ISO_UV_LO_LVL1_GFDELTA_TAG_ID,
1886 CALIB_SENSOR_MFNR_ISO_UV_HI_LVL1_GFDELTA_TAG_ID,
1887 CALIB_SENSOR_MFNR_ISO_UV_LO_LVL2_GFDELTA_TAG_ID,
1888 CALIB_SENSOR_MFNR_ISO_UV_HI_LVL2_GFDELTA_TAG_ID,
1889 CALIB_SENSOR_MFNR_ISO_LVL0_GFSIGMA_TAG_ID,
1890 CALIB_SENSOR_MFNR_ISO_LVL1_GFSIGMA_TAG_ID,
1891 CALIB_SENSOR_MFNR_ISO_LVL2_GFSIGMA_TAG_ID,
1892 CALIB_SENSOR_MFNR_ISO_LVL3_GFSIGMA_TAG_ID,
1893 };
1894
1895 uint32_t calib_sensor_MFNR_motion_detection_sub_tags[] = {
1896 CALIB_SENSOR_MFNR_MOTION_DETECTION_ENABLE_TAG_ID,
1897 CALIB_SENSOR_MFNR_MOTION_DETECTION_ISO_TAG_ID,
1898 CALIB_SENSOR_MFNR_MOTION_DETECTION_SIGMAHSCALE_TAG_ID,
1899 CALIB_SENSOR_MFNR_MOTION_DETECTION_SIGMALSCALE_TAG_ID,
1900 CALIB_SENSOR_MFNR_MOTION_DETECTION_LIGHT_CLP_TAG_ID,
1901 CALIB_SENSOR_MFNR_MOTION_DETECTION_UV_WEIGHT_TAG_ID,
1902 CALIB_SENSOR_MFNR_MOTION_DETECTION_MFNR_SIGMA_SCALE_TAG_ID,
1903 CALIB_SENSOR_MFNR_MOTION_DETECTION_YUVNR_GAIN_SCALE0_TAG_ID,
1904 CALIB_SENSOR_MFNR_MOTION_DETECTION_YUVNR_GAIN_SCALE1_TAG_ID,
1905 CALIB_SENSOR_MFNR_MOTION_DETECTION_YUVNR_GAIN_SCALE2_TAG_ID,
1906 CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED0_TAG_ID,
1907 CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED1_TAG_ID,
1908 CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED2_TAG_ID,
1909 CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED3_TAG_ID,
1910 CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED4_TAG_ID,
1911 CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED5_TAG_ID,
1912 CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED6_TAG_ID,
1913 CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED7_TAG_ID,
1914 CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED8_TAG_ID,
1915 CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED9_TAG_ID,
1916 CALIB_SENSOR_MFNR_MOTION_DETECTION_FRAME_LIMIT_Y_TAG_ID,
1917 CALIB_SENSOR_MFNR_MOTION_DETECTION_FRAME_LIMIT_UV_TAG_ID,
1918 };
1919
1920
1921
1922
1923
1924 uint32_t calib_sensor_sharp_sub_tags[] = {
1925 CALIB_SENSOR_SHARP_ENABLE_TAG_ID,
1926 CALIB_SENSOR_SHARP_VERSION_TAG_ID,
1927 CALIB_SENSOR_SHARP_LUMA_POINT_TAG_ID,
1928 CALIB_SENSOR_SHARP_MODE_CELL_TAG_ID,
1929 };
1930
1931 uint32_t calib_sensor_sharp_mode_cell_sub_tags[] = {
1932 CALIB_SENSOR_SHARP_MODE_NAME_TAG_ID,
1933 CALIB_SENSOR_SHARP_SETTING_TAG_ID,
1934 CALIB_SENSOR_SHARP_SHARP_GAUSS_LUMA_COEFF_TAG_ID,
1935 CALIB_SENSOR_SHARP_SHARP_MBF_COEFF_TAG_ID,
1936 #if 1
1937 CALIB_SENSOR_SHARP_SHARP_PBF_COEFF_TAG_ID,
1938 CALIB_SENSOR_SHARP_SHARP_RF_M_COEFF_TAG_ID,
1939 CALIB_SENSOR_SHARP_SHARP_RF_H_COEFF_TAG_ID,
1940 CALIB_SENSOR_SHARP_SHARP_HBF_COEFF_TAG_ID,
1941 #endif
1942 //v2
1943 CALIB_SENSOR_SHARP_SHARP_PBF_COEFF_L_TAG_ID,
1944 CALIB_SENSOR_SHARP_SHARP_PBF_COEFF_H_TAG_ID,
1945 CALIB_SENSOR_SHARP_SHARP_RF_M_COEFF_L_TAG_ID,
1946 CALIB_SENSOR_SHARP_SHARP_RF_M_COEFF_H_TAG_ID,
1947 CALIB_SENSOR_SHARP_SHARP_RF_H_COEFF_L_TAG_ID,
1948 CALIB_SENSOR_SHARP_SHARP_RF_H_COEFF_H_TAG_ID,
1949 CALIB_SENSOR_SHARP_SHARP_HBF_COEFF_L_TAG_ID,
1950 CALIB_SENSOR_SHARP_SHARP_HBF_COEFF_H_TAG_ID,
1951
1952 };
1953
1954 uint32_t calib_sensor_SHARP_Setting_sub_tags[] = {
1955 CALIB_SENSOR_SHARP_SETTING_SNR_MODE_TAG_ID,
1956 CALIB_SENSOR_SHARP_SETTING_SENSOR_MODE_TAG_ID,
1957 CALIB_SENSOR_SHARP_SHARP_ISO_TAG_ID,
1958 };
1959
1960 uint32_t calib_sensor_SHARP_ISO_sub_tags[] = {
1961 CALIB_SENSOR_SHARP_SHARP_ISO_ISO_TAG_ID,
1962 CALIB_SENSOR_SHARP_SHARP_ISO_HRATIO_TAG_ID,
1963 CALIB_SENSOR_SHARP_SHARP_ISO_LRATIO_TAG_ID,
1964 CALIB_SENSOR_SHARP_SHARP_ISO_MF_SHARP_RATIO_TAG_ID,
1965 CALIB_SENSOR_SHARP_SHARP_ISO_HF_SHARP_RATIO_TAG_ID,
1966 CALIB_SENSOR_SHARP_SHARP_ISO_LUMA_SIGMA_TAG_ID,
1967 CALIB_SENSOR_SHARP_SHARP_ISO_PBF_GAIN_TAG_ID,
1968 CALIB_SENSOR_SHARP_SHARP_ISO_PBF_RATIO_TAG_ID,
1969 CALIB_SENSOR_SHARP_SHARP_ISO_PBF_ADD_TAG_ID,
1970 CALIB_SENSOR_SHARP_SHARP_ISO_MF_CLIP_POS_TAG_ID,
1971 CALIB_SENSOR_SHARP_SHARP_ISO_MF_CLIP_NEG_TAG_ID,
1972 CALIB_SENSOR_SHARP_SHARP_ISO_HF_CLIP_TAG_ID,
1973 CALIB_SENSOR_SHARP_SHARP_ISO_MBF_GAIN_TAG_ID,
1974 CALIB_SENSOR_SHARP_SHARP_ISO_HBF_GAIN_TAG_ID,
1975 CALIB_SENSOR_SHARP_SHARP_ISO_HBF_RATIO_TAG_ID,
1976 CALIB_SENSOR_SHARP_SHARP_ISO_MBF_ADD_TAG_ID,
1977 CALIB_SENSOR_SHARP_SHARP_ISO_HBF_ADD_TAG_ID,
1978 CALIB_SENSOR_SHARP_SHARP_ISO_LOCAL_SHARP_STRENGTH_TAG_ID,
1979 CALIB_SENSOR_SHARP_SHARP_PBF_COEFF_PERCENT_TAG_ID,
1980 CALIB_SENSOR_SHARP_SHARP_RF_M_COEFF_PERCENT_TAG_ID,
1981 CALIB_SENSOR_SHARP_SHARP_RF_H_COEFF_PERCENT_TAG_ID,
1982 CALIB_SENSOR_SHARP_SHARP_HBF_COEFF_PERCENT_TAG_ID,
1983 };
1984
1985 uint32_t calib_sensor_edgefilter_sub_tags[] = {
1986 CALIB_SENSOR_EDGEFILTER_ENABLE_TAG_ID,
1987 CALIB_SENSOR_EDGEFILTER_VERSION_TAG_ID,
1988 CALIB_SENSOR_EDGEFILTER_LUMA_POINT_TAG_ID,
1989 CALIB_SENSOR_EDGEFILTER_MODE_CELL_TAG_ID,
1990 };
1991
1992 uint32_t calib_sensor_edgefilter_mode_cell_sub_tags[] = {
1993 CALIB_SENSOR_EDGEFILTER_MODE_NAME_TAG_ID,
1994 CALIB_SENSOR_EDGEFILTER_SETTING_TAG_ID,
1995 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_KERNEL_L_TAG_ID,
1996 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_KERNEL_H_TAG_ID,
1997 };
1998
1999 uint32_t calib_sensor_EDGEFILTER_Setting_sub_tags[] = {
2000 CALIB_SENSOR_EDGEFILTER_SETTING_SNR_MODE_TAG_ID,
2001 CALIB_SENSOR_EDGEFILTER_SETTING_SENSOR_MODE_TAG_ID,
2002 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_TAG_ID,
2003 };
2004
2005 uint32_t calib_sensor_EDGEFILTER_ISO_sub_tags[] = {
2006 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_ISO_TAG_ID,
2007 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_EDGE_THED_TAG_ID,
2008 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_SRC_WGT_TAG_ID,
2009 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_ALPHA_ADP_EN_TAG_ID,
2010 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_LOCAL_ALPHA_TAG_ID,
2011 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_GLOBAL_ALPHA_TAG_ID,
2012 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_NOISE_CLIP_TAG_ID,
2013 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_CLIP_POS_TAG_ID,
2014 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_CLIP_NEG_TAG_ID,
2015 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_ALPHA_TAG_ID,
2016 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DIRECT_FILTER_COEFF_TAG_ID,
2017 #if 1
2018 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_KERNEL_ROW0_TAG_ID,
2019 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_KERNEL_ROW1_TAG_ID,
2020 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_KERNEL_ROW2_TAG_ID,
2021 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_KERNEL_ROW3_TAG_ID,
2022 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_KERNEL_ROW4_TAG_ID,
2023 #endif
2024 CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_KERNEL_PERCENT_TAG_ID,
2025 };
2026
2027 uint32_t calib_sensor_dehaze_sub_tags[] = {
2028 CALIB_SENSOR_DEHAZE_CALIBPARA_V20_TAG_ID,
2029 CALIB_SENSOR_DEHAZE_CALIBPARA_V21_TAG_ID,
2030 CALIB_SENSOR_DEHAZE_TUNINGPARA_V20_TAG_ID,
2031 CALIB_SENSOR_DEHAZE_TUNINGPARA_V21_TAG_ID,
2032 };
2033
2034 uint32_t calib_sensor_dehaze_CalibParaV20_sub_tags[] = {
2035 CALIB_SENSOR_DEHAZE_SCENE_TAG_ID,
2036 CALIB_SENSOR_DEHAZE_EN_TAG_ID,
2037 CALIB_SENSOR_DEHAZE_CFG_ALPHA_TAG_ID,
2038 CALIB_SENSOR_DEHAZE_SETTING_TAG_ID,
2039 CALIB_SENSOR_ENHANCE_SETTING_TAG_ID,
2040 CALIB_SENSOR_HIST_SETTING_TAG_ID,
2041 };
2042
2043 uint32_t calib_sensor_dehaze_CalibParaV21_sub_tags[] = {
2044 CALIB_SENSOR_DEHAZE_SCENE_TAG_ID,
2045 CALIB_SENSOR_DEHAZE_EN_TAG_ID,
2046 CALIB_SENSOR_DEHAZE_CFG_ALPHA_TAG_ID,
2047 CALIB_SENSOR_DEHAZE_V21_SETTING_TAG_ID,
2048 CALIB_SENSOR_ENHANCE_V21_SETTING_TAG_ID,
2049 CALIB_SENSOR_HIST_V21_SETTING_TAG_ID,
2050 };
2051
2052 uint32_t calib_sensor_dehaze_TuningParaV20_sub_tags[] = {
2053 CALIB_SENSOR_DEHAZE_SCENE_TAG_ID,
2054 CALIB_SENSOR_DEHAZE_EN_TAG_ID,
2055 CALIB_SENSOR_DEHAZE_CFG_ALPHA_TAG_ID,
2056 CALIB_SENSOR_DEHAZE_SETTING_TAG_ID,
2057 CALIB_SENSOR_ENHANCE_SETTING_TAG_ID,
2058 CALIB_SENSOR_HIST_SETTING_TAG_ID,
2059 };
2060
2061 uint32_t calib_sensor_dehaze_TuningParaV21_sub_tags[] = {
2062 CALIB_SENSOR_DEHAZE_SCENE_TAG_ID,
2063 CALIB_SENSOR_DEHAZE_EN_TAG_ID,
2064 CALIB_SENSOR_DEHAZE_CFG_ALPHA_TAG_ID,
2065
2066 CALIB_SENSOR_DEHAZE_V21_SETTING_TAG_ID,
2067 CALIB_SENSOR_ENHANCE_V21_SETTING_TAG_ID,
2068 CALIB_SENSOR_HIST_V21_SETTING_TAG_ID,
2069 };
2070
2071 uint32_t calib_sensor_Dehaze_Setting_sub_tags[] = {
2072 CALIB_SENSOR_DEHAZE_SETTING_EN_TAG_ID,
2073 CALIB_SENSOR_DEHAZE_SETTING_ISO_TAG_ID,
2074 CALIB_SENSOR_DEHAZE_SETTING_DC_MIN_TH_TAG_ID,
2075 CALIB_SENSOR_DEHAZE_SETTING_DC_MAX_TH_TAG_ID,
2076 CALIB_SENSOR_DEHAZE_SETTING_YHIST_TH_TAG_ID,
2077 CALIB_SENSOR_DEHAZE_SETTING_YBLK_TH_TAG_ID,
2078 CALIB_SENSOR_DEHAZE_SETTING_DARK_TH_TAG_ID,
2079 CALIB_SENSOR_DEHAZE_SETTING_BRIGHT_MIN_TAG_ID,
2080 CALIB_SENSOR_DEHAZE_SETTING_BRIGHT_MAX_TAG_ID,
2081 CALIB_SENSOR_DEHAZE_SETTING_WT_MAX_TAG_ID,
2082 CALIB_SENSOR_DEHAZE_SETTING_AIR_MIN_TAG_ID,
2083 CALIB_SENSOR_DEHAZE_SETTING_AIR_MAX_TAG_ID,
2084 CALIB_SENSOR_DEHAZE_SETTING_TMAX_BASE_TAG_ID,
2085 CALIB_SENSOR_DEHAZE_SETTING_TMAX_OFF_TAG_ID,
2086 CALIB_SENSOR_DEHAZE_SETTING_TMAX_MAX_TAG_ID,
2087 CALIB_SENSOR_DEHAZE_SETTING_CFG_WT_TAG_ID,
2088 CALIB_SENSOR_DEHAZE_SETTING_CFG_AIR_TAG_ID,
2089 CALIB_SENSOR_DEHAZE_SETTING_CFG_TMAX_TAG_ID,
2090 CALIB_SENSOR_DEHAZE_SETTING_DC_THED_TAG_ID,
2091 CALIB_SENSOR_DEHAZE_SETTING_DC_WEITCUR_TAG_ID,
2092 CALIB_SENSOR_DEHAZE_SETTING_AIR_THED_TAG_ID,
2093 CALIB_SENSOR_DEHAZE_SETTING_AIR_WEITCUR_TAG_ID,
2094 CALIB_SENSOR_IIR_SETTING_STAB_FNUM_TAG_ID,
2095 CALIB_SENSOR_IIR_SETTING_SIGMA_TAG_ID,
2096 CALIB_SENSOR_IIR_SETTING_WT_SIGMA_TAG_ID,
2097 CALIB_SENSOR_IIR_SETTING_AIR_SIGMA_TAG_ID,
2098 CALIB_SENSOR_IIR_SETTING_TMAX_SIGMA_TAG_ID,
2099 };
2100
2101 uint32_t calib_sensor_Enhance_Setting_sub_tags[] = {
2102 CALIB_SENSOR_ENHANCE_SETTING_EN_TAG_ID,
2103 CALIB_SENSOR_ENHANCE_SETTING_ISO_TAG_ID,
2104 CALIB_SENSOR_ENHANCE_SETTING_ENHANCE_VALUE_TAG_ID,
2105 };
2106
2107 uint32_t calib_sensor_Hist_Setting_sub_tags[] = {
2108 CALIB_SENSOR_HIST_SETTING_EN_TAG_ID,
2109 CALIB_SENSOR_HIST_SETTING_ISO_TAG_ID,
2110 CALIB_SENSOR_HIST_SETTING_HIST_CHANNEL_TAG_ID,
2111 CALIB_SENSOR_HIST_SETTING_HIST_PARA_EN_TAG_ID,
2112 CALIB_SENSOR_HIST_SETTING_HIST_GRATIO_TAG_ID,
2113 CALIB_SENSOR_HIST_SETTING_HIST_TH_OFF_TAG_ID,
2114 CALIB_SENSOR_HIST_SETTING_HIST_K_TAG_ID,
2115 CALIB_SENSOR_HIST_SETTING_HIST_MIN_TAG_ID,
2116 CALIB_SENSOR_HIST_SETTING_HIST_SCALE_TAG_ID,
2117 CALIB_SENSOR_HIST_SETTING_CFG_GRATIO_TAG_ID,
2118 };
2119
2120 uint32_t calib_sensor_Dehaze_V21_Setting_sub_tags[] = {
2121 CALIB_SENSOR_DEHAZE_SETTING_EN_TAG_ID,
2122 CALIB_SENSOR_DEHAZE_SETTING_ISO_TAG_ID,
2123 CALIB_SENSOR_DEHAZE_SETTING_AIR_LC_EN_TAG_ID,
2124 CALIB_SENSOR_DEHAZE_SETTING_DC_MIN_TH_TAG_ID,
2125 CALIB_SENSOR_DEHAZE_SETTING_DC_MAX_TH_TAG_ID,
2126 CALIB_SENSOR_DEHAZE_SETTING_YHIST_TH_TAG_ID,
2127 CALIB_SENSOR_DEHAZE_SETTING_YBLK_TH_TAG_ID,
2128 CALIB_SENSOR_DEHAZE_SETTING_DARK_TH_TAG_ID,
2129 CALIB_SENSOR_DEHAZE_SETTING_BRIGHT_MIN_TAG_ID,
2130 CALIB_SENSOR_DEHAZE_SETTING_BRIGHT_MAX_TAG_ID,
2131 CALIB_SENSOR_DEHAZE_SETTING_WT_MAX_TAG_ID,
2132 CALIB_SENSOR_DEHAZE_SETTING_AIR_MIN_TAG_ID,
2133 CALIB_SENSOR_DEHAZE_SETTING_AIR_MAX_TAG_ID,
2134 CALIB_SENSOR_DEHAZE_SETTING_TMAX_BASE_TAG_ID,
2135 CALIB_SENSOR_DEHAZE_SETTING_TMAX_OFF_TAG_ID,
2136 CALIB_SENSOR_DEHAZE_SETTING_TMAX_MAX_TAG_ID,
2137 CALIB_SENSOR_DEHAZE_SETTING_CFG_WT_TAG_ID,
2138 CALIB_SENSOR_DEHAZE_SETTING_CFG_AIR_TAG_ID,
2139 CALIB_SENSOR_DEHAZE_SETTING_CFG_TMAX_TAG_ID,
2140 CALIB_SENSOR_DEHAZE_SETTING_RANGE_SIGMA_TAG_ID,
2141 CALIB_SENSOR_DEHAZE_SETTING_SPACE_SIGMA_PRE_TAG_ID,
2142 CALIB_SENSOR_DEHAZE_SETTING_SPACE_SIGMA_CUR_TAG_ID,
2143 CALIB_SENSOR_DEHAZE_SETTING_DC_WEITCUR_TAG_ID,
2144 CALIB_SENSOR_DEHAZE_SETTING_BF_WEIGHT_TAG_ID,
2145 CALIB_SENSOR_IIR_SETTING_STAB_FNUM_TAG_ID,
2146 CALIB_SENSOR_IIR_SETTING_SIGMA_TAG_ID,
2147 CALIB_SENSOR_IIR_SETTING_WT_SIGMA_TAG_ID,
2148 CALIB_SENSOR_IIR_SETTING_AIR_SIGMA_TAG_ID,
2149 CALIB_SENSOR_IIR_SETTING_TMAX_SIGMA_TAG_ID,
2150 CALIB_SENSOR_IIR_SETTING_PRE_WET_TAG_ID,
2151 };
2152
2153 uint32_t calib_sensor_Enhance_V21_Setting_sub_tags[] = {
2154 CALIB_SENSOR_ENHANCE_SETTING_EN_TAG_ID,
2155 CALIB_SENSOR_ENHANCE_SETTING_ISO_TAG_ID,
2156 CALIB_SENSOR_ENHANCE_SETTING_ENHANCE_VALUE_TAG_ID,
2157 CALIB_SENSOR_ENHANCE_SETTING_ENHANCE_CHROMA_TAG_ID,
2158 CALIB_SENSOR_ENHANCE_SETTING_ENHANCE_CURVE_TAG_ID,
2159 };
2160
2161 uint32_t calib_sensor_Hist_V21_Setting_sub_tags[] = {
2162 CALIB_SENSOR_HIST_SETTING_EN_TAG_ID,
2163 CALIB_SENSOR_HIST_SETTING_ISO_TAG_ID,
2164 CALIB_SENSOR_HIST_SETTING_HIST_PARA_EN_TAG_ID,
2165 CALIB_SENSOR_HIST_SETTING_HIST_GRATIO_TAG_ID,
2166 CALIB_SENSOR_HIST_SETTING_HIST_TH_OFF_TAG_ID,
2167 CALIB_SENSOR_HIST_SETTING_HIST_K_TAG_ID,
2168 CALIB_SENSOR_HIST_SETTING_HIST_MIN_TAG_ID,
2169 CALIB_SENSOR_HIST_SETTING_HIST_SCALE_TAG_ID,
2170 CALIB_SENSOR_HIST_SETTING_CFG_GRATIO_TAG_ID,
2171 };
2172
2173 uint32_t calib_sensor_sensorinfo_sub_tags[] = {
2174 CALIB_SENSOR_SENSORINFO_GAINRANGE_TAG_ID,
2175 CALIB_SENSOR_SENSORINFO_TIMEFACTOR_TAG_ID,
2176 CALIB_SENSOR_SENSORINFO_CISLINTIMEREG_MAXFAC_TAG_ID,
2177 CALIB_SENSOR_SENSORINFO_CISHDRTIMEREG_SUMFAC_TAG_ID,
2178 CALIB_SENSOR_SENSORINFO_CISTIMEREG_ODEVITY_TAG_ID,
2179 CALIB_SENSOR_SENSORINFO_CISHDRTIMEREG_ODEVITY_TAG_ID,
2180 CALIB_SENSOR_SENSORINFO_CISTIMEREG_MIN_TAG_ID,
2181 CALIB_SENSOR_SENSORINFO_CISHDRTIMEREG_MIN_TAG_ID,
2182 CALIB_SENSOR_SENSORINFO_CISHDRTIMEREG_MAX_TAG_ID,
2183 CALIB_SENSOR_SENSORINFO_CISTIMEREG_UNEQUALEN_TAG_ID,
2184 CALIB_SENSOR_SENSORINFO_CISMINFPS_TAG_ID,
2185 CALIB_SENSOR_SENSORINFO_CISAGAIN_RANGE_TAG_ID,
2186 CALIB_SENSOR_SENSORINFO_CISEXTRAAGAIN_RANGE_TAG_ID,
2187 CALIB_SENSOR_SENSORINFO_CISDGAIN_RANGE_TAG_ID,
2188 CALIB_SENSOR_SENSORINFO_CISISPDGAIN_RANGE_TAG_ID,
2189 CALIB_SENSOR_SENSORINFO_CISHDRGAININDSETEN_TAG_ID,
2190 CALIB_SENSOR_SENSORSETTING_FLIP_ID,
2191 };
2192
2193 uint32_t calib_sensor_sensorinfo_gainrange_sub_tags[] = {
2194 CALIB_SENSOR_SENSORINFO_GAINRANGE_ISLINEAR_TAG_ID,
2195 CALIB_SENSOR_SENSORINFO_GAINRANGE_LINEAR_TAG_ID,
2196 CALIB_SENSOR_SENSORINFO_GAINRANGE_NONLINEAR_TAG_ID,
2197 };
2198
2199 uint32_t calib_sensor_moduleinfo_sub_tags[] = {
2200 CALIB_SENSOR_MODULEINFO_FNUMBER_TAG_ID,
2201 CALIB_SENSOR_MODULEINFO_EFL_TAG_ID,
2202 CALIB_SENSOR_MODULEINFO_LENS_TRANSMITTANCE_TAG_ID,
2203 CALIB_SENSOR_MODULEINFO_IRCUT_TRANSMITTANCE_TAG_ID,
2204 };
2205
2206 uint32_t calib_sensor_cpsl_sub_tags[] = {
2207 CALIB_SENSOR_CPSL_ENABLE_TAG_ID,
2208 CALIB_SENSOR_CPSL_MODE_TAG_ID,
2209 CALIB_SENSOR_CPSL_FORCE_GRAY_TAG_ID,
2210 CALIB_SENSOR_CPSL_LGHT_SRC_TAG_ID,
2211 CALIB_SENSOR_CPSL_AUTO_ADJUST_SENS_TAG_ID,
2212 CALIB_SENSOR_CPSL_AUTO_ON2OFF_TH_TAG_ID,
2213 CALIB_SENSOR_CPSL_AUTO_OFF2ON_TH_TAG_ID,
2214 CALIB_SENSOR_CPSL_AUTO_SW_INTERVAL_TAG_ID,
2215 CALIB_SENSOR_CPSL_MANUAL_ON_TAG_ID,
2216 CALIB_SENSOR_CPSL_MANUAL_STRENGTH_TAG_ID,
2217 };
2218
2219 uint32_t calib_sensor_lut3d_sub_tags[] = {
2220 CALIB_SENSOR_LUT3D_ENABLE_TAG_ID,
2221 CALIB_SENSOR_LUT3D_R_LUT_TAG_ID,
2222 CALIB_SENSOR_LUT3D_G_LUT_TAG_ID,
2223 CALIB_SENSOR_LUT3D_B_LUT_TAG_ID,
2224 };
2225
2226 uint32_t calib_sensor_ldch_sub_tags[] = {
2227 CALIB_SENSOR_LDCH_ENABLE_TAG_ID,
2228 CALIB_SENSOR_LDCH_MESH_FILE_TAG_ID,
2229 CALIB_SENSOR_LDCH_CORRECT_LEVEL_TAG_ID,
2230 CALIB_SENSOR_LDCH_CORRECT_LEVEL_MAX_TAG_ID,
2231 CALIB_SENSOR_LDCH_LIGHT_CENTER_TAG_ID,
2232 CALIB_SENSOR_LDCH_DISTORTION_COEFF_ID,
2233 };
2234
2235 uint32_t calib_sensor_fec_sub_tags[] = {
2236 CALIB_SENSOR_FEC_ENABLE_TAG_ID,
2237 CALIB_SENSOR_FEC_MESH_FILE_TAG_ID,
2238 CALIB_SENSOR_FEC_CORRECT_LEVEL_TAG_ID,
2239 CALIB_SENSOR_FEC_LIGHT_CENTER_TAG_ID,
2240 CALIB_SENSOR_FEC_DISTORTION_COEFF_ID,
2241 };
2242
2243 uint32_t calib_sensor_eis_sub_tags[] = {
2244 CALIB_SENSOR_EIS_ENABLE_TAG_ID,
2245 };
2246
2247 uint32_t calib_sensor_lumadetect_sub_tags[] = {
2248 CALIB_SENSOR_LUMA_DETECT_ENABLE_TAG_ID,
2249 CALIB_SENSOR_LUMA_DETECT_FIXED_TIMES_TAG_ID,
2250 CALIB_SENSOR_LUMA_DETECT_THRESHOLD_TAG_ID,
2251 CALIB_SENSOR_LUMA_DETECT_THRESHOLD_LEVEL2_TAG_ID,
2252 };
2253
2254 uint32_t calib_sensor_orb_sub_tags[] = {
2255 CALIB_SENSOR_ORB_ENABLE_TAG_ID,
2256 };
2257
2258 uint32_t calib_sensor_color_as_grey_sub_tags[] = {
2259 CALIB_SENSOR_COLOR_AS_GREY_ENABLE_TAG_ID,
2260 };
2261
2262 uint32_t calib_sensor_cproc_sub_tags[] = {
2263 CALIB_SENSOR_CPROC_ENABLE_TAG_ID,
2264 CALIB_SENSOR_CPROC_BRIGHTNESS_TAG_ID,
2265 CALIB_SENSOR_CPROC_CONTRAST_TAG_ID,
2266 CALIB_SENSOR_CPROC_SATURATION_TAG_ID,
2267 CALIB_SENSOR_CPROC_HUE_TAG_ID,
2268 };
2269
2270 uint32_t calib_sensor_ie_sub_tags[] = {
2271 CALIB_SENSOR_IE_ENABLE_TAG_ID,
2272 CALIB_SENSOR_IE_MODE_TAG_ID,
2273 };
2274
2275 uint32_t calib_system_sub_tags[] = {
2276 CALIB_SYSTEM_HDR_TAG_ID,
2277 CALIB_SYSTEM_DCG_SETTING_TAG_ID,
2278 CALIB_SYSTEM_EXP_DELAY_TAG_ID,
2279 };
2280
2281 uint32_t calib_system_hdr_sub_tags[] = {
2282 CALIB_SYSTEM_HDR_ENABLE_TAG_ID,
2283 CALIB_SYSTEM_HDR_SUPPORT_MODE_TAG_ID,
2284 CALIB_SYSTEM_HDR_LINE_MODE_TAG_ID,
2285 };
2286
2287 uint32_t calib_system_DCG_SETTING_sub_tags[] = {
2288 CALIB_SYSTEM_DCG_SETTING_NORMAL_TAG_ID,
2289 CALIB_SYSTEM_DCG_SETTING_HDR_TAG_ID,
2290 };
2291
2292 uint32_t calib_system_DCG_SETTING_Normal_sub_tags[] = {
2293 CALIB_SYSTEM_DCG_SUPPORT_EN_TAG_ID,
2294 CALIB_SYSTEM_DCG_OPTYPE_TAG_ID,
2295 CALIB_SYSTEM_DCG_MODE_INIT_TAG_ID,
2296 CALIB_SYSTEM_DCG_RATIO_TAG_ID,
2297 CALIB_SYSTEM_DCG_GAINCTRL_TAG_ID,
2298 CALIB_SYSTEM_DCG_ENVCTRL_TAG_ID,
2299 };
2300
2301 uint32_t calib_system_DCG_SETTING_Hdr_sub_tags[] = {
2302 CALIB_SYSTEM_DCG_SUPPORT_EN_TAG_ID,
2303 CALIB_SYSTEM_DCG_OPTYPE_TAG_ID,
2304 CALIB_SYSTEM_DCG_MODE_INIT_TAG_ID,
2305 CALIB_SYSTEM_DCG_RATIO_TAG_ID,
2306 CALIB_SYSTEM_DCG_SYNC_SWITCH_TAG_ID,
2307 CALIB_SYSTEM_DCG_GAINCTRL_TAG_ID,
2308 CALIB_SYSTEM_DCG_ENVCTRL_TAG_ID,
2309 };
2310
2311 uint32_t calib_system_gain_ctrl_sub_tags[] = {
2312 CALIB_SYSTEM_DCG_ENABLE_TAG_ID,
2313 CALIB_SYSTEM_DCG_LCG2HCG_TH_TAG_ID,
2314 CALIB_SYSTEM_DCG_HCG2LCG_TH_TAG_ID,
2315 };
2316
2317 uint32_t calib_system_env_ctrl_sub_tags[] = {
2318 CALIB_SYSTEM_DCG_ENABLE_TAG_ID,
2319 CALIB_SYSTEM_DCG_LCG2HCG_TH_TAG_ID,
2320 CALIB_SYSTEM_DCG_HCG2LCG_TH_TAG_ID,
2321 };
2322
2323 uint32_t calib_system_EXP_DELAY_sub_tags[] = {
2324 CALIB_SYSTEM_EXP_DELAY_NORMAL_TAG_ID,
2325 CALIB_SYSTEM_EXP_DELAY_HDR_TAG_ID,
2326 };
2327
2328 uint32_t calib_system_EXP_DELAY_Hdr_sub_tags[] = {
2329 CALIB_SYSTEM_EXP_DELAY_TIME_TAG_ID,
2330 CALIB_SYSTEM_EXP_DELAY_GAIN_TAG_ID,
2331 CALIB_SYSTEM_EXP_DELAY_DCG_TAG_ID,
2332 };
2333
2334 uint32_t calib_system_EXP_DELAY_Normal_sub_tags[] = {
2335 CALIB_SYSTEM_EXP_DELAY_TIME_TAG_ID,
2336 CALIB_SYSTEM_EXP_DELAY_GAIN_TAG_ID,
2337 CALIB_SYSTEM_EXP_DELAY_DCG_TAG_ID,
2338 };
2339
2340 uint32_t calib_expset_sub_tags[] = {
2341 CALIB_EXPSET_GAIN2REG_TAG_ID,
2342 CALIB_EXPSET_TIME2REG_TAG_ID,
2343 CALIB_EXPSET_GAINSET_TAG_ID,
2344 CALIB_EXPSET_TIMESET_TAG_ID,
2345 CALIB_EXPSET_CISMINFPS_TAG_ID,
2346 CALIB_EXPSET_HDRSET_TAG_ID,
2347 CALIB_EXPSET_DCGSET_TAG_ID,
2348 CALIB_EXPSET_EXP_UPDATE_TAG_ID,
2349 CALIB_EXPSET_CISFLIP_TAG_ID,
2350 };
2351
2352 uint32_t calib_expset_gain2reg_sub_tags[] = {
2353 CALIB_EXPSET_GAIN2REG_ISLINEAR_TAG_ID,
2354 CALIB_EXPSET_GAIN2REG_LINEAR_TAG_ID,
2355 CALIB_EXPSET_GAIN2REG_NONLINEAR_TAG_ID,
2356 };
2357
2358 uint32_t calib_expset_gainset_sub_tags[] = {
2359 CALIB_EXPSET_CISAGAIN_RANGE_TAG_ID,
2360 CALIB_EXPSET_CISEXTRAAGAIN_RANGE_TAG_ID,
2361 CALIB_EXPSET_CISDGAIN_RANGE_TAG_ID,
2362 CALIB_EXPSET_CISISPDGAIN_RANGE_TAG_ID,
2363 CALIB_EXPSET_CISHDRGAININDSETEN_TAG_ID,
2364 };
2365
2366 uint32_t calib_expset_timeset_sub_tags[] = {
2367 CALIB_EXPSET_TIMESET_NORMAL_TAG_ID,
2368 CALIB_EXPSET_TIMESET_HDR_TAG_ID,
2369 };
2370
2371 uint32_t calib_expset_timeset_normal_sub_tags[] = {
2372 CALIB_EXPSET_CISLINTIMEREG_MAXFAC_TAG_ID,
2373 CALIB_EXPSET_CISTIMEREG_ODEVITY_TAG_ID,
2374 CALIB_EXPSET_CISTIMEREG_MIN_TAG_ID,
2375 };
2376
2377 uint32_t calib_expset_timeset_hdr_sub_tags[] = {
2378 CALIB_EXPSET_NAME_TAG_ID,
2379 CALIB_EXPSET_CISTIMEREG_UNEQUALEN_TAG_ID,
2380 CALIB_EXPSET_CISHDRTIMEREG_SUMFAC_TAG_ID,
2381 CALIB_EXPSET_CISTIMEREG_ODEVITY_TAG_ID,
2382 CALIB_EXPSET_CISTIMEREG_MIN_TAG_ID,
2383 CALIB_EXPSET_CISTIMEREG_MAX_TAG_ID,
2384 };
2385
2386 uint32_t calib_expset_hdrset_sub_tags[] = {
2387 CALIB_EXPSET_HDRSET_ENABLE_TAG_ID,
2388 CALIB_EXPSET_HDRSET_SUPPORT_MODE_TAG_ID,
2389 CALIB_EXPSET_HDRSET_LINE_MODE_TAG_ID,
2390 };
2391
2392 uint32_t calib_expset_dcgset_sub_tags[] = {
2393 CALIB_EXPSET_DCGSET_NORMAL_TAG_ID,
2394 CALIB_EXPSET_DCGSET_HDR_TAG_ID,
2395 };
2396
2397 uint32_t calib_expset_dcgset_normal_sub_tags[] = {
2398 CALIB_EXPSET_DCGSET_SUPPORT_EN_TAG_ID,
2399 CALIB_EXPSET_DCGSET_OPTYPE_TAG_ID,
2400 CALIB_EXPSET_DCGSET_MODE_INIT_TAG_ID,
2401 CALIB_EXPSET_DCGSET_RATIO_TAG_ID,
2402 CALIB_EXPSET_DCGSET_GAINCTRL_TAG_ID,
2403 CALIB_EXPSET_DCGSET_ENVCTRL_TAG_ID,
2404 };
2405
2406 uint32_t calib_expset_dcgset_hdr_sub_tags[] = {
2407 CALIB_EXPSET_DCGSET_SUPPORT_EN_TAG_ID,
2408 CALIB_EXPSET_DCGSET_OPTYPE_TAG_ID,
2409 CALIB_EXPSET_DCGSET_MODE_INIT_TAG_ID,
2410 CALIB_EXPSET_DCGSET_RATIO_TAG_ID,
2411 CALIB_EXPSET_DCGSET_SYNC_SWITCH_TAG_ID,
2412 CALIB_EXPSET_DCGSET_GAINCTRL_TAG_ID,
2413 CALIB_EXPSET_DCGSET_ENVCTRL_TAG_ID,
2414 };
2415
2416 uint32_t calib_expset_dcgset_gainctrl_sub_tags[] = {
2417 CALIB_EXPSET_DCGSET_ENABLE_TAG_ID,
2418 CALIB_EXPSET_DCGSET_LCG2HCG_TH_TAG_ID,
2419 CALIB_EXPSET_DCGSET_HCG2LCG_TH_TAG_ID,
2420 };
2421
2422 uint32_t calib_expset_dcgset_envctrl_sub_tags[] = {
2423 CALIB_EXPSET_DCGSET_ENABLE_TAG_ID,
2424 CALIB_EXPSET_DCGSET_LCG2HCG_TH_TAG_ID,
2425 CALIB_EXPSET_DCGSET_HCG2LCG_TH_TAG_ID,
2426 };
2427
2428 uint32_t calib_expset_expupdate_sub_tags[] = {
2429 CALIB_EXPSET_EXP_UPDATE_NORMAL_TAG_ID,
2430 CALIB_EXPSET_EXP_UPDATE_HDR_TAG_ID,
2431 };
2432
2433 uint32_t calib_expset_expupdate_hdr_sub_tags[] = {
2434 CALIB_EXPSET_EXP_UPDATE_TIME_TAG_ID,
2435 CALIB_EXPSET_EXP_UPDATE_GAIN_TAG_ID,
2436 CALIB_EXPSET_EXP_UPDATE_DCG_TAG_ID,
2437 };
2438
2439 uint32_t calib_expset_expupdate_normal_sub_tags[] = {
2440 CALIB_EXPSET_EXP_UPDATE_TIME_TAG_ID,
2441 CALIB_EXPSET_EXP_UPDATE_GAIN_TAG_ID,
2442 CALIB_EXPSET_EXP_UPDATE_DCG_TAG_ID,
2443 };
2444
2445 uint32_t calib_moduleinfo_sub_tags[] = {
2446 CALIB_MODULEINFO_FNUMBER_TAG_ID,
2447 CALIB_MODULEINFO_EFL_TAG_ID,
2448 CALIB_MODULEINFO_LENS_TRANSMITTANCE_TAG_ID,
2449 CALIB_MODULEINFO_IRCUT_TRANSMITTANCE_TAG_ID,
2450 };
2451 uint32_t calib_sensor_bayernr_v2_sub_tags[] = {
2452 CALIB_SENSOR_BAYERNR_V2_MODE_NAME_TAG_ID,
2453 CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_TAG_ID,
2454 CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_TAG_ID
2455 };
2456
2457 uint32_t calib_sensor_bayernr_v2_bayernr2D_sub_tags[] = {
2458 CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_ENABLE_TAG_ID,
2459 CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_SETTING_TAG_ID,
2460 };
2461
2462 uint32_t calib_sensor_bayernr_v2_bayernr3D_sub_tags[] = {
2463 CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_ENABLE_TAG_ID,
2464 CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_SETTING_TAG_ID,
2465 };
2466
2467 uint32_t calib_sensor_bayernr_v2_bayernr2D_setting_sub_tags[] = {
2468 CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_SNR_MODE_TAG_ID,
2469 CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_SENSOR_MODE_TAG_ID,
2470 CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_ISO_TAG_ID,
2471 CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_FILTER_STRENGTH_TAG_ID,
2472 CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_GAUSS_GUIDE_TAG_ID,
2473 CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_LUMA_POINT_TAG_ID,
2474 CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_SIGMA_TAG_ID,
2475 CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_EDGESOFTS_TAG_ID,
2476 CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_RATIO_TAG_ID,
2477 CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_WEIGHT_TAG_ID,
2478
2479 };
2480
2481 uint32_t calib_sensor_bayernr_v2_bayernr3D_setting_sub_tags[] = {
2482 CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_SNR_MODE_TAG_ID,
2483 CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_SENSOR_MODE_TAG_ID,
2484 CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_ISO_TAG_ID,
2485 CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_FILTER_STRENGTH_TAG_ID,
2486 CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_SP_FILTER_STRENGTH_TAG_ID,
2487 CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_LO_CLIPWGT_TAG_ID,
2488 CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_HI_CLIPWGT_TAG_ID,
2489 CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_SOFTWGT_TAG_ID,
2490 CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_LUMA_POINT_TAG_ID,
2491 CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_SIGMA_TAG_ID,
2492 };
2493
2494 uint32_t calib_sensor_ynr_v2_sub_tags[] = {
2495 CALIB_SENSOR_YNR_V2_MODE_NAME_TAG_ID,
2496 CALIB_SENSOR_YNR_V2_ENABLE_TAG_ID,
2497 CALIB_SENSOR_YNR_V2_SETTING_TAG_ID
2498 };
2499
2500 uint32_t calib_sensor_ynr_v2_setting_sub_tags[] = {
2501 CALIB_SENSOR_YNR_V2_SNR_MODE_TAG_ID,
2502 CALIB_SENSOR_YNR_V2_SENSOR_MODE_TAG_ID,
2503 CALIB_SENSOR_YNR_V2_ISO_TAG_ID,
2504 CALIB_SENSOR_YNR_V2_BFT3X3_BYPASS_TAG_ID,
2505 CALIB_SENSOR_YNR_V2_LBFT5X5_BYPASS_TAG_ID,
2506 CALIB_SENSOR_YNR_V2_LGFT3X3_BYPASS_TAG_ID,
2507 CALIB_SENSOR_YNR_V2_FLT1X1_BYPASS_TAG_ID,
2508 CALIB_SENSOR_YNR_V2_SFT5X5_BYPASS_TAG_ID,
2509 CALIB_SENSOR_YNR_V2_RNR_STRENGTH_TAG_ID,
2510 CALIB_SENSOR_YNR_V2_SIGMA_CURVE_TAG_ID,
2511 CALIB_SENSOR_YNR_V2_YNR_CI_TAG_ID,
2512 CALIB_SENSOR_YNR_V2_LOW_BF_TAG_ID,
2513 CALIB_SENSOR_YNR_V2_LOW_THRED_ADJ_TAG_ID,
2514 CALIB_SENSOR_YNR_V2_LOW_PEAK_SUPRESS_TAG_ID,
2515 CALIB_SENSOR_YNR_V2_LOW_EDGE_ADJ_THRESH_TAG_ID,
2516 CALIB_SENSOR_YNR_V2_LOW_CENTRE_WEIGHT_TAG_ID,
2517 CALIB_SENSOR_YNR_V2_LOW_DIST_ADJ_TAG_ID,
2518 CALIB_SENSOR_YNR_V2_LOW_WEIGHT_TAG_ID,
2519 CALIB_SENSOR_YNR_V2_LOW_FILT_STRENGTH_TAG_ID,
2520 CALIB_SENSOR_YNR_V2_LOW_BI_WEIGHT_TAG_ID,
2521 CALIB_SENSOR_YNR_V2_BASE_FILT_WEIGHT_TAG_ID,
2522 CALIB_SENSOR_YNR_V2_HIGH_THRED_ADJ_TAG_ID,
2523 CALIB_SENSOR_YNR_V2_HIGH_WEIGHT_TAG_ID,
2524 CALIB_SENSOR_YNR_V2_HIGH_DIRECTION_WEIGHT_TAG_ID,
2525 CALIB_SENSOR_YNR_V2_HI_MIN_ADJ_TAG_ID,
2526 CALIB_SENSOR_YNR_V2_HI_EDGE_THRED_TAG_ID,
2527 };
2528
2529 //cnr v1
2530 uint32_t calib_sensor_cnr_v1_sub_tags[] = {
2531 CALIB_SENSOR_CNR_V1_MODE_NAME_TAG_ID,
2532 CALIB_SENSOR_CNR_V1_ENABLE_TAG_ID,
2533 CALIB_SENSOR_CNR_V1_SETTING_TAG_ID,
2534 };
2535
2536 uint32_t calib_sensor_cnr_v1_setting_sub_tags[] = {
2537 CALIB_SENSOR_CNR_V1_SNR_MODE_TAG_ID,
2538 CALIB_SENSOR_CNR_V1_SENSOR_MODE_TAG_ID,
2539 CALIB_SENSOR_CNR_V1_ISO_TAG_ID,
2540 CALIB_SENSOR_CNR_V1_HF_BYPASS_TAG_ID,
2541 CALIB_SENSOR_CNR_V1_LF_BYPASS_TAG_ID,
2542 CALIB_SENSOR_CNR_V1_CNR_EXGAIN_TAG_ID,
2543 CALIB_SENSOR_CNR_V1_CNR_G_GAIN_TAG_ID,
2544 CALIB_SENSOR_CNR_V1_COLOR_SAT_ADJ_TAG_ID,
2545 CALIB_SENSOR_CNR_V1_COLOR_SAT_ADJ_ALPHA_TAG_ID,
2546 CALIB_SENSOR_CNR_V1_HF_SPIKERS_REDUCION_STRENGTH_TAG_ID,
2547 CALIB_SENSOR_CNR_V1_HF_DENOISE_STRENGTH_TAG_ID,
2548 CALIB_SENSOR_CNR_V1_HF_COLOR_SAT_TAG_ID,
2549 CALIB_SENSOR_CNR_V1_HF_DENOISE_ALPHA_TAG_ID,
2550 CALIB_SENSOR_CNR_V1_HF_BF_WGT_CLIP_TAG_ID,
2551 CALIB_SENSOR_CNR_V1_THUMB_SPIKERS_REDUCION_STRENGTH_TAG_ID,
2552 CALIB_SENSOR_CNR_V1_THUMB_DENOISE_STRENGTH_TAG_ID,
2553 CALIB_SENSOR_CNR_V1_THUMB_COLOR_SAT_TAG_ID,
2554 CALIB_SENSOR_CNR_V1_LF_DENOISE_STRENGTH_TAG_ID,
2555 CALIB_SENSOR_CNR_V1_LF_COLOR_SAT_TAG_ID,
2556 CALIB_SENSOR_CNR_V1_LF_DENOISE_ALPHA_TAG_ID,
2557 CALIB_SENSOR_CNR_V1_KERNEL_5X5_TAG_ID,
2558 };
2559
2560
2561
2562 //sharpV3
2563 uint32_t calib_sensor_sharp_v3_sub_tags[] = {
2564 CALIB_SENSOR_SHARP_V3_MODE_NAME_TAG_ID,
2565 CALIB_SENSOR_SHARP_V3_ENABLE_TAG_ID,
2566 CALIB_SENSOR_SHARP_V3_SETTING_TAG_ID,
2567 };
2568
2569 uint32_t calib_sensor_sharp_v3_setting_sub_tags[] = {
2570 CALIB_SENSOR_SHARP_V3_SNR_MODE_TAG_ID,
2571 CALIB_SENSOR_SHARP_V3_SENSOR_MODE_TAG_ID,
2572 CALIB_SENSOR_SHARP_V3_ISO_TAG_ID,
2573 CALIB_SENSOR_SHARP_V3_LUMA_POINT_TAG_ID,
2574 CALIB_SENSOR_SHARP_V3_LUMA_SIGMA_TAG_ID,
2575 CALIB_SENSOR_SHARP_V3_PBF_GAIN_TAG_ID,
2576 CALIB_SENSOR_SHARP_V3_PBF_ADD_TAG_ID,
2577 CALIB_SENSOR_SHARP_V3_PBF_RATIO_TAG_ID,
2578 CALIB_SENSOR_SHARP_V3_GAUSS_RATIO_TAG_ID,
2579 CALIB_SENSOR_SHARP_V3_SHARP_RATIO_TAG_ID,
2580 CALIB_SENSOR_SHARP_V3_HF_CLIP_TAG_ID,
2581 CALIB_SENSOR_SHARP_V3_BF_GAIN_TAG_ID,
2582 CALIB_SENSOR_SHARP_V3_BF_ADD_TAG_ID,
2583 CALIB_SENSOR_SHARP_V3_BF_RATIO_TAG_ID,
2584 CALIB_SENSOR_SHARP_V3_LOCAL_STRENGTH_TAG_ID,
2585 CALIB_SENSOR_SHARP_V3_PREFILTER_COEFF_TAG_ID,
2586 CALIB_SENSOR_SHARP_V3_GAUSSFILTER_COEFF_TAG_ID,
2587 CALIB_SENSOR_SHARP_V3_HBFFILTER_COEFF_TAG_ID,
2588 CALIB_SENSOR_SHARP_V3_SHARP_RATIO_H_TAG_ID,
2589 CALIB_SENSOR_SHARP_V3_SHARP_RATIO_M_TAG_ID,
2590 CALIB_SENSOR_SHARP_V3_SHARP_RATIO_L_TAG_ID,
2591 CALIB_SENSOR_SHARP_V3_CLIP_HF_TAG_ID,
2592 CALIB_SENSOR_SHARP_V3_CLIP_MF_TAG_ID,
2593 CALIB_SENSOR_SHARP_V3_CLIP_LF_TAG_ID,
2594 CALIB_SENSOR_SHARP_V3_LOCAL_WGT_TAG_ID,
2595 };
2596
2597
2598 // TODO: list all tag infos
2599 calib_tag_info_t g_calib_tag_infos[CALIB_IQ_TAG_END] = {
2600 [CALIB_FILESTART_TAG_ID] =
2601 { "matfile", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
2602 check_tags_array_info(calib_filestart_sub_tags), NULL
2603 },
2604 [CALIB_CELL_TAG_ID] =
2605 { "cell", CALIB_TAG_TYPE_STRUCT, {-1, -1},
2606 check_tags_array_ignore, NULL
2607 },
2608
2609 //header
2610 [CALIB_HEADER_TAG_ID] =
2611 { "header", CALIB_TAG_TYPE_STRUCT, {-1, -1},
2612 check_tags_array_info(calib_header_sub_tags), NULL
2613 },
2614 [CALIB_HEADER_CODE_XML_PARSE_VERSION_TAG_ID] =
2615 { "code_xml_parse_version", CALIB_TAG_TYPE_CHAR, {-1, -1},
2616 check_tags_array_ignore, NULL
2617 },
2618 [CALIB_HEADER_CREATION_DATE_TAG_ID] =
2619 { "creation_date", CALIB_TAG_TYPE_CHAR, {-1, -1},
2620 check_tags_array_ignore, NULL
2621 },
2622 [CALIB_HEADER_CREATOR_TAG_ID] =
2623 { "creator", CALIB_TAG_TYPE_CHAR, {-1, -1},
2624 check_tags_array_ignore, NULL
2625 },
2626 [CALIB_HEADER_SENSOR_NAME_TAG_ID] =
2627 { "sensor_name", CALIB_TAG_TYPE_CHAR, {-1, -1},
2628 check_tags_array_ignore, NULL
2629 },
2630 [CALIB_HEADER_SAMPLE_NAME_TAG_ID] =
2631 { "sample_name", CALIB_TAG_TYPE_CHAR, {-1, -1},
2632 check_tags_array_ignore, NULL
2633 },
2634 [CALIB_HEADER_GENERATOR_VERSION_TAG_ID] =
2635 { "generator_version", CALIB_TAG_TYPE_CHAR, {-1, -1},
2636 check_tags_array_ignore, NULL
2637 },
2638 [CALIB_HEADER_MAGIC_CODE_TAG_ID] =
2639 { "magic_code_version", CALIB_TAG_TYPE_INT, {-1, -1},
2640 check_tags_array_ignore, NULL
2641 },
2642
2643 //Sensor
2644 [CALIB_SENSOR_TAG_ID] =
2645 { "sensor", CALIB_TAG_TYPE_STRUCT, {-1, -1},
2646 check_tags_array_info(calib_sensor_sub_tags), NULL
2647 },
2648 [CALIIB_SCENE_TAG_ID] =
2649 { "scene", CALIB_TAG_TYPE_CHAR, {-1, -1},
2650 check_tags_array_ignore, NULL
2651 },
2652 //Sensor AWB
2653 [CALIB_SENSOR_AWB_TAG_ID] =
2654 { "AWB", CALIB_TAG_TYPE_STRUCT, {-1, -1},
2655 check_tags_array_info(calib_sensor_awb_sub_tags), NULL
2656 },
2657
2658 [CALIB_SENSOR_AWB_V200_TAG_ID] =
2659 { "CalibParaV20", CALIB_TAG_TYPE_CELL, {-1, -1},
2660 check_tags_array_info(calib_sensor_awb_v200_sub_tags), NULL
2661 },
2662 [CALIB_SENSOR_AWB_V201_TAG_ID] =
2663 { "CalibParaV21", CALIB_TAG_TYPE_CELL, {-1, -1},
2664 check_tags_array_info(calib_sensor_awb_v201_sub_tags), NULL
2665 },
2666 [CALIB_SENSOR_AWB_ADJUSTPARA_TAG_ID] =
2667 { "TuningPara", CALIB_TAG_TYPE_CELL, {-1, -1},
2668 check_tags_array_info(calib_sensor_awb_adjustpara_sub_tags), NULL
2669 },
2670 [CALIB_SENSOR_AWB_LSFORFIRSTFRAME_TAG_ID] =
2671 { "lightSourceForFirstFrame", CALIB_TAG_TYPE_CHAR, {-1, -1},
2672 check_tags_array_ignore, NULL
2673 },
2674
2675 [CALIB_SENSOR_AWB_V200_GLOBALS_TAG_ID] =
2676 { "Globals", CALIB_TAG_TYPE_STRUCT, {-1, -1},
2677 check_tags_array_info(calib_sensor_awb_v200_global_sub_tags), NULL
2678 },
2679 [CALIB_SENSOR_AWB_V201_GLOBALS_TAG_ID] =
2680 { "Globals", CALIB_TAG_TYPE_STRUCT, {-1, -1},
2681 check_tags_array_info(calib_sensor_awb_v201_global_sub_tags), NULL
2682 },
2683 [CALIB_SENSOR_AWB_ADJUSTPARA_GLOBALS_TAG_ID] =
2684 { "Globals", CALIB_TAG_TYPE_STRUCT, {-1, -1},
2685 check_tags_array_info(
2686 calib_sensor_awb_adjustpara_global_sub_tags), NULL
2687 },
2688
2689 [CALIB_SENSOR_AWB_AWB_ENABLE_TAG_ID] =
2690 { "awbEnable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2691 check_tags_array_ignore, NULL
2692 },
2693 [CALIB_SENSOR_AWB_WB_BYPASS_TAG_ID] =
2694 { "wbBypass", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2695 check_tags_array_ignore, NULL
2696 },
2697
2698 [CALIB_SENSOR_AWB_HDRFRAMECHOOSE_TAG_ID] =
2699 { "hdrFrameChoose", CALIB_TAG_TYPE_STRUCT, {-1, -1},
2700 check_tags_array_info(calib_sensor_awb_hfc_sub_tags), NULL
2701 },
2702 [CALIB_SENSOR_AWB_MODE_TAG_ID] =
2703 { "mode", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2704 check_tags_array_ignore, NULL
2705 },
2706 [CALIB_SENSOR_AWB_FRAMECHOOSE_TAG_ID] =
2707 { "frameChoose", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2708 check_tags_array_ignore, NULL
2709 },
2710 [CALIB_SENSOR_AWB_LSCBYPASSENABLE_TAG_ID] =
2711 { "lscBypassEnable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2712 check_tags_array_ignore, NULL
2713 },
2714 [CALIB_SENSOR_AWB_UVDETECTIONENABLE_TAG_ID] =
2715 { "uvDetectionEnable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2716 check_tags_array_ignore, NULL
2717 },
2718 [CALIB_SENSOR_AWB_XYDETECTIONENABLE_TAG_ID] =
2719 { "xyDetectionEnable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2720 check_tags_array_ignore, NULL
2721 },
2722 [CALIB_SENSOR_AWB_MULTIWINDOWENABLE_TAG_ID] =
2723 { "multiWindowEnable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2724 check_tags_array_ignore, NULL
2725 },
2726 [CALIB_SENSOR_AWB_YUVDETECTIONENABLE_TAG_ID] =
2727 { "yuvDetectionEnable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2728 check_tags_array_ignore, NULL
2729 },
2730 [CALIB_SENSOR_AWB_LSUSEDFORYUVDET_TAG_ID] =
2731 { "lsUsedForYuvDet", CALIB_TAG_TYPE_CELL, {-1, -1},
2732 check_tags_array_info(calib_sensor_awb_lsusedforyuvdet_sub_tags), NULL
2733 },
2734 [CALIB_SENSOR_AWB_LSUSEDFORYUVDET_NAME_TAG_ID] =
2735 { "name", CALIB_TAG_TYPE_CHAR, {-1, -1},
2736 check_tags_array_ignore, NULL
2737 },
2738 [CALIB_SENSOR_AWB_DOWNSCALEMODE_TAG_ID] =
2739 { "downScaleMode", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2740 check_tags_array_ignore, NULL
2741 },
2742 [CALIB_SENSOR_AWB_BLCKMEASUREMODE_TAG_ID] =
2743 { "blckMeasureMode", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2744 check_tags_array_ignore, NULL
2745 },
2746 [CALIB_SENSOR_AWB_MEASUREWINDOW_TAG_ID] =
2747 { "measureWindow", CALIB_TAG_TYPE_STRUCT, {-1, -1},
2748 check_tags_array_info(calib_sensor_awb_measurewindow_sub_tags), NULL
2749 },
2750 [CALIB_SENSOR_AWB_MEASUREWINDOWSIZE_TAG_ID] =
2751 { "measureWindowSize", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2752 check_tags_array_ignore, NULL
2753 },
2754 [CALIB_SENSOR_AWB_RESALL_TAG_ID] =
2755 { "resAll", CALIB_TAG_TYPE_CELL, {-1, -1},
2756 check_tags_array_info(calib_sensor_awb_resall_sub_tags), NULL
2757 },
2758 [CALIB_SENSOR_AWB_RESOLUTION_TAG_ID] =
2759 { "resolution", CALIB_TAG_TYPE_CHAR, {-1, -1},
2760 check_tags_array_ignore, NULL
2761 },
2762 [CALIB_SENSOR_AWB_UVRANGESMALLENABLE_TAG_ID] =
2763 { "uvRangeSmallEnable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2764 check_tags_array_ignore, NULL
2765 },
2766 [CALIB_SENSOR_AWB_WPDIFFWEIENABLE_TAG_ID] =
2767 { "wpDiffLumaWeiEnable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2768 check_tags_array_ignore, NULL
2769 },
2770 [CALIB_SENSOR_AWB_CA_ENABLE_TAG_ID] =
2771 { "ca_Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2772 check_tags_array_ignore, NULL
2773 },
2774 [CALIB_SENSOR_AWB_LIMITRANGE_TAG_ID] =
2775 { "limitRange", CALIB_TAG_TYPE_STRUCT, {-1, -1},
2776 check_tags_array_info(calib_sensor_awb_limitRange_sub_tags), NULL
2777 },
2778 [CALIB_SENSOR_AWB_LIMITRANGE_CELL_TAG_ID] =
2779 { "limitRangeC", CALIB_TAG_TYPE_CELL, {-1, -1},
2780 check_tags_array_info(calib_sensor_awb_limitRange_sub_tags), NULL
2781 },
2782 [CALIB_SENSOR_AWB_LIMITRANGE_LV_TAG_ID] =
2783 { "LvValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2784 check_tags_array_ignore, NULL
2785 },
2786 [CALIB_SENSOR_AWB_LIMITRANGE_Y_TAG_ID] =
2787 { "Y", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2788 check_tags_array_ignore, NULL
2789 },
2790 [CALIB_SENSOR_AWB_LIMITRANGE_R_TAG_ID] =
2791 { "R", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2792 check_tags_array_ignore, NULL
2793 },
2794 [CALIB_SENSOR_AWB_LIMITRANGE_G_TAG_ID] =
2795 { "G", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2796 check_tags_array_ignore, NULL
2797 },
2798 [CALIB_SENSOR_AWB_LIMITRANGE_B_TAG_ID] =
2799 { "B", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2800 check_tags_array_ignore, NULL
2801 },
2802 [CALIB_SENSOR_AWB_PSEUDOLUMWEIGHT_TAG_ID] =
2803 { "pseudoLumWeight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2804 check_tags_array_ignore, NULL
2805 },
2806
2807 [CALIB_SENSOR_AWB_ROTATIONMAT_TAG_ID] =
2808 { "rotationMat", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2809 check_tags_array_ignore, NULL
2810 },
2811 [CALIB_SENSOR_AWB_RGB2ROTATIONYUVMAT_TAG_ID] =
2812 { "rgb2RotationYuvMat", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2813 check_tags_array_ignore, NULL
2814 },
2815
2816 [CALIB_SENSOR_AWB_MULTIWINDOWMODE_TAG_ID] =
2817 { "multiwindowMode", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2818 check_tags_array_ignore, NULL
2819 },
2820
2821 [CALIB_SENSOR_AWB_WPDIFFWEIGHT_TAG_ID] =
2822 { "wpDiffLumaWeight", CALIB_TAG_TYPE_STRUCT, {-1, -1},
2823 check_tags_array_info(calib_sensor_awb_wpDiffLumaWeight_sub_tags), NULL
2824 },
2825 [CALIB_SENSOR_AWB_WPDIFFWEIENABLETH_TAG_ID] =
2826 { "wpDiffWeiEnableTh", CALIB_TAG_TYPE_STRUCT, {-1, -1},
2827 check_tags_array_info(calib_sensor_awb_wpDiffWeiEnableTh_sub_tags), NULL
2828 },
2829
2830 [CALIB_SENSOR_AWB_WPNOTH_TAG_ID] =
2831 { "wpDiffWeiNoTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2832 check_tags_array_ignore, NULL
2833 },
2834 [CALIB_SENSOR_AWB_LVVALUETH_TAG_ID] =
2835 { "wpDiffWeiLvValueTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2836 check_tags_array_ignore, NULL
2837 },
2838 [CALIB_SENSOR_AWB_WPDIFFWEIRATIOTH_TAG_ID] =
2839 { "wpDiffWeiRatioTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2840 check_tags_array_ignore, NULL
2841 },
2842 [CALIB_SENSOR_AWB_WPDIFFWEILVTH_TAG_ID] =
2843 { "wpDiffWeiLvTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2844 check_tags_array_ignore, NULL
2845 },
2846 [CALIB_SENSOR_AWB_WPDIFFWEI_Y_TAG_ID] =
2847 { "wpDiffwei_y", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2848 check_tags_array_ignore, NULL
2849 },
2850 [CALIB_SENSOR_AWB_PERFECTBINCONF_TAG_ID] =
2851 { "perfectBinConf", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2852 check_tags_array_ignore, NULL
2853 },
2854 [CALIB_SENSOR_AWB_WPDIFFWEI_W_HIGHLV_TAG_ID] =
2855 { "wpDiffwei_w_HighLV", CALIB_TAG_TYPE_STRUCT, {-1, -1},
2856 check_tags_array_info(
2857 calib_sensor_awb_wpDiffwei_w_HighLV_sub_tags), NULL
2858 },
2859 [CALIB_SENSOR_AWB_WPRATIO1_TAG_ID] =
2860 { "wpRatio1", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2861 check_tags_array_ignore, NULL
2862 },
2863 [CALIB_SENSOR_AWB_WPRATIO2_TAG_ID] =
2864 { "wpRatio2", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2865 check_tags_array_ignore, NULL
2866 },
2867 [CALIB_SENSOR_AWB_WPRATIO3_TAG_ID] =
2868 { "wpRatio3", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2869 check_tags_array_ignore, NULL
2870 },
2871 [CALIB_SENSOR_AWB_WPDIFFWEI_W_LOWLV_TAG_ID] =
2872 { "wpDiffwei_w_LowLV", CALIB_TAG_TYPE_STRUCT, {-1, -1},
2873 check_tags_array_info(
2874 calib_sensor_awb_wpDiffwei_w_LowLV_sub_tags), NULL
2875 },
2876
2877
2878 [CALIB_SENSOR_AWB_DAMPFACTOR_TAG_ID] =
2879 { "dampFactor", CALIB_TAG_TYPE_STRUCT, {-1, -1},
2880 check_tags_array_info(calib_sensor_awb_dampFactor_sub_tags), NULL
2881 },
2882 [CALIB_SENSOR_AWB_DFSTEP_TAG_ID] =
2883 { "dFStep", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2884 check_tags_array_ignore, NULL
2885 },
2886 [CALIB_SENSOR_AWB_DFMIN_TAG_ID] =
2887 { "dFMin", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2888 check_tags_array_ignore, NULL
2889 },
2890 [CALIB_SENSOR_AWB_DFMAX_TAG_ID] =
2891 { "dFMax", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2892 check_tags_array_ignore, NULL
2893 },
2894 [CALIB_SENSOR_AWB_LVIIRSIZE_TAG_ID] =
2895 { "LvIIRsize", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2896 check_tags_array_ignore, NULL
2897 },
2898 [CALIB_SENSOR_AWB_LVVARTH_TAG_ID] =
2899 { "LvVarTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2900 check_tags_array_ignore, NULL
2901 },
2902 [CALIB_SENSOR_AWB_SINGLECOLORPROCESS_TAG_ID] =
2903 { "singleColorProcess", CALIB_TAG_TYPE_STRUCT, {-1, -1},
2904 check_tags_array_info(
2905 calib_sensor_awb_singleColorProcess_sub_tags), NULL
2906 },
2907 [CALIB_SENSOR_AWB_COLORBLOCK_TAG_ID] =
2908 { "colorBlock", CALIB_TAG_TYPE_CELL, {-1, -1},
2909 check_tags_array_info(
2910 calib_sensor_awb_colorBlock_sub_tags), NULL
2911 },
2912 [CALIB_SENSOR_AWB_INDEX_TAG_ID] =
2913 { "index", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2914 check_tags_array_ignore, NULL
2915 },
2916 [CALIB_SENSOR_AWB_MEANC_TAG_ID] =
2917 { "meanC", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2918 check_tags_array_ignore, NULL
2919 },
2920 [CALIB_SENSOR_AWB_MEANH_TAG_ID] =
2921 { "meanH", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2922 check_tags_array_ignore, NULL
2923 },
2924 [CALIB_SENSOR_AWB_LIGHTSOURCEUSEDFORESTIMIATION_TAG_ID] =
2925 { "lsUsedForEstimation", CALIB_TAG_TYPE_CELL, {-1, -1},
2926 check_tags_array_info(
2927 calib_sensor_awb_lsUsedForEstimation_sub_tags), NULL
2928 },
2929 [CALIB_SENSOR_AWB_LSUSEDFORESTIMIATION_NAME_TAG_ID] =
2930 { "name", CALIB_TAG_TYPE_CHAR, {-1, -1},
2931 check_tags_array_ignore, NULL
2932 },
2933 [CALIB_SENSOR_AWB_ALPHA_TAG_ID] =
2934 { "alpha", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2935 check_tags_array_ignore, NULL
2936 },
2937 [CALIB_SENSOR_AWB_NAME_TAG_ID] =
2938 { "name", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2939 check_tags_array_ignore, NULL
2940 },
2941 [CALIB_SENSOR_AWB_RGAIN_TAG_ID] =
2942 { "RGain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2943 check_tags_array_ignore, NULL
2944 },
2945 [CALIB_SENSOR_AWB_BGAIN_TAG_ID] =
2946 { "BGain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2947 check_tags_array_ignore, NULL
2948 },
2949 [CALIB_SENSOR_AWB_TEMPORALDEFAULTGAIN_TAG_ID] =
2950 { "temporalDefaultGain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2951 check_tags_array_ignore, NULL
2952 },
2953 [CALIB_SENSOR_AWB_TEMPORALCALGAINSETSIZE_TAG_ID] =
2954 { "temporalCalGainSetSize", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2955 check_tags_array_ignore, NULL
2956 },
2957 [CALIB_SENSOR_AWB_TEMPORALGAINSETWEIGHT_TAG_ID] =
2958 { "temporalGainSetWeight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2959 check_tags_array_ignore, NULL
2960 },
2961 [CALIB_SENSOR_AWB_LVMATRIX_TAG_ID] =
2962 { "LVMatrix", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2963 check_tags_array_ignore, NULL
2964 },
2965 [CALIB_SENSOR_AWB_LV_THL_TAG_ID] =
2966 { "LV_THL", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2967 check_tags_array_ignore, NULL
2968 },
2969 [CALIB_SENSOR_AWB_LV_THL2_TAG_ID] =
2970 { "LV_THL2", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2971 check_tags_array_ignore, NULL
2972 },
2973 [CALIB_SENSOR_AWB_LV_THH_TAG_ID] =
2974 { "LV_THH", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2975 check_tags_array_ignore, NULL
2976 },
2977 [CALIB_SENSOR_AWB_LV_THH2_TAG_ID] =
2978 { "LV_THH2", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2979 check_tags_array_ignore, NULL
2980 },
2981 [CALIB_SENSOR_AWB_WP_TH_TAG_ID] =
2982 { "WP_TH", CALIB_TAG_TYPE_CELL, {-1, -1},
2983 check_tags_array_info(calib_sensor_awb_strategypara_global_wpth_sub_tags), NULL
2984 },
2985 [CALIB_SENSOR_AWB_WP_LV_TAG_ID] =
2986 { "LvValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2987 check_tags_array_ignore, NULL
2988 },
2989 [CALIB_SENSOR_AWB_WP_THL_TAG_ID] =
2990 { "WP_THL", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2991 check_tags_array_ignore, NULL
2992 },
2993 [CALIB_SENSOR_AWB_WP_THH_TAG_ID] =
2994 { "WP_THH", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2995 check_tags_array_ignore, NULL
2996 },
2997 [CALIB_SENSOR_AWB_PRODIS_THL_TAG_ID] =
2998 { "proDis_THL", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
2999 check_tags_array_ignore, NULL
3000 },
3001 [CALIB_SENSOR_AWB_PRODIS_THH_TAG_ID] =
3002 { "proDis_THH", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3003 check_tags_array_ignore, NULL
3004 },
3005 [CALIB_SENSOR_AWB_PROLV_INDOOR_THL_TAG_ID] =
3006 { "proLV_Indoor_THL", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3007 check_tags_array_ignore, NULL
3008 },
3009 [CALIB_SENSOR_AWB_PROLV_INDOOR_THH_TAG_ID] =
3010 { "proLV_Indoor_THH", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3011 check_tags_array_ignore, NULL
3012 },
3013 [CALIB_SENSOR_AWB_PROLV_OUTDOOR_THL_TAG_ID] =
3014 { "proLV_Outdoor_THL", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3015 check_tags_array_ignore, NULL
3016 },
3017 [CALIB_SENSOR_AWB_PROLV_OUTDOOR_THH_TAG_ID] =
3018 { "proLV_Outdoor_THH", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3019 check_tags_array_ignore, NULL
3020 },
3021 [CALIB_SENSOR_AWB_SPATIALGAIN_L_TAG_ID] =
3022 { "spatialGain_L", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3023 check_tags_array_ignore, NULL
3024 },
3025 [CALIB_SENSOR_AWB_SPATIALGAIN_H_TAG_ID] =
3026 { "spatialGain_H", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3027 check_tags_array_ignore, NULL
3028 },
3029
3030 [CALIB_SENSOR_AWB_WPNUMPERCTH_TAG_ID] =
3031 { "wpNumPercTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3032 check_tags_array_ignore, NULL
3033 },
3034 [CALIB_SENSOR_AWB_TEMPWEIGTH_TAG_ID] =
3035 { "tempWeigth", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3036 check_tags_array_ignore, NULL
3037 },
3038 [CALIB_SENSOR_AWB_CA_LACALCFACTOR_TAG_ID] =
3039 { "ca_LACalcFactor", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3040 check_tags_array_ignore, NULL
3041 },
3042 [CALIB_SENSOR_AWB_CA_TARGETGAIN_TAG_ID] =
3043 { "ca_TargetGain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3044 check_tags_array_ignore, NULL
3045 },
3046 [CALIB_SENSOR_AWB_CONVERGEDVARTH_TAG_ID] =
3047 { "convergedVarTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3048 check_tags_array_ignore, NULL
3049 },
3050 [CALIB_SENSOR_AWB_LINERGBG_TAG_ID] =
3051 { "lineRgBg", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3052 check_tags_array_ignore, NULL
3053 },
3054 [CALIB_SENSOR_AWB_LINERGBGPROJCCT_TAG_ID] =
3055 { "lineRgProjCCT", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3056 check_tags_array_ignore, NULL
3057 },
3058 [CALIB_SENSOR_AWB_MULTIWINDOW_TAG_ID] =
3059 { "multiwindow", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3060 check_tags_array_ignore, NULL
3061 },
3062 [CALIB_SENSOR_AWB_EXCLUDERANGE_TAG_ID] =
3063 { "excludeRange", CALIB_TAG_TYPE_CELL, {-1, -1},
3064 check_tags_array_info(calib_sensor_awb_excludeRange_sub_tags), NULL
3065 },
3066 [CALIB_SENSOR_AWB_EXCLUDERANGE_DOMAIN_TAG_ID] =
3067 { "Domain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3068 check_tags_array_ignore, NULL
3069 },
3070 [CALIB_SENSOR_AWB_EXCLUDE_MODE_TAG_ID] =
3071 { "mode", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3072 check_tags_array_ignore, NULL
3073 },
3074 [CALIB_SENSOR_AWB_EXCLUDE_WINDOW_TAG_ID] =
3075 { "window", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3076 check_tags_array_ignore, NULL
3077 },
3078 [CALIB_SENSOR_AWB_V200_LIGHTSOURCES_TAG_ID] =
3079 { "LightSources", CALIB_TAG_TYPE_CELL, {-1, -1},
3080 check_tags_array_info(
3081 calib_sensor_awb_v200_lightSources_sub_tags), NULL
3082 },
3083 [CALIB_SENSOR_AWB_V201_LIGHTSOURCES_TAG_ID] =
3084 { "LightSources", CALIB_TAG_TYPE_CELL, {-1, -1},
3085 check_tags_array_info(
3086 calib_sensor_awb_v201_lightSources_sub_tags), NULL
3087 },
3088 [CALIB_SENSOR_AWB_ADJUSTPARA_LIGHTSOURCES_TAG_ID] =
3089 { "LightSources", CALIB_TAG_TYPE_CELL, {-1, -1},
3090 check_tags_array_info(
3091 calib_sensor_awb_adjustpara_lightSources_sub_tags), NULL
3092 },
3093
3094 [CALIB_SENSOR_AWB_LIGHTSOURCES_NAME_TAG_ID] =
3095 { "name", CALIB_TAG_TYPE_CHAR, {-1, -1},
3096 check_tags_array_ignore, NULL
3097 },
3098 [CALIB_SENSOR_AWB_LIGHTSOURCES_LIGHTUREGION_TAG_ID] =
3099 { "lightURegion", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3100 check_tags_array_ignore, NULL
3101 },
3102 [CALIB_SENSOR_AWB_LIGHTSOURCES_LIGHTVREGION_TAG_ID] =
3103 { "lightVRegion", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3104 check_tags_array_ignore, NULL
3105 },
3106 [CALIB_SENSOR_AWB_LIGHTSOURCES_SMALLUREGION_TAG_ID] =
3107 { "smallURegion", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3108 check_tags_array_ignore, NULL
3109 },
3110 [CALIB_SENSOR_AWB_LIGHTSOURCES_SMALLVREGION_TAG_ID] =
3111 { "smallVRegion", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3112 check_tags_array_ignore, NULL
3113 },
3114 [CALIB_SENSOR_AWB_LIGHTSOURCES_LIGHTXYREGION_TAG_ID] =
3115 { "lightXYRegion", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3116 check_tags_array_info(calib_sensor_awb_lightXYRegion_sub_tags), NULL
3117 },
3118 [CALIB_SENSOR_AWB_LIGHTSOURCES_NORMAL_TAG_ID] =
3119 { "normal", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3120 check_tags_array_ignore, NULL
3121 },
3122 [CALIB_SENSOR_AWB_LIGHTSOURCES_BIG_TAG_ID] =
3123 { "big", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3124 check_tags_array_ignore, NULL
3125 },
3126 [CALIB_SENSOR_AWB_LIGHTSOURCES_SMALL_TAG_ID] =
3127 { "small", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3128 check_tags_array_ignore, NULL
3129 },
3130
3131 [CALIB_SENSOR_AWB_LIGHTSOURCES_YUVREGION_TAG_ID] =
3132 { "yuvRegion", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3133 check_tags_array_info(calib_sensor_awb_yuvRegion_sub_tags), NULL
3134 },
3135 [CALIB_SENSOR_AWB_LIGHTSOURCES_K2SET_TAG_ID] =
3136 { "k2Set", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3137 check_tags_array_ignore, NULL
3138 },
3139 [CALIB_SENSOR_AWB_LIGHTSOURCES_B0SET_TAG_ID] =
3140 { "b0Set", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3141 check_tags_array_ignore, NULL
3142 },
3143 [CALIB_SENSOR_AWB_LIGHTSOURCES_K3SET_TAG_ID] =
3144 { "k3Set", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3145 check_tags_array_ignore, NULL
3146 },
3147 [CALIB_SENSOR_AWB_LIGHTSOURCES_K_YDISSET_TAG_ID] =
3148 { "k_ydisSet", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3149 check_tags_array_ignore, NULL
3150 },
3151 [CALIB_SENSOR_AWB_LIGHTSOURCES_B_YDISSET_TAG_ID] =
3152 { "b_ydisSet", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3153 check_tags_array_ignore, NULL
3154 },
3155 [CALIB_SENSOR_AWB_LIGHTSOURCES_UREFSET_TAG_ID] =
3156 { "uRefSet", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3157 check_tags_array_ignore, NULL
3158 },
3159 [CALIB_SENSOR_AWB_LIGHTSOURCES_VREFSET_TAG_ID] =
3160 { "vRefSet", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3161 check_tags_array_ignore, NULL
3162 },
3163 [CALIB_SENSOR_AWB_LIGHTSOURCES_DISSET_TAG_ID] =
3164 { "disSet", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3165 check_tags_array_ignore, NULL
3166 },
3167 [CALIB_SENSOR_AWB_LIGHTSOURCES_THSET_TAG_ID] =
3168 { "tHSet", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3169 check_tags_array_ignore, NULL
3170 },
3171 [CALIB_SENSOR_AWB_LIGHTSOURCES_RTYUVREGION_TAG_ID] =
3172 { "rtYuvRegion", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3173 check_tags_array_info(calib_sensor_awb_rtYuvRegion_sub_tags), NULL
3174 },
3175 [CALIB_SENSOR_AWB_LIGHTSOURCES_THCURVE_U_SET_TAG_ID] =
3176 { "thcurve_u_set", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3177 check_tags_array_ignore, NULL
3178 },
3179 [CALIB_SENSOR_AWB_LIGHTSOURCES_THCURVE_TH_SET_TAG_ID] =
3180 { "thcurve_th_set", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3181 check_tags_array_ignore, NULL
3182 },
3183 [CALIB_SENSOR_AWB_LIGHTSOURCES_LINEVECTOR_TAG_ID] =
3184 { "lineVector", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3185 check_tags_array_ignore, NULL
3186 },
3187 [CALIB_SENSOR_AWB_LIGHTSOURCES_DOORTYPE_TAG_ID] =
3188 { "doorType", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3189 check_tags_array_ignore, NULL
3190 },
3191 [CALIB_SENSOR_AWB_LIGHTSOURCES_STANDARDGAINVALUE_TAG_ID] =
3192 { "standardGainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3193 check_tags_array_ignore, NULL
3194 },
3195 [CALIB_SENSOR_AWB_LIGHTSOURCES_STAWEIGTHSET_TAG_ID] =
3196 { "staWeigthSet", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3197 check_tags_array_ignore, NULL
3198 },
3199 [CALIB_SENSOR_AWB_LIGHTSOURCES_SPATIALGAIN_LV_THSET_TAG_ID] =
3200 { "spatialGain_LV_THSet", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3201 check_tags_array_ignore, NULL
3202 },
3203 [CALIB_SENSOR_AWB_LIGHTSOURCES_XYTYPE2ENABLE_TAG_ID] =
3204 { "xyType2Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3205 check_tags_array_ignore, NULL
3206 },
3207 [CALIB_SENSOR_AWB_LIGHTSOURCES_WEIGHTCURVE_RATIO_TAG_ID] =
3208 { "weightCurve_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3209 check_tags_array_ignore, NULL
3210 },
3211 [CALIB_SENSOR_AWB_LIGHTSOURCES_WEIGHTCURVE_WEIGHT_TAG_ID] =
3212 { "weightCurve_weight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3213 check_tags_array_ignore, NULL
3214 },
3215
3216 [CALIB_SENSOR_AWB_WPDIFFBLKWEIENABLE_TAG_ID] =
3217 { "wpDiffBlkWeiEnable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3218 check_tags_array_ignore, NULL
3219 },
3220 [CALIB_SENSOR_AWB_BLKSTATISTICSENABLE_TAG_ID] =
3221 { "blkStatisticsEnable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3222 check_tags_array_ignore, NULL
3223 },
3224 [CALIB_SENSOR_AWB_WPDIFFBLKWEIGHT_TAG_ID] =
3225 { "wpDiffBlkWeight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3226 check_tags_array_ignore, NULL
3227 },
3228
3229 // Sensor AWB RemosaicPara
3230 [CALIB_SENSOR_AWB_REMOSAICPARA_TAG_ID] =
3231 { "RemosaicPara", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3232 check_tags_array_info(calib_sensor_awb_RemosaicPara_sub_tags), NULL
3233 },
3234 [CALIB_SENSOR_AWB_REMOSAICPARA_ENABLE_TAG_ID] =
3235 { "enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3236 check_tags_array_ignore, NULL
3237 },
3238 [CALIB_SENSOR_AWB_REMOSAICPARA_WBGAIN_TAG_ID] =
3239 { "sensorWbGain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3240 check_tags_array_ignore, NULL
3241 },
3242
3243 [CALIB_SENSOR_AWB_RUNINTERNAL_TAG_ID] =
3244 { "runInterval", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3245 check_tags_array_info(calib_sensor_awb_runInterval_sub_tags), NULL
3246 },
3247 [CALIB_SENSOR_AWB_TOLERANCE_TAG_ID] =
3248 { "tolerance", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3249 check_tags_array_info(calib_sensor_awb_tolerance_sub_tags), NULL
3250 },
3251 [CALIB_SENSOR_AWB_LV_TAG_ID] =
3252 { "LV", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3253 check_tags_array_ignore, NULL
3254 },
3255 [CALIB_SENSOR_AWB_VALUE_TAG_ID] =
3256 { "value", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3257 check_tags_array_ignore, NULL
3258 },
3259 [CALIB_SENSOR_AWB_XYREGIONSTABLESELECTION_TAG_ID] =
3260 { "xyRegionStableSelection", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3261 check_tags_array_info(
3262 calib_sensor_awb_xyRegionStableSelection_sub_tags), NULL
3263 },
3264 [CALIB_SENSOR_AWB_XYREGIONSIZE_TAG_ID] =
3265 { "xyRegionSize", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3266 check_tags_array_ignore, NULL
3267 },
3268 [CALIB_SENSOR_AWB_XYREGION_WPNUMTH_CELL_TAG_ID] =
3269 { "wpNumTh", CALIB_TAG_TYPE_CELL, {-1, -1},
3270 check_tags_array_info(calib_sensor_awb_xyregion_wpnumth_sub_tags), NULL
3271 },
3272 [CALIB_SENSOR_AWB_XYREGION_LV_TAG_ID] =
3273 { "LvValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3274 check_tags_array_ignore, NULL
3275 },
3276 [CALIB_SENSOR_AWB_XYREGION_WPNUMTHFORBIGTYPE_TAG_ID] =
3277 { "wpNumThForBigType", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3278 check_tags_array_ignore, NULL
3279 },
3280 [CALIB_SENSOR_AWB_XYREGION_WPNUMTHFOREXTRATYPE_TAG_ID] =
3281 { "wpNumThForExtraType", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3282 check_tags_array_ignore, NULL
3283 },
3284 [CALIB_SENSOR_AWB_WBGAINADJUST_TAG_ID] =
3285 { "wbGainAdjust", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3286 check_tags_array_info(calib_sensor_awb_wbGainAdjust_sub_tags), NULL
3287 },
3288 [CALIB_SENSOR_AWB_CTGRID_NUM_TAG_ID] =
3289 { "ct_grid_num", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3290 check_tags_array_ignore, NULL
3291 },
3292 [CALIB_SENSOR_AWB_CTINRANGE_TAG_ID] =
3293 { "ct_in_range", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3294 check_tags_array_ignore, NULL
3295 },
3296 [CALIB_SENSOR_AWB_CRIGRID_NUM_TAG_ID] =
3297 { "cri_grid_num", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3298 check_tags_array_ignore, NULL
3299 },
3300 [CALIB_SENSOR_AWB_CRIINRANGE_TAG_ID] =
3301 { "cri_in_range", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3302 check_tags_array_ignore, NULL
3303 },
3304 [CALIB_SENSOR_AWB_LUTALL_TAG_ID] =
3305 { "lutAll", CALIB_TAG_TYPE_CELL, {-1, -1},
3306 check_tags_array_info(calib_sensor_awb_lutAll_sub_tags), NULL
3307 },
3308 [CALIB_SENSOR_AWB_LVVALUE_TAG_ID] =
3309 { "LvValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3310 check_tags_array_ignore, NULL
3311 },
3312 [CALIB_SENSOR_AWB_CTOUT_TAG_ID] =
3313 { "ct_out", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3314 check_tags_array_ignore, NULL
3315 },
3316 [CALIB_SENSOR_AWB_CRIOUT_TAG_ID] =
3317 { "cri_out", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3318 check_tags_array_ignore, NULL
3319 },
3320 [CALIB_SENSOR_AWB_WBGAINADJUSTENABLE_TAG_ID] =
3321 { "wbGainAdjustEnable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3322 check_tags_array_ignore, NULL
3323 },
3324 [CALIB_SENSOR_AWB_WBGAINOFFSET_TAG_ID] =
3325 { "wbGainOffset", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3326 check_tags_array_info(calib_sensor_awb_wbGainOffset_sub_tags), NULL
3327 },
3328 [CALIB_SENSOR_AWB_WBGAINOFFSET_ENABLE_TAG_ID] =
3329 { "enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3330 check_tags_array_ignore, NULL
3331 },
3332 [CALIB_SENSOR_AWB_WBGAINOFFSET_OFFSET_TAG_ID] =
3333 { "offset", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3334 check_tags_array_ignore, NULL
3335 },
3336 [CALIB_SENSOR_AWB_WBGAINDAYLIGHTCLIPENABLE_TAG_ID] =
3337 { "wbGainDaylightClipEnable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3338 check_tags_array_ignore, NULL
3339 },
3340 [CALIB_SENSOR_AWB_WBGAINCLIPEANBLE_TAG_ID] =
3341 { "wbGainClipEnable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3342 check_tags_array_ignore, NULL
3343 },
3344 [CALIB_SENSOR_AWB_WBGAINDAYLIGHTCLIP_TAG_ID] =
3345 { "wbGainDaylightClip", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3346 check_tags_array_info(
3347 calib_sensor_awb_wbGainDaylightClip_sub_tags), NULL
3348 },
3349 [CALIB_SENSOR_AWB_OUTDOORCCTMIN_TAG_ID] =
3350 { "outdoor_cct_min", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3351 check_tags_array_ignore, NULL
3352 },
3353 [CALIB_SENSOR_AWB_WBGAINCLIP_TAG_ID] =
3354 { "wbGainClip", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3355 check_tags_array_info(
3356 calib_sensor_awb_wbGainClip_sub_tags), NULL
3357 },
3358 [CALIB_SENSOR_AWB_CCT_TAG_ID] =
3359 { "cct", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3360 check_tags_array_ignore, NULL
3361 },
3362 [CALIB_SENSOR_AWB_CRIBOUNDUP_TAG_ID] =
3363 { "cri_bound_up", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3364 check_tags_array_ignore, NULL
3365 },
3366 [CALIB_SENSOR_AWB_CRIBOUNDLOW_TAG_ID] =
3367 { "cri_bound_low", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3368 check_tags_array_ignore, NULL
3369 },
3370 // Sensor AEC
3371 [CALIB_SENSOR_AEC_TAG_ID] =
3372 { "AEC", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3373 check_tags_array_info(calib_sensor_aec_sub_tags), NULL
3374 },
3375 [CALIB_SENSOR_AEC_HISTSTATSMODE_TAG_ID] =
3376 { "HistStatsMode", CALIB_TAG_TYPE_CHAR, {-1, -1},
3377 check_tags_array_ignore, NULL
3378 },
3379 [CALIB_SENSOR_AEC_HISTSTATSMODE_R_TAG_ID] =
3380 { "R", CALIB_TAG_TYPE_CHAR, {-1, -1},
3381 check_tags_array_ignore, NULL
3382 },
3383 [CALIB_SENSOR_AEC_HISTSTATSMODE_G_TAG_ID] =
3384 { "G", CALIB_TAG_TYPE_CHAR, {-1, -1},
3385 check_tags_array_ignore, NULL
3386 },
3387 [CALIB_SENSOR_AEC_HISTSTATSMODE_B_TAG_ID] =
3388 { "B", CALIB_TAG_TYPE_CHAR, {-1, -1},
3389 check_tags_array_ignore, NULL
3390 },
3391 [CALIB_SENSOR_AEC_HISTSTATSMODE_RGB_TAG_ID] =
3392 { "RGB", CALIB_TAG_TYPE_CHAR, {-1, -1},
3393 check_tags_array_ignore, NULL
3394 },
3395 [CALIB_SENSOR_AEC_HISTSTATSMODE_Y_TAG_ID] =
3396 { "Y", CALIB_TAG_TYPE_CHAR, {-1, -1},
3397 check_tags_array_ignore, NULL
3398 },
3399 [CALIB_SENSOR_AEC_RAWSTATSMODE_TAG_ID] =
3400 { "RawStatsMode", CALIB_TAG_TYPE_CHAR, {-1, -1},
3401 check_tags_array_ignore, NULL
3402 },
3403 [CALIB_SENSOR_AEC_RAWSTATSMODE_R_TAG_ID] =
3404 { "R", CALIB_TAG_TYPE_CHAR, {-1, -1},
3405 check_tags_array_ignore, NULL
3406 },
3407 [CALIB_SENSOR_AEC_RAWSTATSMODE_G_TAG_ID] =
3408 { "G", CALIB_TAG_TYPE_CHAR, {-1, -1},
3409 check_tags_array_ignore, NULL
3410 },
3411 [CALIB_SENSOR_AEC_RAWSTATSMODE_B_TAG_ID] =
3412 { "B", CALIB_TAG_TYPE_CHAR, {-1, -1},
3413 check_tags_array_ignore, NULL
3414 },
3415 [CALIB_SENSOR_AEC_RAWSTATSMODE_Y_TAG_ID] =
3416 { "Y", CALIB_TAG_TYPE_CHAR, {-1, -1},
3417 check_tags_array_ignore, NULL
3418 },
3419 [CALIB_SENSOR_AEC_YRANGEMODE_TAG_ID] =
3420 { "YRangeMode", CALIB_TAG_TYPE_CHAR, {-1, -1},
3421 check_tags_array_ignore, NULL
3422 },
3423 [CALIB_SENSOR_AEC_YRANGEMODE_FULL_TAG_ID] =
3424 { "FULL", CALIB_TAG_TYPE_CHAR, {-1, -1},
3425 check_tags_array_ignore, NULL
3426 },
3427 [CALIB_SENSOR_AEC_YRANGEMODE_LIMITED_TAG_ID] =
3428 { "LIMITED", CALIB_TAG_TYPE_CHAR, {-1, -1},
3429 check_tags_array_ignore, NULL
3430 },
3431
3432 [CALIB_SENSOR_AEC_AECRUNINTERVAL_TAG_ID] =
3433 { "AecRunInterval", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3434 check_tags_array_ignore, NULL
3435 },
3436 [CALIB_SENSOR_AEC_AECOPTYPE_TAG_ID] =
3437 { "AecOpType", CALIB_TAG_TYPE_CHAR, {-1, -1},
3438 check_tags_array_ignore, NULL
3439 },
3440 [CALIB_SENSOR_AEC_AECOPTYPE_AUTO_TAG_ID] =
3441 { "AUTO", CALIB_TAG_TYPE_CHAR, {-1, -1},
3442 check_tags_array_ignore, NULL
3443 },
3444 [CALIB_SENSOR_AEC_AECOPTYPE_MANUAL_TAG_ID] =
3445 { "MANUAL", CALIB_TAG_TYPE_CHAR, {-1, -1},
3446 check_tags_array_ignore, NULL
3447 },
3448
3449 [CALIB_SENSOR_AEC_SYNCTEST_TAG_ID] =
3450 { "AecSyncTest", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3451 check_tags_array_info(calib_sensor_aec_AecSyncTest_sub_tags), NULL
3452 },
3453 [CALIB_SENSOR_AEC_SYNCTEST_ENABLE_TAG_ID] =
3454 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3455 check_tags_array_ignore, NULL
3456 },
3457 [CALIB_SENSOR_AEC_SYNCTEST_INTERVALFRM_TAG_ID] =
3458 { "IntervalFrm", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3459 check_tags_array_ignore, NULL
3460 },
3461 [CALIB_SENSOR_AEC_SYNCTEST_ALTEREXP_TAG_ID] =
3462 { "AlterExp", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3463 check_tags_array_info(calib_sensor_aec_AecSyncTest_AlterExp_sub_tags), NULL
3464 },
3465 [CALIB_SENSOR_AEC_SYNCTEST_LINALTEREXP_TAG_ID] =
3466 { "LinearAE", CALIB_TAG_TYPE_CELL, {-1, -1},
3467 check_tags_array_info(calib_sensor_aec_AecSyncTest_LinAlterExp_sub_tags), NULL
3468 },
3469 [CALIB_SENSOR_AEC_SYNCTEST_HDRALTEREXP_TAG_ID] =
3470 { "HdrAE", CALIB_TAG_TYPE_CELL, {-1, -1},
3471 check_tags_array_info(calib_sensor_aec_AecSyncTest_HdrAlterExp_sub_tags), NULL
3472 },
3473 [CALIB_SENSOR_AEC_SYNCTEST_TIMEVALUE_TAG_ID] =
3474 { "TimeValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3475 check_tags_array_ignore, NULL
3476 },
3477 [CALIB_SENSOR_AEC_SYNCTEST_GAINVALUE_TAG_ID] =
3478 { "GainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3479 check_tags_array_ignore, NULL
3480 },
3481 [CALIB_SENSOR_AEC_SYNCTEST_ISPGAINVALUE_TAG_ID] =
3482 { "IspDgainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3483 check_tags_array_ignore, NULL
3484 },
3485 [CALIB_SENSOR_AEC_SYNCTEST_DCGMODE_TAG_ID] =
3486 { "DcgMode", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3487 check_tags_array_ignore, NULL
3488 },
3489 [CALIB_SENSOR_AEC_SYNCTEST_PIRISVALUE_TAG_ID] =
3490 { "PIrisGainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3491 check_tags_array_ignore, NULL
3492 },
3493
3494
3495 [CALIB_SENSOR_AEC_AECDNSWITCH_TAG_ID] =
3496 { "AecDNSwitch", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3497 check_tags_array_info(calib_sensor_aec_AecDNSwitch_sub_tags), NULL
3498 },
3499 [CALIB_SENSOR_AEC_AECDNSWITCH_DNTRIGGER_TAG_ID] =
3500 { "DNTrigger", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3501 check_tags_array_ignore, NULL
3502 },
3503 [CALIB_SENSOR_AEC_AECDNSWITCH_DNMODE_TAG_ID] =
3504 { "DNMode", CALIB_TAG_TYPE_CHAR, {-1, -1},
3505 check_tags_array_ignore, NULL
3506 },
3507 [CALIB_SENSOR_AEC_AECDNSWITCH_DNMODE_DAY_TAG_ID] =
3508 { "DAY", CALIB_TAG_TYPE_CHAR, {-1, -1},
3509 check_tags_array_ignore, NULL
3510 },
3511 [CALIB_SENSOR_AEC_AECDNSWITCH_DNMODE_NIGHT_TAG_ID] =
3512 { "NIGHT", CALIB_TAG_TYPE_CHAR, {-1, -1},
3513 check_tags_array_ignore, NULL
3514 },
3515 [CALIB_SENSOR_AEC_AECDNSWITCH_FILLLIGHTMODE_TAG_ID] =
3516 { "FillLightMode", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3517 check_tags_array_ignore, NULL
3518 },
3519 [CALIB_SENSOR_AEC_AECDNSWITCH_D2NFACTH_TAG_ID] =
3520 { "D2NFacTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3521 check_tags_array_ignore, NULL
3522 },
3523 [CALIB_SENSOR_AEC_AECDNSWITCH_D2NFRMCNT_TAG_ID] =
3524 { "D2NFrmCnt", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3525 check_tags_array_ignore, NULL
3526 },
3527
3528
3529 [CALIB_SENSOR_AEC_AECDNSWITCH_VBNIGHTMODE_TAG_ID] =
3530 { "VBNightMode", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3531 check_tags_array_info(calib_sensor_aec_VBNightMode_sub_tags), NULL
3532 },
3533 [CALIB_SENSOR_AEC_ENABLE_TAG_ID] =
3534 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3535 check_tags_array_ignore, NULL
3536 },
3537 [CALIB_SENSOR_AEC_AECDNSWITCH_N2DFRMCNT_TAG_ID] =
3538 { "N2DFrmCnt", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3539 check_tags_array_ignore, NULL
3540 },
3541 [CALIB_SENSOR_AEC_AECDNSWITCH_N2DFACTH_TAG_ID] =
3542 { "N2DFacTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3543 check_tags_array_ignore, NULL
3544 },
3545
3546
3547 [CALIB_SENSOR_AEC_AECDNSWITCH_IRNIGHTMODE_TAG_ID] =
3548 { "IRNightMode", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3549 check_tags_array_info(calib_sensor_aec_IRNightMode_sub_tags), NULL
3550 },
3551 [CALIB_SENSOR_AEC_AECDNSWITCH_IR_RG_TAG_ID] =
3552 { "IR_rg", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3553 check_tags_array_ignore, NULL
3554 },
3555 [CALIB_SENSOR_AEC_AECDNSWITCH_IR_BG_TAG_ID] =
3556 { "IR_bg", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3557 check_tags_array_ignore, NULL
3558 },
3559 [CALIB_SENSOR_AEC_AECDNSWITCH_MAX_DIS_TAG_ID] =
3560 { "Max_Dis", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3561 check_tags_array_ignore, NULL
3562 },
3563 [CALIB_SENSOR_AEC_AECDNSWITCH_VB_PERCENT_TAG_ID] =
3564 { "VBPercent", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3565 check_tags_array_ignore, NULL
3566 },
3567
3568
3569 [CALIB_SENSOR_AEC_AECSPEED_TAG_ID] =
3570 { "AecSpeed", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3571 check_tags_array_info(calib_sensor_aec_AecSpeed_sub_tags), NULL
3572 },
3573 [CALIB_SENSOR_AEC_SMOOTHEN_TAG_ID] =
3574 { "SmoothEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3575 check_tags_array_ignore, NULL
3576 },
3577 [CALIB_SENSOR_AEC_DYDAMPEN_TAG_ID] =
3578 { "DyDampEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3579 check_tags_array_ignore, NULL
3580 },
3581 [CALIB_SENSOR_AEC_DAMPOVER_TAG_ID] =
3582 { "DampOver", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3583 check_tags_array_ignore, NULL
3584 },
3585 [CALIB_SENSOR_AEC_DAMPUNDER_TAG_ID] =
3586 { "DampUnder", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3587 check_tags_array_ignore, NULL
3588 },
3589 [CALIB_SENSOR_AEC_DAMPDARK2BRIGHT_TAG_ID] =
3590 { "DampDark2Bright", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3591 check_tags_array_ignore, NULL
3592 },
3593 [CALIB_SENSOR_AEC_DAMPBRIGHT2DARK_TAG_ID] =
3594 { "DampBright2Dark", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3595 check_tags_array_ignore, NULL
3596 },
3597 [CALIB_SENSOR_AEC_DAMPOVERVIDEO_TAG_ID] =
3598 { "DampOverVideo", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
3599 check_tags_array_ignore, NULL
3600 },
3601 [CALIB_SENSOR_AEC_DAMPUNDERVIDEO_TAG_ID] =
3602 { "DampUnderVideo", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
3603 check_tags_array_ignore, NULL
3604 },
3605
3606
3607 [CALIB_SENSOR_AEC_AECDELAYFRMNUM_TAG_ID] =
3608 { "AecDelayFrmNum", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3609 check_tags_array_info(calib_sensor_aec_AecDelayFrmNum_sub_tags), NULL
3610 },
3611 [CALIB_SENSOR_AEC_BLACKDELAY_TAG_ID] =
3612 { "BlackDelay", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3613 check_tags_array_ignore, NULL
3614 },
3615 [CALIB_SENSOR_AEC_WHITEDELAY_TAG_ID] =
3616 { "WhiteDelay", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3617 check_tags_array_ignore, NULL
3618 },
3619
3620
3621 [CALIB_SENSOR_AEC_AECFRAMERATEMODE_TAG_ID] =
3622 { "AecFrameRateMode", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3623 check_tags_array_info(calib_sensor_aec_AecFrameRateMode_sub_tags), NULL
3624 },
3625 [CALIB_SENSOR_AEC_ISFPSFIX_TAG_ID] =
3626 { "isFpsFix", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3627 check_tags_array_ignore, NULL
3628 },
3629 [CALIB_SENSOR_AEC_FPSVALUE_TAG_ID] =
3630 { "FpsValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3631 check_tags_array_ignore, NULL
3632 },
3633 [CALIB_SENSOR_AEC_FPSFIX_LINTIMEDOT_TAG_ID] =
3634 { "FpsFix_LinTimeDot", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
3635 check_tags_array_ignore, NULL
3636 },
3637 [CALIB_SENSOR_AEC_FPSFIX_HDRTIMEDOT_TAG_ID] =
3638 { "FpsFix_HdrTimeDot", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
3639 check_tags_array_ignore, NULL
3640 },
3641
3642 [CALIB_SENSOR_AEC_ANTIFLICKER_TAG_ID] =
3643 { "AecAntiFlicker", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3644 check_tags_array_info(calib_sensor_aec_AecAntiFlicker_sub_tags), NULL
3645 },
3646 [CALIB_SENSOR_AEC_ANTIFLICKER_ENABLE_TAG_ID] =
3647 { "enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3648 check_tags_array_ignore, NULL
3649 },
3650 [CALIB_SENSOR_AEC_ANTIFLICKER_FREQ_TAG_ID] =
3651 { "Frequency", CALIB_TAG_TYPE_CHAR, {-1, -1},
3652 check_tags_array_ignore, NULL
3653 },
3654 [CALIB_SENSOR_AEC_ANTIFLICKER_FREQ_50HZ_TAG_ID] =
3655 { "FLICKER_50HZ", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
3656 check_tags_array_ignore, NULL
3657 },
3658 [CALIB_SENSOR_AEC_ANTIFLICKER_FREQ_60HZ_TAG_ID] =
3659 { "FLICKER_60HZ", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
3660 check_tags_array_ignore, NULL
3661 },
3662 [CALIB_SENSOR_AEC_ANTIFLICKER_MODE_TAG_ID] =
3663 { "Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
3664 check_tags_array_ignore, NULL
3665 },
3666 [CALIB_SENSOR_AEC_ANTIFLICKER_MODE_AUTO_TAG_ID] =
3667 { "AUTO", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
3668 check_tags_array_ignore, NULL
3669 },
3670 [CALIB_SENSOR_AEC_ANTIFLICKER_MODE_NORMAL_TAG_ID] =
3671 { "NORMAL", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
3672 check_tags_array_ignore, NULL
3673 },
3674
3675 [CALIB_SENSOR_AEC_AECINITVALUE_TAG_ID] =
3676 { "AecInitValue", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3677 check_tags_array_info(calib_sensor_aec_AecInitValue_sub_tags), NULL
3678 },
3679 [CALIB_SENSOR_AEC_AECINITVALUE_LINEARAE_TAG_ID] =
3680 { "LinearAE", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3681 check_tags_array_info(calib_sensor_aec_AecInitValue_LinearAE_sub_tags), NULL
3682 },
3683 [CALIB_SENSOR_AEC_AECINITVALUE_HDRAE_TAG_ID] =
3684 { "HdrAE", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3685 check_tags_array_info(calib_sensor_aec_AecInitValue_HdrAE_sub_tags), NULL
3686 },
3687 [CALIB_SENSOR_AEC_INITTIMEVALUE_TAG_ID] =
3688 { "InitTimeValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3689 check_tags_array_ignore, NULL
3690 },
3691 [CALIB_SENSOR_AEC_INITGAINVALUE_TAG_ID] =
3692 { "InitGainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3693 check_tags_array_ignore, NULL
3694 },
3695 [CALIB_SENSOR_AEC_INITISPDGAINVALUE_TAG_ID] =
3696 { "InitIspDgainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3697 check_tags_array_ignore, NULL
3698 },
3699 [CALIB_SENSOR_AEC_INITPIRISVALUE_TAG_ID] =
3700 { "InitPIrisGainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3701 check_tags_array_ignore, NULL
3702 },
3703 [CALIB_SENSOR_AEC_INITDCIRISVALUE_TAG_ID] =
3704 { "InitDCIrisDutyValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3705 check_tags_array_ignore, NULL
3706 },
3707 [CALIB_SENSOR_AEC_INITHDCIRISVALUE_TAG_ID] =
3708 { "InitHDCIrisDutyValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3709 check_tags_array_ignore, NULL
3710 },
3711
3712 [CALIB_SENSOR_AEC_AECGRIDWEIGHT_TAG_ID] =
3713 { "AecGridWeight", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3714 check_tags_array_info(calib_sensor_aec_AecGridWeight_sub_tags), NULL
3715 },
3716 [CALIB_SENSOR_AEC_DAYGRIDWEIGHTS_TAG_ID] =
3717 { "DayGridWeights", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3718 check_tags_array_ignore, NULL
3719 },
3720 [CALIB_SENSOR_AEC_NIGHTGRIDWEIGHTS_TAG_ID] =
3721 { "NightGridWeights", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3722 check_tags_array_ignore, NULL
3723 },
3724
3725 [CALIB_SENSOR_AEC_AECROUTE_TAG_ID] =
3726 { "AecRoute", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3727 check_tags_array_info(calib_sensor_aec_AecRoute_sub_tags), NULL
3728 },
3729 [CALIB_SENSOR_AEC_AECROUTE_LINEARAE_TAG_ID] =
3730 { "LinearAE", CALIB_TAG_TYPE_CELL, {-1, -1},
3731 check_tags_array_info(calib_sensor_aec_AecRoute_LinearAE_sub_tags), NULL
3732 },
3733 [CALIB_SENSOR_AEC_AECROUTE_HDRAE_TAG_ID] =
3734 { "HdrAE", CALIB_TAG_TYPE_CELL, {-1, -1},
3735 check_tags_array_info(calib_sensor_aec_AecRoute_HdrAE_sub_tags), NULL
3736 },
3737 [CALIB_SENSOR_AEC_NAME_TAG_ID] =
3738 { "name", CALIB_TAG_TYPE_CHAR, {-1, -1},
3739 check_tags_array_ignore, NULL
3740 },
3741 [CALIB_SENSOR_AEC_TIMEDOT_TAG_ID] =
3742 { "TimeDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3743 check_tags_array_ignore, NULL
3744 },
3745 [CALIB_SENSOR_AEC_GAINDOT_TAG_ID] =
3746 { "GainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3747 check_tags_array_ignore, NULL
3748 },
3749 [CALIB_SENSOR_AEC_ISPDGAINDOT_TAG_ID] =
3750 { "IspDGainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3751 check_tags_array_ignore, NULL
3752 },
3753 [CALIB_SENSOR_AEC_PIRISDOT_TAG_ID] =
3754 { "PIrisDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3755 check_tags_array_ignore, NULL
3756 },
3757 [CALIB_SENSOR_AEC_LTIMEDOT_TAG_ID] =
3758 { "LTimeDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3759 check_tags_array_ignore, NULL
3760 },
3761 [CALIB_SENSOR_AEC_MTIMEDOT_TAG_ID] =
3762 { "MTimeDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3763 check_tags_array_ignore, NULL
3764 },
3765 [CALIB_SENSOR_AEC_STIMEDOT_TAG_ID] =
3766 { "STimeDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3767 check_tags_array_ignore, NULL
3768 },
3769 [CALIB_SENSOR_AEC_LGAINDOT_TAG_ID] =
3770 { "LGainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3771 check_tags_array_ignore, NULL
3772 },
3773 [CALIB_SENSOR_AEC_MGAINDOT_TAG_ID] =
3774 { "MGainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3775 check_tags_array_ignore, NULL
3776 },
3777 [CALIB_SENSOR_AEC_SGAINDOT_TAG_ID] =
3778 { "SGainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3779 check_tags_array_ignore, NULL
3780 },
3781 [CALIB_SENSOR_AEC_LISPDGAINDOT_TAG_ID] =
3782 { "LIspDGainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3783 check_tags_array_ignore, NULL
3784 },
3785 [CALIB_SENSOR_AEC_MISPDGAINDOT_TAG_ID] =
3786 { "MIspDGainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3787 check_tags_array_ignore, NULL
3788 },
3789 [CALIB_SENSOR_AEC_SISPDGAINDOT_TAG_ID] =
3790 { "SIspDGainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3791 check_tags_array_ignore, NULL
3792 },
3793
3794 [CALIB_SENSOR_AEC_IRISCTRL_TAG_ID] =
3795 { "AecIrisCtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3796 check_tags_array_info(calib_sensor_aec_AecIrisCtrl_sub_tags), NULL
3797 },
3798 [CALIB_SENSOR_AEC_IRISCTRL_ENABLE_TAG_ID] =
3799 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3800 check_tags_array_ignore, NULL
3801 },
3802 [CALIB_SENSOR_AEC_IRISCTRL_TYPE_TAG_ID] =
3803 { "IrisType", CALIB_TAG_TYPE_CHAR, {-1, -1},
3804 check_tags_array_ignore, NULL
3805 },
3806 [CALIB_SENSOR_AEC_IRISCTRL_TYPE_P_TAG_ID] =
3807 { "P", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
3808 check_tags_array_ignore, NULL
3809 },
3810 [CALIB_SENSOR_AEC_IRISCTRL_TYPE_DC_TAG_ID] =
3811 { "DC", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
3812 check_tags_array_ignore, NULL
3813 },
3814 [CALIB_SENSOR_AEC_IRISCTRL_TYPE_HDC_TAG_ID] =
3815 { "HDC", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
3816 check_tags_array_ignore, NULL
3817 },
3818
3819 [CALIB_SENSOR_AEC_IRISCTRL_P_ATTR_TAG_ID] =
3820 { "PIrisAttr", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3821 check_tags_array_info(calib_sensor_aec_AecIrisCtrl_PAttr_sub_tags), NULL
3822 },
3823 [CALIB_SENSOR_AEC_IRISCTRL_P_ATTR_TOTALSTEP_TAG_ID] =
3824 { "TotalStep", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3825 check_tags_array_ignore, NULL
3826 },
3827 [CALIB_SENSOR_AEC_IRISCTRL_P_ATTR_EFFCSTEP_TAG_ID] =
3828 { "EffcStep", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3829 check_tags_array_ignore, NULL
3830 },
3831 [CALIB_SENSOR_AEC_IRISCTRL_P_ATTR_ZEROISMAX_TAG_ID] =
3832 { "ZeroIsMax", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3833 check_tags_array_ignore, NULL
3834 },
3835 [CALIB_SENSOR_AEC_IRISCTRL_P_ATTR_STEPTABLE_TAG_ID] =
3836 { "StepTable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3837 check_tags_array_ignore, NULL
3838 },
3839
3840 [CALIB_SENSOR_AEC_IRISCTRL_DC_ATTR_TAG_ID] =
3841 { "DCIrisAttr", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3842 check_tags_array_info(calib_sensor_aec_AecIrisCtrl_DCAttr_sub_tags), NULL
3843 },
3844 [CALIB_SENSOR_AEC_IRISCTRL_DC_ATTR_KP_TAG_ID] =
3845 { "Kp", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3846 check_tags_array_ignore, NULL
3847 },
3848 [CALIB_SENSOR_AEC_IRISCTRL_DC_ATTR_KI_TAG_ID] =
3849 { "Ki", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3850 check_tags_array_ignore, NULL
3851 },
3852 [CALIB_SENSOR_AEC_IRISCTRL_DC_ATTR_KD_TAG_ID] =
3853 { "Kd", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3854 check_tags_array_ignore, NULL
3855 },
3856 [CALIB_SENSOR_AEC_IRISCTRL_DC_ATTR_MIN_PWMDUTY_TAG_ID] =
3857 { "MinPwmDuty", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3858 check_tags_array_ignore, NULL
3859 },
3860 [CALIB_SENSOR_AEC_IRISCTRL_DC_ATTR_MAX_PWMDUTY_TAG_ID] =
3861 { "MaxPwmDuty", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3862 check_tags_array_ignore, NULL
3863 },
3864 [CALIB_SENSOR_AEC_IRISCTRL_DC_ATTR_OPEN_PWMDUTY_TAG_ID] =
3865 { "OpenPwmDuty", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3866 check_tags_array_ignore, NULL
3867 },
3868 [CALIB_SENSOR_AEC_IRISCTRL_DC_ATTR_CLOSE_PWMDUTY_TAG_ID] =
3869 { "ClosePwmDuty", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3870 check_tags_array_ignore, NULL
3871 },
3872
3873 [CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_TAG_ID] =
3874 { "HDCIrisAttr", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3875 check_tags_array_info(calib_sensor_aec_AecIrisCtrl_HDCAttr_sub_tags), NULL
3876 },
3877 [CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_DAMPOVER_TAG_ID] =
3878 { "DampOver", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3879 check_tags_array_ignore, NULL
3880 },
3881 [CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_DAMPUNDER_TAG_ID] =
3882 { "DampUnder", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3883 check_tags_array_ignore, NULL
3884 },
3885 [CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_ZEROISMAX_TAG_ID] =
3886 { "ZeroIsMax", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3887 check_tags_array_ignore, NULL
3888 },
3889 [CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_MINTARGET_TAG_ID] =
3890 { "MinTarget", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3891 check_tags_array_ignore, NULL
3892 },
3893 [CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_MAXTARGET_TAG_ID] =
3894 { "MaxTarget", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3895 check_tags_array_ignore, NULL
3896 },
3897 [CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_ZOOMTARGETDOT_TAG_ID] =
3898 { "ZoomTargetDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3899 check_tags_array_ignore, NULL
3900 },
3901 [CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_ZOOMDOT_TAG_ID] =
3902 { "ZoomDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3903 check_tags_array_ignore, NULL
3904 },
3905 [CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_IRISTARGETDOT_TAG_ID] =
3906 { "IrisTargetDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3907 check_tags_array_ignore, NULL
3908 },
3909 [CALIB_SENSOR_AEC_IRISCTRL_HDC_ATTR_GAINDOT_TAG_ID] =
3910 { "GainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3911 check_tags_array_ignore, NULL
3912 },
3913
3914 [CALIB_SENSOR_AEC_MANUALCTRL_TAG_ID] =
3915 { "AecManualCtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3916 check_tags_array_info(calib_sensor_aec_AecManualCtrl_sub_tags), NULL
3917 },
3918 [CALIB_SENSOR_AEC_MANUALCTRL_LINEARAE_TAG_ID] =
3919 { "LinearAE", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3920 check_tags_array_info(calib_sensor_aec_AecManualCtrl_LinearAE_sub_tags), NULL
3921 },
3922 [CALIB_SENSOR_AEC_MANUALCTRL_HDRAE_TAG_ID] =
3923 { "HdrAE", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3924 check_tags_array_info(calib_sensor_aec_AecManualCtrl_HdrAE_sub_tags), NULL
3925 },
3926 [CALIB_SENSOR_AEC_MANUALCTRL_TIMEEN_TAG_ID] =
3927 { "ManualTimeEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3928 check_tags_array_ignore, NULL
3929 },
3930 [CALIB_SENSOR_AEC_MANUALCTRL_GAINEN_TAG_ID] =
3931 { "ManualGainEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3932 check_tags_array_ignore, NULL
3933 },
3934 [CALIB_SENSOR_AEC_MANUALCTRL_ISPDGAINEN_TAG_ID] =
3935 { "ManualIspDgainEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3936 check_tags_array_ignore, NULL
3937 },
3938 [CALIB_SENSOR_AEC_MANUALCTRL_IRISEN_TAG_ID] =
3939 { "ManualIrisEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3940 check_tags_array_ignore, NULL
3941 },
3942 [CALIB_SENSOR_AEC_MANUALCTRL_TIMEVALUE_TAG_ID] =
3943 { "TimeValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3944 check_tags_array_ignore, NULL
3945 },
3946 [CALIB_SENSOR_AEC_MANUALCTRL_GAINVALUE_TAG_ID] =
3947 { "GainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3948 check_tags_array_ignore, NULL
3949 },
3950 [CALIB_SENSOR_AEC_MANUALCTRL_ISPDGAINVALUE_TAG_ID] =
3951 { "IspDGainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3952 check_tags_array_ignore, NULL
3953 },
3954 [CALIB_SENSOR_AEC_MANUALCTRL_PIRISVALUE_TAG_ID] =
3955 { "PIrisGainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3956 check_tags_array_ignore, NULL
3957 },
3958 [CALIB_SENSOR_AEC_MANUALCTRL_DCIRISVALUE_TAG_ID] =
3959 { "DCIrisValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3960 check_tags_array_ignore, NULL
3961 },
3962 [CALIB_SENSOR_AEC_MANUALCTRL_HDCIRISVALUE_TAG_ID] =
3963 { "HDCIrisValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3964 check_tags_array_ignore, NULL
3965 },
3966
3967 [CALIB_SENSOR_AEC_ENVLVCALIB_TAG_ID] =
3968 { "AecEnvLvCalib", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3969 check_tags_array_info(calib_sensor_aec_AecEnvLvCalib_sub_tags), NULL
3970 },
3971 [CALIB_SENSOR_AEC_ENVLVCALIB_CALIBFNUMBER_TAG_ID] =
3972 { "CalibFNumber", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3973 check_tags_array_ignore, NULL
3974 },
3975 [CALIB_SENSOR_AEC_ENVLVCALIB_CURVECOEFF_TAG_ID] =
3976 { "CurveCoeff", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3977 check_tags_array_ignore, NULL
3978 },
3979
3980 [CALIB_SENSOR_AEC_LINEARAE_CTRL_TAG_ID] =
3981 { "LinearAECtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
3982 check_tags_array_info(calib_sensor_aec_LinearAECtrl_sub_tags), NULL
3983 },
3984 [CALIB_SENSOR_AEC_RAWSTATS_EN_TAG_ID] =
3985 { "RawStatsEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3986 check_tags_array_ignore, NULL
3987 },
3988 [CALIB_SENSOR_AEC_SETPOINT_TAG_ID] =
3989 { "SetPoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3990 check_tags_array_ignore, NULL
3991 },
3992 [CALIB_SENSOR_AEC_NIGHTSETPOINT_TAG_ID] =
3993 { "NightSetpoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3994 check_tags_array_ignore, NULL
3995 },
3996 [CALIB_SENSOR_AEC_DYSETPOINTEN_TAG_ID] =
3997 { "DySetPointEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
3998 check_tags_array_ignore, NULL
3999 },
4000 [CALIB_SENSOR_AEC_DYNAMICSETPOINT_TAG_ID] =
4001 { "DynamicSetpoint", CALIB_TAG_TYPE_CELL, {-1, -1},
4002 check_tags_array_info(calib_sensor_aec_DySetPointEn_sub_tags), NULL
4003 },
4004 [CALIB_SENSOR_AEC_EXPLEVEL_TAG_ID] =
4005 { "ExpLevel", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4006 check_tags_array_ignore, NULL
4007 },
4008 [CALIB_SENSOR_AEC_DYSETPOINT_TAG_ID] =
4009 { "DySetpoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4010 check_tags_array_ignore, NULL
4011 },
4012 [CALIB_SENSOR_AEC_TOLERANCE_IN_TAG_ID] =
4013 { "ToleranceIn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4014 check_tags_array_ignore, NULL
4015 },
4016 [CALIB_SENSOR_AEC_TOLERANCE_OUT_TAG_ID] =
4017 { "ToleranceOut", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4018 check_tags_array_ignore, NULL
4019 },
4020 [CALIB_SENSOR_AEC_STRATEGYMODE_TAG_ID] =
4021 { "StrategyMode", CALIB_TAG_TYPE_CHAR, {-1, -1},
4022 check_tags_array_ignore, NULL
4023 },
4024 [CALIB_SENSOR_AEC_STRATEGYMODE_LOWLIGHT_TAG_ID] =
4025 { "LOWLIGHT_PRIOR", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4026 check_tags_array_ignore, NULL
4027 },
4028 [CALIB_SENSOR_AEC_STRATEGYMODE_HIGHLIGHT_TAG_ID] =
4029 { "HIGHLIGHT_PRIOR", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4030 check_tags_array_ignore, NULL
4031 },
4032 [CALIB_SENSOR_AEC_EVBIAS_TAG_ID] =
4033 { "Evbias", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4034 check_tags_array_ignore, NULL
4035 },
4036
4037 [CALIB_SENSOR_LINAECTRL_BACKLIGHT_CONFIG_TAG_ID] =
4038 { "BackLightCtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4039 check_tags_array_info(calib_sensor_aec_BackLight_sub_tags), NULL
4040 },
4041 [CALIB_SENSOR_LINAECTRL_BACKLIGHT_ENABLE_TAG_ID] =
4042 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4043 check_tags_array_ignore, NULL
4044 },
4045 [CALIB_SENSOR_LINAECTRL_BACKLIGHT_MEASAREA_TAG_ID] =
4046 { "MeasArea", CALIB_TAG_TYPE_CHAR, {-1, -1},
4047 check_tags_array_ignore, NULL
4048 },
4049 [CALIB_SENSOR_LINAECTRL_BACKLIGHT_MEASAREA_AUTO_TAG_ID] =
4050 { "AUTO", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4051 check_tags_array_ignore, NULL
4052 },
4053 [CALIB_SENSOR_LINAECTRL_BACKLIGHT_MEASAREA_CENTER_TAG_ID] =
4054 { "CENTER", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4055 check_tags_array_ignore, NULL
4056 },
4057 [CALIB_SENSOR_LINAECTRL_BACKLIGHT_MEASAREA_LEFT_TAG_ID] =
4058 { "LEFT", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4059 check_tags_array_ignore, NULL
4060 },
4061 [CALIB_SENSOR_LINAECTRL_BACKLIGHT_MEASAREA_RIGHT_TAG_ID] =
4062 { "RIGHT", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4063 check_tags_array_ignore, NULL
4064 },
4065 [CALIB_SENSOR_LINAECTRL_BACKLIGHT_MEASAREA_UP_TAG_ID] =
4066 { "UP", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4067 check_tags_array_ignore, NULL
4068 },
4069 [CALIB_SENSOR_LINAECTRL_BACKLIGHT_MEASAREA_BOTTOM_TAG_ID] =
4070 { "BOTTOM", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4071 check_tags_array_ignore, NULL
4072 },
4073 [CALIB_SENSOR_LINAECTRL_BACKLIGHT_OEROI_LOWTH_TAG_ID] =
4074 { "OEROILowTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4075 check_tags_array_ignore, NULL
4076 },
4077 [CALIB_SENSOR_LINAECTRL_BACKLIGHT_LV_LOWTH_TAG_ID] =
4078 { "LvLowTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4079 check_tags_array_ignore, NULL
4080 },
4081 [CALIB_SENSOR_LINAECTRL_BACKLIGHT_LV_HIGHTH_TAG_ID] =
4082 { "LvHighTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4083 check_tags_array_ignore, NULL
4084 },
4085 [CALIB_SENSOR_LINAECTRL_BACKLIGHT_NONOEPDFTH_TAG_ID] =
4086 { "NonOEPdfTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4087 check_tags_array_ignore, NULL
4088 },
4089 [CALIB_SENSOR_LINAECTRL_BACKLIGHT_LOWLIGHTPDFTH_TAG_ID] =
4090 { "LowLightPdfTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4091 check_tags_array_ignore, NULL
4092 },
4093 [CALIB_SENSOR_LINAECTRL_BACKLIGHT_EXPLEVEL_TAG_ID] =
4094 { "ExpLevel", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4095 check_tags_array_ignore, NULL
4096 },
4097 [CALIB_SENSOR_LINAECTRL_BACKLIGHT_TARGETLLLUMA_TAG_ID] =
4098 { "TargetLLLuma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4099 check_tags_array_ignore, NULL
4100 },
4101 [CALIB_SENSOR_LINAECTRL_BACKLIGHT_LUMADISTTH_TAG_ID] =
4102 { "LumaDistTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4103 check_tags_array_ignore, NULL
4104 },
4105
4106 [CALIB_SENSOR_LINAECTRL_OVEREXP_CONTROL_TAG_ID] =
4107 { "OverExpCtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4108 check_tags_array_info(calib_sensor_aec_OverExp_sub_tags), NULL
4109 },
4110 [CALIB_SENSOR_LINAECTRL_OVEREXP_ENABLE_TAG_ID] =
4111 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4112 check_tags_array_ignore, NULL
4113 },
4114 [CALIB_SENSOR_LINAECTRL_OVEREXP_HIGHLIGHT_TH_TAG_ID] =
4115 { "HighLightTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4116 check_tags_array_ignore, NULL
4117 },
4118 [CALIB_SENSOR_LINAECTRL_OVEREXP_LOWLIGHT_TH_TAG_ID] =
4119 { "LowLightTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4120 check_tags_array_ignore, NULL
4121 },
4122 [CALIB_SENSOR_LINAECTRL_OVEREXP_MAXWEIGHT_TAG_ID] =
4123 { "MaxWeight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4124 check_tags_array_ignore, NULL
4125 },
4126 [CALIB_SENSOR_LINAECTRL_OVEREXP_OEPDF_TAG_ID] =
4127 { "OEpdf", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4128 check_tags_array_ignore, NULL
4129 },
4130 [CALIB_SENSOR_LINAECTRL_OVEREXP_HIGHLIGHT_WEIGHT_TAG_ID] =
4131 { "HighLightWeight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4132 check_tags_array_ignore, NULL
4133 },
4134 [CALIB_SENSOR_LINAECTRL_OVEREXP_LOWLIGHT_WEIGHT_TAG_ID] =
4135 { "LowLightWeight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4136 check_tags_array_ignore, NULL
4137 },
4138
4139 [CALIB_SENSOR_AEC_HDRAECTRL_TAG_ID] =
4140 { "HdrAECtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4141 check_tags_array_info(calib_sensor_aec_HdrAECtrl_sub_tags), NULL
4142 },
4143 [CALIB_SENSOR_AEC_HDRAECTRL_LONGFRMMODE_TAG_ID] =
4144 { "LongFrmMode", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4145 check_tags_array_info(calib_sensor_aec_LongFrmMode_sub_tags), NULL
4146 },
4147 [CALIB_SENSOR_AEC_HDRAECTRL_LONGFRMMODE_MODE_TAG_ID] =
4148 { "mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
4149 check_tags_array_ignore, NULL
4150 },
4151 [CALIB_SENSOR_AEC_HDRAECTRL_LONGFRMMODE_NORMAL_TAG_ID] =
4152 { "NORMAL", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4153 check_tags_array_ignore, NULL
4154 },
4155 [CALIB_SENSOR_AEC_HDRAECTRL_LONGFRMMODE_LONGFRAME_TAG_ID] =
4156 { "LONGFRAME", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4157 check_tags_array_ignore, NULL
4158 },
4159 [CALIB_SENSOR_AEC_HDRAECTRL_LONGFRMMODE_AUTO_LONGFRAME_TAG_ID] =
4160 { "AUTO_LONGFRAME", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4161 check_tags_array_ignore, NULL
4162 },
4163 [CALIB_SENSOR_AEC_HDRAECTRL_LONGFRMMODE_SFRMMINLINE_TAG_ID] =
4164 { "SfrmMinLine", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4165 check_tags_array_ignore, NULL
4166 },
4167 [CALIB_SENSOR_AEC_HDRAECTRL_LONGFRMMODE_LFRMMODEEXPTH_TAG_ID] =
4168 { "LfrmModeExpTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4169 check_tags_array_ignore, NULL
4170 },
4171 [CALIB_SENSOR_AEC_HDRAECTRL_EXPRATIOCTRL_TAG_ID] =
4172 { "ExpRatioCtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4173 check_tags_array_info(calib_sensor_aec_ExpRatioCtrl_sub_tags), NULL
4174 },
4175 [CALIB_SENSOR_AEC_HDRAECTRL_EXPRATIOTYPE_TAG_ID] =
4176 { "ExpRatioType", CALIB_TAG_TYPE_CHAR, {-1, -1},
4177 check_tags_array_ignore, NULL
4178 },
4179 [CALIB_SENSOR_AEC_HDRAECTRL_EXPRATIOTYPE_AUTO_TAG_ID] =
4180 { "AUTO", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4181 check_tags_array_ignore, NULL
4182 },
4183 [CALIB_SENSOR_AEC_HDRAECTRL_EXPRATIOTYPE_FIX_TAG_ID] =
4184 { "FIX", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4185 check_tags_array_ignore, NULL
4186 },
4187 [CALIB_SENSOR_AEC_HDRAECTRL_RATIOEXPDOT_TAG_ID] =
4188 { "RatioExpDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4189 check_tags_array_ignore, NULL
4190 },
4191 [CALIB_SENSOR_AEC_HDRAECTRL_M2SRATIOFIX_TAG_ID] =
4192 { "M2SRatioFix", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4193 check_tags_array_ignore, NULL
4194 },
4195 [CALIB_SENSOR_AEC_HDRAECTRL_L2MRATIOFIX_TAG_ID] =
4196 { "L2MRatioFix", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4197 check_tags_array_ignore, NULL
4198 },
4199 [CALIB_SENSOR_AEC_HDRAECTRL_M2SRATIOMAX_TAG_ID] =
4200 { "M2SRatioMax", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4201 check_tags_array_ignore, NULL
4202 },
4203 [CALIB_SENSOR_AEC_HDRAECTRL_L2MRATIOMAX_TAG_ID] =
4204 { "L2MRatioMax", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4205 check_tags_array_ignore, NULL
4206 },
4207 [CALIB_SENSOR_AEC_HDRAECTRL_LUMADISTTH_TAG_ID] =
4208 { "LumaDistTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4209 check_tags_array_ignore, NULL
4210 },
4211
4212 [CALIB_SENSOR_AEC_HDRAECTRL_LFRAMECTRL_TAG_ID] =
4213 { "LframeCtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4214 check_tags_array_info(calib_sensor_aec_LframeCtrl_sub_tags), NULL
4215 },
4216 [CALIB_SENSOR_AEC_HDRAECTRL_OEROILOWTH_TAG_ID] =
4217 { "OEROILowTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4218 check_tags_array_ignore, NULL
4219 },
4220 [CALIB_SENSOR_AEC_HDRAECTRL_LVHIGHTH_TAG_ID] =
4221 { "LvHighTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4222 check_tags_array_ignore, NULL
4223 },
4224 [CALIB_SENSOR_AEC_HDRAECTRL_LVLOWTH_TAG_ID] =
4225 { "LvLowTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4226 check_tags_array_ignore, NULL
4227 },
4228 [CALIB_SENSOR_AEC_HDRAECTRL_LEXPLEVEL_TAG_ID] =
4229 { "LExpLevel", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4230 check_tags_array_ignore, NULL
4231 },
4232 [CALIB_SENSOR_AEC_HDRAECTRL_LSETPOINT_TAG_ID] =
4233 { "LSetPoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4234 check_tags_array_ignore, NULL
4235 },
4236 [CALIB_SENSOR_AEC_HDRAECTRL_TARGETLLLUMA_TAG_ID] =
4237 { "TargetLLLuma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4238 check_tags_array_ignore, NULL
4239 },
4240 [CALIB_SENSOR_AEC_HDRAECTRL_NONOEPDFTH_TAG_ID] =
4241 { "NonOEPdfTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4242 check_tags_array_ignore, NULL
4243 },
4244 [CALIB_SENSOR_AEC_HDRAECTRL_LOWLIGHTPDFTH_TAG_ID] =
4245 { "LowLightPdfTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4246 check_tags_array_ignore, NULL
4247 },
4248
4249 [CALIB_SENSOR_AEC_HDRAECTRL_MFRAMECTRL_TAG_ID] =
4250 { "MframeCtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4251 check_tags_array_info(calib_sensor_aec_MframeCtrl_sub_tags), NULL
4252 },
4253 [CALIB_SENSOR_AEC_HDRAECTRL_MEXPLEVEL_TAG_ID] =
4254 { "MExpLevel", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4255 check_tags_array_ignore, NULL
4256 },
4257 [CALIB_SENSOR_AEC_HDRAECTRL_MSETPOINT_TAG_ID] =
4258 { "MSetPoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4259 check_tags_array_ignore, NULL
4260 },
4261
4262 [CALIB_SENSOR_AEC_HDRAECTRL_SFRAMECTRL_TAG_ID] =
4263 { "SframeCtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4264 check_tags_array_info(calib_sensor_aec_SframeCtrl_sub_tags), NULL
4265 },
4266 [CALIB_SENSOR_AEC_HDRAECTRL_SEXPLEVEL_TAG_ID] =
4267 { "SExpLevel", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4268 check_tags_array_ignore, NULL
4269 },
4270 [CALIB_SENSOR_AEC_HDRAECTRL_SSETPOINT_TAG_ID] =
4271 { "SSetPoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4272 check_tags_array_ignore, NULL
4273 },
4274 [CALIB_SENSOR_AEC_HDRAECTRL_TARGETHLLUMA_TAG_ID] =
4275 { "TargetHLLuma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4276 check_tags_array_ignore, NULL
4277 },
4278 [CALIB_SENSOR_AEC_HDRAECTRL_HLROIEXPANDEN_TAG_ID] =
4279 { "HLROIExpandEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4280 check_tags_array_ignore, NULL
4281 },
4282 [CALIB_SENSOR_AEC_HDRAECTRL_HLLUMATOLERANCE_TAG_ID] =
4283 { "HLLumaTolerance", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4284 check_tags_array_ignore, NULL
4285 },
4286
4287 // Sensor AF
4288 [CALIB_SENSOR_AF_TAG_ID] =
4289 { "AF", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4290 check_tags_array_info(calib_sensor_af_sub_tags), NULL
4291 },
4292 [CALIB_SENSOR_AF_FIXED_MODE_TAG_ID] =
4293 { "fixed_mode", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4294 check_tags_array_info(calib_sensor_af_fixed_mode_sub_tags), NULL
4295 },
4296 [CALIB_SENSOR_AF_MACRO_MODE_TAG_ID] =
4297 { "macro_mode", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4298 check_tags_array_info(calib_sensor_af_macro_mode_sub_tags), NULL
4299 },
4300 [CALIB_SENSOR_AF_INFINITY_MODE_TAG_ID] =
4301 { "infinity_mode", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4302 check_tags_array_info(calib_sensor_af_infinity_mode_sub_tags), NULL
4303 },
4304 [CALIB_SENSOR_AF_DEF_CODE_TAG_ID] =
4305 { "code", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4306 check_tags_array_ignore, NULL
4307 },
4308 [CALIB_SENSOR_AF_MODE_TAG_ID] =
4309 { "Mode", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4310 check_tags_array_ignore, NULL
4311 },
4312 [CALIB_SENSOR_AF_WINDOW_TAG_ID] =
4313 { "Window", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4314 check_tags_array_info(calib_sensor_af_Window_sub_tags), NULL
4315 },
4316 [CALIB_SENSOR_AF_CONTRAST_AF_TAG_ID] =
4317 { "contrast_af", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4318 check_tags_array_info(calib_sensor_af_contrast_af_sub_tags), NULL
4319 },
4320 [CALIB_SENSOR_AF_LASER_AF_TAG_ID] =
4321 { "laser_af", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4322 check_tags_array_info(calib_sensor_af_laser_af_sub_tags), NULL
4323 },
4324 [CALIB_SENSOR_AF_PDAF_TAG_ID] =
4325 { "pdaf", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4326 check_tags_array_info(calib_sensor_af_pdaf_sub_tags), NULL
4327 },
4328 [CALIB_SENSOR_AF_H_OFFS_TAG_ID] =
4329 { "h_offs", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4330 check_tags_array_ignore, NULL
4331 },
4332 [CALIB_SENSOR_AF_V_OFFS_TAG_ID] =
4333 { "v_offs", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4334 check_tags_array_ignore, NULL
4335 },
4336 [CALIB_SENSOR_AF_H_SIZE_TAG_ID] =
4337 { "h_size", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4338 check_tags_array_ignore, NULL
4339 },
4340 [CALIB_SENSOR_AF_V_SIZE_TAG_ID] =
4341 { "v_size", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4342 check_tags_array_ignore, NULL
4343 },
4344 [CALIB_SENSOR_AF_CONTRAST_ENABLE_TAG_ID] =
4345 { "enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4346 check_tags_array_ignore, NULL
4347 },
4348 [CALIB_SENSOR_AF_SEARCH_STRATEGY_TAG_ID] =
4349 { "AfSearchStrategy", CALIB_TAG_TYPE_CHAR, {-1, -1},
4350 check_tags_array_ignore, NULL
4351 },
4352 [CALIB_SENSOR_AF_SEARCH_STRATEGY_ADAPTIVE_TAG_ID] =
4353 { "ADAPTIVE_RANGE", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4354 check_tags_array_ignore, NULL
4355 },
4356 [CALIB_SENSOR_AF_SEARCH_STRATEGY_HILLCLIMB_TAG_ID] =
4357 { "HILLCLIMBING", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4358 check_tags_array_ignore, NULL
4359 },
4360 [CALIB_SENSOR_AF_SEARCH_STRATEGY_FULL_TAG_ID] =
4361 { "FULL_RANGE", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4362 check_tags_array_ignore, NULL
4363 },
4364 [CALIB_SENSOR_AF_DIR_POSITIVE_TAG_ID] =
4365 { "POSITIVE", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4366 check_tags_array_ignore, NULL
4367 },
4368 [CALIB_SENSOR_AF_DIR_NEGATIVE_TAG_ID] =
4369 { "NEGATIVE", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4370 check_tags_array_ignore, NULL
4371 },
4372 [CALIB_SENSOR_AF_DIR_ADAPTIVE_TAG_ID] =
4373 { "ADAPTIVE", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
4374 check_tags_array_ignore, NULL
4375 },
4376 [CALIB_SENSOR_AF_FULL_DIR_TAG_ID] =
4377 { "FullDir", CALIB_TAG_TYPE_CHAR, {-1, -1},
4378 check_tags_array_ignore, NULL
4379 },
4380 [CALIB_SENSOR_AF_FULL_RANGE_TBL_TAG_ID] =
4381 { "FullRangeTbl", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4382 check_tags_array_ignore, NULL
4383 },
4384 [CALIB_SENSOR_AF_ADAPTIVE_DIR_TAG_ID] =
4385 { "AdaptiveDir", CALIB_TAG_TYPE_CHAR, {-1, -1},
4386 check_tags_array_ignore, NULL
4387 },
4388 [CALIB_SENSOR_AF_ADAPTIVE_RANGE_TBL_TAG_ID] =
4389 { "AdaptRangeTbl", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4390 check_tags_array_ignore, NULL
4391 },
4392 [CALIB_SENSOR_AF_TRIG_THERS_TAG_ID] =
4393 { "TrigThers", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4394 check_tags_array_ignore, NULL
4395 },
4396 [CALIB_SENSOR_AF_LUMA_TRIG_THERS_TAG_ID] =
4397 { "LumaTrigThers", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4398 check_tags_array_ignore, NULL
4399 },
4400 [CALIB_SENSOR_AF_STABLE_THERS_TAG_ID] =
4401 { "StableThers", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4402 check_tags_array_ignore, NULL
4403 },
4404 [CALIB_SENSOR_AF_STABLE_FRAMES_TAG_ID] =
4405 { "StableFrames", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4406 check_tags_array_ignore, NULL
4407 },
4408 [CALIB_SENSOR_AF_STABLE_TIME_TAG_ID] =
4409 { "StableTime", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4410 check_tags_array_ignore, NULL
4411 },
4412 [CALIB_SENSOR_AF_SCENE_DIFF_ENABLE_TAG_ID] =
4413 { "SceneDiffEnable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4414 check_tags_array_ignore, NULL
4415 },
4416 [CALIB_SENSOR_AF_SCENE_DIFF_THERS_TAG_ID] =
4417 { "SceneDiffThers", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4418 check_tags_array_ignore, NULL
4419 },
4420 [CALIB_SENSOR_AF_SCENE_DIFF_BLK_THERS_TAG_ID] =
4421 { "SceneDiffBlkThers", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4422 check_tags_array_ignore, NULL
4423 },
4424 [CALIB_SENSOR_AF_CENTER_SCENE_DIFF_THERS_TAG_ID] =
4425 { "CenterSceneDiffThers", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4426 check_tags_array_ignore, NULL
4427 },
4428 [CALIB_SENSOR_AF_VALID_MAX_MIN_RATIO_TAG_ID] =
4429 { "ValidMaxMinRatio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4430 check_tags_array_ignore, NULL
4431 },
4432 [CALIB_SENSOR_AF_VALID_VALUE_THERS_TAG_ID] =
4433 { "ValidValueThers", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4434 check_tags_array_ignore, NULL
4435 },
4436 [CALIB_SENSOR_AF_OUT_FOCUS_VALUE_TAG_ID] =
4437 { "OutFocusValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4438 check_tags_array_ignore, NULL
4439 },
4440 [CALIB_SENSOR_AF_OUT_FOCUS_POS_TAG_ID] =
4441 { "OutFocusPos", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4442 check_tags_array_ignore, NULL
4443 },
4444 [CALIB_SENSOR_AF_FLAT_VALUE_TAG_ID] =
4445 { "FlatValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4446 check_tags_array_ignore, NULL
4447 },
4448 [CALIB_SENSOR_AF_SEARCH_PAUSE_LUMA_ENABLE_TAG_ID] =
4449 { "SearchPauseLumaEnable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4450 check_tags_array_ignore, NULL
4451 },
4452 [CALIB_SENSOR_AF_SEARCH_PAUSE_LUMA_THERS_TAG_ID] =
4453 { "SearchPauseLumaThers", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4454 check_tags_array_ignore, NULL
4455 },
4456 [CALIB_SENSOR_AF_SEARCH_PAUSE_LUMA_STABLE_FRAMES_TAG_ID] =
4457 { "SearchPauseLumaStableFrames", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4458 check_tags_array_ignore, NULL
4459 },
4460 [CALIB_SENSOR_AF_SEARCH_PAUSE_LUMA_STABLE_THERS_TAG_ID] =
4461 { "SearchPauseLumaStableThers", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4462 check_tags_array_ignore, NULL
4463 },
4464 [CALIB_SENSOR_AF_WEIGHT_ENABLE_TAG_ID] =
4465 { "WeightEnable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4466 check_tags_array_ignore, NULL
4467 },
4468 [CALIB_SENSOR_AF_WEIGHT_MATRIX_TAG_ID] =
4469 { "WeightMatrix", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4470 check_tags_array_ignore, NULL
4471 },
4472 [CALIB_SENSOR_AF_VCM_TAG_ID] =
4473 { "vcmConfig", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4474 check_tags_array_info(calib_sensor_af_vcmcfg_sub_tags), NULL
4475 },
4476 [CALIB_SENSOR_AF_MEAS_ISO_TAG_ID] =
4477 { "afmeas_iso", CALIB_TAG_TYPE_CELL, {-1, -1},
4478 check_tags_array_info(calib_sensor_af_meas_iso_sub_tags), NULL
4479 },
4480 [CALIB_SENSOR_AF_ZOOM_FOCUS_TBL_TAG_ID] =
4481 { "zoomfocus_tbl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4482 check_tags_array_info(calib_sensor_af_zoomfocus_tbl_sub_tags), NULL
4483 },
4484 [CALIB_SENSOR_AF_LASERAF_ENABLE_TAG_ID] =
4485 { "enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4486 check_tags_array_ignore, NULL
4487 },
4488 [CALIB_SENSOR_AF_LASER_AF_VCMDOT_TAG_ID] =
4489 { "vcmDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4490 check_tags_array_ignore, NULL
4491 },
4492 [CALIB_SENSOR_AF_LASER_AF_DISTANCEDOT_TAG_ID] =
4493 { "distanceDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4494 check_tags_array_ignore, NULL
4495 },
4496 [CALIB_SENSOR_AF_PDAF_ENABLE_TAG_ID] =
4497 { "enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4498 check_tags_array_ignore, NULL
4499 },
4500 [CALIB_SENSOR_AF_VCM_START_CURRENT_TAG_ID] =
4501 { "startCurrent", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4502 check_tags_array_ignore, NULL
4503 },
4504 [CALIB_SENSOR_AF_VCM_RATED_CURRENT_TAG_ID] =
4505 { "ratedCurrent", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4506 check_tags_array_ignore, NULL
4507 },
4508 [CALIB_SENSOR_AF_VCM_STEP_MODE_TAG_ID] =
4509 { "stepMode", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4510 check_tags_array_ignore, NULL
4511 },
4512 [CALIB_SENSOR_AF_EXTRA_DELAY_TAG_ID] =
4513 { "extraDelay", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4514 check_tags_array_ignore, NULL
4515 },
4516 [CALIB_SENSOR_AF_MEAS_ISO_ISO_TAG_ID] =
4517 { "iso", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4518 check_tags_array_ignore, NULL
4519 },
4520 [CALIB_SENSOR_AF_MEAS_ISO_AFMTHRES_TAG_ID] =
4521 { "afmThres", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4522 check_tags_array_ignore, NULL
4523 },
4524 [CALIB_SENSOR_AF_MEAS_ISO_GAMMA_Y_TAG_ID] =
4525 { "gammaY", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4526 check_tags_array_ignore, NULL
4527 },
4528 [CALIB_SENSOR_AF_MEAS_ISO_GAUSS_WEIGHT_TAG_ID] =
4529 { "gaussWeight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4530 check_tags_array_ignore, NULL
4531 },
4532 [CALIB_SENSOR_AF_ZOOM_FOCUS_FOCUS_LENGTH_TAG_ID] =
4533 { "focusLength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4534 check_tags_array_ignore, NULL
4535 },
4536 [CALIB_SENSOR_AF_ZOOM_FOCUS_ZOOMPOS_TAG_ID] =
4537 { "zoomPosition", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4538 check_tags_array_ignore, NULL
4539 },
4540 [CALIB_SENSOR_AF_ZOOM_FOCUS_FOCUSINFPOS_TAG_ID] =
4541 { "focusInfPosition", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4542 check_tags_array_ignore, NULL
4543 },
4544 [CALIB_SENSOR_AF_ZOOM_FOCUS_FOCUSMACROPOS_TAG_ID] =
4545 { "focusMacroPosition", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4546 check_tags_array_ignore, NULL
4547 },
4548
4549 // Sensor AHDR
4550 [CALIB_SENSOR_AHDR_MERGE_TAG_ID] =
4551 { "MERGE", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4552 check_tags_array_info(calib_sensor_ahdr_Merge_sub_tags), NULL
4553 },
4554 [CALIB_SENSOR_AHDR_TMO_TAG_ID] =
4555 { "TMO", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4556 check_tags_array_info(calib_sensor_ahdr_Tmo_sub_tags), NULL
4557 },
4558 [CALIB_SENSOR_AHDR_ENVLV_TAG_ID] =
4559 { "EnvLv", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4560 check_tags_array_ignore, NULL
4561 },
4562 [CALIB_SENSOR_AHDR_MERGE_MOVECOEF_TAG_ID] =
4563 { "MoveCoef", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4564 check_tags_array_ignore, NULL
4565 },
4566 [CALIB_SENSOR_AHDR_MERGE_OECURVE_SMOOTH_TAG_ID] =
4567 { "OECurve_smooth", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4568 check_tags_array_ignore, NULL
4569 },
4570 [CALIB_SENSOR_AHDR_MERGE_OECURVE_OFFSET_TAG_ID] =
4571 { "OECurve_offset", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4572 check_tags_array_ignore, NULL
4573 },
4574 [CALIB_SENSOR_AHDR_MERGE_MDCURVELM_SMOOTH_TAG_ID] =
4575 { "MDCurveLM_smooth", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4576 check_tags_array_ignore, NULL
4577 },
4578 [CALIB_SENSOR_AHDR_MERGE_MDCURVELM_OFFSET_TAG_ID] =
4579 { "MDCurveLM_offset", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4580 check_tags_array_ignore, NULL
4581 },
4582 [CALIB_SENSOR_AHDR_MERGE_MDCURVEMS_SMOOTH_TAG_ID] =
4583 { "MDCurveMS_smooth", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4584 check_tags_array_ignore, NULL
4585 },
4586 [CALIB_SENSOR_AHDR_MERGE_MDCURVEMS_OFFSET_TAG_ID] =
4587 { "MDCurveMS_offset", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4588 check_tags_array_ignore, NULL
4589 },
4590 [CALIB_SENSOR_AHDR_MERGE_OECURVE_DAMP_TAG_ID] =
4591 { "OECurve_damp", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4592 check_tags_array_ignore, NULL
4593 },
4594 [CALIB_SENSOR_AHDR_MERGE_MDCURVELM_DAMP_TAG_ID] =
4595 { "MDCurveLM_damp", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4596 check_tags_array_ignore, NULL
4597 },
4598 [CALIB_SENSOR_AHDR_MERGE_MDCURVEMS_DAMP_TAG_ID] =
4599 { "MDCurveMS_damp", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4600 check_tags_array_ignore, NULL
4601 },
4602
4603 [CALIB_SENSOR_AHDR_TMO_TMO_EN_TAG_ID] =
4604 { "Enable", CALIB_TAG_TYPE_CELL, {-1, -1},
4605 check_tags_array_info(calib_sensor_ahdr_Tmo_En_sub_tags), NULL
4606 },
4607 [CALIB_SENSOR_AHDR_TMO_NAME_TAG_ID] =
4608 { "Name", CALIB_TAG_TYPE_CHAR, {-1, -1},
4609 check_tags_array_ignore, NULL
4610 },
4611 [CALIB_SENSOR_AHDR_TMO_TMO_EN_CELL_EN_TAG_ID] =
4612 { "En", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4613 check_tags_array_ignore, NULL
4614 },
4615 [CALIB_SENSOR_AHDR_TMO_GLOBALLUMA_TAG_ID] =
4616 { "GlobalLuma", CALIB_TAG_TYPE_CELL, {-1, -1},
4617 check_tags_array_info(calib_sensor_ahdr_GlobalLuma_sub_tags), NULL
4618 },
4619 [CALIB_SENSOR_AHDR_TMO_DETAILSHIGHLIGHT_TAG_ID] =
4620 { "DetailsHighLight", CALIB_TAG_TYPE_CELL, {-1, -1},
4621 check_tags_array_info(
4622 calib_sensor_ahdr_DetailsHighLight_sub_tags), NULL
4623 },
4624 [CALIB_SENSOR_AHDR_TMO_DETAILSLOWLIGHT_TAG_ID] =
4625 { "DetailsLowLight", CALIB_TAG_TYPE_CELL, {-1, -1},
4626 check_tags_array_info(
4627 calib_sensor_ahdr_DetailsLowLight_sub_tags), NULL
4628 },
4629 [CALIB_SENSOR_AHDR_TMO_LOCALTMO_TAG_ID] =
4630 { "LocalTMO", CALIB_TAG_TYPE_CELL, {-1, -1},
4631 check_tags_array_info(calib_sensor_ahdr_LocalTMO_sub_tags), NULL
4632 },
4633 [CALIB_SENSOR_AHDR_TMO_LOCALTMO_STRENGTH_TAG_ID] =
4634 { "LocalTMOStrength", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4635 check_tags_array_ignore, NULL
4636 },
4637 [CALIB_SENSOR_AHDR_TMO_LOCALTMOMODE_TAG_ID] =
4638 { "LocalTMOMode", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4639 check_tags_array_ignore, NULL
4640 },
4641 [CALIB_SENSOR_AHDR_TMO_GLOBALTMO_TAG_ID] =
4642 { "GlobalTMO", CALIB_TAG_TYPE_CELL, {-1, -1},
4643 check_tags_array_info(calib_sensor_ahdr_GlobalTMO_sub_tags), NULL
4644 },
4645 [CALIB_SENSOR_AHDR_TMO_GLOBALTMO_EN_TAG_ID] =
4646 { "Enable", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4647 check_tags_array_ignore, NULL
4648 },
4649 [CALIB_SENSOR_AHDR_TMO_GLOBALTMO_IIR_TAG_ID] =
4650 { "IIR", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4651 check_tags_array_ignore, NULL
4652 },
4653 [CALIB_SENSOR_AHDR_TMO_GLOBALTMO_MODE_TAG_ID] =
4654 { "Mode", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4655 check_tags_array_ignore, NULL
4656 },
4657 [CALIB_SENSOR_AHDR_TMO_GLOBALTMO_DYNAMICRANGE_TAG_ID] =
4658 { "DynamicRange", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4659 check_tags_array_ignore, NULL
4660 },
4661 [CALIB_SENSOR_AHDR_TMO_GLOBALTMO_ENVLV_TAG_ID] =
4662 { "EnvLv", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4663 check_tags_array_ignore, NULL
4664 },
4665 [CALIB_SENSOR_AHDR_TMO_GLOBALTMO_TOLERANCE_TAG_ID] =
4666 { "Tolerance", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4667 check_tags_array_ignore, NULL
4668 },
4669 [CALIB_SENSOR_AHDR_TMO_GLOBALTMO_STRENGTH_TAG_ID] =
4670 { "GlobalTMOStrength", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4671 check_tags_array_ignore, NULL
4672 },
4673
4674 [CALIB_SENSOR_AHDR_TMO_DETAILSHIGHLIGHTMODE_TAG_ID] =
4675 { "DetailsHighLightMode", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4676 check_tags_array_ignore, NULL
4677 },
4678 [CALIB_SENSOR_AHDR_TMO_GLOBALLUMAMODE_TAG_ID] =
4679 { "GlobalLumaMode", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4680 check_tags_array_ignore, NULL
4681 },
4682 [CALIB_SENSOR_AHDR_TMO_OEPDF_TAG_ID] =
4683 { "OEPdf", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4684 check_tags_array_ignore, NULL
4685 },
4686 [CALIB_SENSOR_AHDR_TOLERANCE_TAG_ID] =
4687 { "Tolerance", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4688 check_tags_array_ignore, NULL
4689 },
4690 [CALIB_SENSOR_AHDR_TMO_GLOBALLUMA_GLOBALLUMA_TAG_ID] =
4691 { "GlobalLuma", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4692 check_tags_array_ignore, NULL
4693 },
4694 [CALIB_SENSOR_AHDR_TMO_DETAILSHIGHLIGHT_DETAILSHIGHLIGHT_TAG_ID] =
4695 { "DetailsHighLight", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4696 check_tags_array_ignore, NULL
4697 },
4698 [CALIB_SENSOR_AHDR_TMO_DETAILSLOWLIGHT_DETAILSLOWLIGHT_TAG_ID] =
4699 { "DetailsLowLight", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4700 check_tags_array_ignore, NULL
4701 },
4702 [CALIB_SENSOR_AHDR_TMO_DETAILSLOWLIGHTMODE_TAG_ID] =
4703 { "DetailsLowLightMode", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4704 check_tags_array_ignore, NULL
4705 },
4706
4707 [CALIB_SENSOR_AHDR_TMO_FOCUSLUMA_TAG_ID] =
4708 { "FocusLuma", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4709 check_tags_array_ignore, NULL
4710 },
4711 [CALIB_SENSOR_AHDR_TMO_DARKPDF_TAG_ID] =
4712 { "DarkPdf", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4713 check_tags_array_ignore, NULL
4714 },
4715 [CALIB_SENSOR_AHDR_TMO_ISO_TAG_ID] =
4716 { "ISO", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4717 check_tags_array_ignore, NULL
4718 },
4719 [CALIB_SENSOR_AHDR_TMO_DYNAMICRANGE_TAG_ID] =
4720 { "DynamicRange", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4721 check_tags_array_ignore, NULL
4722 },
4723 [CALIB_SENSOR_AHDR_TMO_DAMP_TAG_ID] =
4724 { "Damp", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4725 check_tags_array_ignore, NULL
4726 },
4727
4728 //Drc
4729 [CALIB_SENSOR_DRC_TAG_ID] =
4730 { "DRC", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4731 check_tags_array_info(calib_sensor_Drc_sub_tags), NULL
4732 },
4733 [CALIB_SENSOR_DRC_CALIBPARA_TAG_ID] =
4734 { "CalibPara", CALIB_TAG_TYPE_CELL, {-1, -1},
4735 check_tags_array_info(calib_sensor_Drc_CalibPara_sub_tags), NULL
4736 },
4737 [CALIB_SENSOR_DRC_TUNINGPARA_TAG_ID] =
4738 { "TuningPara", CALIB_TAG_TYPE_CELL, {-1, -1},
4739 check_tags_array_info(calib_sensor_Drc_TuningPara_sub_tags), NULL
4740 },
4741 [CALIB_SENSOR_DRC_SCENE_TAG_ID] =
4742 { "Scene", CALIB_TAG_TYPE_CHAR, {-1, -1},
4743 check_tags_array_ignore, NULL
4744 },
4745 [CALIB_SENSOR_DRC_POSITION_TAG_ID] =
4746 { "sw_adrc_position", CALIB_TAG_TYPE_INT, {-1, -1},
4747 check_tags_array_ignore, NULL
4748 },
4749 [CALIB_SENSOR_DRC_OFFSET_POW2_TAG_ID] =
4750 { "sw_adrc_offset_pow2", CALIB_TAG_TYPE_INT, {-1, -1},
4751 check_tags_array_ignore, NULL
4752 },
4753 [CALIB_SENSOR_DRC_LPDETAIL_RATIO_TAG_ID] =
4754 { "sw_adrc_lpdetail_ratio", CALIB_TAG_TYPE_INT, {-1, -1},
4755 check_tags_array_ignore, NULL
4756 },
4757 [CALIB_SENSOR_DRC_HPDETAIL_RATIO_TAG_ID] =
4758 { "sw_adrc_hpdetail_ratio", CALIB_TAG_TYPE_INT, {-1, -1},
4759 check_tags_array_ignore, NULL
4760 },
4761 [CALIB_SENSOR_DRC_WEIPRE_FRAME_TAG_ID] =
4762 { "sw_adrc_weipre_frame", CALIB_TAG_TYPE_INT, {-1, -1},
4763 check_tags_array_ignore, NULL
4764 },
4765 [CALIB_SENSOR_DRC_WEICUR_PIX_TAG_ID] =
4766 { "sw_adrc_weicur_pix", CALIB_TAG_TYPE_INT, {-1, -1},
4767 check_tags_array_ignore, NULL
4768 },
4769 [CALIB_SENSOR_DRC_EDGE_SCL_TAG_ID] =
4770 { "sw_adrc_edge_scl", CALIB_TAG_TYPE_INT, {-1, -1},
4771 check_tags_array_ignore, NULL
4772 },
4773 [CALIB_SENSOR_DRC_MOTION_SCL_TAG_ID] =
4774 { "sw_adrc_motion_scl", CALIB_TAG_TYPE_INT, {-1, -1},
4775 check_tags_array_ignore, NULL
4776 },
4777 [CALIB_SENSOR_DRC_FORCE_SGM_INV0_TAG_ID] =
4778 { "sw_adrc_force_sgm_inv0", CALIB_TAG_TYPE_INT, {-1, -1},
4779 check_tags_array_ignore, NULL
4780 },
4781 [CALIB_SENSOR_DRC_SPACE_SGM_INV0_TAG_ID] =
4782 { "sw_adrc_space_sgm_inv0", CALIB_TAG_TYPE_INT, {-1, -1},
4783 check_tags_array_ignore, NULL
4784 },
4785 [CALIB_SENSOR_DRC_SPACE_SGM_INV1_TAG_ID] =
4786 { "sw_adrc_space_sgm_inv1", CALIB_TAG_TYPE_INT, {-1, -1},
4787 check_tags_array_ignore, NULL
4788 },
4789 [CALIB_SENSOR_DRC_RANGE_SGM_INV0_TAG_ID] =
4790 { "sw_adrc_range_sgm_inv0", CALIB_TAG_TYPE_INT, {-1, -1},
4791 check_tags_array_ignore, NULL
4792 },
4793 [CALIB_SENSOR_DRC_RANGE_SGM_INV1_TAG_ID] =
4794 { "sw_adrc_range_sgm_inv1", CALIB_TAG_TYPE_INT, {-1, -1},
4795 check_tags_array_ignore, NULL
4796 },
4797 [CALIB_SENSOR_DRC_WEIG_BILAT_TAG_ID] =
4798 { "sw_adrc_weig_bilat", CALIB_TAG_TYPE_INT, {-1, -1},
4799 check_tags_array_ignore, NULL
4800 },
4801 [CALIB_SENSOR_DRC_WEIG_MAXL_TAG_ID] =
4802 { "sw_adrc_weig_maxl", CALIB_TAG_TYPE_INT, {-1, -1},
4803 check_tags_array_ignore, NULL
4804 },
4805 [CALIB_SENSOR_DRC_MIN_OGAIN_TAG_ID] =
4806 { "sw_adrc_min_ogain", CALIB_TAG_TYPE_INT, {-1, -1},
4807 check_tags_array_ignore, NULL
4808 },
4809 [CALIB_SENSOR_DRC_IIR_FRAME_TAG_ID] =
4810 { "iir_frame", CALIB_TAG_TYPE_INT, {-1, -1},
4811 check_tags_array_ignore, NULL
4812 },
4813 [CALIB_SENSOR_DRC_GAIN_TAG_ID] =
4814 { "adrc_gain", CALIB_TAG_TYPE_INT, {-1, -1},
4815 check_tags_array_ignore, NULL
4816 },
4817 [CALIB_SENSOR_DRC_SCALE_Y0_TAG_ID] =
4818 { "sw_adrc_scale_y0", CALIB_TAG_TYPE_INT, {-1, -1},
4819 check_tags_array_ignore, NULL
4820 },
4821
4822 [CALIB_SENSOR_BLC_TAG_ID] =
4823 { "BLC", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4824 check_tags_array_info(calib_sensor_blc_sub_tags), NULL
4825 },
4826 [CALIB_SENSOR_BLC_ENABLE_TAG_ID] =
4827 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4828 check_tags_array_ignore, NULL
4829 },
4830 [CALIB_SENSOR_BLC_MODE_CELL_TAG_ID] =
4831 { "Mode", CALIB_TAG_TYPE_CELL, {-1, -1},
4832 check_tags_array_info(calib_sensor_blc_mode_cell_sub_tags), NULL
4833 },
4834 [CALIB_SENSOR_BLC_MODE_NAME_TAG_ID] =
4835 { "Name", CALIB_TAG_TYPE_CHAR, {-1, -1},
4836 check_tags_array_ignore, NULL
4837 },
4838 [CALIB_SENSOR_BLC_ISO_TAG_ID] =
4839 { "ISO", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4840 check_tags_array_ignore, NULL
4841 },
4842 [CALIB_SENSOR_BLC_BLACK_LEVEL_TAG_ID] =
4843 { "black_level", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
4844 check_tags_array_ignore, NULL
4845 },
4846
4847 // Sensor DPCC
4848 [CALIB_SENSOR_DPCC_TAG_ID] =
4849 { "DPCC", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4850 check_tags_array_info(calib_sensor_dpcc_sub_tags), NULL
4851 },
4852 [CALIB_SENSOR_DPCC_ENABLE_TAG_ID] =
4853 { "Enable", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4854 check_tags_array_ignore, NULL
4855 },
4856 [CALIB_SENSOR_DPCC_VERSION_TAG_ID] =
4857 { "Version", CALIB_TAG_TYPE_CHAR, {-1, -1},
4858 check_tags_array_ignore, NULL
4859 },
4860
4861 [CALIB_SENSOR_DPCC_FAST_MODE_TAG_ID] =
4862 { "Fast_mode", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4863 check_tags_array_info(calib_sensor_dpcc_fast_mode_sub_tags), NULL
4864 },
4865 [CALIB_SENSOR_DPCC_FAST_MODE_ENABLE_TAG_ID] =
4866 { "Fast_mode_enable", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4867 check_tags_array_ignore, NULL
4868 },
4869 [CALIB_SENSOR_DPCC_FAST_MODE_ISO_TAG_ID] =
4870 { "ISO", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4871 check_tags_array_ignore, NULL
4872 },
4873 [CALIB_SENSOR_DPCC_FAST_MODE_SINGLE_ENABLE_TAG_ID] =
4874 { "Single_enable", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4875 check_tags_array_ignore, NULL
4876 },
4877 [CALIB_SENSOR_DPCC_FAST_MODE_SINGLE_LEVEL_TAG_ID] =
4878 { "Single_level", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4879 check_tags_array_ignore, NULL
4880 },
4881 [CALIB_SENSOR_DPCC_FAST_MODE_DOUBLE_ENABLE_TAG_ID] =
4882 { "Double_enable", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4883 check_tags_array_ignore, NULL
4884 },
4885 [CALIB_SENSOR_DPCC_FAST_MODE_DOUBLE_LEVEL_TAG_ID] =
4886 { "Double_level", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4887 check_tags_array_ignore, NULL
4888 },
4889 [CALIB_SENSOR_DPCC_FAST_MODE_TRIPLE_ENABLE_TAG_ID] =
4890 { "Triple_enable", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4891 check_tags_array_ignore, NULL
4892 },
4893 [CALIB_SENSOR_DPCC_FAST_MODE_TRIPLE_LEVEL_TAG_ID] =
4894 { "Triple_level", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4895 check_tags_array_ignore, NULL
4896 },
4897
4898 [CALIB_SENSOR_DPCC_EXPERT_MODE_TAG_ID] =
4899 { "Expert_mode", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4900 check_tags_array_info(calib_sensor_dpcc_expert_mode_sub_tags), NULL
4901 },
4902 [CALIB_SENSOR_DPCC_ISO_TAG_ID] =
4903 { "ISO", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4904 check_tags_array_ignore, NULL
4905 },
4906 [CALIB_SENSOR_DPCC_STAGE1_ENABLE_TAG_ID] =
4907 { "Stage1_enable", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4908 check_tags_array_ignore, NULL
4909 },
4910 [CALIB_SENSOR_DPCC_GRAYSCALE_MODE_TAG_ID] =
4911 { "grayscale_mode", CALIB_TAG_TYPE_DOUBLE, {1, 1},
4912 check_tags_array_ignore, NULL
4913 },
4914 [CALIB_SENSOR_DPCC_RK_OUT_SEL_TAG_ID] =
4915 { "rk_out_sel", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4916 check_tags_array_ignore, NULL
4917 },
4918 [CALIB_SENSOR_DPCC_DPCC_OUT_SEL_TAG_ID] =
4919 { "dpcc_out_sel", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4920 check_tags_array_ignore, NULL
4921 },
4922 [CALIB_SENSOR_DPCC_STAGE1_RB_3X3_TAG_ID] =
4923 { "stage1_rb_3x3", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4924 check_tags_array_ignore, NULL
4925 },
4926 [CALIB_SENSOR_DPCC_STAGE1_G_3X3_TAG_ID] =
4927 { "stage1_g_3x3", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4928 check_tags_array_ignore, NULL
4929 },
4930 [CALIB_SENSOR_DPCC_STAGE1_INC_RB_CENTER_TAG_ID] =
4931 { "stage1_inc_rb_center", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4932 check_tags_array_ignore, NULL
4933 },
4934 [CALIB_SENSOR_DPCC_STAGE1_INC_G_CENTER_TAG_ID] =
4935 { "stage1_inc_g_center", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4936 check_tags_array_ignore, NULL
4937 },
4938 [CALIB_SENSOR_DPCC_STAGE1_USE_FIX_SET_TAG_ID] =
4939 { "stage1_use_fix_set", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4940 check_tags_array_ignore, NULL
4941 },
4942 [CALIB_SENSOR_DPCC_STAGE1_USE_SET3_TAG_ID] =
4943 { "stage1_use_set3", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4944 check_tags_array_ignore, NULL
4945 },
4946 [CALIB_SENSOR_DPCC_STAGE1_USE_SET2_TAG_ID] =
4947 { "stage1_use_set2", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4948 check_tags_array_ignore, NULL
4949 },
4950 [CALIB_SENSOR_DPCC_STAGE1_USE_SET1_TAG_ID] =
4951 { "stage1_use_set1", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4952 check_tags_array_ignore, NULL
4953 },
4954
4955 [CALIB_SENSOR_DPCC_SET_CELL_TAG_ID] =
4956 { "set_cell", CALIB_TAG_TYPE_CELL, {-1, -1},
4957 check_tags_array_info(calib_sensor_set_cell_sub_tags), NULL
4958 },
4959 [CALIB_SENSOR_DPCC_SET_CELL_RK_TAG_ID] =
4960 { "RK", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4961 check_tags_array_info(calib_sensor_set_cell_RK_sub_tags), NULL
4962 },
4963 [CALIB_SENSOR_DPCC_RK_RED_BLUE_ENABLE_TAG_ID] =
4964 { "RK_red_blue_enable", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4965 check_tags_array_ignore, NULL
4966 },
4967 [CALIB_SENSOR_DPCC_RK_GREEN_ENABLE_TAG_ID] =
4968 { "RK_green_enable", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4969 check_tags_array_ignore, NULL
4970 },
4971 [CALIB_SENSOR_DPCC_RK_RED_BLUE_SW_MINDIS_TAG_ID] =
4972 { "rb_sw_mindis", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4973 check_tags_array_ignore, NULL
4974 },
4975 [CALIB_SENSOR_DPCC_RK_GREEN_SW_MINDIS_TAG_ID] =
4976 { "g_sw_mindis", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4977 check_tags_array_ignore, NULL
4978 },
4979 [CALIB_SENSOR_DPCC_RK_SW_DIS_SCALE_MIN_TAG_ID] =
4980 { "sw_dis_scale_min", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4981 check_tags_array_ignore, NULL
4982 },
4983 [CALIB_SENSOR_DPCC_RK_SW_DIS_SCALE_MAX_TAG_ID] =
4984 { "sw_dis_scale_max", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4985 check_tags_array_ignore, NULL
4986 },
4987 [CALIB_SENSOR_DPCC_SET_CELL_LC_TAG_ID] =
4988 { "LC", CALIB_TAG_TYPE_STRUCT, {-1, -1},
4989 check_tags_array_info(calib_sensor_set_cell_LC_sub_tags), NULL
4990 },
4991 [CALIB_SENSOR_DPCC_LC_RED_BLUE_ENABLE_TAG_ID] =
4992 { "LC_red_blue_enable", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4993 check_tags_array_ignore, NULL
4994 },
4995 [CALIB_SENSOR_DPCC_LC_GREEN_ENABLE_TAG_ID] =
4996 { "LC_green_enable", CALIB_TAG_TYPE_DOUBLE, {1, 13},
4997 check_tags_array_ignore, NULL
4998 },
4999 [CALIB_SENSOR_DPCC_LC_RED_BLUE_LINE_MAD_FAC_TAG_ID] =
5000 { "rb_line_mad_fac", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5001 check_tags_array_ignore, NULL
5002 },
5003 [CALIB_SENSOR_DPCC_LC_GREEN_LINE_MAD_FAC_TAG_ID] =
5004 { "g_line_mad_fac", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5005 check_tags_array_ignore, NULL
5006 },
5007 [CALIB_SENSOR_DPCC_LC_RED_BLUE_LINE_THR_TAG_ID] =
5008 { "rb_line_thr", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5009 check_tags_array_ignore, NULL
5010 },
5011 [CALIB_SENSOR_DPCC_LC_GREEN_LINE_THR_TAG_ID] =
5012 { "g_line_thr", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5013 check_tags_array_ignore, NULL
5014 },
5015 [CALIB_SENSOR_DPCC_SET_CELL_PG_TAG_ID] =
5016 { "PG", CALIB_TAG_TYPE_STRUCT, {-1, -1},
5017 check_tags_array_info(calib_sensor_set_cell_PG_sub_tags), NULL
5018 },
5019 [CALIB_SENSOR_DPCC_PG_RED_BLUE_ENABLE_TAG_ID] =
5020 { "PG_red_blue_enable", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5021 check_tags_array_ignore, NULL
5022 },
5023 [CALIB_SENSOR_DPCC_PG_GREEN_ENABLE_TAG_ID] =
5024 { "PG_green_enable", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5025 check_tags_array_ignore, NULL
5026 },
5027 [CALIB_SENSOR_DPCC_PG_RED_BLUE_FAC_TAG_ID] =
5028 { "rb_pg_fac", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5029 check_tags_array_ignore, NULL
5030 },
5031 [CALIB_SENSOR_DPCC_PG_GREEN_FAC_TAG_ID] =
5032 { "g_pg_fac", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5033 check_tags_array_ignore, NULL
5034 },
5035 [CALIB_SENSOR_DPCC_SET_CELL_RND_TAG_ID] =
5036 { "RND", CALIB_TAG_TYPE_STRUCT, {-1, -1},
5037 check_tags_array_info(calib_sensor_set_cell_RND_sub_tags), NULL
5038 },
5039 [CALIB_SENSOR_DPCC_RND_RED_BLUE_ENABLE_TAG_ID] =
5040 { "RND_red_blue_enable", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5041 check_tags_array_ignore, NULL
5042 },
5043 [CALIB_SENSOR_DPCC_RND_GREEN_ENABLE_TAG_ID] =
5044 { "RND_green_enable", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5045 check_tags_array_ignore, NULL
5046 },
5047 [CALIB_SENSOR_DPCC_RND_RED_BLUE_THR_TAG_ID] =
5048 { "rb_rnd_thr", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5049 check_tags_array_ignore, NULL
5050 },
5051 [CALIB_SENSOR_DPCC_RND_GREEN_THR_TAG_ID] =
5052 { "g_rnd_thr", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5053 check_tags_array_ignore, NULL
5054 },
5055 [CALIB_SENSOR_DPCC_RND_RED_BLUE_OFFS_TAG_ID] =
5056 { "rb_rnd_offs", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5057 check_tags_array_ignore, NULL
5058 },
5059 [CALIB_SENSOR_DPCC_RND_GREEN_OFFS_TAG_ID] =
5060 { "g_rnd_offs", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5061 check_tags_array_ignore, NULL
5062 },
5063 [CALIB_SENSOR_DPCC_SET_CELL_RG_TAG_ID] =
5064 { "RG", CALIB_TAG_TYPE_STRUCT, {-1, -1},
5065 check_tags_array_info(calib_sensor_set_cell_RG_sub_tags), NULL
5066 },
5067 [CALIB_SENSOR_DPCC_RG_RED_BLUE_ENABLE_TAG_ID] =
5068 { "RG_red_blue_enable", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5069 check_tags_array_ignore, NULL
5070 },
5071 [CALIB_SENSOR_DPCC_RG_GREEN_ENABLE_TAG_ID] =
5072 { "RG_green_enable", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5073 check_tags_array_ignore, NULL
5074 },
5075 [CALIB_SENSOR_DPCC_RG_RED_BLUE_FAC_TAG_ID] =
5076 { "rb_rg_fac", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5077 check_tags_array_ignore, NULL
5078 },
5079 [CALIB_SENSOR_DPCC_RG_GREEN_FAC_TAG_ID] =
5080 { "g_rg_fac", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5081 check_tags_array_ignore, NULL
5082 },
5083 [CALIB_SENSOR_DPCC_SET_CELL_RO_TAG_ID] =
5084 { "RO", CALIB_TAG_TYPE_STRUCT, {-1, -1},
5085 check_tags_array_info(calib_sensor_set_cell_RO_sub_tags), NULL
5086 },
5087 [CALIB_SENSOR_DPCC_RO_RED_BLUE_ENABLE_TAG_ID] =
5088 { "RO_red_blue_enable", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5089 check_tags_array_ignore, NULL
5090 },
5091 [CALIB_SENSOR_DPCC_RO_GREEN_ENABLE_TAG_ID] =
5092 { "RO_green_enable", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5093 check_tags_array_ignore, NULL
5094 },
5095 [CALIB_SENSOR_DPCC_RO_RED_BLUE_LIM_TAG_ID] =
5096 { "rb_ro_lim", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5097 check_tags_array_ignore, NULL
5098 },
5099 [CALIB_SENSOR_DPCC_RO_GREEN_LIM_TAG_ID] =
5100 { "g_ro_lim", CALIB_TAG_TYPE_DOUBLE, {1, 13},
5101 check_tags_array_ignore, NULL
5102 },
5103
5104 [CALIB_SENSOR_DPCC_PDAF_TAG_ID] =
5105 { "dpcc_pdaf", CALIB_TAG_TYPE_STRUCT, {-1, -1},
5106 check_tags_array_info(calib_sensor_dpcc_pdaf_sub_tags), NULL
5107 },
5108
5109 [CALIB_SENSOR_DPCC_PDAF_ENABLE_TAG_ID] =
5110 { "pdaf_en", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5111 check_tags_array_ignore, NULL
5112 },
5113 [CALIB_SENSOR_DPCC_PDAF_POINT_ENABLE_TAG_ID] =
5114 { "pdaf_point_en", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5115 check_tags_array_ignore, NULL
5116 },
5117 [CALIB_SENSOR_DPCC_PDAF_OFFSETX_TAG_ID] =
5118 { "pdaf_offsetx", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5119 check_tags_array_ignore, NULL
5120 },
5121 [CALIB_SENSOR_DPCC_PDAF_OFFSETY_TAG_ID] =
5122 { "pdaf_offsety", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5123 check_tags_array_ignore, NULL
5124 },
5125 [CALIB_SENSOR_DPCC_PDAF_WRAPX_TAG_ID] =
5126 { "pdaf_wrapx", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
5127 check_tags_array_ignore, NULL
5128 },
5129 [CALIB_SENSOR_DPCC_PDAF_WRAPY_TAG_ID] =
5130 { "pdaf_wrapy", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
5131 check_tags_array_ignore, NULL
5132 },
5133 [CALIB_SENSOR_DPCC_PDAF_WRAPX_NUM_TAG_ID] =
5134 { "pdaf_wrapx_num", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5135 check_tags_array_ignore, NULL
5136 },
5137 [CALIB_SENSOR_DPCC_PDAF_WRAPY_NUM_TAG_ID] =
5138 { "pdaf_wrapy_num", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5139 check_tags_array_ignore, NULL
5140 },
5141 [CALIB_SENSOR_DPCC_PDAF_POINT_X_TAG_ID] =
5142 { "point_x", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5143 check_tags_array_ignore, NULL
5144 },
5145 [CALIB_SENSOR_DPCC_PDAF_POINT_Y_TAG_ID] =
5146 { "point_y", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5147 check_tags_array_ignore, NULL
5148 },
5149 [CALIB_SENSOR_DPCC_PDAF_POINT_FORWARD_MED_TAG_ID] =
5150 { "point_forword_med", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5151 check_tags_array_ignore, NULL
5152 },
5153
5154 [CALIB_SENSOR_DPCC_SENSOR_TAG_ID] =
5155 { "sensor_dpcc", CALIB_TAG_TYPE_STRUCT, {-1, -1},
5156 check_tags_array_info(calib_sensor_dpcc_sensor_dpcc_sub_tags), NULL
5157 },
5158 [CALIB_SENSOR_DPCC_SENSOR_AUTO_ENABLE_TAG_ID] =
5159 { "sensor_dpcc_auto_en", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5160 check_tags_array_ignore, NULL
5161 },
5162 [CALIB_SENSOR_DPCC_SENSOR_MAX_LEVEL_TAG_ID] =
5163 { "max_level", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5164 check_tags_array_ignore, NULL
5165 },
5166 [CALIB_SENSOR_DPCC_SENSOR_LEVEL_SINGLE_TAG_ID] =
5167 { "level_single", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5168 check_tags_array_ignore, NULL
5169 },
5170 [CALIB_SENSOR_DPCC_SENSOR_LEVEL_MULTIPLE_TAG_ID] =
5171 { "level_multiple", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5172 check_tags_array_ignore, NULL
5173 },
5174
5175 // Sensor Bayernr
5176 [CALIB_SENSOR_BAYERNR_TAG_ID] =
5177 { "BAYERNR", CALIB_TAG_TYPE_STRUCT, {-1, -1},
5178 check_tags_array_info(calib_sensor_bayernr_sub_tags), NULL
5179 },
5180 [CALIB_SENSOR_BAYERNR_ENABLE_TAG_ID] =
5181 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5182 check_tags_array_ignore, NULL
5183 },
5184 [CALIB_SENSOR_BAYERNR_VERSION_TAG_ID] =
5185 { "Version", CALIB_TAG_TYPE_CHAR, {-1, -1},
5186 check_tags_array_ignore, NULL
5187 },
5188 [CALIB_SENSOR_BAYERNR_MODE_CELL_TAG_ID] =
5189 { "Mode", CALIB_TAG_TYPE_CELL, {-1, -1},
5190 check_tags_array_info(calib_sensor_bayernr_mode_cell_sub_tags), NULL
5191 },
5192 [CALIB_SENSOR_BAYERNR_MODE_NAME_TAG_ID] =
5193 { "Name", CALIB_TAG_TYPE_CHAR, {-1, -1},
5194 check_tags_array_ignore, NULL
5195 },
5196 [CALIB_SENSOR_BAYERNR_SETTING_TAG_ID] =
5197 { "Setting", CALIB_TAG_TYPE_CELL, {-1, -1},
5198 check_tags_array_info(calib_sensor_Bayernr_Setting_sub_tags), NULL
5199 },
5200 [CALIB_SENSOR_BAYERNR_SETTING_SNR_MODE_TAG_ID] =
5201 { "SNR_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
5202 check_tags_array_ignore, NULL
5203 },
5204 [CALIB_SENSOR_BAYERNR_SETTING_SENSOR_MODE_TAG_ID] =
5205 { "Sensor_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
5206 check_tags_array_ignore, NULL
5207 },
5208
5209 [CALIB_SENSOR_BAYERNR_ISO_TAG_ID] =
5210 { "ISO", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5211 check_tags_array_ignore, NULL
5212 },
5213 [CALIB_SENSOR_BAYERNR_FILTPARA_TAG_ID] =
5214 { "filtPara", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5215 check_tags_array_ignore, NULL
5216 },
5217 [CALIB_SENSOR_BAYERNR_LURATIO_TAG_ID] =
5218 { "luRatio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5219 check_tags_array_ignore, NULL
5220 },
5221 [CALIB_SENSOR_BAYERNR_FIXW_TAG_ID] =
5222 { "fixW", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5223 check_tags_array_ignore, NULL
5224 },
5225 [CALIB_SENSOR_BAYERNR_LULEVEL_TAG_ID] =
5226 { "luLevel", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5227 check_tags_array_ignore, NULL
5228 },
5229 [CALIB_SENSOR_BAYERNR_LULEVELVAL_TAG_ID] =
5230 { "luLevelVal", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5231 check_tags_array_ignore, NULL
5232 },
5233 [CALIB_SENSOR_BAYERNR_LAMDA_TAG_ID] =
5234 { "lamda", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5235 check_tags_array_ignore, NULL
5236 },
5237 [CALIB_SENSOR_BAYERNR_GAUSS_EN_TAG_ID] =
5238 { "gauss_en", CALIB_TAG_TYPE_CHAR, {-1, -1},
5239 check_tags_array_ignore, NULL
5240 },
5241
5242 [CALIB_SENSOR_BAYERNR_RGAINOFF_TAG_ID] =
5243 { "RGainOff", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5244 check_tags_array_ignore, NULL
5245 },
5246 [CALIB_SENSOR_BAYERNR_RGAINFILP_TAG_ID] =
5247 { "RGainFilp", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5248 check_tags_array_ignore, NULL
5249 },
5250 [CALIB_SENSOR_BAYERNR_BGAINOFF_TAG_ID] =
5251 { "BGainOff", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5252 check_tags_array_ignore, NULL
5253 },
5254 [CALIB_SENSOR_BAYERNR_BGAINFILP_TAG_ID] =
5255 { "BGainFilp", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5256 check_tags_array_ignore, NULL
5257 },
5258 [CALIB_SENSOR_BAYERNR_EDGESOFTNESS_TAG_ID] =
5259 { "edgeSoftness", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5260 check_tags_array_ignore, NULL
5261 },
5262 [CALIB_SENSOR_BAYERNR_GAUSSWEIGHT0_TAG_ID] =
5263 { "gaussWeight0", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5264 check_tags_array_ignore, NULL
5265 },
5266 [CALIB_SENSOR_BAYERNR_GAUSSWEIGHT1_TAG_ID] =
5267 { "gaussWeight1", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5268 check_tags_array_ignore, NULL
5269 },
5270 [CALIB_SENSOR_BAYERNR_BILEDGEFILTER_TAG_ID] =
5271 { "bilEdgeFilter", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5272 check_tags_array_ignore, NULL
5273 },
5274 [CALIB_SENSOR_BAYERNR_BILFILTERSTRENG_TAG_ID] =
5275 { "bilFilterStreng", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5276 check_tags_array_ignore, NULL
5277 },
5278 [CALIB_SENSOR_BAYERNR_BILEDGESOFT_TAG_ID] =
5279 { "bilEdgeSoft", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5280 check_tags_array_ignore, NULL
5281 },
5282 [CALIB_SENSOR_BAYERNR_BILEDGESOFTRATIO_TAG_ID] =
5283 { "bilEdgeSoftRatio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5284 check_tags_array_ignore, NULL
5285 },
5286 [CALIB_SENSOR_BAYERNR_BILREGWGT_TAG_ID] =
5287 { "bilRegWgt", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5288 check_tags_array_ignore, NULL
5289 },
5290
5291 // Sensor LSC
5292 [CALIB_SENSOR_LSC_TAG_ID] =
5293 { "LSC", CALIB_TAG_TYPE_STRUCT, {-1, -1},
5294 check_tags_array_info(calib_sensor_lsc_sub_tags), NULL
5295 },
5296 [CALIB_SENSOR_LSC_ENABLE_TAG_ID] =
5297 { "enable", CALIB_TAG_TYPE_CHAR, {-1, -1},
5298 check_tags_array_ignore, NULL
5299 },
5300 [CALIB_SENSOR_LSC_DAMP_ENABLE_TAG_ID] =
5301 { "damp_enable", CALIB_TAG_TYPE_CHAR, {-1, -1},
5302 check_tags_array_ignore, NULL
5303 },
5304 [CALIB_SENSOR_LSC_ALSCCOF_TAG_ID] =
5305 { "alscCoef", CALIB_TAG_TYPE_STRUCT, {-1, -1},
5306 check_tags_array_info(calib_sensor_alscCoef_sub_tags), NULL
5307 },
5308 [CALIB_SENSOR_LSC_ALSCCOF_RESALL_TAG_ID] =
5309 { "resolutionAlll", CALIB_TAG_TYPE_CELL, {-1, -1},
5310 check_tags_array_info(calib_sensor_resolutionAlll_sub_tags), NULL
5311 },
5312 [CALIB_SENSOR_LSC_ALSCCOF_RESALL_NAME_TAG_ID] =
5313 { "name", CALIB_TAG_TYPE_CHAR, {-1, -1},
5314 check_tags_array_ignore, NULL
5315 },
5316 [CALIB_SENSOR_LSC_ALSCCOF_IllALL_TAG_ID] =
5317 { "illAll", CALIB_TAG_TYPE_CELL, {-1, -1},
5318 check_tags_array_info(calib_sensor_illAll_sub_tags), NULL
5319 },
5320 [CALIB_SENSOR_LSC_ALSCCOF_CASE_TAG_ID] =
5321 { "usedForCase", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5322 check_tags_array_ignore, NULL
5323 },
5324 [CALIB_SENSOR_LSC_ALSCCOF_NAME_TAG_ID] =
5325 { "name", CALIB_TAG_TYPE_CHAR, {-1, -1},
5326 check_tags_array_ignore, NULL
5327 },
5328 [CALIB_SENSOR_LSC_ALSCCOF_WBGAIN_TAG_ID] =
5329 { "wbGain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5330 check_tags_array_ignore, NULL
5331 },
5332 [CALIB_SENSOR_LSC_ALSCCOF_TABLEUSED_TAG_ID] =
5333 { "tableUsed", CALIB_TAG_TYPE_CHAR, {-1, -1},
5334 check_tags_array_ignore, NULL
5335 },
5336 [CALIB_SENSOR_LSC_ALSCCOF_GAINS_TAG_ID] =
5337 { "gains", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5338 check_tags_array_ignore, NULL
5339 },
5340 [CALIB_SENSOR_LSC_ALSCCOF_VIG_TAG_ID] =
5341 { "vig", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5342 check_tags_array_ignore, NULL
5343 },
5344
5345 [CALIB_SENSOR_LSC_TABLEALL_TAG_ID] =
5346 { "tableAll", CALIB_TAG_TYPE_CELL, {-1, -1},
5347 check_tags_array_info(calib_sensor_tableAll_sub_tags), NULL
5348 },
5349 [CALIB_SENSOR_LSC_TABLEALL_NAME_TAG_ID] =
5350 { "name", CALIB_TAG_TYPE_CHAR, {-1, -1},
5351 check_tags_array_ignore, NULL
5352 },
5353 [CALIB_SENSOR_LSC_TABLEALL_RESOLUTION_TAG_ID] =
5354 { "resolution", CALIB_TAG_TYPE_CHAR, {-1, -1},
5355 check_tags_array_ignore, NULL
5356 },
5357 [CALIB_SENSOR_LSC_TABLEALL_ILLUMINATION_TAG_ID] =
5358 { "illumination", CALIB_TAG_TYPE_CHAR, {-1, -1},
5359 check_tags_array_ignore, NULL
5360 },
5361 [CALIB_SENSOR_LSC_TABLEALL_LSC_SECTORS_TAG_ID] =
5362 { "LSC_sectors", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5363 check_tags_array_ignore, NULL
5364 },
5365 [CALIB_SENSOR_LSC_TABLEALL_LSC_NO_TAG_ID] =
5366 { "LSC_No", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5367 check_tags_array_ignore, NULL
5368 },
5369 [CALIB_SENSOR_LSC_TABLEALL_LSC_XO_TAG_ID] =
5370 { "LSC_Xo", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5371 check_tags_array_ignore, NULL
5372 },
5373 [CALIB_SENSOR_LSC_TABLEALL_LSC_YO_TAG_ID] =
5374 { "LSC_Yo", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5375 check_tags_array_ignore, NULL
5376 },
5377 [CALIB_SENSOR_LSC_TABLEALL_LSC_SECTOR_SIZE_X_TAG_ID] =
5378 { "LSC_SECT_SIZE_X", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5379 check_tags_array_ignore, NULL
5380 },
5381 [CALIB_SENSOR_LSC_TABLEALL_LSC_SECTOR_SIZE_Y_TAG_ID] =
5382 { "LSC_SECT_SIZE_Y", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5383 check_tags_array_ignore, NULL
5384 },
5385 [CALIB_SENSOR_LSC_TABLEALL_LSC_VIGNETTING_TAG_ID] =
5386 { "vignetting", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5387 check_tags_array_ignore, NULL
5388 },
5389 [CALIB_SENSOR_LSC_TABLEALL_LSC_SAMPLES_RED_TAG_ID] =
5390 { "LSC_SAMPLES_red", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5391 check_tags_array_ignore, NULL
5392 },
5393 [CALIB_SENSOR_LSC_TABLEALL_LSC_SAMPLES_GREENR_TAG_ID] =
5394 { "LSC_SAMPLES_greenR", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5395 check_tags_array_ignore, NULL
5396 },
5397 [CALIB_SENSOR_LSC_TABLEALL_LSC_SAMPLES_GREENB_TAG_ID] =
5398 { "LSC_SAMPLES_greenB", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5399 check_tags_array_ignore, NULL
5400 },
5401 [CALIB_SENSOR_LSC_TABLEALL_LSC_SAMPLES_BLUE_TAG_ID] =
5402 { "LSC_SAMPLES_blue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5403 check_tags_array_ignore, NULL
5404 },
5405
5406 // Sensor RKDM
5407 [CALIB_SENSOR_RKDM_TAG_ID] =
5408 { "RKDM", CALIB_TAG_TYPE_STRUCT, {-1, -1},
5409 check_tags_array_info(calib_sensor_rkdm_sub_tags), NULL
5410 },
5411 [CALIB_SENSOR_RKDM_ENABLE_TAG_ID] =
5412 { "enable", CALIB_TAG_TYPE_CHAR, {-1, -1},
5413 check_tags_array_ignore, NULL
5414 },
5415 [CALIB_SENSOR_RKDM_DEBAYER_FILTER1_TAG_ID] =
5416 { "debayer_filter1", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5417 check_tags_array_ignore, NULL
5418 },
5419 [CALIB_SENSOR_RKDM_DEBAYER_FILTER2_TAG_ID] =
5420 { "debayer_filter2", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5421 check_tags_array_ignore, NULL
5422 },
5423 [CALIB_SENSOR_RKDM_DEBAYER_GAIN_OFFSET_TAG_ID] =
5424 { "debayer_gain_offset", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5425 check_tags_array_ignore, NULL
5426 },
5427 [CALIB_SENSOR_RKDM_ISO_TAG_ID] =
5428 { "ISO", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5429 check_tags_array_ignore, NULL
5430 },
5431 [CALIB_SENSOR_RKDM_SHARP_STRENGTH_TAG_ID] =
5432 { "sharp_strength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5433 check_tags_array_ignore, NULL
5434 },
5435 [CALIB_SENSOR_RKDM_DEBAYER_HF_OFFSET_TAG_ID] =
5436 { "debayer_hf_offset", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5437 check_tags_array_ignore, NULL
5438 },
5439 [CALIB_SENSOR_RKDM_DEBAYER_OFFSET_TAG_ID] =
5440 { "debayer_offset", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5441 check_tags_array_ignore, NULL
5442 },
5443 [CALIB_SENSOR_RKDM_DEBAYER_CLIP_EN_TAG_ID] =
5444 { "debayer_clip_en", CALIB_TAG_TYPE_CHAR, {-1, -1},
5445 check_tags_array_ignore, NULL
5446 },
5447 [CALIB_SENSOR_RKDM_DEBAYER_FILTER_G_EN_TAG_ID] =
5448 { "debayer_filter_g_en", CALIB_TAG_TYPE_CHAR, {-1, -1},
5449 check_tags_array_ignore, NULL
5450 },
5451 [CALIB_SENSOR_RKDM_DEBAYER_FILTER_C_EN_TAG_ID] =
5452 { "debayer_filter_c_en", CALIB_TAG_TYPE_CHAR, {-1, -1},
5453 check_tags_array_ignore, NULL
5454 },
5455 [CALIB_SENSOR_RKDM_DEBAYER_THED0_TAG_ID] =
5456 { "debayer_thed0", CALIB_TAG_TYPE_CHAR, {-1, -1},
5457 check_tags_array_ignore, NULL
5458 },
5459 [CALIB_SENSOR_RKDM_DEBAYER_THED1_TAG_ID] =
5460 { "debayer_thed1", CALIB_TAG_TYPE_CHAR, {-1, -1},
5461 check_tags_array_ignore, NULL
5462 },
5463 [CALIB_SENSOR_RKDM_DEBAYER_DIST_SCALE_TAG_ID] =
5464 { "debayer_dist_scale", CALIB_TAG_TYPE_CHAR, {-1, -1},
5465 check_tags_array_ignore, NULL
5466 },
5467 [CALIB_SENSOR_RKDM_DEBAYER_CNR_STRENGTH_TAG_ID] =
5468 { "debayer_cnr_strength", CALIB_TAG_TYPE_CHAR, {-1, -1},
5469 check_tags_array_ignore, NULL
5470 },
5471 [CALIB_SENSOR_RKDM_DEBAYER_SHIFT_NUM_TAG_ID] =
5472 { "debayer_shift_num", CALIB_TAG_TYPE_CHAR, {-1, -1},
5473 check_tags_array_ignore, NULL
5474 },
5475
5476 // Sensor CCM
5477 [CALIB_SENSOR_CCM_TAG_ID] =
5478 { "CCM", CALIB_TAG_TYPE_STRUCT, {-1, -1},
5479 check_tags_array_info(calib_sensor_ccm_sub_tags), NULL
5480 },
5481 [CALIB_SENSOR_CCM_ENABLE_TAG_ID] =
5482 { "enable", CALIB_TAG_TYPE_CHAR, {-1, -1},
5483 check_tags_array_ignore, NULL
5484 },
5485 [CALIB_SENSOR_CCM_MODE_CELL_TAG_ID] =
5486 { "Mode", CALIB_TAG_TYPE_CELL, {-1, -1},
5487 check_tags_array_info(calib_sensor_ccm_mode_cell_sub_tags), NULL
5488 },
5489 [CALIB_SENSOR_CCM_MODE_NAME_TAG_ID] =
5490 { "Name", CALIB_TAG_TYPE_CHAR, {-1, -1},
5491 check_tags_array_ignore, NULL
5492 },
5493
5494 [CALIB_SENSOR_CCM_DAMP_ENABLE_TAG_ID] =
5495 { "damp_enable", CALIB_TAG_TYPE_CHAR, {-1, -1},
5496 check_tags_array_ignore, NULL
5497 },
5498 [CALIB_SENSOR_CCM_LUMA_CCM_TAG_ID] =
5499 { "lumaCCM", CALIB_TAG_TYPE_STRUCT, {-1, -1},
5500 check_tags_array_info(calib_sensor_lumaCCM_sub_tags), NULL
5501 },
5502 [CALIB_SENSOR_CCM_LUMA_CCM_RGB2Y_PARA_TAG_ID] =
5503 { "RGB2Y_para", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5504 check_tags_array_ignore, NULL
5505 },
5506 [CALIB_SENSOR_CCM_LUMA_CCM_LOW_BOUND_POS_BIT_TAG_ID] =
5507 { "low_bound_pos_bit", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5508 check_tags_array_ignore, NULL
5509 },
5510 [CALIB_SENSOR_CCM_LUMA_CCM_Y_ALPHA_CURVE_TAG_ID] =
5511 { "y_alpha_curve", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5512 check_tags_array_ignore, NULL
5513 },
5514 [CALIB_SENSOR_CCM_LUMA_CCM_GAIN_ALPHASCALE_CURVE_TAG_ID] =
5515 { "gain_alphaScale_curve", CALIB_TAG_TYPE_STRUCT, {-1, -1},
5516 check_tags_array_info(
5517 calib_sensor_gain_alphaScale_curve_sub_tags), NULL
5518 },
5519 [CALIB_SENSOR_CCM_LUMA_CCM_GAIN_TAG_ID] =
5520 { "gain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5521 check_tags_array_ignore, NULL
5522 },
5523 [CALIB_SENSOR_CCM_LUMA_CCM_SCALE_TAG_ID] =
5524 { "scale", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5525 check_tags_array_ignore, NULL
5526 },
5527 [CALIB_SENSOR_CCM_ACCMCOF_TAG_ID] =
5528 { "aCcmCof", CALIB_TAG_TYPE_CELL, {-1, -1},
5529 check_tags_array_info(
5530 calib_sensor_ccm_aCcmCof_sub_tags), NULL
5531 },
5532 [CALIB_SENSOR_CCM_ACCMCOF_IllALL_TAG_ID] =
5533 { "illAll", CALIB_TAG_TYPE_CELL, {-1, -1},
5534 check_tags_array_info(
5535 calib_sensor_ccm_illAll_sub_tags), NULL
5536 },
5537 [CALIB_SENSOR_CCM_ACCMCOF_NAME_TAG_ID] =
5538 { "name", CALIB_TAG_TYPE_CHAR, {-1, -1},
5539 check_tags_array_ignore, NULL
5540 },
5541 [CALIB_SENSOR_CCM_ACCMCOF_WBGAIN_TAG_ID] =
5542 { "wbGain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5543 check_tags_array_ignore, NULL
5544 },
5545 [CALIB_SENSOR_CCM_ACCMCOF_MATRIXUSED_TAG_ID] =
5546 { "matrixUsed", CALIB_TAG_TYPE_CHAR, {-1, -1},
5547 check_tags_array_ignore, NULL
5548 },
5549 [CALIB_SENSOR_CCM_ACCMCOF_GAIN_SAT_CURVE_TAG_ID] =
5550 { "gain_sat_curve", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
5551 check_tags_array_ignore, NULL
5552 },
5553 [CALIB_SENSOR_CCM_ACCMCOF_GAINS_TAG_ID] =
5554 { "gains", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5555 check_tags_array_ignore, NULL
5556 },
5557 [CALIB_SENSOR_CCM_ACCMCOF_SAT_TAG_ID] =
5558 { "sat", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5559 check_tags_array_ignore, NULL
5560 },
5561 [CALIB_SENSOR_CCM_MATRIXALL_TAG_ID] =
5562 { "matrixAll", CALIB_TAG_TYPE_CELL, {-1, -1},
5563 check_tags_array_info(
5564 calib_sensor_ccm_matrixAll_sub_tags), NULL
5565 },
5566 [CALIB_SENSOR_CCM_MATRIXALL_NAME_TAG_ID] =
5567 { "name", CALIB_TAG_TYPE_CHAR, {-1, -1},
5568 check_tags_array_ignore, NULL
5569 },
5570 [CALIB_SENSOR_CCM_MATRIXALL_ILLUMINATION_TAG_ID] =
5571 { "illumination", CALIB_TAG_TYPE_CHAR, {-1, -1},
5572 check_tags_array_ignore, NULL
5573 },
5574 [CALIB_SENSOR_CCM_MATRIXALL_SAT_TAG_ID] =
5575 { "saturation", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5576 check_tags_array_ignore, NULL
5577 },
5578 [CALIB_SENSOR_CCM_MATRIXALL_MATRIX_TAG_ID] =
5579 { "ccMatrix", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5580 check_tags_array_ignore, NULL
5581 },
5582 [CALIB_SENSOR_CCM_MATRIXALL_OFFSET_TAG_ID] =
5583 { "ccOffsets", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5584 check_tags_array_ignore, NULL
5585 },
5586
5587 // Sensor UVNR
5588 [CALIB_SENSOR_UVNR_TAG_ID] =
5589 { "UVNR", CALIB_TAG_TYPE_STRUCT, {-1, -1},
5590 check_tags_array_info(calib_sensor_uvnr_sub_tags), NULL
5591 },
5592 [CALIB_SENSOR_UVNR_ENABLE_TAG_ID] =
5593 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5594 check_tags_array_ignore, NULL
5595 },
5596 [CALIB_SENSOR_UVNR_VERSION_TAG_ID] =
5597 { "Version", CALIB_TAG_TYPE_CHAR, {-1, -1},
5598 check_tags_array_ignore, NULL
5599 },
5600 [CALIB_SENSOR_UVNR_MODE_CELL_TAG_ID] =
5601 { "Mode", CALIB_TAG_TYPE_CELL, {-1, -1},
5602 check_tags_array_info(calib_sensor_uvnr_mode_cell_sub_tags), NULL
5603 },
5604 [CALIB_SENSOR_UVNR_MODE_NAME_TAG_ID] =
5605 { "Name", CALIB_TAG_TYPE_CHAR, {-1, -1},
5606 check_tags_array_ignore, NULL
5607 },
5608 [CALIB_SENSOR_UVNR_SETTING_TAG_ID] =
5609 { "Setting", CALIB_TAG_TYPE_CELL, {-1, -1},
5610 check_tags_array_info(calib_sensor_uvnr_setting_sub_tags), NULL
5611 },
5612 [CALIB_SENSOR_UVNR_SETTING_SNR_MODE_TAG_ID] =
5613 { "SNR_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
5614 check_tags_array_ignore, NULL
5615 },
5616 [CALIB_SENSOR_UVNR_SETTING_SENSOR_MODE_TAG_ID] =
5617 { "Sensor_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
5618 check_tags_array_ignore, NULL
5619 },
5620 [CALIB_SENSOR_UVNR_ISO_TAG_ID] =
5621 { "ISO", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5622 check_tags_array_ignore, NULL
5623 },
5624 [CALIB_SENSOR_UVNR_STEP0_UVGRAD_RATIO_TAG_ID] =
5625 { "step0_uvgrad_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5626 check_tags_array_ignore, NULL
5627 },
5628 [CALIB_SENSOR_UVNR_STEP0_UVGRAD_OFFSET_TAG_ID] =
5629 { "step0_uvgrad_offset", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5630 check_tags_array_ignore, NULL
5631 },
5632 [CALIB_SENSOR_UVNR_STEP1_NONMED1_TAG_ID] =
5633 { "step1_nonMed1", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5634 check_tags_array_ignore, NULL
5635 },
5636 [CALIB_SENSOR_UVNR_STEP1_NONBF1_TAG_ID] =
5637 { "step1_nonBf1", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5638 check_tags_array_ignore, NULL
5639 },
5640 [CALIB_SENSOR_UVNR_STEP1_DOWNSAMPLE_W_TAG_ID] =
5641 { "step1_downSample_w", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5642 check_tags_array_ignore, NULL
5643 },
5644 [CALIB_SENSOR_UVNR_STEP1_DOWNSAMPLE_H_TAG_ID] =
5645 { "step1_downSample_h", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5646 check_tags_array_ignore, NULL
5647 },
5648 [CALIB_SENSOR_UVNR_STEP1_DOWNSAMPLE_MEANSIZE_TAG_ID] =
5649 { "step1_downSample_meansize", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5650 check_tags_array_ignore, NULL
5651 },
5652 [CALIB_SENSOR_UVNR_STEP1_MEDIAN_RATIO_TAG_ID] =
5653 { "step1_median_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5654 check_tags_array_ignore, NULL
5655 },
5656 [CALIB_SENSOR_UVNR_STEP1_MEDIAN_SIZE_TAG_ID] =
5657 { "step1_median_size", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5658 check_tags_array_ignore, NULL
5659 },
5660 [CALIB_SENSOR_UVNR_STEP1_MEDIAN_IIR_TAG_ID] =
5661 { "step1_median_IIR", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5662 check_tags_array_ignore, NULL
5663 },
5664 [CALIB_SENSOR_UVNR_STEP1_BF_SIGMAR_TAG_ID] =
5665 { "step1_bf_sigmaR", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5666 check_tags_array_ignore, NULL
5667 },
5668 [CALIB_SENSOR_UVNR_STEP1_BF_UVGAIN_TAG_ID] =
5669 { "step1_bf_uvgain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5670 check_tags_array_ignore, NULL
5671 },
5672 [CALIB_SENSOR_UVNR_STEP1_BF_RATIO_TAG_ID] =
5673 { "step1_bf_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5674 check_tags_array_ignore, NULL
5675 },
5676 [CALIB_SENSOR_UVNR_STEP1_BF_SIZE_TAG_ID] =
5677 { "step1_bf_size", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5678 check_tags_array_ignore, NULL
5679 },
5680 [CALIB_SENSOR_UVNR_STEP1_BF_SIGMAD_TAG_ID] =
5681 { "step1_bf_sigmaD", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5682 check_tags_array_ignore, NULL
5683 },
5684 [CALIB_SENSOR_UVNR_STEP1_BF_ISROWIIR_TAG_ID] =
5685 { "step1_bf_isRowIIR", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5686 check_tags_array_ignore, NULL
5687 },
5688 [CALIB_SENSOR_UVNR_STEP1_BF_ISYCOPY_TAG_ID] =
5689 { "step1_bf_isYcopy", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5690 check_tags_array_ignore, NULL
5691 },
5692 [CALIB_SENSOR_UVNR_STEP2_NONEXT_BLOCK_TAG_ID] =
5693 { "step2_nonExt_block", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5694 check_tags_array_ignore, NULL
5695 },
5696 [CALIB_SENSOR_UVNR_STEP2_NONMED_TAG_ID] =
5697 { "step2_nonMed", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5698 check_tags_array_ignore, NULL
5699 },
5700 [CALIB_SENSOR_UVNR_STEP2_NONBF_TAG_ID] =
5701 { "step2_nonBf", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5702 check_tags_array_ignore, NULL
5703 },
5704 [CALIB_SENSOR_UVNR_STEP2_DOWNSAMPLE_W_TAG_ID] =
5705 { "step2_downSample_w", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5706 check_tags_array_ignore, NULL
5707 },
5708 [CALIB_SENSOR_UVNR_STEP2_DOWNSAMPLE_H_TAG_ID] =
5709 { "step2_downSample_h", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5710 check_tags_array_ignore, NULL
5711 },
5712 [CALIB_SENSOR_UVNR_STEP2_DOWNSAMPLE_MEANSIZE_TAG_ID] =
5713 { "step2_downSample_meansize", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5714 check_tags_array_ignore, NULL
5715 },
5716 [CALIB_SENSOR_UVNR_STEP2_MEDIAN_RATIO_TAG_ID] =
5717 { "step2_median_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5718 check_tags_array_ignore, NULL
5719 },
5720 [CALIB_SENSOR_UVNR_STEP2_MEDIAN_SIZE_TAG_ID] =
5721 { "step2_median_size", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5722 check_tags_array_ignore, NULL
5723 },
5724 [CALIB_SENSOR_UVNR_STEP2_MEDIAN_IIR_TAG_ID] =
5725 { "step2_median_IIR", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5726 check_tags_array_ignore, NULL
5727 },
5728 [CALIB_SENSOR_UVNR_STEP2_BF_SIGMAR_TAG_ID] =
5729 { "step2_bf_sigmaR", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5730 check_tags_array_ignore, NULL
5731 },
5732 [CALIB_SENSOR_UVNR_STEP2_BF_UVGAIN_TAG_ID] =
5733 { "step2_bf_uvgain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5734 check_tags_array_ignore, NULL
5735 },
5736 [CALIB_SENSOR_UVNR_STEP2_BF_RATIO_TAG_ID] =
5737 { "step2_bf_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5738 check_tags_array_ignore, NULL
5739 },
5740 [CALIB_SENSOR_UVNR_STEP2_BF_SIZE_TAG_ID] =
5741 { "step2_bf_size", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5742 check_tags_array_ignore, NULL
5743 },
5744 [CALIB_SENSOR_UVNR_STEP2_BF_SIGMAD_TAG_ID] =
5745 { "step2_bf_sigmaD", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5746 check_tags_array_ignore, NULL
5747 },
5748 [CALIB_SENSOR_UVNR_STEP2_BF_ISROWIIR_TAG_ID] =
5749 { "step2_bf_isRowIIR", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5750 check_tags_array_ignore, NULL
5751 },
5752 [CALIB_SENSOR_UVNR_STEP2_BF_ISYCOPY_TAG_ID] =
5753 { "step2_bf_isYcopy", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5754 check_tags_array_ignore, NULL
5755 },
5756 [CALIB_SENSOR_UVNR_STEP3_NONBF3_TAG_ID] =
5757 { "step3_nonBf3", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5758 check_tags_array_ignore, NULL
5759 },
5760 [CALIB_SENSOR_UVNR_STEP3_BF_SIGMAR_TAG_ID] =
5761 { "step3_bf_sigmaR", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5762 check_tags_array_ignore, NULL
5763 },
5764 [CALIB_SENSOR_UVNR_STEP3_BF_UVGAIN_TAG_ID] =
5765 { "step3_bf_uvgain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5766 check_tags_array_ignore, NULL
5767 },
5768 [CALIB_SENSOR_UVNR_STEP3_BF_RATIO_TAG_ID] =
5769 { "step3_bf_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5770 check_tags_array_ignore, NULL
5771 },
5772 [CALIB_SENSOR_UVNR_STEP3_BF_SIZE_TAG_ID] =
5773 { "step3_bf_size", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5774 check_tags_array_ignore, NULL
5775 },
5776 [CALIB_SENSOR_UVNR_STEP3_BF_SIGMAD_TAG_ID] =
5777 { "step3_bf_sigmaD", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5778 check_tags_array_ignore, NULL
5779 },
5780 [CALIB_SENSOR_UVNR_STEP3_BF_ISROWIIR_TAG_ID] =
5781 { "step3_bf_isRowIIR", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5782 check_tags_array_ignore, NULL
5783 },
5784 [CALIB_SENSOR_UVNR_STEP3_BF_ISYCOPY_TAG_ID] =
5785 { "step3_bf_isYcopy", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5786 check_tags_array_ignore, NULL
5787 },
5788 [CALIB_SENSOR_UVNR_KERNEL_3X3_TAG_ID] =
5789 { "kernel_3x3", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5790 check_tags_array_ignore, NULL
5791 },
5792 [CALIB_SENSOR_UVNR_KERNEL_5X5_TAG_ID] =
5793 { "kernel_5x5", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5794 check_tags_array_ignore, NULL
5795 },
5796 [CALIB_SENSOR_UVNR_KERNEL_9X9_TAG_ID] =
5797 { "kernel_9x9", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5798 check_tags_array_ignore, NULL
5799 },
5800 [CALIB_SENSOR_UVNR_KERNEL_9X9_NUM_TAG_ID] =
5801 { "kernel_9x9_num", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5802 check_tags_array_ignore, NULL
5803 },
5804 [CALIB_SENSOR_UVNR_SIGMA_ADJ_LUMA_TAG_ID] =
5805 { "sigma_adj_luma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5806 check_tags_array_ignore, NULL
5807 },
5808 [CALIB_SENSOR_UVNR_SIGMA_ADJ_RATIO_TAG_ID] =
5809 { "sigma_adj_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5810 check_tags_array_ignore, NULL
5811 },
5812 [CALIB_SENSOR_UVNR_THRESHOLD_ADJ_LUMA_TAG_ID] =
5813 { "threshold_adj_luma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5814 check_tags_array_ignore, NULL
5815 },
5816 [CALIB_SENSOR_UVNR_THRESHOLD_ADJ_THRE_TAG_ID] =
5817 { "threshold_adj_thre", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5818 check_tags_array_ignore, NULL
5819 },
5820
5821 // Sensor GAMMA
5822 [CALIB_SENSOR_GAMMA_TAG_ID] =
5823 { "GAMMA", CALIB_TAG_TYPE_STRUCT, {-1, -1},
5824 check_tags_array_info(calib_sensor_gamma_sub_tags), NULL
5825 },
5826 [CALIB_SENSOR_GAMMA_GAMMA_EN_TAG_ID] =
5827 { "gamma_en", CALIB_TAG_TYPE_CHAR, {-1, -1},
5828 check_tags_array_ignore, NULL
5829 },
5830 [CALIB_SENSOR_GAMMA_GAMMA_OUT_SEGNUM_TAG_ID] =
5831 { "gamma_out_segnum", CALIB_TAG_TYPE_CHAR, {-1, -1},
5832 check_tags_array_ignore, NULL
5833 },
5834 [CALIB_SENSOR_GAMMA_GAMMA_OUT_OFFSET_TAG_ID] =
5835 { "gamma_out_offset", CALIB_TAG_TYPE_CHAR, {-1, -1},
5836 check_tags_array_ignore, NULL
5837 },
5838 [CALIB_SENSOR_GAMMA_CURVE_NORMAL_TAG_ID] =
5839 { "curve_normal", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5840 check_tags_array_ignore, NULL
5841 },
5842 [CALIB_SENSOR_GAMMA_CURVE_HDR_TAG_ID] =
5843 { "curve_hdr", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5844 check_tags_array_ignore, NULL
5845 },
5846 [CALIB_SENSOR_GAMMA_CURVE_NIGHT_TAG_ID] =
5847 { "curve_night", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5848 check_tags_array_ignore, NULL
5849 },
5850
5851 // Sensor DEGAMMA
5852 [CALIB_SENSOR_DEGAMMA_TAG_ID] =
5853 { "DEGAMMA", CALIB_TAG_TYPE_STRUCT, {-1, -1},
5854 check_tags_array_info(calib_sensor_degamma_sub_tags), NULL
5855 },
5856 [CALIB_SENSOR_DEGAMMA_EN_TAG_ID] =
5857 { "Degamma_en", CALIB_TAG_TYPE_CHAR, {-1, -1},
5858 check_tags_array_ignore, NULL
5859 },
5860 [CALIB_SENSOR_DEGAMMA_MODE_CELL_TAG_ID] =
5861 { "Degamma_mode", CALIB_TAG_TYPE_CELL, {-1, -1},
5862 check_tags_array_info(calib_sensor_degamma_cell_sub_tags), NULL
5863 },
5864 [CALIB_SENSOR_DEGAMMA_MODE_NAME_TAG_ID] =
5865 { "Name", CALIB_TAG_TYPE_CHAR, {-1, -1},
5866 check_tags_array_ignore, NULL
5867 },
5868 [CALIB_SENSOR_DEGAMMA_SCENE_EN_TAG_ID] =
5869 { "Degamma_scene_en", CALIB_TAG_TYPE_CHAR, {-1, -1},
5870 check_tags_array_ignore, NULL
5871 },
5872 [CALIB_SENSOR_DEGAMMA_CURVE_X_TAG_ID] =
5873 { "X_axis", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5874 check_tags_array_ignore, NULL
5875 },
5876 [CALIB_SENSOR_DEGAMMA_CURVE_R_TAG_ID] =
5877 { "curve_R", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5878 check_tags_array_ignore, NULL
5879 },
5880 [CALIB_SENSOR_DEGAMMA_CURVE_G_TAG_ID] =
5881 { "curve_G", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5882 check_tags_array_ignore, NULL
5883 },
5884 [CALIB_SENSOR_DEGAMMA_CURVE_B_TAG_ID] =
5885 { "curve_B", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5886 check_tags_array_ignore, NULL
5887 },
5888
5889 // Sensor YNR
5890 [CALIB_SENSOR_YNR_TAG_ID] =
5891 { "YNR", CALIB_TAG_TYPE_STRUCT, {-1, -1},
5892 check_tags_array_info(calib_sensor_ynr_sub_tags), NULL
5893 },
5894 [CALIB_SENSOR_YNR_ENABLE_TAG_ID] =
5895 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5896 check_tags_array_ignore, NULL
5897 },
5898 [CALIB_SENSOR_YNR_VERSION_TAG_ID] =
5899 { "Version", CALIB_TAG_TYPE_CHAR, {-1, -1},
5900 check_tags_array_ignore, NULL
5901 },
5902 [CALIB_SENSOR_YNR_MODE_CELL_TAG_ID] =
5903 { "Mode", CALIB_TAG_TYPE_CELL, {-1, -1},
5904 check_tags_array_info(calib_sensor_ynr_mode_cell_sub_tags), NULL
5905 },
5906 [CALIB_SENSOR_YNR_MODE_NAME_TAG_ID] =
5907 { "Name", CALIB_TAG_TYPE_CHAR, {-1, -1},
5908 check_tags_array_ignore, NULL
5909 },
5910 [CALIB_SENSOR_YNR_SETTING_CELL_TAG_ID] =
5911 { "Setting", CALIB_TAG_TYPE_CELL, {-1, -1},
5912 check_tags_array_info(calib_sensor_YNR_Setting_sub_tags), NULL
5913 },
5914 [CALIB_SENSOR_YNR_SETTING_SNR_MODE_TAG_ID] =
5915 { "SNR_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
5916 check_tags_array_ignore, NULL
5917 },
5918 [CALIB_SENSOR_YNR_SETTING_SENSOR_MODE_TAG_ID] =
5919 { "Sensor_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
5920 check_tags_array_ignore, NULL
5921 },
5922 [CALIB_SENSOR_YNR_ISO_CELL_TAG_ID] =
5923 { "YNR_ISO", CALIB_TAG_TYPE_CELL, {-1, -1},
5924 check_tags_array_info(calib_sensor_YNR_ISO_sub_tags), NULL
5925 },
5926 [CALIB_SENSOR_YNR_ISO_TAG_ID] =
5927 { "iso", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5928 check_tags_array_ignore, NULL
5929 },
5930 [CALIB_SENSOR_YNR_SIGMA_CURVE_TAG_ID] =
5931 { "sigma_curve", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5932 check_tags_array_ignore, NULL
5933 },
5934 [CALIB_SENSOR_YNR_YNR_LCI_TAG_ID] =
5935 { "ynr_lci", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5936 check_tags_array_ignore, NULL
5937 },
5938 [CALIB_SENSOR_YNR_YNR_LHCI_TAG_ID] =
5939 { "ynr_lhci", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5940 check_tags_array_ignore, NULL
5941 },
5942 [CALIB_SENSOR_YNR_YNR_HLCI_TAG_ID] =
5943 { "ynr_hlci", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5944 check_tags_array_ignore, NULL
5945 },
5946 [CALIB_SENSOR_YNR_YNR_HHCI_TAG_ID] =
5947 { "ynr_hhci", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5948 check_tags_array_ignore, NULL
5949 },
5950 [CALIB_SENSOR_YNR_LO_LUMAPOINT_TAG_ID] =
5951 { "lo_lumaPoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5952 check_tags_array_ignore, NULL
5953 },
5954 [CALIB_SENSOR_YNR_LO_LUMARATIO_TAG_ID] =
5955 { "lo_lumaRatio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5956 check_tags_array_ignore, NULL
5957 },
5958 [CALIB_SENSOR_YNR_LO_DIRECTIONSTRENGTH_TAG_ID] =
5959 { "lo_directionStrength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5960 check_tags_array_ignore, NULL
5961 },
5962 [CALIB_SENSOR_YNR_LO_BFSCALE_TAG_ID] =
5963 { "lo_bfScale", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5964 check_tags_array_ignore, NULL
5965 },
5966 [CALIB_SENSOR_YNR_IMERGE_RATIO_TAG_ID] =
5967 { "imerge_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5968 check_tags_array_ignore, NULL
5969 },
5970 [CALIB_SENSOR_YNR_IMERGE_BOUND_TAG_ID] =
5971 { "imerge_bound", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5972 check_tags_array_ignore, NULL
5973 },
5974 [CALIB_SENSOR_YNR_DENOISE_WEIGHT_TAG_ID] =
5975 { "denoise_weight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5976 check_tags_array_ignore, NULL
5977 },
5978 [CALIB_SENSOR_YNR_HI_LUMAPOINT_TAG_ID] =
5979 { "hi_lumaPoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5980 check_tags_array_ignore, NULL
5981 },
5982 [CALIB_SENSOR_YNR_HI_LUMARATIO_TAG_ID] =
5983 { "hi_lumaRatio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5984 check_tags_array_ignore, NULL
5985 },
5986 [CALIB_SENSOR_YNR_HI_BFSCALE_TAG_ID] =
5987 { "hi_bfScale", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5988 check_tags_array_ignore, NULL
5989 },
5990 [CALIB_SENSOR_YNR_HWITH_D_TAG_ID] =
5991 { "hwith_d", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5992 check_tags_array_ignore, NULL
5993 },
5994 [CALIB_SENSOR_YNR_HI_DENOISESTRENGTH_TAG_ID] =
5995 { "hi_denoiseStrength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
5996 check_tags_array_ignore, NULL
5997 },
5998 [CALIB_SENSOR_YNR_HI_DETAILMINADJDNW_TAG_ID] =
5999 { "hi_detailMinAdjDnW", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6000 check_tags_array_ignore, NULL
6001 },
6002 [CALIB_SENSOR_YNR_HI_DENOISEWEIGHT_TAG_ID] =
6003 { "hi_denoiseWeight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6004 check_tags_array_ignore, NULL
6005 },
6006 [CALIB_SENSOR_YNR_Y_LUMA_POINT_TAG_ID] =
6007 { "y_luma_point", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6008 check_tags_array_ignore, NULL
6009 },
6010 [CALIB_SENSOR_YNR_HGRAD_Y_LEVEL1_TAG_ID] =
6011 { "hgrad_y_level1", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6012 check_tags_array_ignore, NULL
6013 },
6014 [CALIB_SENSOR_YNR_HGRAD_Y_LEVEL2_TAG_ID] =
6015 { "hgrad_y_level2", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6016 check_tags_array_ignore, NULL
6017 },
6018 [CALIB_SENSOR_YNR_HGRAD_Y_LEVEL3_TAG_ID] =
6019 { "hgrad_y_level3", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6020 check_tags_array_ignore, NULL
6021 },
6022 [CALIB_SENSOR_YNR_HGRAD_Y_LEVEL4_TAG_ID] =
6023 { "hgrad_y_level4", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6024 check_tags_array_ignore, NULL
6025 },
6026 [CALIB_SENSOR_YNR_HI_SOFT_THRESH_SCALE_TAG_ID] =
6027 { "hi_soft_thresh_scale", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6028 check_tags_array_ignore, NULL
6029 },
6030
6031 // Sensor GIC
6032 [CALIB_SENSOR_GIC_TAG_ID] =
6033 { "GIC", CALIB_TAG_TYPE_STRUCT, {-1, -1},
6034 check_tags_array_info(calib_sensor_gic_sub_tags), NULL
6035 },
6036 [CALIB_SENSOR_GIC_CALIBPARA_V20_TAG_ID] =
6037 { "CalibParaV20", CALIB_TAG_TYPE_CELL, {-1, -1},
6038 check_tags_array_info(calib_sensor_gic_CalibParaV20_sub_tags), NULL
6039 },
6040 [CALIB_SENSOR_GIC_CALIBPARA_V21_TAG_ID] =
6041 { "CalibParaV21", CALIB_TAG_TYPE_CELL, {-1, -1},
6042 check_tags_array_info(calib_sensor_gic_CalibParaV21_sub_tags), NULL
6043 },
6044 [CALIB_SENSOR_GIC_TUNINGPARA_V20_TAG_ID] =
6045 { "TuningParaV20", CALIB_TAG_TYPE_CELL, {-1, -1},
6046 check_tags_array_info(calib_sensor_gic_TuningParaV20_sub_tags), NULL
6047 },
6048 [CALIB_SENSOR_GIC_TUNINGPARA_V21_TAG_ID] =
6049 { "TuningParaV21", CALIB_TAG_TYPE_CELL, {-1, -1},
6050 check_tags_array_info(calib_sensor_gic_TuningParaV21_sub_tags), NULL
6051 },
6052 [CALIB_SENSOR_GIC_SCENE_TAG_ID] =
6053 { "scene", CALIB_TAG_TYPE_CHAR, {-1, -1},
6054 check_tags_array_ignore, NULL
6055 },
6056 [CALIB_SENSOR_GIC_ENABLE_TAG_ID] =
6057 { "enable", CALIB_TAG_TYPE_CHAR, {-1, -1},
6058 check_tags_array_ignore, NULL
6059 },
6060 [CALIB_SENSOR_GIC_EDGE_EN_TAG_ID] =
6061 { "edge_en", CALIB_TAG_TYPE_CHAR, {-1, -1},
6062 check_tags_array_ignore, NULL
6063 },
6064 [CALIB_SENSOR_GIC_GR_RATION_TAG_ID] =
6065 { "gr_ration", CALIB_TAG_TYPE_CHAR, {-1, -1},
6066 check_tags_array_ignore, NULL
6067 },
6068 [CALIB_SENSOR_GIC_NOISE_CUT_EN_TAG_ID] =
6069 { "noise_cut_en", CALIB_TAG_TYPE_CHAR, {-1, -1},
6070 check_tags_array_ignore, NULL
6071 },
6072 [CALIB_SENSOR_GIC_SETTING_TAG_ID] =
6073 { "Setting", CALIB_TAG_TYPE_STRUCT, {-1, -1},
6074 check_tags_array_info(calib_sensor_GIC_Setting_v20_sub_tags), NULL
6075 },
6076 [CALIB_SENSOR_GIC_SETTING_ISO_TAG_ID] =
6077 { "iso", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6078 check_tags_array_ignore, NULL
6079 },
6080 [CALIB_SENSOR_GIC_MIN_BUSY_THRE_TAG_ID] =
6081 { "min_busy_thre", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6082 check_tags_array_ignore, NULL
6083 },
6084 [CALIB_SENSOR_GIC_MIN_GRAD_THR1_TAG_ID] =
6085 { "min_grad_thr1", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6086 check_tags_array_ignore, NULL
6087 },
6088 [CALIB_SENSOR_GIC_MIN_GRAD_THR2_TAG_ID] =
6089 { "min_grad_thr2", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6090 check_tags_array_ignore, NULL
6091 },
6092 [CALIB_SENSOR_GIC_K_GRAD1_TAG_ID] =
6093 { "k_grad1", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6094 check_tags_array_ignore, NULL
6095 },
6096 [CALIB_SENSOR_GIC_K_GRAD2_TAG_ID] =
6097 { "k_grad2", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6098 check_tags_array_ignore, NULL
6099 },
6100 [CALIB_SENSOR_GIC_GB_THRE_TAG_ID] =
6101 { "gb_thre", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6102 check_tags_array_ignore, NULL
6103 },
6104 [CALIB_SENSOR_GIC_MAXCORV_TAG_ID] =
6105 { "maxCorV", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6106 check_tags_array_ignore, NULL
6107 },
6108 [CALIB_SENSOR_GIC_MAXCORVBOTH_TAG_ID] =
6109 { "maxCorVboth", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6110 check_tags_array_ignore, NULL
6111 },
6112 [CALIB_SENSOR_GIC_DARK_THRE_TAG_ID] =
6113 { "dark_thre", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6114 check_tags_array_ignore, NULL
6115 },
6116 [CALIB_SENSOR_GIC_DARK_THREHI_TAG_ID] =
6117 { "dark_threHi", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6118 check_tags_array_ignore, NULL
6119 },
6120 [CALIB_SENSOR_GIC_K_GRAD1_DARK_TAG_ID] =
6121 { "k_grad1_dark", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6122 check_tags_array_ignore, NULL
6123 },
6124 [CALIB_SENSOR_GIC_K_GRAD2_DARK_TAG_ID] =
6125 { "k_grad2_dark", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6126 check_tags_array_ignore, NULL
6127 },
6128
6129 [CALIB_SENSOR_GIC_MIN_GRAD_THR_DARK1_TAG_ID] =
6130 { "min_grad_thr_dark1", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6131 check_tags_array_ignore, NULL
6132 },
6133 [CALIB_SENSOR_GIC_MIN_GRAD_THR_DARK2_TAG_ID] =
6134 { "min_grad_thr_dark2", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6135 check_tags_array_ignore, NULL
6136 },
6137 [CALIB_SENSOR_GIC_NOISECURVE0_TAG_ID] =
6138 { "noiseCurve_0", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6139 check_tags_array_ignore, NULL
6140 },
6141 [CALIB_SENSOR_GIC_NOISECURVE1_TAG_ID] =
6142 { "noiseCurve_1", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6143 check_tags_array_ignore, NULL
6144 },
6145 [CALIB_SENSOR_GIC_GVALUELIMITLO_TAG_ID] =
6146 { "GValueLimitLo", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6147 check_tags_array_ignore, NULL
6148 },
6149 [CALIB_SENSOR_GIC_GVALUELIMITHI_TAG_ID] =
6150 { "GValueLimitHi", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6151 check_tags_array_ignore, NULL
6152 },
6153 [CALIB_SENSOR_GIC_TEXTURESTRENGTH_TAG_ID] =
6154 { "textureStrength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6155 check_tags_array_ignore, NULL
6156 },
6157 [CALIB_SENSOR_GIC_SCALELO_TAG_ID] =
6158 { "ScaleLo", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6159 check_tags_array_ignore, NULL
6160 },
6161 [CALIB_SENSOR_GIC_SCALEHI_TAG_ID] =
6162 { "ScaleHi", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6163 check_tags_array_ignore, NULL
6164 },
6165 [CALIB_SENSOR_GIC_GLOBALSTRENGTH_TAG_ID] =
6166 { "globalStrength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6167 check_tags_array_ignore, NULL
6168 },
6169 [CALIB_SENSOR_GIC_NOISE_COEA_TAG_ID] =
6170 { "noise_coea", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6171 check_tags_array_ignore, NULL
6172 },
6173 [CALIB_SENSOR_GIC_NOISE_COEB_TAG_ID] =
6174 { "noise_coeb", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6175 check_tags_array_ignore, NULL
6176 },
6177 [CALIB_SENSOR_GIC_DIFF_CLIP_TAG_ID] =
6178 { "diff_clip", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6179 check_tags_array_ignore, NULL
6180 },
6181 [CALIB_SENSOR_GIC_SETTING_V21_TAG_ID] =
6182 { "SettingV21", CALIB_TAG_TYPE_STRUCT, {-1, -1},
6183 check_tags_array_info(calib_sensor_GIC_Setting_v21_sub_tags), NULL
6184 },
6185 [CALIB_SENSOR_GIC_NOISESCALE_TAG_ID] =
6186 { "NoiseScale", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6187 check_tags_array_ignore, NULL
6188 },
6189 [CALIB_SENSOR_GIC_NOISEBASE_TAG_ID] =
6190 { "NoiseBase", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6191 check_tags_array_ignore, NULL
6192 },
6193
6194
6195 // Sensor MFNR
6196 [CALIB_SENSOR_MFNR_TAG_ID] =
6197 { "MFNR", CALIB_TAG_TYPE_STRUCT, {-1, -1},
6198 check_tags_array_info(calib_sensor_mfnr_sub_tags), NULL
6199 },
6200 [CALIB_SENSOR_MFNR_ENABLE_TAG_ID] =
6201 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6202 check_tags_array_ignore, NULL
6203 },
6204 [CALIB_SENSOR_MFNR_VERSION_TAG_ID] =
6205 { "Version", CALIB_TAG_TYPE_CHAR, {-1, -1},
6206 check_tags_array_ignore, NULL
6207 },
6208 [CALIB_SENSOR_MFNR_LOCAL_GAIN_EN_TAG_ID] =
6209 { "local_gain_en", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6210 check_tags_array_ignore, NULL
6211 },
6212 [CALIB_SENSOR_MFNR_MOTION_DETECT_EN_TAG_ID] =
6213 { "motion_detect_en", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6214 check_tags_array_ignore, NULL
6215 },
6216
6217 [CALIB_SENSOR_MFNR_MODE_3TO1_TAG_ID] =
6218 { "mode_3to1", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6219 check_tags_array_ignore, NULL
6220 },
6221
6222 [CALIB_SENSOR_MFNR_MAX_LEVEL_TAG_ID] =
6223 { "max_level", CALIB_TAG_TYPE_CHAR, {-1, -1},
6224 check_tags_array_ignore, NULL
6225 },
6226 [CALIB_SENSOR_MFNR_MAX_LEVEL_UV_TAG_ID] =
6227 { "max_level_uv", CALIB_TAG_TYPE_CHAR, {-1, -1},
6228 check_tags_array_ignore, NULL
6229 },
6230 [CALIB_SENSOR_MFNR_BACK_REF_NUM_TAG_ID] =
6231 { "back_ref_num", CALIB_TAG_TYPE_CHAR, {-1, -1},
6232 check_tags_array_ignore, NULL
6233 },
6234 [CALIB_SENSOR_MFNR_AWB_UV_RATIO_TAG_ID] =
6235 { "awb_uv_ratio", CALIB_TAG_TYPE_CELL, {-1, -1},
6236 check_tags_array_info(calib_sensor_awb_uv_ratio_sub_tags), NULL
6237 },
6238 [CALIB_SENSOR_MFNR_AWB_UV_RATIO_NAME_TAG_ID] =
6239 { "name", CALIB_TAG_TYPE_CHAR, {-1, -1},
6240 check_tags_array_ignore, NULL
6241 },
6242 [CALIB_SENSOR_MFNR_AWB_UV_RATIO_RATIO_TAG_ID] =
6243 { "ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6244 check_tags_array_ignore, NULL
6245 },
6246
6247 [CALIB_SENSOR_MFNR_MODE_CELL_TAG_ID] =
6248 { "Mode", CALIB_TAG_TYPE_CELL, {-1, -1},
6249 check_tags_array_info(calib_sensor_mfnr_mode_cell_sub_tags), NULL
6250 },
6251 [CALIB_SENSOR_MFNR_MODE_NAME_TAG_ID] =
6252 { "Name", CALIB_TAG_TYPE_CHAR, {-1, -1},
6253 check_tags_array_ignore, NULL
6254 },
6255 [CALIB_SENSOR_MFNR_DYNAMIC_TAG_ID] =
6256 { "Dynamic", CALIB_TAG_TYPE_STRUCT, {-1, -1},
6257 check_tags_array_info(calib_sensor_MFNR_DynamicEN_sub_tags), NULL
6258 },
6259 [CALIB_SENSOR_MFNR_DYNAMIC_ENABLE_TAG_ID] =
6260 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6261 check_tags_array_ignore, NULL
6262 },
6263 [CALIB_SENSOR_MFNR_DYNAMIC_LOWTH_ISO_TAG_ID] =
6264 { "LowTh_iso", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6265 check_tags_array_ignore, NULL
6266 },
6267 [CALIB_SENSOR_MFNR_DYNAMIC_LOWTH_TIME_TAG_ID] =
6268 { "LowTh_time", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6269 check_tags_array_ignore, NULL
6270 },
6271 [CALIB_SENSOR_MFNR_DYNAMIC_HIGHTH_ISO_TAG_ID] =
6272 { "HighTh_iso", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6273 check_tags_array_ignore, NULL
6274 },
6275 [CALIB_SENSOR_MFNR_DYNAMIC_HIGHTH_TIME_TAG_ID] =
6276 { "HighTh_time", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6277 check_tags_array_ignore, NULL
6278 },
6279 [CALIB_SENSOR_MFNR_SETTING_TAG_ID] =
6280 { "Setting", CALIB_TAG_TYPE_CELL, {-1, -1},
6281 check_tags_array_info(calib_sensor_MFNR_Setting_sub_tags), NULL
6282 },
6283 [CALIB_SENSOR_MFNR_SETTING_SNR_MODE_TAG_ID] =
6284 { "SNR_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
6285 check_tags_array_ignore, NULL
6286 },
6287 [CALIB_SENSOR_MFNR_SETTING_SENSOR_MODE_TAG_ID] =
6288 { "Sensor_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
6289 check_tags_array_ignore, NULL
6290 },
6291 [CALIB_SENSOR_MFNR_ISO_TAG_ID] =
6292 { "MFNR_ISO", CALIB_TAG_TYPE_CELL, {-1, -1},
6293 check_tags_array_info(calib_sensor_MFNR_ISO_sub_tags), NULL
6294 },
6295 [CALIB_SENSOR_MFNR_ISO_ISO_TAG_ID] =
6296 { "iso", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6297 check_tags_array_ignore, NULL
6298 },
6299 [CALIB_SENSOR_MFNR_ISO_WEIGHT_LIMIT_Y_TAG_ID] =
6300 { "weight_limit_y", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6301 check_tags_array_ignore, NULL
6302 },
6303 [CALIB_SENSOR_MFNR_ISO_WEIGHT_LIMIT_UV_TAG_ID] =
6304 { "weight_limit_uv", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6305 check_tags_array_ignore, NULL
6306 },
6307 [CALIB_SENSOR_MFNR_ISO_RATIO_FRQ_TAG_ID] =
6308 { "ratio_frq", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6309 check_tags_array_ignore, NULL
6310 },
6311 [CALIB_SENSOR_MFNR_ISO_LUMA_W_IN_CHROMA_TAG_ID] =
6312 { "luma_w_in_chroma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6313 check_tags_array_ignore, NULL
6314 },
6315 [CALIB_SENSOR_MFNR_ISO_NOISE_CURVE_TAG_ID] =
6316 { "noise_curve", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6317 check_tags_array_ignore, NULL
6318 },
6319 [CALIB_SENSOR_MFNR_ISO_NOISE_CURVE_X00_TAG_ID] =
6320 { "noise_curve_x00", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6321 check_tags_array_ignore, NULL
6322 },
6323 [CALIB_SENSOR_MFNR_ISO_Y_LO_NOISEPROFILE_TAG_ID] =
6324 { "y_lo_noiseprofile", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6325 check_tags_array_ignore, NULL
6326 },
6327 [CALIB_SENSOR_MFNR_ISO_Y_HI_NOISEPROFILE_TAG_ID] =
6328 { "y_hi_noiseprofile", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6329 check_tags_array_ignore, NULL
6330 },
6331 [CALIB_SENSOR_MFNR_ISO_Y_LO_DENOISEWEIGHT_TAG_ID] =
6332 { "y_lo_denoiseweight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6333 check_tags_array_ignore, NULL
6334 },
6335 [CALIB_SENSOR_MFNR_ISO_Y_HI_DENOISEWEIGHT_TAG_ID] =
6336 { "y_hi_denoiseweight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6337 check_tags_array_ignore, NULL
6338 },
6339 [CALIB_SENSOR_MFNR_ISO_Y_LO_BFSCALE_TAG_ID] =
6340 { "y_lo_bfscale", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6341 check_tags_array_ignore, NULL
6342 },
6343 [CALIB_SENSOR_MFNR_ISO_Y_HI_BFSCALE_TAG_ID] =
6344 { "y_hi_bfscale", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6345 check_tags_array_ignore, NULL
6346 },
6347 [CALIB_SENSOR_MFNR_ISO_Y_LUMANRPOINT_TAG_ID] =
6348 { "y_lumanrpoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6349 check_tags_array_ignore, NULL
6350 },
6351 [CALIB_SENSOR_MFNR_ISO_Y_LUMANRCURVE_TAG_ID] =
6352 { "y_lumanrcurve", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6353 check_tags_array_ignore, NULL
6354 },
6355 [CALIB_SENSOR_MFNR_ISO_Y_DENOISESTRENGTH_TAG_ID] =
6356 { "y_denoisestrength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6357 check_tags_array_ignore, NULL
6358 },
6359 [CALIB_SENSOR_MFNR_ISO_Y_LO_LVL0_GFDELTA_TAG_ID] =
6360 { "y_lo_lvl0_gfdelta", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6361 check_tags_array_ignore, NULL
6362 },
6363 [CALIB_SENSOR_MFNR_ISO_Y_HI_LVL0_GFDELTA_TAG_ID] =
6364 { "y_hi_lvl0_gfdelta", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6365 check_tags_array_ignore, NULL
6366 },
6367 [CALIB_SENSOR_MFNR_ISO_Y_LO_LVL1_GFDELTA_TAG_ID] =
6368 { "y_lo_lvl1_gfdelta", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6369 check_tags_array_ignore, NULL
6370 },
6371 [CALIB_SENSOR_MFNR_ISO_Y_HI_LVL1_GFDELTA_TAG_ID] =
6372 { "y_hi_lvl1_gfdelta", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6373 check_tags_array_ignore, NULL
6374 },
6375 [CALIB_SENSOR_MFNR_ISO_Y_LO_LVL2_GFDELTA_TAG_ID] =
6376 { "y_lo_lvl2_gfdelta", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6377 check_tags_array_ignore, NULL
6378 },
6379 [CALIB_SENSOR_MFNR_ISO_Y_HI_LVL2_GFDELTA_TAG_ID] =
6380 { "y_hi_lvl2_gfdelta", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6381 check_tags_array_ignore, NULL
6382 },
6383 [CALIB_SENSOR_MFNR_ISO_Y_LO_LVL3_GFDELTA_TAG_ID] =
6384 { "y_lo_lvl3_gfdelta", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6385 check_tags_array_ignore, NULL
6386 },
6387 [CALIB_SENSOR_MFNR_ISO_Y_HI_LVL3_GFDELTA_TAG_ID] =
6388 { "y_hi_lvl3_gfdelta", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6389 check_tags_array_ignore, NULL
6390 },
6391 [CALIB_SENSOR_MFNR_ISO_UV_LO_NOISEPROFILE_TAG_ID] =
6392 { "uv_lo_noiseprofile", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6393 check_tags_array_ignore, NULL
6394 },
6395 [CALIB_SENSOR_MFNR_ISO_UV_HI_NOISEPROFILE_TAG_ID] =
6396 { "uv_hi_noiseprofile", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6397 check_tags_array_ignore, NULL
6398 },
6399 [CALIB_SENSOR_MFNR_ISO_UV_LO_DENOISEWEIGHT_TAG_ID] =
6400 { "uv_lo_denoiseweight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6401 check_tags_array_ignore, NULL
6402 },
6403
6404 [CALIB_SENSOR_MFNR_ISO_UV_HI_DENOISEWEIGHT_TAG_ID] =
6405 { "uv_hi_denoiseweight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6406 check_tags_array_ignore, NULL
6407 },
6408 [CALIB_SENSOR_MFNR_ISO_UV_LO_BFSCALE_TAG_ID] =
6409 { "uv_lo_bfscale", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6410 check_tags_array_ignore, NULL
6411 },
6412 [CALIB_SENSOR_MFNR_ISO_UV_HI_BFSCALE_TAG_ID] =
6413 { "uv_hi_bfscale", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6414 check_tags_array_ignore, NULL
6415 },
6416 [CALIB_SENSOR_MFNR_ISO_UV_LUMANRPOINT_TAG_ID] =
6417 { "uv_lumanrpoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6418 check_tags_array_ignore, NULL
6419 },
6420 [CALIB_SENSOR_MFNR_ISO_UV_LUMANRCURVE_TAG_ID] =
6421 { "uv_lumanrcurve", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6422 check_tags_array_ignore, NULL
6423 },
6424 [CALIB_SENSOR_MFNR_ISO_UV_DENOISESTRENGTH_TAG_ID] =
6425 { "uv_denoisestrength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6426 check_tags_array_ignore, NULL
6427 },
6428 [CALIB_SENSOR_MFNR_ISO_UV_LO_LVL0_GFDELTA_TAG_ID] =
6429 { "uv_lo_lvl0_gfdelta", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6430 check_tags_array_ignore, NULL
6431 },
6432 [CALIB_SENSOR_MFNR_ISO_UV_HI_LVL0_GFDELTA_TAG_ID] =
6433 { "uv_hi_lvl0_gfdelta", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6434 check_tags_array_ignore, NULL
6435 },
6436 [CALIB_SENSOR_MFNR_ISO_UV_LO_LVL1_GFDELTA_TAG_ID] =
6437 { "uv_lo_lvl1_gfdelta", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6438 check_tags_array_ignore, NULL
6439 },
6440 [CALIB_SENSOR_MFNR_ISO_UV_HI_LVL1_GFDELTA_TAG_ID] =
6441 { "uv_hi_lvl1_gfdelta", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6442 check_tags_array_ignore, NULL
6443 },
6444 [CALIB_SENSOR_MFNR_ISO_UV_LO_LVL2_GFDELTA_TAG_ID] =
6445 { "uv_lo_lvl2_gfdelta", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6446 check_tags_array_ignore, NULL
6447 },
6448 [CALIB_SENSOR_MFNR_ISO_UV_HI_LVL2_GFDELTA_TAG_ID] =
6449 { "uv_hi_lvl2_gfdelta", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6450 check_tags_array_ignore, NULL
6451 },
6452 [CALIB_SENSOR_MFNR_ISO_LVL0_GFSIGMA_TAG_ID] =
6453 { "lvl0_gfsigma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6454 check_tags_array_ignore, NULL
6455 },
6456 [CALIB_SENSOR_MFNR_ISO_LVL1_GFSIGMA_TAG_ID] =
6457 { "lvl1_gfsigma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6458 check_tags_array_ignore, NULL
6459 },
6460 [CALIB_SENSOR_MFNR_ISO_LVL2_GFSIGMA_TAG_ID] =
6461 { "lvl2_gfsigma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6462 check_tags_array_ignore, NULL
6463 },
6464 [CALIB_SENSOR_MFNR_ISO_LVL3_GFSIGMA_TAG_ID] =
6465 { "lvl3_gfsigma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6466 check_tags_array_ignore, NULL
6467 },
6468
6469
6470 //mfnr motion detect
6471 [CALIB_SENSOR_MFNR_MOTION_DETECTION_TAG_ID] =
6472 { "motion_detection", CALIB_TAG_TYPE_STRUCT, {-1, -1},
6473 check_tags_array_info(calib_sensor_MFNR_motion_detection_sub_tags), NULL
6474 },
6475 [CALIB_SENSOR_MFNR_MOTION_DETECTION_ENABLE_TAG_ID] =
6476 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6477 check_tags_array_ignore, NULL
6478 },
6479 [CALIB_SENSOR_MFNR_MOTION_DETECTION_ISO_TAG_ID] =
6480 { "ISO", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6481 check_tags_array_ignore, NULL
6482 },
6483 [CALIB_SENSOR_MFNR_MOTION_DETECTION_SIGMAHSCALE_TAG_ID] =
6484 { "sigmaHScale", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6485 check_tags_array_ignore, NULL
6486 },
6487 [CALIB_SENSOR_MFNR_MOTION_DETECTION_SIGMALSCALE_TAG_ID] =
6488 { "sigmaLScale", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6489 check_tags_array_ignore, NULL
6490 },
6491 [CALIB_SENSOR_MFNR_MOTION_DETECTION_LIGHT_CLP_TAG_ID] =
6492 { "light_clp", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6493 check_tags_array_ignore, NULL
6494 },
6495 [CALIB_SENSOR_MFNR_MOTION_DETECTION_UV_WEIGHT_TAG_ID] =
6496 { "uv_weight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6497 check_tags_array_ignore, NULL
6498 },
6499 [CALIB_SENSOR_MFNR_MOTION_DETECTION_MFNR_SIGMA_SCALE_TAG_ID] =
6500 { "mfnr_sigma_scale", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6501 check_tags_array_ignore, NULL
6502 },
6503 [CALIB_SENSOR_MFNR_MOTION_DETECTION_YUVNR_GAIN_SCALE0_TAG_ID] =
6504 { "yuvnr_gain_scale0", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6505 check_tags_array_ignore, NULL
6506 },
6507 [CALIB_SENSOR_MFNR_MOTION_DETECTION_YUVNR_GAIN_SCALE1_TAG_ID] =
6508 { "yuvnr_gain_scale1", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6509 check_tags_array_ignore, NULL
6510 },
6511 [CALIB_SENSOR_MFNR_MOTION_DETECTION_YUVNR_GAIN_SCALE2_TAG_ID] =
6512 { "yuvnr_gain_scale2", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6513 check_tags_array_ignore, NULL
6514 },
6515 [CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED0_TAG_ID] =
6516 { "reserved0", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6517 check_tags_array_ignore, NULL
6518 },
6519 [CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED1_TAG_ID] =
6520 { "reserved1", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6521 check_tags_array_ignore, NULL
6522 },
6523 [CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED2_TAG_ID] =
6524 { "reserved2", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6525 check_tags_array_ignore, NULL
6526 },
6527 [CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED3_TAG_ID] =
6528 { "reserved3", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6529 check_tags_array_ignore, NULL
6530 },
6531 [CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED4_TAG_ID] =
6532 { "reserved4", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6533 check_tags_array_ignore, NULL
6534 },
6535 [CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED5_TAG_ID] =
6536 { "reserved5", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6537 check_tags_array_ignore, NULL
6538 },
6539 [CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED6_TAG_ID] =
6540 { "reserved6", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6541 check_tags_array_ignore, NULL
6542 },
6543 [CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED7_TAG_ID] =
6544 { "reserved7", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6545 check_tags_array_ignore, NULL
6546 },
6547 [CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED8_TAG_ID] =
6548 { "reserved8", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6549 check_tags_array_ignore, NULL
6550 },
6551 [CALIB_SENSOR_MFNR_MOTION_DETECTION_RESERVED9_TAG_ID] =
6552 { "reserved9", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6553 check_tags_array_ignore, NULL
6554 },
6555 [CALIB_SENSOR_MFNR_MOTION_DETECTION_FRAME_LIMIT_Y_TAG_ID] =
6556 { "frame_limit_y", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6557 check_tags_array_ignore, NULL
6558 },
6559 [CALIB_SENSOR_MFNR_MOTION_DETECTION_FRAME_LIMIT_UV_TAG_ID] =
6560 { "frame_limit_uv", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6561 check_tags_array_ignore, NULL
6562 },
6563
6564 // Sensor SHARP
6565 [CALIB_SENSOR_SHARP_TAG_ID] =
6566 { "SHARP", CALIB_TAG_TYPE_STRUCT, {-1, -1},
6567 check_tags_array_info(calib_sensor_sharp_sub_tags), NULL
6568 },
6569 [CALIB_SENSOR_SHARP_ENABLE_TAG_ID] =
6570 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6571 check_tags_array_ignore, NULL
6572 },
6573 [CALIB_SENSOR_SHARP_VERSION_TAG_ID] =
6574 { "Version", CALIB_TAG_TYPE_CHAR, {-1, -1},
6575 check_tags_array_ignore, NULL
6576 },
6577 [CALIB_SENSOR_SHARP_LUMA_POINT_TAG_ID] =
6578 { "luma_point", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6579 check_tags_array_ignore, NULL
6580 },
6581 [CALIB_SENSOR_SHARP_MODE_CELL_TAG_ID] =
6582 { "Mode", CALIB_TAG_TYPE_CELL, {-1, -1},
6583 check_tags_array_info(calib_sensor_sharp_mode_cell_sub_tags), NULL
6584 },
6585 [CALIB_SENSOR_SHARP_MODE_NAME_TAG_ID] =
6586 { "Name", CALIB_TAG_TYPE_CHAR, {-1, -1},
6587 check_tags_array_ignore, NULL
6588 },
6589 [CALIB_SENSOR_SHARP_SETTING_TAG_ID] =
6590 { "Setting", CALIB_TAG_TYPE_CELL, {-1, -1},
6591 check_tags_array_info(calib_sensor_SHARP_Setting_sub_tags), NULL
6592 },
6593 [CALIB_SENSOR_SHARP_SETTING_SNR_MODE_TAG_ID] =
6594 { "SNR_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
6595 check_tags_array_ignore, NULL
6596 },
6597 [CALIB_SENSOR_SHARP_SETTING_SENSOR_MODE_TAG_ID] =
6598 { "Sensor_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
6599 check_tags_array_ignore, NULL
6600 },
6601 [CALIB_SENSOR_SHARP_SHARP_ISO_TAG_ID] =
6602 { "SHARP_ISO", CALIB_TAG_TYPE_CELL, {-1, -1},
6603 check_tags_array_info(calib_sensor_SHARP_ISO_sub_tags), NULL
6604 },
6605 [CALIB_SENSOR_SHARP_SHARP_ISO_ISO_TAG_ID] =
6606 { "iso", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6607 check_tags_array_ignore, NULL
6608 },
6609 [CALIB_SENSOR_SHARP_SHARP_ISO_HRATIO_TAG_ID] =
6610 { "hratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6611 check_tags_array_ignore, NULL
6612 },
6613 [CALIB_SENSOR_SHARP_SHARP_ISO_LRATIO_TAG_ID] =
6614 { "lratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6615 check_tags_array_ignore, NULL
6616 },
6617 [CALIB_SENSOR_SHARP_SHARP_ISO_MF_SHARP_RATIO_TAG_ID] =
6618 { "mf_sharp_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6619 check_tags_array_ignore, NULL
6620 },
6621 [CALIB_SENSOR_SHARP_SHARP_ISO_HF_SHARP_RATIO_TAG_ID] =
6622 { "hf_sharp_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6623 check_tags_array_ignore, NULL
6624 },
6625 [CALIB_SENSOR_SHARP_SHARP_ISO_LUMA_SIGMA_TAG_ID] =
6626 { "luma_sigma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6627 check_tags_array_ignore, NULL
6628 },
6629 [CALIB_SENSOR_SHARP_SHARP_ISO_PBF_GAIN_TAG_ID] =
6630 { "pbf_gain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6631 check_tags_array_ignore, NULL
6632 },
6633 [CALIB_SENSOR_SHARP_SHARP_ISO_PBF_RATIO_TAG_ID] =
6634 { "pbf_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6635 check_tags_array_ignore, NULL
6636 },
6637 [CALIB_SENSOR_SHARP_SHARP_ISO_PBF_ADD_TAG_ID] =
6638 { "pbf_add", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6639 check_tags_array_ignore, NULL
6640 },
6641 [CALIB_SENSOR_SHARP_SHARP_ISO_MF_CLIP_POS_TAG_ID] =
6642 { "mf_clip_pos", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6643 check_tags_array_ignore, NULL
6644 },
6645 [CALIB_SENSOR_SHARP_SHARP_ISO_MF_CLIP_NEG_TAG_ID] =
6646 { "mf_clip_neg", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6647 check_tags_array_ignore, NULL
6648 },
6649 [CALIB_SENSOR_SHARP_SHARP_ISO_HF_CLIP_TAG_ID] =
6650 { "hf_clip", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6651 check_tags_array_ignore, NULL
6652 },
6653 [CALIB_SENSOR_SHARP_SHARP_ISO_MBF_GAIN_TAG_ID] =
6654 { "mbf_gain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6655 check_tags_array_ignore, NULL
6656 },
6657 [CALIB_SENSOR_SHARP_SHARP_ISO_HBF_GAIN_TAG_ID] =
6658 { "hbf_gain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6659 check_tags_array_ignore, NULL
6660 },
6661 [CALIB_SENSOR_SHARP_SHARP_ISO_HBF_RATIO_TAG_ID] =
6662 { "hbf_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6663 check_tags_array_ignore, NULL
6664 },
6665 [CALIB_SENSOR_SHARP_SHARP_ISO_MBF_ADD_TAG_ID] =
6666 { "mbf_add", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6667 check_tags_array_ignore, NULL
6668 },
6669 [CALIB_SENSOR_SHARP_SHARP_ISO_HBF_ADD_TAG_ID] =
6670 { "hbf_add", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6671 check_tags_array_ignore, NULL
6672 },
6673 [CALIB_SENSOR_SHARP_SHARP_ISO_LOCAL_SHARP_STRENGTH_TAG_ID] =
6674 { "local_sharp_strength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6675 check_tags_array_ignore, NULL
6676 },
6677 [CALIB_SENSOR_SHARP_SHARP_GAUSS_LUMA_COEFF_TAG_ID] =
6678 { "gauss_luma_coeff", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6679 check_tags_array_ignore, NULL
6680 },
6681 [CALIB_SENSOR_SHARP_SHARP_MBF_COEFF_TAG_ID] =
6682 { "mbf_coeff", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6683 check_tags_array_ignore, NULL
6684 },
6685 #if 1
6686 [CALIB_SENSOR_SHARP_SHARP_PBF_COEFF_TAG_ID] =
6687 { "pbf_coeff", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6688 check_tags_array_ignore, NULL
6689 },
6690 [CALIB_SENSOR_SHARP_SHARP_RF_M_COEFF_TAG_ID] =
6691 { "rf_m_coeff", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6692 check_tags_array_ignore, NULL
6693 },
6694
6695 [CALIB_SENSOR_SHARP_SHARP_RF_H_COEFF_TAG_ID] =
6696 { "rf_h_coeff", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6697 check_tags_array_ignore, NULL
6698 },
6699 [CALIB_SENSOR_SHARP_SHARP_HBF_COEFF_TAG_ID] =
6700 { "hbf_coeff", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6701 check_tags_array_ignore, NULL
6702 },
6703 #endif
6704 //add sharp coeff v2
6705 [CALIB_SENSOR_SHARP_SHARP_PBF_COEFF_L_TAG_ID] =
6706 { "pbf_coeff_l", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6707 check_tags_array_ignore, NULL
6708 },
6709 [CALIB_SENSOR_SHARP_SHARP_PBF_COEFF_H_TAG_ID] =
6710 { "pbf_coeff_h", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6711 check_tags_array_ignore, NULL
6712 },
6713 [CALIB_SENSOR_SHARP_SHARP_RF_M_COEFF_L_TAG_ID] =
6714 { "rf_m_coeff_l", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6715 check_tags_array_ignore, NULL
6716 },
6717 [CALIB_SENSOR_SHARP_SHARP_RF_M_COEFF_H_TAG_ID] =
6718 { "rf_m_coeff_h", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6719 check_tags_array_ignore, NULL
6720 },
6721 [CALIB_SENSOR_SHARP_SHARP_RF_H_COEFF_L_TAG_ID] =
6722 { "rf_h_coeff_l", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6723 check_tags_array_ignore, NULL
6724 },
6725 [CALIB_SENSOR_SHARP_SHARP_RF_H_COEFF_H_TAG_ID] =
6726 { "rf_h_coeff_h", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6727 check_tags_array_ignore, NULL
6728 },
6729 [CALIB_SENSOR_SHARP_SHARP_HBF_COEFF_L_TAG_ID] =
6730 { "hbf_coeff_l", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6731 check_tags_array_ignore, NULL
6732 },
6733 [CALIB_SENSOR_SHARP_SHARP_HBF_COEFF_H_TAG_ID] =
6734 { "hbf_coeff_h", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6735 check_tags_array_ignore, NULL
6736 },
6737 [CALIB_SENSOR_SHARP_SHARP_PBF_COEFF_PERCENT_TAG_ID] =
6738 { "pbf_coeff_percent", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6739 check_tags_array_ignore, NULL
6740 },
6741 [CALIB_SENSOR_SHARP_SHARP_RF_M_COEFF_PERCENT_TAG_ID] =
6742 { "rf_m_coeff_Percent", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6743 check_tags_array_ignore, NULL
6744 },
6745 [CALIB_SENSOR_SHARP_SHARP_RF_H_COEFF_PERCENT_TAG_ID] =
6746 { "rf_h_coeff_percent", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6747 check_tags_array_ignore, NULL
6748 },
6749 [CALIB_SENSOR_SHARP_SHARP_HBF_COEFF_PERCENT_TAG_ID] =
6750 { "hbf_coeff_percent", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6751 check_tags_array_ignore, NULL
6752 },
6753
6754 // Sensor EDGEFILTER
6755 [CALIB_SENSOR_EDGEFILTER_TAG_ID] =
6756 { "EDGEFILTER", CALIB_TAG_TYPE_STRUCT, {-1, -1},
6757 check_tags_array_info(calib_sensor_edgefilter_sub_tags), NULL
6758 },
6759 [CALIB_SENSOR_EDGEFILTER_ENABLE_TAG_ID] =
6760 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6761 check_tags_array_ignore, NULL
6762 },
6763 [CALIB_SENSOR_EDGEFILTER_VERSION_TAG_ID] =
6764 { "Version", CALIB_TAG_TYPE_CHAR, {-1, -1},
6765 check_tags_array_ignore, NULL
6766 },
6767 [CALIB_SENSOR_EDGEFILTER_LUMA_POINT_TAG_ID] =
6768 { "luma_point", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6769 check_tags_array_ignore, NULL
6770 },
6771 [CALIB_SENSOR_EDGEFILTER_MODE_CELL_TAG_ID] =
6772 { "Mode", CALIB_TAG_TYPE_CELL, {-1, -1},
6773 check_tags_array_info(
6774 calib_sensor_edgefilter_mode_cell_sub_tags), NULL
6775 },
6776 [CALIB_SENSOR_EDGEFILTER_MODE_NAME_TAG_ID] =
6777 { "Name", CALIB_TAG_TYPE_CHAR, {-1, -1},
6778 check_tags_array_ignore, NULL
6779 },
6780 [CALIB_SENSOR_EDGEFILTER_SETTING_TAG_ID] =
6781 { "Setting", CALIB_TAG_TYPE_CELL, {-1, -1},
6782 check_tags_array_info(
6783 calib_sensor_EDGEFILTER_Setting_sub_tags), NULL
6784 },
6785 [CALIB_SENSOR_EDGEFILTER_SETTING_SNR_MODE_TAG_ID] =
6786 { "SNR_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
6787 check_tags_array_ignore, NULL
6788 },
6789 [CALIB_SENSOR_EDGEFILTER_SETTING_SENSOR_MODE_TAG_ID] =
6790 { "Sensor_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
6791 check_tags_array_ignore, NULL
6792 },
6793 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_TAG_ID] =
6794 { "EDGEFILTER_ISO", CALIB_TAG_TYPE_CELL, {-1, -1},
6795 check_tags_array_info(
6796 calib_sensor_EDGEFILTER_ISO_sub_tags), NULL
6797 },
6798 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_ISO_TAG_ID] =
6799 { "iso", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6800 check_tags_array_ignore, NULL
6801 },
6802 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_EDGE_THED_TAG_ID] =
6803 { "edge_thed", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6804 check_tags_array_ignore, NULL
6805 },
6806 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_SRC_WGT_TAG_ID] =
6807 { "src_wgt", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6808 check_tags_array_ignore, NULL
6809 },
6810 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_ALPHA_ADP_EN_TAG_ID] =
6811 { "alpha_adp_en", CALIB_TAG_TYPE_CHAR, {-1, -1},
6812 check_tags_array_ignore, NULL
6813 },
6814 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_LOCAL_ALPHA_TAG_ID] =
6815 { "local_alpha", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6816 check_tags_array_ignore, NULL
6817 },
6818 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_GLOBAL_ALPHA_TAG_ID] =
6819 { "global_alpha", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6820 check_tags_array_ignore, NULL
6821 },
6822 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_NOISE_CLIP_TAG_ID] =
6823 { "noise_clip", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6824 check_tags_array_ignore, NULL
6825 },
6826 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_CLIP_POS_TAG_ID] =
6827 { "dog_clip_pos", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6828 check_tags_array_ignore, NULL
6829 },
6830 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_CLIP_NEG_TAG_ID] =
6831 { "dog_clip_neg", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6832 check_tags_array_ignore, NULL
6833 },
6834 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_ALPHA_TAG_ID] =
6835 { "dog_alpha", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6836 check_tags_array_ignore, NULL
6837 },
6838 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DIRECT_FILTER_COEFF_TAG_ID] =
6839 { "direct_filter_coeff", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6840 check_tags_array_ignore, NULL
6841 },
6842 #if 1
6843 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_KERNEL_ROW0_TAG_ID] =
6844 { "dog_kernel_row0", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6845 check_tags_array_ignore, NULL
6846 },
6847 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_KERNEL_ROW1_TAG_ID] =
6848 { "dog_kernel_row1", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6849 check_tags_array_ignore, NULL
6850 },
6851 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_KERNEL_ROW2_TAG_ID] =
6852 { "dog_kernel_row2", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6853 check_tags_array_ignore, NULL
6854 },
6855 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_KERNEL_ROW3_TAG_ID] =
6856 { "dog_kernel_row3", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6857 check_tags_array_ignore, NULL
6858 },
6859 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_KERNEL_ROW4_TAG_ID] =
6860 { "dog_kernel_row4", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6861 check_tags_array_ignore, NULL
6862 },
6863 #endif
6864 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_KERNEL_L_TAG_ID] =
6865 { "dog_kernel_l", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6866 check_tags_array_ignore, NULL
6867 },
6868 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_KERNEL_H_TAG_ID] =
6869 { "dog_kernel_h", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6870 check_tags_array_ignore, NULL
6871 },
6872 [CALIB_SENSOR_EDGEFILTER_EDGEFILTER_ISO_DOG_KERNEL_PERCENT_TAG_ID] =
6873 { "dog_kernel_percent", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6874 check_tags_array_ignore, NULL
6875 },
6876
6877 // Sensor DEHAZE
6878 [CALIB_SENSOR_DEHAZE_TAG_ID] =
6879 { "DEHAZE", CALIB_TAG_TYPE_STRUCT, {-1, -1},
6880 check_tags_array_info(calib_sensor_dehaze_sub_tags), NULL
6881 },
6882 [CALIB_SENSOR_DEHAZE_CALIBPARA_V20_TAG_ID] =
6883 { "CalibParaV20", CALIB_TAG_TYPE_CELL, {-1, -1},
6884 check_tags_array_info(calib_sensor_dehaze_CalibParaV20_sub_tags), NULL
6885 },
6886 [CALIB_SENSOR_DEHAZE_CALIBPARA_V21_TAG_ID] =
6887 { "CalibParaV21", CALIB_TAG_TYPE_CELL, {-1, -1},
6888 check_tags_array_info(calib_sensor_dehaze_CalibParaV21_sub_tags), NULL
6889 },
6890 [CALIB_SENSOR_DEHAZE_TUNINGPARA_V20_TAG_ID] =
6891 { "TuningParaV20", CALIB_TAG_TYPE_CELL, {-1, -1},
6892 check_tags_array_info(calib_sensor_dehaze_TuningParaV20_sub_tags), NULL
6893 },
6894 [CALIB_SENSOR_DEHAZE_TUNINGPARA_V21_TAG_ID] =
6895 { "TuningParaV21", CALIB_TAG_TYPE_CELL, {-1, -1},
6896 check_tags_array_info(calib_sensor_dehaze_TuningParaV21_sub_tags), NULL
6897 },
6898 [CALIB_SENSOR_DEHAZE_SCENE_TAG_ID] =
6899 { "scene", CALIB_TAG_TYPE_CHAR, {-1, -1},
6900 check_tags_array_ignore, NULL
6901 },
6902 [CALIB_SENSOR_DEHAZE_EN_TAG_ID] =
6903 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6904 check_tags_array_ignore, NULL
6905 },
6906 [CALIB_SENSOR_DEHAZE_CFG_ALPHA_TAG_ID] =
6907 { "cfg_alpha", CALIB_TAG_TYPE_DOUBLE, {1, 1},
6908 check_tags_array_ignore, NULL
6909 },
6910 [CALIB_SENSOR_DEHAZE_SETTING_TAG_ID] =
6911 { "Dehaze_Setting", CALIB_TAG_TYPE_STRUCT, {-1, -1},
6912 check_tags_array_info(calib_sensor_Dehaze_Setting_sub_tags), NULL
6913 },
6914 [CALIB_SENSOR_DEHAZE_SETTING_EN_TAG_ID] =
6915 { "Dehaze_en", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6916 check_tags_array_ignore, NULL
6917 },
6918 [CALIB_SENSOR_DEHAZE_SETTING_ISO_TAG_ID] =
6919 { "ISO", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6920 check_tags_array_ignore, NULL
6921 },
6922 [CALIB_SENSOR_DEHAZE_SETTING_DC_MIN_TH_TAG_ID] =
6923 { "dc_min_th", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6924 check_tags_array_ignore, NULL
6925 },
6926 [CALIB_SENSOR_DEHAZE_SETTING_DC_MAX_TH_TAG_ID] =
6927 { "dc_max_th", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6928 check_tags_array_ignore, NULL
6929 },
6930 [CALIB_SENSOR_DEHAZE_SETTING_YHIST_TH_TAG_ID] =
6931 { "yhist_th", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6932 check_tags_array_ignore, NULL
6933 },
6934 [CALIB_SENSOR_DEHAZE_SETTING_YBLK_TH_TAG_ID] =
6935 { "yblk_th", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6936 check_tags_array_ignore, NULL
6937 },
6938 [CALIB_SENSOR_DEHAZE_SETTING_DARK_TH_TAG_ID] =
6939 { "dark_th", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6940 check_tags_array_ignore, NULL
6941 },
6942 [CALIB_SENSOR_DEHAZE_SETTING_BRIGHT_MIN_TAG_ID] =
6943 { "bright_min", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6944 check_tags_array_ignore, NULL
6945 },
6946 [CALIB_SENSOR_DEHAZE_SETTING_BRIGHT_MAX_TAG_ID] =
6947 { "bright_max", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6948 check_tags_array_ignore, NULL
6949 },
6950 [CALIB_SENSOR_DEHAZE_SETTING_WT_MAX_TAG_ID] =
6951 { "wt_max", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6952 check_tags_array_ignore, NULL
6953 },
6954 [CALIB_SENSOR_DEHAZE_SETTING_AIR_MIN_TAG_ID] =
6955 { "air_min", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6956 check_tags_array_ignore, NULL
6957 },
6958 [CALIB_SENSOR_DEHAZE_SETTING_AIR_MAX_TAG_ID] =
6959 { "air_max", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6960 check_tags_array_ignore, NULL
6961 },
6962 [CALIB_SENSOR_DEHAZE_SETTING_TMAX_BASE_TAG_ID] =
6963 { "tmax_base", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6964 check_tags_array_ignore, NULL
6965 },
6966 [CALIB_SENSOR_DEHAZE_SETTING_TMAX_OFF_TAG_ID] =
6967 { "tmax_off", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6968 check_tags_array_ignore, NULL
6969 },
6970 [CALIB_SENSOR_DEHAZE_SETTING_TMAX_MAX_TAG_ID] =
6971 { "tmax_max", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6972 check_tags_array_ignore, NULL
6973 },
6974 [CALIB_SENSOR_DEHAZE_SETTING_CFG_WT_TAG_ID] =
6975 { "cfg_wt", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6976 check_tags_array_ignore, NULL
6977 },
6978 [CALIB_SENSOR_DEHAZE_SETTING_CFG_AIR_TAG_ID] =
6979 { "cfg_air", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6980 check_tags_array_ignore, NULL
6981 },
6982 [CALIB_SENSOR_DEHAZE_SETTING_CFG_TMAX_TAG_ID] =
6983 { "cfg_tmax", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6984 check_tags_array_ignore, NULL
6985 },
6986 [CALIB_SENSOR_DEHAZE_SETTING_DC_THED_TAG_ID] =
6987 { "dc_thed", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6988 check_tags_array_ignore, NULL
6989 },
6990 [CALIB_SENSOR_DEHAZE_SETTING_DC_WEITCUR_TAG_ID] =
6991 { "dc_weitcur", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6992 check_tags_array_ignore, NULL
6993 },
6994 [CALIB_SENSOR_DEHAZE_SETTING_AIR_THED_TAG_ID] =
6995 { "air_thed", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
6996 check_tags_array_ignore, NULL
6997 },
6998 [CALIB_SENSOR_DEHAZE_SETTING_AIR_WEITCUR_TAG_ID] =
6999 { "air_weitcur", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7000 check_tags_array_ignore, NULL
7001 },
7002 [CALIB_SENSOR_IIR_SETTING_STAB_FNUM_TAG_ID] =
7003 { "stab_fnum", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7004 check_tags_array_ignore, NULL
7005 },
7006 [CALIB_SENSOR_IIR_SETTING_SIGMA_TAG_ID] =
7007 { "sigma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7008 check_tags_array_ignore, NULL
7009 },
7010 [CALIB_SENSOR_IIR_SETTING_WT_SIGMA_TAG_ID] =
7011 { "wt_sigma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7012 check_tags_array_ignore, NULL
7013 },
7014 [CALIB_SENSOR_IIR_SETTING_AIR_SIGMA_TAG_ID] =
7015 { "air_sigma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7016 check_tags_array_ignore, NULL
7017 },
7018 [CALIB_SENSOR_IIR_SETTING_TMAX_SIGMA_TAG_ID] =
7019 { "tmax_sigma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7020 check_tags_array_ignore, NULL
7021 },
7022 [CALIB_SENSOR_ENHANCE_SETTING_TAG_ID] =
7023 { "Enhance_Setting", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7024 check_tags_array_info(calib_sensor_Enhance_Setting_sub_tags), NULL
7025 },
7026 [CALIB_SENSOR_ENHANCE_SETTING_EN_TAG_ID] =
7027 { "Enhance_en", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7028 check_tags_array_ignore, NULL
7029 },
7030 [CALIB_SENSOR_ENHANCE_SETTING_ISO_TAG_ID] =
7031 { "ISO", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7032 check_tags_array_ignore, NULL
7033 },
7034 [CALIB_SENSOR_ENHANCE_SETTING_ENHANCE_VALUE_TAG_ID] =
7035 { "enhance_value", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7036 check_tags_array_ignore, NULL
7037 },
7038 [CALIB_SENSOR_HIST_SETTING_TAG_ID] =
7039 { "Hist_Setting", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7040 check_tags_array_info(calib_sensor_Hist_Setting_sub_tags), NULL
7041 },
7042 [CALIB_SENSOR_HIST_SETTING_EN_TAG_ID] =
7043 { "Hist_en", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7044 check_tags_array_ignore, NULL
7045 },
7046 [CALIB_SENSOR_HIST_SETTING_ISO_TAG_ID] =
7047 { "ISO", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7048 check_tags_array_ignore, NULL
7049 },
7050 [CALIB_SENSOR_HIST_SETTING_HIST_CHANNEL_TAG_ID] =
7051 { "hist_channel", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7052 check_tags_array_ignore, NULL
7053 },
7054 [CALIB_SENSOR_HIST_SETTING_HIST_PARA_EN_TAG_ID] =
7055 { "hist_para_en", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7056 check_tags_array_ignore, NULL
7057 },
7058 [CALIB_SENSOR_HIST_SETTING_HIST_GRATIO_TAG_ID] =
7059 { "hist_gratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7060 check_tags_array_ignore, NULL
7061 },
7062 [CALIB_SENSOR_HIST_SETTING_HIST_TH_OFF_TAG_ID] =
7063 { "hist_th_off", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7064 check_tags_array_ignore, NULL
7065 },
7066 [CALIB_SENSOR_HIST_SETTING_HIST_K_TAG_ID] =
7067 { "hist_k", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7068 check_tags_array_ignore, NULL
7069 },
7070 [CALIB_SENSOR_HIST_SETTING_HIST_MIN_TAG_ID] =
7071 { "hist_min", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7072 check_tags_array_ignore, NULL
7073 },
7074 [CALIB_SENSOR_HIST_SETTING_HIST_SCALE_TAG_ID] =
7075 { "hist_scale", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7076 check_tags_array_ignore, NULL
7077 },
7078 [CALIB_SENSOR_HIST_SETTING_CFG_GRATIO_TAG_ID] =
7079 { "cfg_gratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7080 check_tags_array_ignore, NULL
7081 },
7082
7083 [CALIB_SENSOR_DEHAZE_V21_SETTING_TAG_ID] =
7084 { "Dehaze_V21_Setting", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7085 check_tags_array_info(calib_sensor_Dehaze_V21_Setting_sub_tags), NULL
7086 },
7087 [CALIB_SENSOR_DEHAZE_SETTING_AIR_LC_EN_TAG_ID] =
7088 { "air_lc_en", CALIB_TAG_TYPE_DOUBLE, {1, 9},
7089 check_tags_array_ignore, NULL
7090 },
7091 [CALIB_SENSOR_IIR_SETTING_PRE_WET_TAG_ID] =
7092 { "pre_wet", CALIB_TAG_TYPE_DOUBLE, {1, 1},
7093 check_tags_array_ignore, NULL
7094 },
7095 [CALIB_SENSOR_DEHAZE_SETTING_BF_WEIGHT_TAG_ID] =
7096 { "bf_weight", CALIB_TAG_TYPE_DOUBLE, {1, 9},
7097 check_tags_array_ignore, NULL
7098 },
7099 [CALIB_SENSOR_DEHAZE_SETTING_RANGE_SIGMA_TAG_ID] =
7100 { "range_sigma", CALIB_TAG_TYPE_DOUBLE, {1, 9},
7101 check_tags_array_ignore, NULL
7102 },
7103 [CALIB_SENSOR_DEHAZE_SETTING_SPACE_SIGMA_PRE_TAG_ID] =
7104 { "space_sigma_pre", CALIB_TAG_TYPE_DOUBLE, {1, 9},
7105 check_tags_array_ignore, NULL
7106 },
7107 [CALIB_SENSOR_DEHAZE_SETTING_SPACE_SIGMA_CUR_TAG_ID] =
7108 { "space_sigma_cur", CALIB_TAG_TYPE_DOUBLE, {1, 9},
7109 check_tags_array_ignore, NULL
7110 },
7111 [CALIB_SENSOR_ENHANCE_V21_SETTING_TAG_ID] =
7112 { "Enhance_V21_Setting", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7113 check_tags_array_info(calib_sensor_Enhance_V21_Setting_sub_tags), NULL
7114 },
7115 [CALIB_SENSOR_ENHANCE_SETTING_ENHANCE_CHROMA_TAG_ID] =
7116 { "enhance_chroma", CALIB_TAG_TYPE_DOUBLE, {1, 9},
7117 check_tags_array_ignore, NULL
7118 },
7119 [CALIB_SENSOR_ENHANCE_SETTING_ENHANCE_CURVE_TAG_ID] =
7120 { "enh_curve", CALIB_TAG_TYPE_DOUBLE, {1, 17},
7121 check_tags_array_ignore, NULL
7122 },
7123 [CALIB_SENSOR_HIST_V21_SETTING_TAG_ID] =
7124 { "Hist_V21_Setting", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7125 check_tags_array_info(calib_sensor_Hist_V21_Setting_sub_tags), NULL
7126 },
7127
7128 // Sensor SENSORINFO
7129 [CALIB_SENSOR_SENSORINFO_TAG_ID] =
7130 { "SENSORINFO", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7131 check_tags_array_info(calib_sensor_sensorinfo_sub_tags), NULL
7132 },
7133 [CALIB_SENSOR_SENSORINFO_GAINRANGE_TAG_ID] =
7134 { "GainRange", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7135 check_tags_array_info(calib_sensor_sensorinfo_gainrange_sub_tags), NULL
7136 },
7137 [CALIB_SENSOR_SENSORINFO_GAINRANGE_ISLINEAR_TAG_ID] =
7138 { "IsLinear", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7139 check_tags_array_ignore, NULL
7140 },
7141 [CALIB_SENSOR_SENSORINFO_GAINRANGE_LINEAR_TAG_ID] =
7142 { "Linear", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7143 check_tags_array_ignore, NULL
7144 },
7145 [CALIB_SENSOR_SENSORINFO_GAINRANGE_NONLINEAR_TAG_ID] =
7146 { "NonLinear", CALIB_TAG_TYPE_CHAR, {-1, -1},
7147 check_tags_array_ignore, NULL
7148 },
7149 [CALIB_SENSOR_SENSORINFO_GAINRANGE_NONLINEAR_DB_TAG_ID] =
7150 { "DB_MODE", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
7151 check_tags_array_ignore, NULL
7152 },
7153 [CALIB_SENSOR_SENSORINFO_TIMEFACTOR_TAG_ID] =
7154 { "TimeFactor", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7155 check_tags_array_ignore, NULL
7156 },
7157 [CALIB_SENSOR_SENSORINFO_CISLINTIMEREG_MAXFAC_TAG_ID] =
7158 { "CISLinTimeRegMaxFac", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7159 check_tags_array_ignore, NULL
7160 },
7161 [CALIB_SENSOR_SENSORINFO_CISHDRTIMEREG_SUMFAC_TAG_ID] =
7162 { "CISHdrTimeRegSumFac", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7163 check_tags_array_ignore, NULL
7164 },
7165 [CALIB_SENSOR_SENSORINFO_CISTIMEREG_ODEVITY_TAG_ID] =
7166 { "CISTimeRegOdevity", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7167 check_tags_array_ignore, NULL
7168 },
7169 [CALIB_SENSOR_SENSORINFO_CISHDRTIMEREG_ODEVITY_TAG_ID] =
7170 { "CISHdrTimeRegOdevity", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7171 check_tags_array_ignore, NULL
7172 },
7173 [CALIB_SENSOR_SENSORINFO_CISTIMEREG_MIN_TAG_ID] =
7174 { "CISTimeRegMin", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7175 check_tags_array_ignore, NULL
7176 },
7177 [CALIB_SENSOR_SENSORINFO_CISHDRTIMEREG_MIN_TAG_ID] =
7178 { "CISHdrTimeRegMin", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7179 check_tags_array_ignore, NULL
7180 },
7181 [CALIB_SENSOR_SENSORINFO_CISHDRTIMEREG_MAX_TAG_ID] =
7182 { "CISHdrTimeRegMax", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7183 check_tags_array_ignore, NULL
7184 },
7185 [CALIB_SENSOR_SENSORINFO_CISTIMEREG_UNEQUALEN_TAG_ID] =
7186 { "CISTimeRegUnEqualEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7187 check_tags_array_ignore, NULL
7188 },
7189 [CALIB_SENSOR_SENSORINFO_CISMINFPS_TAG_ID] =
7190 { "CISMinFps", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7191 check_tags_array_ignore, NULL
7192 },
7193 [CALIB_SENSOR_SENSORINFO_CISAGAIN_RANGE_TAG_ID] =
7194 { "CISAgainRange", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7195 check_tags_array_ignore, NULL
7196 },
7197 [CALIB_SENSOR_SENSORINFO_CISEXTRAAGAIN_RANGE_TAG_ID] =
7198 { "CISExtraAgainRange", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7199 check_tags_array_ignore, NULL
7200 },
7201 [CALIB_SENSOR_SENSORINFO_CISDGAIN_RANGE_TAG_ID] =
7202 { "CISDgainRange", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7203 check_tags_array_ignore, NULL
7204 },
7205 [CALIB_SENSOR_SENSORINFO_CISISPDGAIN_RANGE_TAG_ID] =
7206 { "CISIspDgainRange", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7207 check_tags_array_ignore, NULL
7208 },
7209 [CALIB_SENSOR_SENSORINFO_CISHDRGAININDSETEN_TAG_ID] =
7210 { "CISHdrGainIndSetEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7211 check_tags_array_ignore, NULL
7212 },
7213 [CALIB_SENSOR_SENSORSETTING_FLIP_ID] =
7214 { "SensorFlip", CALIB_TAG_TYPE_CHAR, {1, 1},
7215 check_tags_array_ignore, NULL
7216 },
7217
7218 //Module Info
7219 [CALIB_SENSOR_MODULEINFO_TAG_ID] =
7220 { "MODULEINFO", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7221 check_tags_array_info(calib_sensor_moduleinfo_sub_tags), NULL
7222 },
7223 [CALIB_SENSOR_MODULEINFO_FNUMBER_TAG_ID] =
7224 { "FNumber", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7225 check_tags_array_ignore, NULL
7226 },
7227 [CALIB_SENSOR_MODULEINFO_EFL_TAG_ID] =
7228 { "EFL", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7229 check_tags_array_ignore, NULL
7230 },
7231 [CALIB_SENSOR_MODULEINFO_LENS_TRANSMITTANCE_TAG_ID] =
7232 { "LensTavg", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7233 check_tags_array_ignore, NULL
7234 },
7235 [CALIB_SENSOR_MODULEINFO_IRCUT_TRANSMITTANCE_TAG_ID] =
7236 { "IRCutTavg", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7237 check_tags_array_ignore, NULL
7238 },
7239
7240
7241 // Sensor CPSL
7242 [CALIB_SENSOR_CPSL_TAG_ID] =
7243 { "CPSL", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7244 check_tags_array_info(calib_sensor_cpsl_sub_tags), NULL
7245 },
7246 [CALIB_SENSOR_CPSL_ENABLE_TAG_ID] =
7247 { "enable", CALIB_TAG_TYPE_CHAR, {-1, -1},
7248 check_tags_array_ignore, NULL
7249 },
7250 [CALIB_SENSOR_CPSL_MODE_TAG_ID] =
7251 { "mode", CALIB_TAG_TYPE_INT, {-1, -1},
7252 check_tags_array_ignore, NULL
7253 },
7254 [CALIB_SENSOR_CPSL_FORCE_GRAY_TAG_ID] =
7255 { "force_gray", CALIB_TAG_TYPE_CHAR, {-1, -1},
7256 check_tags_array_ignore, NULL
7257 },
7258 [CALIB_SENSOR_CPSL_LGHT_SRC_TAG_ID] =
7259 { "light_src", CALIB_TAG_TYPE_INT, {-1, -1},
7260 check_tags_array_ignore, NULL
7261 },
7262 [CALIB_SENSOR_CPSL_AUTO_ADJUST_SENS_TAG_ID] =
7263 { "auto_adjust_sens", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7264 check_tags_array_ignore, NULL
7265 },
7266 [CALIB_SENSOR_CPSL_AUTO_ON2OFF_TH_TAG_ID] =
7267 { "auto_on2off_th", CALIB_TAG_TYPE_INT, {-1, -1},
7268 check_tags_array_ignore, NULL
7269 },
7270 [CALIB_SENSOR_CPSL_AUTO_OFF2ON_TH_TAG_ID] =
7271 { "auto_off2on_th", CALIB_TAG_TYPE_INT, {-1, -1},
7272 check_tags_array_ignore, NULL
7273 },
7274 [CALIB_SENSOR_CPSL_AUTO_SW_INTERVAL_TAG_ID] =
7275 { "auto_sw_interval", CALIB_TAG_TYPE_INT, {-1, -1},
7276 check_tags_array_ignore, NULL
7277 },
7278 [CALIB_SENSOR_CPSL_MANUAL_ON_TAG_ID] =
7279 { "manual_on", CALIB_TAG_TYPE_CHAR, {-1, -1},
7280 check_tags_array_ignore, NULL
7281 },
7282 [CALIB_SENSOR_CPSL_MANUAL_STRENGTH_TAG_ID] =
7283 { "manual_strength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7284 check_tags_array_ignore, NULL
7285 },
7286
7287 // Sensor LUT3D
7288 [CALIB_SENSOR_LUT3D_TAG_ID] =
7289 { "LUT3D", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7290 check_tags_array_info(calib_sensor_lut3d_sub_tags), NULL
7291 },
7292 [CALIB_SENSOR_LUT3D_ENABLE_TAG_ID] =
7293 { "enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7294 check_tags_array_ignore, NULL
7295 },
7296 [CALIB_SENSOR_LUT3D_R_LUT_TAG_ID] =
7297 { "look_up_table_r", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7298 check_tags_array_ignore, NULL
7299 },
7300 [CALIB_SENSOR_LUT3D_G_LUT_TAG_ID] =
7301 { "look_up_table_g", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7302 check_tags_array_ignore, NULL
7303 },
7304 [CALIB_SENSOR_LUT3D_B_LUT_TAG_ID] =
7305 { "look_up_table_b", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7306 check_tags_array_ignore, NULL
7307 },
7308
7309 // Sensor LDCH
7310 [CALIB_SENSOR_LDCH_TAG_ID] =
7311 { "LDCH", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7312 check_tags_array_info(calib_sensor_ldch_sub_tags), NULL
7313 },
7314 [CALIB_SENSOR_LDCH_ENABLE_TAG_ID] =
7315 { "enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7316 check_tags_array_ignore, NULL
7317 },
7318 [CALIB_SENSOR_LDCH_MESH_FILE_TAG_ID] =
7319 { "mesh_file", CALIB_TAG_TYPE_CHAR, {-1, -1},
7320 check_tags_array_ignore, NULL
7321 },
7322 [CALIB_SENSOR_LDCH_CORRECT_LEVEL_TAG_ID] =
7323 { "correct_level", CALIB_TAG_TYPE_INT, {-1, -1},
7324 check_tags_array_ignore, NULL
7325 },
7326 [CALIB_SENSOR_LDCH_CORRECT_LEVEL_MAX_TAG_ID] =
7327 { "correct_level_max", CALIB_TAG_TYPE_INT, {-1, -1},
7328 check_tags_array_ignore, NULL
7329 },
7330 [CALIB_SENSOR_LDCH_LIGHT_CENTER_TAG_ID] =
7331 { "light_center", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7332 check_tags_array_ignore, NULL
7333 },
7334 [CALIB_SENSOR_LDCH_DISTORTION_COEFF_ID] =
7335 { "distortion_coeff", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7336 check_tags_array_ignore, NULL
7337 },
7338
7339 // Sensor FEC
7340 [CALIB_SENSOR_FEC_TAG_ID] =
7341 { "FEC", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7342 check_tags_array_info(calib_sensor_fec_sub_tags), NULL
7343 },
7344 [CALIB_SENSOR_FEC_ENABLE_TAG_ID] =
7345 { "enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7346 check_tags_array_ignore, NULL
7347 },
7348 [CALIB_SENSOR_FEC_MESH_FILE_TAG_ID] =
7349 { "mesh_file", CALIB_TAG_TYPE_CHAR, {-1, -1},
7350 check_tags_array_ignore, NULL
7351 },
7352 [CALIB_SENSOR_FEC_CORRECT_LEVEL_TAG_ID] =
7353 { "correct_level", CALIB_TAG_TYPE_INT, {-1, -1},
7354 check_tags_array_ignore, NULL
7355 },
7356 [CALIB_SENSOR_FEC_LIGHT_CENTER_TAG_ID] =
7357 { "light_center", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7358 check_tags_array_ignore, NULL
7359 },
7360 [CALIB_SENSOR_FEC_DISTORTION_COEFF_ID] =
7361 { "distortion_coeff", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7362 check_tags_array_ignore, NULL
7363 },
7364
7365 // Sensor EIS
7366 // TODO(Cody): add calib data
7367 [CALIB_SENSOR_EIS_TAG_ID] =
7368 { "EIS", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7369 check_tags_array_info(calib_sensor_eis_sub_tags), NULL
7370 },
7371 [CALIB_SENSOR_EIS_ENABLE_TAG_ID] =
7372 { "enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7373 check_tags_array_ignore, NULL
7374 },
7375
7376 // Sensor LUMADETECT
7377 [CALIB_SENSOR_LUMA_DETECT_TAG_ID] =
7378 { "LUMADETECT", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7379 check_tags_array_info(calib_sensor_lumadetect_sub_tags), NULL
7380 },
7381 [CALIB_SENSOR_LUMA_DETECT_ENABLE_TAG_ID] =
7382 { "enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7383 check_tags_array_ignore, NULL
7384 },
7385 [CALIB_SENSOR_LUMA_DETECT_FIXED_TIMES_TAG_ID] =
7386 { "fixed_times", CALIB_TAG_TYPE_INT, {-1, -1},
7387 check_tags_array_ignore, NULL
7388 },
7389 [CALIB_SENSOR_LUMA_DETECT_THRESHOLD_TAG_ID] =
7390 { "threshold", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7391 check_tags_array_ignore, NULL
7392 },
7393 [CALIB_SENSOR_LUMA_DETECT_THRESHOLD_LEVEL2_TAG_ID] =
7394 { "threshold_level2", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7395 check_tags_array_ignore, NULL
7396 },
7397
7398 // Sensor ORB
7399 [CALIB_SENSOR_ORB_TAG_ID] =
7400 { "ORB", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7401 check_tags_array_info(calib_sensor_orb_sub_tags), NULL
7402 },
7403 [CALIB_SENSOR_ORB_ENABLE_TAG_ID] =
7404 { "enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7405 check_tags_array_ignore, NULL
7406 },
7407
7408 // Sensor COLOR_AS_GREY
7409 [CALIB_SENSOR_COLOR_AS_GREY_TAG_ID] =
7410 { "COLOR_AS_GREY", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7411 check_tags_array_info(calib_sensor_color_as_grey_sub_tags), NULL
7412 },
7413 [CALIB_SENSOR_COLOR_AS_GREY_ENABLE_TAG_ID] =
7414 { "enable", CALIB_TAG_TYPE_INT, {-1, -1},
7415 check_tags_array_ignore, NULL
7416 },
7417
7418 //bayernrV2
7419 [CALIB_SENSOR_BAYERNR_V2_TAG_ID] =
7420 { "BAYERNR_V2", CALIB_TAG_TYPE_CELL, {-1, -1},
7421 check_tags_array_info(calib_sensor_bayernr_v2_sub_tags), NULL
7422 },
7423 [CALIB_SENSOR_BAYERNR_V2_MODE_NAME_TAG_ID] =
7424 { "ModeName", CALIB_TAG_TYPE_CHAR, {-1, -1},
7425 check_tags_array_ignore, NULL
7426 },
7427 [CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_TAG_ID] =
7428 { "Bayernr2D", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7429 check_tags_array_info(calib_sensor_bayernr_v2_bayernr2D_sub_tags), NULL
7430 },
7431 [CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_ENABLE_TAG_ID] =
7432 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7433 check_tags_array_ignore, NULL
7434 },
7435 [CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_SETTING_TAG_ID] =
7436 { "Setting", CALIB_TAG_TYPE_CELL, {-1, -1},
7437 check_tags_array_info(calib_sensor_bayernr_v2_bayernr2D_setting_sub_tags), NULL
7438 },
7439 [CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_SNR_MODE_TAG_ID] =
7440 { "SNR_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
7441 check_tags_array_ignore, NULL
7442 },
7443 [CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_SENSOR_MODE_TAG_ID] =
7444 { "Sensor_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
7445 check_tags_array_ignore, NULL
7446 },
7447 [CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_ISO_TAG_ID] =
7448 { "ISO", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7449 check_tags_array_ignore, NULL
7450 },
7451 [CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_FILTER_STRENGTH_TAG_ID] =
7452 { "filter_strength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7453 check_tags_array_ignore, NULL
7454 },
7455 [CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_GAUSS_GUIDE_TAG_ID] =
7456 { "gauss_guide", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7457 check_tags_array_ignore, NULL
7458 },
7459 [CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_LUMA_POINT_TAG_ID] =
7460 { "lumapoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7461 check_tags_array_ignore, NULL
7462 },
7463 [CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_SIGMA_TAG_ID] =
7464 { "sigma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7465 check_tags_array_ignore, NULL
7466 },
7467 [CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_EDGESOFTS_TAG_ID] =
7468 { "edgesofts", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7469 check_tags_array_ignore, NULL
7470 },
7471 [CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_RATIO_TAG_ID] =
7472 { "ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7473 check_tags_array_ignore, NULL
7474 },
7475 [CALIB_SENSOR_BAYERNR_V2_BAYERNR2D_WEIGHT_TAG_ID] =
7476 { "weight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7477 check_tags_array_ignore, NULL
7478 },
7479
7480 //bayernrv2_3d
7481 #if 1
7482 [CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_TAG_ID] =
7483 { "Bayernr3D", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7484 check_tags_array_info(calib_sensor_bayernr_v2_bayernr3D_sub_tags), NULL
7485 },
7486 [CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_ENABLE_TAG_ID] =
7487 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7488 check_tags_array_ignore, NULL
7489 },
7490 [CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_SETTING_TAG_ID] =
7491 { "Setting", CALIB_TAG_TYPE_CELL, {-1, -1},
7492 check_tags_array_info(calib_sensor_bayernr_v2_bayernr3D_setting_sub_tags), NULL
7493 },
7494 [CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_SNR_MODE_TAG_ID] =
7495 { "SNR_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
7496 check_tags_array_ignore, NULL
7497 },
7498 [CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_SENSOR_MODE_TAG_ID] =
7499 { "Sensor_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
7500 check_tags_array_ignore, NULL
7501 },
7502 [CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_ISO_TAG_ID] =
7503 { "ISO", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7504 check_tags_array_ignore, NULL
7505 },
7506 [CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_FILTER_STRENGTH_TAG_ID] =
7507 { "filter_strength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7508 check_tags_array_ignore, NULL
7509 },
7510 [CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_SP_FILTER_STRENGTH_TAG_ID] =
7511 { "sp_filter_strength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7512 check_tags_array_ignore, NULL
7513 },
7514 [CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_LO_CLIPWGT_TAG_ID] =
7515 { "lo_clipwgt", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7516 check_tags_array_ignore, NULL
7517 },
7518 [CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_HI_CLIPWGT_TAG_ID] =
7519 { "hi_clipwgt", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7520 check_tags_array_ignore, NULL
7521 },
7522 [CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_SOFTWGT_TAG_ID] =
7523 { "softwgt", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7524 check_tags_array_ignore, NULL
7525 },
7526 [CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_LUMA_POINT_TAG_ID] =
7527 { "lumapoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7528 check_tags_array_ignore, NULL
7529 },
7530 [CALIB_SENSOR_BAYERNR_V2_BAYERNR3D_SIGMA_TAG_ID] =
7531 { "sigma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7532 check_tags_array_ignore, NULL
7533 },
7534 #endif
7535
7536
7537 //ynrV2
7538 [CALIB_SENSOR_YNR_V2_TAG_ID] =
7539 { "YNR_V2", CALIB_TAG_TYPE_CELL, {-1, -1},
7540 check_tags_array_info(calib_sensor_ynr_v2_sub_tags), NULL
7541 },
7542 [CALIB_SENSOR_YNR_V2_MODE_NAME_TAG_ID] =
7543 { "ModeName", CALIB_TAG_TYPE_CHAR, {-1, -1},
7544 check_tags_array_ignore, NULL
7545 },
7546 [CALIB_SENSOR_YNR_V2_ENABLE_TAG_ID] =
7547 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7548 check_tags_array_ignore, NULL
7549 },
7550 [CALIB_SENSOR_YNR_V2_SETTING_TAG_ID] =
7551 { "Setting", CALIB_TAG_TYPE_CELL, {-1, -1},
7552 check_tags_array_info(calib_sensor_ynr_v2_setting_sub_tags), NULL
7553 },
7554 [CALIB_SENSOR_YNR_V2_SNR_MODE_TAG_ID] =
7555 { "SNR_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
7556 check_tags_array_ignore, NULL
7557 },
7558 [CALIB_SENSOR_YNR_V2_SENSOR_MODE_TAG_ID] =
7559 { "Sensor_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
7560 check_tags_array_ignore, NULL
7561 },
7562 [CALIB_SENSOR_YNR_V2_ISO_TAG_ID] =
7563 { "iso", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7564 check_tags_array_ignore, NULL
7565 },
7566 [CALIB_SENSOR_YNR_V2_BFT3X3_BYPASS_TAG_ID] =
7567 { "ynr_bft3x3_bypass", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7568 check_tags_array_ignore, NULL
7569 },
7570 [CALIB_SENSOR_YNR_V2_LBFT5X5_BYPASS_TAG_ID] =
7571 { "ynr_lbft5x5_bypass", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7572 check_tags_array_ignore, NULL
7573 },
7574 [CALIB_SENSOR_YNR_V2_LGFT3X3_BYPASS_TAG_ID] =
7575 { "ynr_lgft3x3_bypass", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7576 check_tags_array_ignore, NULL
7577 },
7578 [CALIB_SENSOR_YNR_V2_FLT1X1_BYPASS_TAG_ID] =
7579 { "ynr_flt1x1_bypass", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7580 check_tags_array_ignore, NULL
7581 },
7582 [CALIB_SENSOR_YNR_V2_SFT5X5_BYPASS_TAG_ID] =
7583 { "ynr_sft5x5_bypass", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7584 check_tags_array_ignore, NULL
7585 },
7586 [CALIB_SENSOR_YNR_V2_RNR_STRENGTH_TAG_ID] =
7587 { "rnr_strength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7588 check_tags_array_ignore, NULL
7589 },
7590 [CALIB_SENSOR_YNR_V2_SIGMA_CURVE_TAG_ID] =
7591 { "sigma_curve", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7592 check_tags_array_ignore, NULL
7593 },
7594 [CALIB_SENSOR_YNR_V2_YNR_CI_TAG_ID] =
7595 { "ynr_ci", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7596 check_tags_array_ignore, NULL
7597 },
7598 [CALIB_SENSOR_YNR_V2_LOW_BF_TAG_ID] =
7599 { "low_bf", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7600 check_tags_array_ignore, NULL
7601 },
7602 [CALIB_SENSOR_YNR_V2_LOW_THRED_ADJ_TAG_ID] =
7603 { "low_thred_adj", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7604 check_tags_array_ignore, NULL
7605 },
7606 [CALIB_SENSOR_YNR_V2_LOW_PEAK_SUPRESS_TAG_ID] =
7607 { "low_peak_supress", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7608 check_tags_array_ignore, NULL
7609 },
7610 [CALIB_SENSOR_YNR_V2_LOW_EDGE_ADJ_THRESH_TAG_ID] =
7611 { "low_edge_adj_thresh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7612 check_tags_array_ignore, NULL
7613 },
7614 [CALIB_SENSOR_YNR_V2_LOW_CENTRE_WEIGHT_TAG_ID] =
7615 { "low_center_weight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7616 check_tags_array_ignore, NULL
7617 },
7618 [CALIB_SENSOR_YNR_V2_LOW_DIST_ADJ_TAG_ID] =
7619 { "low_dist_adj", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7620 check_tags_array_ignore, NULL
7621 },
7622 [CALIB_SENSOR_YNR_V2_LOW_WEIGHT_TAG_ID] =
7623 { "low_weight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7624 check_tags_array_ignore, NULL
7625 },
7626 [CALIB_SENSOR_YNR_V2_LOW_FILT_STRENGTH_TAG_ID] =
7627 { "low_filt_strength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7628 check_tags_array_ignore, NULL
7629 },
7630 [CALIB_SENSOR_YNR_V2_LOW_BI_WEIGHT_TAG_ID] =
7631 { "low_bi_weight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7632 check_tags_array_ignore, NULL
7633 },
7634 [CALIB_SENSOR_YNR_V2_BASE_FILT_WEIGHT_TAG_ID] =
7635 { "base_filter_weight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7636 check_tags_array_ignore, NULL
7637 },
7638 [CALIB_SENSOR_YNR_V2_HIGH_THRED_ADJ_TAG_ID] =
7639 { "high_thred_adj", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7640 check_tags_array_ignore, NULL
7641 },
7642 [CALIB_SENSOR_YNR_V2_HIGH_WEIGHT_TAG_ID] =
7643 { "high_weight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7644 check_tags_array_ignore, NULL
7645 },
7646 [CALIB_SENSOR_YNR_V2_HIGH_DIRECTION_WEIGHT_TAG_ID] =
7647 { "high_direction_weight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7648 check_tags_array_ignore, NULL
7649 },
7650 [CALIB_SENSOR_YNR_V2_HI_MIN_ADJ_TAG_ID] =
7651 { "hi_min_adj", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7652 check_tags_array_ignore, NULL
7653 },
7654 [CALIB_SENSOR_YNR_V2_HI_EDGE_THRED_TAG_ID] =
7655 { "hi_edge_thed", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7656 check_tags_array_ignore, NULL
7657 },
7658
7659 //cnr v1
7660
7661 [CALIB_SENSOR_CNR_V1_TAG_ID] =
7662 { "CNR_V1", CALIB_TAG_TYPE_CELL, {-1, -1},
7663 check_tags_array_info(calib_sensor_cnr_v1_sub_tags), NULL
7664 },
7665 [CALIB_SENSOR_CNR_V1_MODE_NAME_TAG_ID] =
7666 { "ModeName", CALIB_TAG_TYPE_CHAR, {-1, -1},
7667 check_tags_array_ignore, NULL
7668 },
7669 [CALIB_SENSOR_CNR_V1_ENABLE_TAG_ID] =
7670 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7671 check_tags_array_ignore, NULL
7672 },
7673 [CALIB_SENSOR_CNR_V1_SETTING_TAG_ID] =
7674 { "Setting", CALIB_TAG_TYPE_CELL, {-1, -1},
7675 check_tags_array_info(calib_sensor_cnr_v1_setting_sub_tags), NULL
7676 },
7677 [CALIB_SENSOR_CNR_V1_SNR_MODE_TAG_ID] =
7678 { "SNR_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
7679 check_tags_array_ignore, NULL
7680 },
7681 [CALIB_SENSOR_CNR_V1_SENSOR_MODE_TAG_ID] =
7682 { "Sensor_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
7683 check_tags_array_ignore, NULL
7684 },
7685 [CALIB_SENSOR_CNR_V1_ISO_TAG_ID] =
7686 { "iso", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7687 check_tags_array_ignore, NULL
7688 },
7689 [CALIB_SENSOR_CNR_V1_HF_BYPASS_TAG_ID] =
7690 { "hf_bypass", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7691 check_tags_array_ignore, NULL
7692 },
7693 [CALIB_SENSOR_CNR_V1_LF_BYPASS_TAG_ID] =
7694 { "lf_bypass", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7695 check_tags_array_ignore, NULL
7696 },
7697 [CALIB_SENSOR_CNR_V1_CNR_EXGAIN_TAG_ID] =
7698 { "cnr_exgain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7699 check_tags_array_ignore, NULL
7700 },
7701 [CALIB_SENSOR_CNR_V1_CNR_G_GAIN_TAG_ID] =
7702 { "cnr_g_gain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7703 check_tags_array_ignore, NULL
7704 },
7705 [CALIB_SENSOR_CNR_V1_COLOR_SAT_ADJ_TAG_ID] =
7706 { "color_sat_adj", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7707 check_tags_array_ignore, NULL
7708 },
7709 [CALIB_SENSOR_CNR_V1_COLOR_SAT_ADJ_ALPHA_TAG_ID] =
7710 { "color_sat_adj_alpha", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7711 check_tags_array_ignore, NULL
7712 },
7713 [CALIB_SENSOR_CNR_V1_HF_SPIKERS_REDUCION_STRENGTH_TAG_ID] =
7714 { "hf_spikes_reducion_strength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7715 check_tags_array_ignore, NULL
7716 },
7717 [CALIB_SENSOR_CNR_V1_HF_DENOISE_STRENGTH_TAG_ID] =
7718 { "hf_denoise_strength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7719 check_tags_array_ignore, NULL
7720 },
7721 [CALIB_SENSOR_CNR_V1_HF_COLOR_SAT_TAG_ID] =
7722 { "hf_color_sat", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7723 check_tags_array_ignore, NULL
7724 },
7725 [CALIB_SENSOR_CNR_V1_HF_DENOISE_ALPHA_TAG_ID] =
7726 { "hf_denoise_alpha", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7727 check_tags_array_ignore, NULL
7728 },
7729 [CALIB_SENSOR_CNR_V1_HF_BF_WGT_CLIP_TAG_ID] =
7730 { "hf_bf_wgt_clip", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7731 check_tags_array_ignore, NULL
7732 },
7733 [CALIB_SENSOR_CNR_V1_THUMB_SPIKERS_REDUCION_STRENGTH_TAG_ID] =
7734 { "thumb_spikes_reducion_strength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7735 check_tags_array_ignore, NULL
7736 },
7737 [CALIB_SENSOR_CNR_V1_THUMB_DENOISE_STRENGTH_TAG_ID] =
7738 { "thumb_denoise_strength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7739 check_tags_array_ignore, NULL
7740 },
7741 [CALIB_SENSOR_CNR_V1_THUMB_COLOR_SAT_TAG_ID] =
7742 { "thumb_color_sat", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7743 check_tags_array_ignore, NULL
7744 },
7745 [CALIB_SENSOR_CNR_V1_LF_DENOISE_STRENGTH_TAG_ID] =
7746 { "lf_denoise_strength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7747 check_tags_array_ignore, NULL
7748 },
7749 [CALIB_SENSOR_CNR_V1_LF_COLOR_SAT_TAG_ID] =
7750 { "lf_color_sat", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7751 check_tags_array_ignore, NULL
7752 },
7753 [CALIB_SENSOR_CNR_V1_LF_DENOISE_ALPHA_TAG_ID] =
7754 { "lf_denoise_alpha", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7755 check_tags_array_ignore, NULL
7756 },
7757 [CALIB_SENSOR_CNR_V1_KERNEL_5X5_TAG_ID] =
7758 { "kernel_5x5", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7759 check_tags_array_ignore, NULL
7760 },
7761
7762
7763 // sharpV3
7764 [CALIB_SENSOR_SHARP_V3_TAG_ID] =
7765 { "Sharp_V3", CALIB_TAG_TYPE_CELL, {-1, -1},
7766 check_tags_array_info(calib_sensor_sharp_v3_sub_tags), NULL
7767 },
7768 [CALIB_SENSOR_SHARP_V3_MODE_NAME_TAG_ID] =
7769 { "ModeName", CALIB_TAG_TYPE_CHAR, {-1, -1},
7770 check_tags_array_ignore, NULL
7771 },
7772 [CALIB_SENSOR_SHARP_V3_ENABLE_TAG_ID] =
7773 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7774 check_tags_array_ignore, NULL
7775 },
7776 [CALIB_SENSOR_SHARP_V3_SETTING_TAG_ID] =
7777 { "Setting", CALIB_TAG_TYPE_CELL, {-1, -1},
7778 check_tags_array_info(calib_sensor_sharp_v3_setting_sub_tags), NULL
7779 },
7780 [CALIB_SENSOR_SHARP_V3_SNR_MODE_TAG_ID] =
7781 { "SNR_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
7782 check_tags_array_ignore, NULL
7783 },
7784 [CALIB_SENSOR_SHARP_V3_SENSOR_MODE_TAG_ID] =
7785 { "Sensor_Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
7786 check_tags_array_ignore, NULL
7787 },
7788 [CALIB_SENSOR_SHARP_V3_ISO_TAG_ID] =
7789 { "iso", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7790 check_tags_array_ignore, NULL
7791 },
7792 [CALIB_SENSOR_SHARP_V3_LUMA_POINT_TAG_ID] =
7793 { "luma_point", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7794 check_tags_array_ignore, NULL
7795 },
7796 [CALIB_SENSOR_SHARP_V3_LUMA_SIGMA_TAG_ID] =
7797 { "luma_sigma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7798 check_tags_array_ignore, NULL
7799 },
7800 [CALIB_SENSOR_SHARP_V3_PBF_GAIN_TAG_ID] =
7801 { "pbf_gain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7802 check_tags_array_ignore, NULL
7803 },
7804 [CALIB_SENSOR_SHARP_V3_PBF_ADD_TAG_ID] =
7805 { "pbf_add", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7806 check_tags_array_ignore, NULL
7807 },
7808 [CALIB_SENSOR_SHARP_V3_PBF_RATIO_TAG_ID] =
7809 { "pbf_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7810 check_tags_array_ignore, NULL
7811 },
7812 [CALIB_SENSOR_SHARP_V3_GAUSS_RATIO_TAG_ID] =
7813 { "gaus_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7814 check_tags_array_ignore, NULL
7815 },
7816 [CALIB_SENSOR_SHARP_V3_SHARP_RATIO_TAG_ID] =
7817 { "sharp_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7818 check_tags_array_ignore, NULL
7819 },
7820 [CALIB_SENSOR_SHARP_V3_HF_CLIP_TAG_ID] =
7821 { "hf_clip", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7822 check_tags_array_ignore, NULL
7823 },
7824 [CALIB_SENSOR_SHARP_V3_BF_GAIN_TAG_ID] =
7825 { "bf_gain", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7826 check_tags_array_ignore, NULL
7827 },
7828 [CALIB_SENSOR_SHARP_V3_BF_ADD_TAG_ID] =
7829 { "bf_add", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7830 check_tags_array_ignore, NULL
7831 },
7832 [CALIB_SENSOR_SHARP_V3_BF_RATIO_TAG_ID] =
7833 { "bf_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7834 check_tags_array_ignore, NULL
7835 },
7836 [CALIB_SENSOR_SHARP_V3_LOCAL_STRENGTH_TAG_ID] =
7837 { "local_sharp_strength", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7838 check_tags_array_ignore, NULL
7839 },
7840 [CALIB_SENSOR_SHARP_V3_PREFILTER_COEFF_TAG_ID] =
7841 { "prefilter_coeff", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7842 check_tags_array_ignore, NULL
7843 },
7844 [CALIB_SENSOR_SHARP_V3_GAUSSFILTER_COEFF_TAG_ID] =
7845 { "GaussianFilter_coeff", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7846 check_tags_array_ignore, NULL
7847 },
7848 [CALIB_SENSOR_SHARP_V3_HBFFILTER_COEFF_TAG_ID] =
7849 { "hfBilateralFilter_coeff", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7850 check_tags_array_ignore, NULL
7851 },
7852 [CALIB_SENSOR_SHARP_V3_SHARP_RATIO_H_TAG_ID] =
7853 { "sharp_ratio_h", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7854 check_tags_array_ignore, NULL
7855 },
7856 [CALIB_SENSOR_SHARP_V3_SHARP_RATIO_M_TAG_ID] =
7857 { "sharp_ratio_m", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7858 check_tags_array_ignore, NULL
7859 },
7860 [CALIB_SENSOR_SHARP_V3_SHARP_RATIO_L_TAG_ID] =
7861 { "sharp_ratio_l", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7862 check_tags_array_ignore, NULL
7863 },
7864 [CALIB_SENSOR_SHARP_V3_CLIP_HF_TAG_ID] =
7865 { "clip_hf", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7866 check_tags_array_ignore, NULL
7867 },
7868 [CALIB_SENSOR_SHARP_V3_CLIP_MF_TAG_ID] =
7869 { "clip_mf", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7870 check_tags_array_ignore, NULL
7871 },
7872 [CALIB_SENSOR_SHARP_V3_CLIP_LF_TAG_ID] =
7873 { "clip_lf", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7874 check_tags_array_ignore, NULL
7875 },
7876 [CALIB_SENSOR_SHARP_V3_LOCAL_WGT_TAG_ID] =
7877 { "local_wgt", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7878 check_tags_array_ignore, NULL
7879 },
7880
7881 // Sensor CPROC
7882 [CALIB_SENSOR_CPROC_TAG_ID] =
7883 { "CPROC", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7884 check_tags_array_info(calib_sensor_cproc_sub_tags), NULL
7885 },
7886 [CALIB_SENSOR_CPROC_ENABLE_TAG_ID] =
7887 { "enable", CALIB_TAG_TYPE_INT, {-1, -1},
7888 check_tags_array_ignore, NULL
7889 },
7890 [CALIB_SENSOR_CPROC_BRIGHTNESS_TAG_ID] =
7891 { "brightness", CALIB_TAG_TYPE_INT, {-1, -1},
7892 check_tags_array_ignore, NULL
7893 },
7894 [CALIB_SENSOR_CPROC_CONTRAST_TAG_ID] =
7895 { "contrast", CALIB_TAG_TYPE_INT, {-1, -1},
7896 check_tags_array_ignore, NULL
7897 },
7898 [CALIB_SENSOR_CPROC_SATURATION_TAG_ID] =
7899 { "saturation", CALIB_TAG_TYPE_INT, {-1, -1},
7900 check_tags_array_ignore, NULL
7901 },
7902 [CALIB_SENSOR_CPROC_HUE_TAG_ID] =
7903 { "hue", CALIB_TAG_TYPE_INT, {-1, -1},
7904 check_tags_array_ignore, NULL
7905 },
7906
7907 // Sensor IE
7908 [CALIB_SENSOR_IE_TAG_ID] =
7909 { "IE", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7910 check_tags_array_info(calib_sensor_ie_sub_tags), NULL
7911 },
7912 [CALIB_SENSOR_IE_ENABLE_TAG_ID] =
7913 { "enable", CALIB_TAG_TYPE_INT, {-1, -1},
7914 check_tags_array_ignore, NULL
7915 },
7916 [CALIB_SENSOR_IE_MODE_TAG_ID] =
7917 { "mode", CALIB_TAG_TYPE_INT, {-1, -1},
7918 check_tags_array_ignore, NULL
7919 },
7920
7921 //Sensor AEC v21
7922 [CALIB_SENSOR_AEC_V21_TAG_ID] =
7923 { "AEC", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7924 check_tags_array_info(calib_sensor_aec_v21_sub_tags), NULL
7925 },
7926 [CALIB_SENSOR_AEC_V21_CALIBPARA_TAG_ID] =
7927 { "CalibPara", CALIB_TAG_TYPE_CELL, {-1, -1},
7928 check_tags_array_info(calib_sensor_aec_calibpara_v21_sub_tags), NULL
7929 },
7930 [CALIB_SENSOR_AEC_V21_CALIBSCENE_TAG_ID] =
7931 { "scene", CALIB_TAG_TYPE_CHAR, {-1, -1},
7932 check_tags_array_ignore, NULL
7933 },
7934 [CALIB_SENSOR_AEC_V21_WINSCALE_TAG_ID] =
7935 { "AecWinScale", CALIB_TAG_TYPE_STRUCT, {-1, -1},
7936 check_tags_array_info(calib_sensor_aec_winscale_v21_sub_tags), NULL
7937 },
7938 [CALIB_SENSOR_AEC_V21_WINSCALE_INRAW_TAG_ID] =
7939 { "InputRaw", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7940 check_tags_array_ignore, NULL
7941 },
7942 [CALIB_SENSOR_AEC_V21_WINSCALE_TMORAW_TAG_ID] =
7943 { "TmoRaw", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7944 check_tags_array_ignore, NULL
7945 },
7946 [CALIB_SENSOR_AEC_V21_WINSCALE_YUVRAW_TAG_ID] =
7947 { "Yuv", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
7948 check_tags_array_ignore, NULL
7949 },
7950 [CALIB_SENSOR_AEC_V21_TUNEPARA_TAG_ID] =
7951 { "TunePara", CALIB_TAG_TYPE_CELL, {-1, -1},
7952 check_tags_array_info(calib_sensor_aec_tunepara_v21_sub_tags), NULL
7953 },
7954 [CALIB_SENSOR_AEC_V21_TUNESCENE_TAG_ID] =
7955 { "scene", CALIB_TAG_TYPE_CHAR, {-1, -1},
7956 check_tags_array_ignore, NULL
7957 },
7958 [CALIB_SENSOR_AEC_V21_HISTSTATSMODE_TAG_ID] =
7959 { "HistStatsMode", CALIB_TAG_TYPE_CHAR, {-1, -1},
7960 check_tags_array_ignore, NULL
7961 },
7962 [CALIB_SENSOR_AEC_V21_HISTSTATSMODE_R_TAG_ID] =
7963 { "R", CALIB_TAG_TYPE_CHAR, {-1, -1},
7964 check_tags_array_ignore, NULL
7965 },
7966 [CALIB_SENSOR_AEC_V21_HISTSTATSMODE_G_TAG_ID] =
7967 { "G", CALIB_TAG_TYPE_CHAR, {-1, -1},
7968 check_tags_array_ignore, NULL
7969 },
7970 [CALIB_SENSOR_AEC_V21_HISTSTATSMODE_B_TAG_ID] =
7971 { "B", CALIB_TAG_TYPE_CHAR, {-1, -1},
7972 check_tags_array_ignore, NULL
7973 },
7974 [CALIB_SENSOR_AEC_V21_HISTSTATSMODE_RGB_TAG_ID] =
7975 { "RGB", CALIB_TAG_TYPE_CHAR, {-1, -1},
7976 check_tags_array_ignore, NULL
7977 },
7978 [CALIB_SENSOR_AEC_V21_HISTSTATSMODE_Y_TAG_ID] =
7979 { "Y", CALIB_TAG_TYPE_CHAR, {-1, -1},
7980 check_tags_array_ignore, NULL
7981 },
7982 [CALIB_SENSOR_AEC_V21_RAWSTATSMODE_TAG_ID] =
7983 { "RawStatsMode", CALIB_TAG_TYPE_CHAR, {-1, -1},
7984 check_tags_array_ignore, NULL
7985 },
7986 [CALIB_SENSOR_AEC_V21_RAWSTATSMODE_R_TAG_ID] =
7987 { "R", CALIB_TAG_TYPE_CHAR, {-1, -1},
7988 check_tags_array_ignore, NULL
7989 },
7990 [CALIB_SENSOR_AEC_V21_RAWSTATSMODE_G_TAG_ID] =
7991 { "G", CALIB_TAG_TYPE_CHAR, {-1, -1},
7992 check_tags_array_ignore, NULL
7993 },
7994 [CALIB_SENSOR_AEC_V21_RAWSTATSMODE_B_TAG_ID] =
7995 { "B", CALIB_TAG_TYPE_CHAR, {-1, -1},
7996 check_tags_array_ignore, NULL
7997 },
7998 [CALIB_SENSOR_AEC_V21_RAWSTATSMODE_Y_TAG_ID] =
7999 { "Y", CALIB_TAG_TYPE_CHAR, {-1, -1},
8000 check_tags_array_ignore, NULL
8001 },
8002 [CALIB_SENSOR_AEC_V21_YRANGEMODE_TAG_ID] =
8003 { "YRangeMode", CALIB_TAG_TYPE_CHAR, {-1, -1},
8004 check_tags_array_ignore, NULL
8005 },
8006 [CALIB_SENSOR_AEC_V21_YRANGEMODE_FULL_TAG_ID] =
8007 { "FULL", CALIB_TAG_TYPE_CHAR, {-1, -1},
8008 check_tags_array_ignore, NULL
8009 },
8010 [CALIB_SENSOR_AEC_V21_YRANGEMODE_LIMITED_TAG_ID] =
8011 { "LIMITED", CALIB_TAG_TYPE_CHAR, {-1, -1},
8012 check_tags_array_ignore, NULL
8013 },
8014
8015 [CALIB_SENSOR_AEC_V21_AECRUNINTERVAL_TAG_ID] =
8016 { "AecRunInterval", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8017 check_tags_array_ignore, NULL
8018 },
8019 [CALIB_SENSOR_AEC_V21_AECOPTYPE_TAG_ID] =
8020 { "AecOpType", CALIB_TAG_TYPE_CHAR, {-1, -1},
8021 check_tags_array_ignore, NULL
8022 },
8023 [CALIB_SENSOR_AEC_V21_AECOPTYPE_AUTO_TAG_ID] =
8024 { "AUTO", CALIB_TAG_TYPE_CHAR, {-1, -1},
8025 check_tags_array_ignore, NULL
8026 },
8027 [CALIB_SENSOR_AEC_V21_AECOPTYPE_MANUAL_TAG_ID] =
8028 { "MANUAL", CALIB_TAG_TYPE_CHAR, {-1, -1},
8029 check_tags_array_ignore, NULL
8030 },
8031
8032 [CALIB_SENSOR_AEC_V21_SYNCTEST_TAG_ID] =
8033 { "AecSyncTest", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8034 check_tags_array_info(calib_sensor_aec_AecSyncTest_v21_sub_tags), NULL
8035 },
8036 [CALIB_SENSOR_AEC_V21_SYNCTEST_ENABLE_TAG_ID] =
8037 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8038 check_tags_array_ignore, NULL
8039 },
8040 [CALIB_SENSOR_AEC_V21_SYNCTEST_INTERVALFRM_TAG_ID] =
8041 { "IntervalFrm", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8042 check_tags_array_ignore, NULL
8043 },
8044 [CALIB_SENSOR_AEC_V21_SYNCTEST_ALTEREXP_TAG_ID] =
8045 { "AlterExp", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8046 check_tags_array_info(calib_sensor_aec_AecSyncTest_AlterExp_v21_sub_tags), NULL
8047 },
8048 [CALIB_SENSOR_AEC_V21_SYNCTEST_LINALTEREXP_TAG_ID] =
8049 { "LinearAE", CALIB_TAG_TYPE_CELL, {-1, -1},
8050 check_tags_array_info(calib_sensor_aec_AecSyncTest_LinAlterExp_v21_sub_tags), NULL
8051 },
8052 [CALIB_SENSOR_AEC_V21_SYNCTEST_HDRALTEREXP_TAG_ID] =
8053 { "HdrAE", CALIB_TAG_TYPE_CELL, {-1, -1},
8054 check_tags_array_info(calib_sensor_aec_AecSyncTest_HdrAlterExp_v21_sub_tags), NULL
8055 },
8056 [CALIB_SENSOR_AEC_V21_SYNCTEST_TIMEVALUE_TAG_ID] =
8057 { "TimeValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8058 check_tags_array_ignore, NULL
8059 },
8060 [CALIB_SENSOR_AEC_V21_SYNCTEST_GAINVALUE_TAG_ID] =
8061 { "GainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8062 check_tags_array_ignore, NULL
8063 },
8064 [CALIB_SENSOR_AEC_V21_SYNCTEST_ISPGAINVALUE_TAG_ID] =
8065 { "IspDgainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8066 check_tags_array_ignore, NULL
8067 },
8068 [CALIB_SENSOR_AEC_V21_SYNCTEST_DCGMODE_TAG_ID] =
8069 { "DcgMode", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8070 check_tags_array_ignore, NULL
8071 },
8072 [CALIB_SENSOR_AEC_V21_SYNCTEST_PIRISVALUE_TAG_ID] =
8073 { "PIrisGainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8074 check_tags_array_ignore, NULL
8075 },
8076
8077
8078 [CALIB_SENSOR_AEC_V21_AECDNSWITCH_TAG_ID] =
8079 { "AecDNSwitch", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8080 check_tags_array_info(calib_sensor_aec_AecDNSwitch_v21_sub_tags), NULL
8081 },
8082 [CALIB_SENSOR_AEC_V21_AECDNSWITCH_DNTRIGGER_TAG_ID] =
8083 { "DNTrigger", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8084 check_tags_array_ignore, NULL
8085 },
8086 [CALIB_SENSOR_AEC_V21_AECDNSWITCH_DNMODE_TAG_ID] =
8087 { "DNMode", CALIB_TAG_TYPE_CHAR, {-1, -1},
8088 check_tags_array_ignore, NULL
8089 },
8090 [CALIB_SENSOR_AEC_V21_AECDNSWITCH_DNMODE_DAY_TAG_ID] =
8091 { "DAY", CALIB_TAG_TYPE_CHAR, {-1, -1},
8092 check_tags_array_ignore, NULL
8093 },
8094 [CALIB_SENSOR_AEC_V21_AECDNSWITCH_DNMODE_NIGHT_TAG_ID] =
8095 { "NIGHT", CALIB_TAG_TYPE_CHAR, {-1, -1},
8096 check_tags_array_ignore, NULL
8097 },
8098 [CALIB_SENSOR_AEC_V21_AECDNSWITCH_FILLLIGHTMODE_TAG_ID] =
8099 { "FillLightMode", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8100 check_tags_array_ignore, NULL
8101 },
8102 [CALIB_SENSOR_AEC_V21_AECDNSWITCH_D2NFACTH_TAG_ID] =
8103 { "D2NFacTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8104 check_tags_array_ignore, NULL
8105 },
8106 [CALIB_SENSOR_AEC_V21_AECDNSWITCH_D2NFRMCNT_TAG_ID] =
8107 { "D2NFrmCnt", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8108 check_tags_array_ignore, NULL
8109 },
8110
8111
8112 [CALIB_SENSOR_AEC_V21_AECDNSWITCH_VBNIGHTMODE_TAG_ID] =
8113 { "VBNightMode", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8114 check_tags_array_info(calib_sensor_aec_VBNightMode_v21_sub_tags), NULL
8115 },
8116 [CALIB_SENSOR_AEC_V21_ENABLE_TAG_ID] =
8117 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8118 check_tags_array_ignore, NULL
8119 },
8120 [CALIB_SENSOR_AEC_V21_AECDNSWITCH_N2DFRMCNT_TAG_ID] =
8121 { "N2DFrmCnt", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8122 check_tags_array_ignore, NULL
8123 },
8124 [CALIB_SENSOR_AEC_V21_AECDNSWITCH_N2DFACTH_TAG_ID] =
8125 { "N2DFacTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8126 check_tags_array_ignore, NULL
8127 },
8128
8129
8130 [CALIB_SENSOR_AEC_V21_AECDNSWITCH_IRNIGHTMODE_TAG_ID] =
8131 { "IRNightMode", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8132 check_tags_array_info(calib_sensor_aec_IRNightMode_v21_sub_tags), NULL
8133 },
8134 [CALIB_SENSOR_AEC_V21_AECDNSWITCH_IR_RG_TAG_ID] =
8135 { "IR_rg", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8136 check_tags_array_ignore, NULL
8137 },
8138 [CALIB_SENSOR_AEC_V21_AECDNSWITCH_IR_BG_TAG_ID] =
8139 { "IR_bg", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8140 check_tags_array_ignore, NULL
8141 },
8142 [CALIB_SENSOR_AEC_V21_AECDNSWITCH_MAX_DIS_TAG_ID] =
8143 { "Max_Dis", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8144 check_tags_array_ignore, NULL
8145 },
8146 [CALIB_SENSOR_AEC_V21_AECDNSWITCH_VB_PERCENT_TAG_ID] =
8147 { "VBPercent", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8148 check_tags_array_ignore, NULL
8149 },
8150
8151
8152 [CALIB_SENSOR_AEC_V21_AECSPEED_TAG_ID] =
8153 { "AecSpeed", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8154 check_tags_array_info(calib_sensor_aec_AecSpeed_v21_sub_tags), NULL
8155 },
8156 [CALIB_SENSOR_AEC_V21_DAMPOVER_TAG_ID] =
8157 { "DampOver", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8158 check_tags_array_ignore, NULL
8159 },
8160 [CALIB_SENSOR_AEC_V21_DAMPUNDER_TAG_ID] =
8161 { "DampUnder", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8162 check_tags_array_ignore, NULL
8163 },
8164 [CALIB_SENSOR_AEC_V21_DAMPDARK2BRIGHT_TAG_ID] =
8165 { "DampDark2Bright", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8166 check_tags_array_ignore, NULL
8167 },
8168 [CALIB_SENSOR_AEC_V21_DAMPBRIGHT2DARK_TAG_ID] =
8169 { "DampBright2Dark", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8170 check_tags_array_ignore, NULL
8171 },
8172 [CALIB_SENSOR_AEC_V21_DAMPOVERVIDEO_TAG_ID] =
8173 { "DampOverVideo", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8174 check_tags_array_ignore, NULL
8175 },
8176 [CALIB_SENSOR_AEC_V21_DAMPUNDERVIDEO_TAG_ID] =
8177 { "DampUnderVideo", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8178 check_tags_array_ignore, NULL
8179 },
8180
8181
8182 [CALIB_SENSOR_AEC_V21_AECDELAYFRMNUM_TAG_ID] =
8183 { "AecDelayFrmNum", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8184 check_tags_array_info(calib_sensor_aec_AecDelayFrmNum_v21_sub_tags), NULL
8185 },
8186 [CALIB_SENSOR_AEC_V21_BLACKDELAY_TAG_ID] =
8187 { "BlackDelay", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8188 check_tags_array_ignore, NULL
8189 },
8190 [CALIB_SENSOR_AEC_V21_WHITEDELAY_TAG_ID] =
8191 { "WhiteDelay", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8192 check_tags_array_ignore, NULL
8193 },
8194
8195
8196 [CALIB_SENSOR_AEC_V21_AECFRAMERATEMODE_TAG_ID] =
8197 { "AecFrameRateMode", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8198 check_tags_array_info(calib_sensor_aec_AecFrameRateMode_v21_sub_tags), NULL
8199 },
8200 [CALIB_SENSOR_AEC_V21_ISFPSFIX_TAG_ID] =
8201 { "isFpsFix", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8202 check_tags_array_ignore, NULL
8203 },
8204 [CALIB_SENSOR_AEC_V21_FPSVALUE_TAG_ID] =
8205 { "FpsValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8206 check_tags_array_ignore, NULL
8207 },
8208 [CALIB_SENSOR_AEC_V21_FPSFIX_LINTIMEDOT_TAG_ID] =
8209 { "FpsFix_LinTimeDot", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8210 check_tags_array_ignore, NULL
8211 },
8212 [CALIB_SENSOR_AEC_V21_FPSFIX_HDRTIMEDOT_TAG_ID] =
8213 { "FpsFix_HdrTimeDot", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8214 check_tags_array_ignore, NULL
8215 },
8216
8217 [CALIB_SENSOR_AEC_V21_ANTIFLICKER_TAG_ID] =
8218 { "AecAntiFlicker", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8219 check_tags_array_info(calib_sensor_aec_AecAntiFlicker_v21_sub_tags), NULL
8220 },
8221 [CALIB_SENSOR_AEC_V21_ANTIFLICKER_ENABLE_TAG_ID] =
8222 { "enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8223 check_tags_array_ignore, NULL
8224 },
8225 [CALIB_SENSOR_AEC_V21_ANTIFLICKER_FREQ_TAG_ID] =
8226 { "Frequency", CALIB_TAG_TYPE_CHAR, {-1, -1},
8227 check_tags_array_ignore, NULL
8228 },
8229 [CALIB_SENSOR_AEC_V21_ANTIFLICKER_FREQ_50HZ_TAG_ID] =
8230 { "FLICKER_50HZ", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8231 check_tags_array_ignore, NULL
8232 },
8233 [CALIB_SENSOR_AEC_V21_ANTIFLICKER_FREQ_60HZ_TAG_ID] =
8234 { "FLICKER_60HZ", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8235 check_tags_array_ignore, NULL
8236 },
8237 [CALIB_SENSOR_AEC_V21_ANTIFLICKER_MODE_TAG_ID] =
8238 { "Mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
8239 check_tags_array_ignore, NULL
8240 },
8241 [CALIB_SENSOR_AEC_V21_ANTIFLICKER_MODE_AUTO_TAG_ID] =
8242 { "AUTO", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8243 check_tags_array_ignore, NULL
8244 },
8245 [CALIB_SENSOR_AEC_V21_ANTIFLICKER_MODE_NORMAL_TAG_ID] =
8246 { "NORMAL", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8247 check_tags_array_ignore, NULL
8248 },
8249
8250 [CALIB_SENSOR_AEC_V21_AECINITVALUE_TAG_ID] =
8251 { "AecInitValue", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8252 check_tags_array_info(calib_sensor_aec_AecInitValue_v21_sub_tags), NULL
8253 },
8254 [CALIB_SENSOR_AEC_V21_AECINITVALUE_LINEARAE_TAG_ID] =
8255 { "LinearAE", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8256 check_tags_array_info(calib_sensor_aec_AecInitValue_LinearAE_v21_sub_tags), NULL
8257 },
8258 [CALIB_SENSOR_AEC_V21_AECINITVALUE_HDRAE_TAG_ID] =
8259 { "HdrAE", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8260 check_tags_array_info(calib_sensor_aec_AecInitValue_HdrAE_v21_sub_tags), NULL
8261 },
8262 [CALIB_SENSOR_AEC_V21_INITTIMEVALUE_TAG_ID] =
8263 { "InitTimeValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8264 check_tags_array_ignore, NULL
8265 },
8266 [CALIB_SENSOR_AEC_V21_INITGAINVALUE_TAG_ID] =
8267 { "InitGainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8268 check_tags_array_ignore, NULL
8269 },
8270 [CALIB_SENSOR_AEC_V21_INITISPDGAINVALUE_TAG_ID] =
8271 { "InitIspDgainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8272 check_tags_array_ignore, NULL
8273 },
8274 [CALIB_SENSOR_AEC_V21_INITPIRISVALUE_TAG_ID] =
8275 { "InitPIrisGainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8276 check_tags_array_ignore, NULL
8277 },
8278 [CALIB_SENSOR_AEC_V21_INITDCIRISVALUE_TAG_ID] =
8279 { "InitDCIrisDutyValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8280 check_tags_array_ignore, NULL
8281 },
8282 [CALIB_SENSOR_AEC_V21_INITHDCIRISVALUE_TAG_ID] =
8283 { "InitHDCIrisDutyValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8284 check_tags_array_ignore, NULL
8285 },
8286
8287 [CALIB_SENSOR_AEC_V21_AECGRIDWEIGHT_TAG_ID] =
8288 { "AecGridWeight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8289 check_tags_array_ignore, NULL
8290 },
8291 [CALIB_SENSOR_AEC_V21_AECROUTE_TAG_ID] =
8292 { "AecRoute", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8293 check_tags_array_info(calib_sensor_aec_AecRoute_v21_sub_tags), NULL
8294 },
8295 [CALIB_SENSOR_AEC_V21_AECROUTE_LINEARAE_TAG_ID] =
8296 { "LinearAE", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8297 check_tags_array_info(calib_sensor_aec_AecRoute_LinearAE_v21_sub_tags), NULL
8298 },
8299 [CALIB_SENSOR_AEC_V21_AECROUTE_HDRAE_TAG_ID] =
8300 { "HdrAE", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8301 check_tags_array_info(calib_sensor_aec_AecRoute_HdrAE_v21_sub_tags), NULL
8302 },
8303 [CALIB_SENSOR_AEC_V21_NAME_TAG_ID] =
8304 { "name", CALIB_TAG_TYPE_CHAR, {-1, -1},
8305 check_tags_array_ignore, NULL
8306 },
8307 [CALIB_SENSOR_AEC_V21_TIMEDOT_TAG_ID] =
8308 { "TimeDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8309 check_tags_array_ignore, NULL
8310 },
8311 [CALIB_SENSOR_AEC_V21_GAINDOT_TAG_ID] =
8312 { "GainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8313 check_tags_array_ignore, NULL
8314 },
8315 [CALIB_SENSOR_AEC_V21_ISPDGAINDOT_TAG_ID] =
8316 { "IspDGainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8317 check_tags_array_ignore, NULL
8318 },
8319 [CALIB_SENSOR_AEC_V21_PIRISDOT_TAG_ID] =
8320 { "PIrisDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8321 check_tags_array_ignore, NULL
8322 },
8323 [CALIB_SENSOR_AEC_V21_LTIMEDOT_TAG_ID] =
8324 { "LTimeDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8325 check_tags_array_ignore, NULL
8326 },
8327 [CALIB_SENSOR_AEC_V21_MTIMEDOT_TAG_ID] =
8328 { "MTimeDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8329 check_tags_array_ignore, NULL
8330 },
8331 [CALIB_SENSOR_AEC_V21_STIMEDOT_TAG_ID] =
8332 { "STimeDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8333 check_tags_array_ignore, NULL
8334 },
8335 [CALIB_SENSOR_AEC_V21_LGAINDOT_TAG_ID] =
8336 { "LGainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8337 check_tags_array_ignore, NULL
8338 },
8339 [CALIB_SENSOR_AEC_V21_MGAINDOT_TAG_ID] =
8340 { "MGainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8341 check_tags_array_ignore, NULL
8342 },
8343 [CALIB_SENSOR_AEC_V21_SGAINDOT_TAG_ID] =
8344 { "SGainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8345 check_tags_array_ignore, NULL
8346 },
8347 [CALIB_SENSOR_AEC_V21_LISPDGAINDOT_TAG_ID] =
8348 { "LIspDGainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8349 check_tags_array_ignore, NULL
8350 },
8351 [CALIB_SENSOR_AEC_V21_MISPDGAINDOT_TAG_ID] =
8352 { "MIspDGainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8353 check_tags_array_ignore, NULL
8354 },
8355 [CALIB_SENSOR_AEC_V21_SISPDGAINDOT_TAG_ID] =
8356 { "SIspDGainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8357 check_tags_array_ignore, NULL
8358 },
8359
8360 [CALIB_SENSOR_AEC_V21_IRISCTRL_TAG_ID] =
8361 { "AecIrisCtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8362 check_tags_array_info(calib_sensor_aec_AecIrisCtrl_v21_sub_tags), NULL
8363 },
8364 [CALIB_SENSOR_AEC_V21_IRISCTRL_ENABLE_TAG_ID] =
8365 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8366 check_tags_array_ignore, NULL
8367 },
8368 [CALIB_SENSOR_AEC_V21_IRISCTRL_TYPE_TAG_ID] =
8369 { "IrisType", CALIB_TAG_TYPE_CHAR, {-1, -1},
8370 check_tags_array_ignore, NULL
8371 },
8372 [CALIB_SENSOR_AEC_V21_IRISCTRL_TYPE_P_TAG_ID] =
8373 { "P", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8374 check_tags_array_ignore, NULL
8375 },
8376 [CALIB_SENSOR_AEC_V21_IRISCTRL_TYPE_DC_TAG_ID] =
8377 { "DC", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8378 check_tags_array_ignore, NULL
8379 },
8380 [CALIB_SENSOR_AEC_V21_IRISCTRL_TYPE_HDC_TAG_ID] =
8381 { "HDC", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8382 check_tags_array_ignore, NULL
8383 },
8384
8385 [CALIB_SENSOR_AEC_V21_IRISCTRL_P_ATTR_TAG_ID] =
8386 { "PIrisAttr", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8387 check_tags_array_info(calib_sensor_aec_AecIrisCtrl_PAttr_v21_sub_tags), NULL
8388 },
8389 [CALIB_SENSOR_AEC_V21_IRISCTRL_P_ATTR_TOTALSTEP_TAG_ID] =
8390 { "TotalStep", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8391 check_tags_array_ignore, NULL
8392 },
8393 [CALIB_SENSOR_AEC_V21_IRISCTRL_P_ATTR_EFFCSTEP_TAG_ID] =
8394 { "EffcStep", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8395 check_tags_array_ignore, NULL
8396 },
8397 [CALIB_SENSOR_AEC_V21_IRISCTRL_P_ATTR_ZEROISMAX_TAG_ID] =
8398 { "ZeroIsMax", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8399 check_tags_array_ignore, NULL
8400 },
8401 [CALIB_SENSOR_AEC_V21_IRISCTRL_P_ATTR_STEPTABLE_TAG_ID] =
8402 { "StepTable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8403 check_tags_array_ignore, NULL
8404 },
8405
8406 [CALIB_SENSOR_AEC_V21_IRISCTRL_DC_ATTR_TAG_ID] =
8407 { "DCIrisAttr", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8408 check_tags_array_info(calib_sensor_aec_AecIrisCtrl_DCAttr_v21_sub_tags), NULL
8409 },
8410 [CALIB_SENSOR_AEC_V21_IRISCTRL_DC_ATTR_KP_TAG_ID] =
8411 { "Kp", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8412 check_tags_array_ignore, NULL
8413 },
8414 [CALIB_SENSOR_AEC_V21_IRISCTRL_DC_ATTR_KI_TAG_ID] =
8415 { "Ki", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8416 check_tags_array_ignore, NULL
8417 },
8418 [CALIB_SENSOR_AEC_V21_IRISCTRL_DC_ATTR_KD_TAG_ID] =
8419 { "Kd", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8420 check_tags_array_ignore, NULL
8421 },
8422 [CALIB_SENSOR_AEC_V21_IRISCTRL_DC_ATTR_MIN_PWMDUTY_TAG_ID] =
8423 { "MinPwmDuty", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8424 check_tags_array_ignore, NULL
8425 },
8426 [CALIB_SENSOR_AEC_V21_IRISCTRL_DC_ATTR_MAX_PWMDUTY_TAG_ID] =
8427 { "MaxPwmDuty", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8428 check_tags_array_ignore, NULL
8429 },
8430 [CALIB_SENSOR_AEC_V21_IRISCTRL_DC_ATTR_OPEN_PWMDUTY_TAG_ID] =
8431 { "OpenPwmDuty", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8432 check_tags_array_ignore, NULL
8433 },
8434 [CALIB_SENSOR_AEC_V21_IRISCTRL_DC_ATTR_CLOSE_PWMDUTY_TAG_ID] =
8435 { "ClosePwmDuty", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8436 check_tags_array_ignore, NULL
8437 },
8438
8439 [CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_TAG_ID] =
8440 { "HDCIrisAttr", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8441 check_tags_array_info(calib_sensor_aec_AecIrisCtrl_HDCAttr_sub_tags), NULL
8442 },
8443 [CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_DAMPOVER_TAG_ID] =
8444 { "DampOver", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8445 check_tags_array_ignore, NULL
8446 },
8447 [CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_DAMPUNDER_TAG_ID] =
8448 { "DampUnder", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8449 check_tags_array_ignore, NULL
8450 },
8451 [CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_ZEROISMAX_TAG_ID] =
8452 { "ZeroIsMax", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8453 check_tags_array_ignore, NULL
8454 },
8455 [CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_MINTARGET_TAG_ID] =
8456 { "MinTarget", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8457 check_tags_array_ignore, NULL
8458 },
8459 [CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_MAXTARGET_TAG_ID] =
8460 { "MaxTarget", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8461 check_tags_array_ignore, NULL
8462 },
8463 [CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_ZOOMTARGETDOT_TAG_ID] =
8464 { "ZoomTargetDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8465 check_tags_array_ignore, NULL
8466 },
8467 [CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_ZOOMDOT_TAG_ID] =
8468 { "ZoomDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8469 check_tags_array_ignore, NULL
8470 },
8471 [CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_IRISTARGETDOT_TAG_ID] =
8472 { "IrisTargetDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8473 check_tags_array_ignore, NULL
8474 },
8475 [CALIB_SENSOR_AEC_V21_IRISCTRL_HDC_ATTR_GAINDOT_TAG_ID] =
8476 { "GainDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8477 check_tags_array_ignore, NULL
8478 },
8479
8480 [CALIB_SENSOR_AEC_V21_MANUALCTRL_TAG_ID] =
8481 { "AecManualCtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8482 check_tags_array_info(calib_sensor_aec_AecManualCtrl_v21_sub_tags), NULL
8483 },
8484 [CALIB_SENSOR_AEC_V21_MANUALCTRL_LINEARAE_TAG_ID] =
8485 { "LinearAE", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8486 check_tags_array_info(calib_sensor_aec_AecManualCtrl_LinearAE_v21_sub_tags), NULL
8487 },
8488 [CALIB_SENSOR_AEC_V21_MANUALCTRL_HDRAE_TAG_ID] =
8489 { "HdrAE", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8490 check_tags_array_info(calib_sensor_aec_AecManualCtrl_HdrAE_v21_sub_tags), NULL
8491 },
8492 [CALIB_SENSOR_AEC_V21_MANUALCTRL_TIMEEN_TAG_ID] =
8493 { "ManualTimeEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8494 check_tags_array_ignore, NULL
8495 },
8496 [CALIB_SENSOR_AEC_V21_MANUALCTRL_GAINEN_TAG_ID] =
8497 { "ManualGainEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8498 check_tags_array_ignore, NULL
8499 },
8500 [CALIB_SENSOR_AEC_V21_MANUALCTRL_ISPDGAINEN_TAG_ID] =
8501 { "ManualIspDgainEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8502 check_tags_array_ignore, NULL
8503 },
8504 [CALIB_SENSOR_AEC_V21_MANUALCTRL_IRISEN_TAG_ID] =
8505 { "ManualIrisEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8506 check_tags_array_ignore, NULL
8507 },
8508 [CALIB_SENSOR_AEC_V21_MANUALCTRL_TIMEVALUE_TAG_ID] =
8509 { "TimeValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8510 check_tags_array_ignore, NULL
8511 },
8512 [CALIB_SENSOR_AEC_V21_MANUALCTRL_GAINVALUE_TAG_ID] =
8513 { "GainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8514 check_tags_array_ignore, NULL
8515 },
8516 [CALIB_SENSOR_AEC_V21_MANUALCTRL_ISPDGAINVALUE_TAG_ID] =
8517 { "IspDGainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8518 check_tags_array_ignore, NULL
8519 },
8520 [CALIB_SENSOR_AEC_V21_MANUALCTRL_PIRISVALUE_TAG_ID] =
8521 { "PIrisGainValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8522 check_tags_array_ignore, NULL
8523 },
8524 [CALIB_SENSOR_AEC_V21_MANUALCTRL_DCIRISVALUE_TAG_ID] =
8525 { "DCIrisValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8526 check_tags_array_ignore, NULL
8527 },
8528 [CALIB_SENSOR_AEC_V21_MANUALCTRL_HDCIRISVALUE_TAG_ID] =
8529 { "HDCIrisValue", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8530 check_tags_array_ignore, NULL
8531 },
8532 [CALIB_SENSOR_AEC_V21_ENVLVCALIB_TAG_ID] =
8533 { "AecEnvLvCalib", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8534 check_tags_array_info(calib_sensor_aec_AecEnvLvCalib_v21_sub_tags), NULL
8535 },
8536 [CALIB_SENSOR_AEC_V21_ENVLVCALIB_CALIBFNUMBER_TAG_ID] =
8537 { "CalibFNumber", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8538 check_tags_array_ignore, NULL
8539 },
8540 [CALIB_SENSOR_AEC_V21_ENVLVCALIB_CURVECOEFF_TAG_ID] =
8541 { "CurveCoeff", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8542 check_tags_array_ignore, NULL
8543 },
8544
8545 [CALIB_SENSOR_AEC_V21_LINEARAE_CTRL_TAG_ID] =
8546 { "LinearAECtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8547 check_tags_array_info(calib_sensor_aec_LinearAECtrl_v21_sub_tags), NULL
8548 },
8549 [CALIB_SENSOR_AEC_V21_RAWSTATS_EN_TAG_ID] =
8550 { "RawStatsEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8551 check_tags_array_ignore, NULL
8552 },
8553 [CALIB_SENSOR_AEC_V21_SETPOINT_TAG_ID] =
8554 { "SetPoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8555 check_tags_array_ignore, NULL
8556 },
8557 [CALIB_SENSOR_AEC_V21_NIGHTSETPOINT_TAG_ID] =
8558 { "NightSetpoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8559 check_tags_array_ignore, NULL
8560 },
8561 [CALIB_SENSOR_AEC_V21_DYSETPOINTEN_TAG_ID] =
8562 { "DySetPointEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8563 check_tags_array_ignore, NULL
8564 },
8565 [CALIB_SENSOR_AEC_V21_DYNAMICSETPOINT_TAG_ID] =
8566 { "DynamicSetpoint", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8567 check_tags_array_info(calib_sensor_aec_DySetPointEn_v21_sub_tags), NULL
8568 },
8569 [CALIB_SENSOR_AEC_V21_EXPLEVEL_TAG_ID] =
8570 { "ExpLevel", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8571 check_tags_array_ignore, NULL
8572 },
8573 [CALIB_SENSOR_AEC_V21_DYSETPOINT_TAG_ID] =
8574 { "DySetpoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8575 check_tags_array_ignore, NULL
8576 },
8577 [CALIB_SENSOR_AEC_V21_TOLERANCE_IN_TAG_ID] =
8578 { "ToleranceIn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8579 check_tags_array_ignore, NULL
8580 },
8581 [CALIB_SENSOR_AEC_V21_TOLERANCE_OUT_TAG_ID] =
8582 { "ToleranceOut", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8583 check_tags_array_ignore, NULL
8584 },
8585 [CALIB_SENSOR_AEC_V21_STRATEGYMODE_TAG_ID] =
8586 { "StrategyMode", CALIB_TAG_TYPE_CHAR, {-1, -1},
8587 check_tags_array_ignore, NULL
8588 },
8589 [CALIB_SENSOR_AEC_V21_STRATEGYMODE_LOWLIGHT_TAG_ID] =
8590 { "LOWLIGHT_PRIOR", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8591 check_tags_array_ignore, NULL
8592 },
8593 [CALIB_SENSOR_AEC_V21_STRATEGYMODE_HIGHLIGHT_TAG_ID] =
8594 { "HIGHLIGHT_PRIOR", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8595 check_tags_array_ignore, NULL
8596 },
8597 [CALIB_SENSOR_AEC_V21_EVBIAS_TAG_ID] =
8598 { "Evbias", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8599 check_tags_array_ignore, NULL
8600 },
8601
8602 [CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_CONFIG_TAG_ID] =
8603 { "BackLightCtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8604 check_tags_array_info(calib_sensor_aec_BackLight_v21_sub_tags), NULL
8605 },
8606 [CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_ENABLE_TAG_ID] =
8607 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8608 check_tags_array_ignore, NULL
8609 },
8610 [CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_MEASAREA_TAG_ID] =
8611 { "MeasArea", CALIB_TAG_TYPE_CHAR, {-1, -1},
8612 check_tags_array_ignore, NULL
8613 },
8614 [CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_MEASAREA_AUTO_TAG_ID] =
8615 { "AUTO", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8616 check_tags_array_ignore, NULL
8617 },
8618 [CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_MEASAREA_CENTER_TAG_ID] =
8619 { "CENTER", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8620 check_tags_array_ignore, NULL
8621 },
8622 [CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_MEASAREA_LEFT_TAG_ID] =
8623 { "LEFT", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8624 check_tags_array_ignore, NULL
8625 },
8626 [CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_MEASAREA_RIGHT_TAG_ID] =
8627 { "RIGHT", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8628 check_tags_array_ignore, NULL
8629 },
8630 [CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_MEASAREA_UP_TAG_ID] =
8631 { "UP", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8632 check_tags_array_ignore, NULL
8633 },
8634 [CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_MEASAREA_BOTTOM_TAG_ID] =
8635 { "BOTTOM", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8636 check_tags_array_ignore, NULL
8637 },
8638 [CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_OEROI_LOWTH_TAG_ID] =
8639 { "OEROILowTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8640 check_tags_array_ignore, NULL
8641 },
8642 [CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_LV_LOWTH_TAG_ID] =
8643 { "LvLowTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8644 check_tags_array_ignore, NULL
8645 },
8646 [CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_LV_HIGHTH_TAG_ID] =
8647 { "LvHighTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8648 check_tags_array_ignore, NULL
8649 },
8650 [CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_NONOEPDFTH_TAG_ID] =
8651 { "NonOEPdfTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8652 check_tags_array_ignore, NULL
8653 },
8654 [CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_LOWLIGHTPDFTH_TAG_ID] =
8655 { "LowLightPdfTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8656 check_tags_array_ignore, NULL
8657 },
8658 [CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_EXPLEVEL_TAG_ID] =
8659 { "ExpLevel", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8660 check_tags_array_ignore, NULL
8661 },
8662 [CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_TARGETLLLUMA_TAG_ID] =
8663 { "TargetLLLuma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8664 check_tags_array_ignore, NULL
8665 },
8666 [CALIB_SENSOR_AEC_V21_LINAECTRL_BACKLIGHT_LUMADISTTH_TAG_ID] =
8667 { "LumaDistTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8668 check_tags_array_ignore, NULL
8669 },
8670
8671 [CALIB_SENSOR_AEC_V21_LINAECTRL_OVEREXP_CONTROL_TAG_ID] =
8672 { "OverExpCtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8673 check_tags_array_info(calib_sensor_aec_OverExp_v21_sub_tags), NULL
8674 },
8675 [CALIB_SENSOR_AEC_V21_LINAECTRL_OVEREXP_ENABLE_TAG_ID] =
8676 { "Enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8677 check_tags_array_ignore, NULL
8678 },
8679 [CALIB_SENSOR_AEC_V21_LINAECTRL_OVEREXP_HIGHLIGHT_TH_TAG_ID] =
8680 { "HighLightTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8681 check_tags_array_ignore, NULL
8682 },
8683 [CALIB_SENSOR_AEC_V21_LINAECTRL_OVEREXP_LOWLIGHT_TH_TAG_ID] =
8684 { "LowLightTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8685 check_tags_array_ignore, NULL
8686 },
8687 [CALIB_SENSOR_AEC_V21_LINAECTRL_OVEREXP_MAXWEIGHT_TAG_ID] =
8688 { "MaxWeight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8689 check_tags_array_ignore, NULL
8690 },
8691 [CALIB_SENSOR_AEC_V21_LINAECTRL_OVEREXP_OEPDF_TAG_ID] =
8692 { "OEpdf", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8693 check_tags_array_ignore, NULL
8694 },
8695 [CALIB_SENSOR_AEC_V21_LINAECTRL_OVEREXP_HIGHLIGHT_WEIGHT_TAG_ID] =
8696 { "HighLightWeight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8697 check_tags_array_ignore, NULL
8698 },
8699 [CALIB_SENSOR_AEC_V21_LINAECTRL_OVEREXP_LOWLIGHT_WEIGHT_TAG_ID] =
8700 { "LowLightWeight", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8701 check_tags_array_ignore, NULL
8702 },
8703
8704 [CALIB_SENSOR_AEC_V21_HDRAECTRL_TAG_ID] =
8705 { "HdrAECtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8706 check_tags_array_info(calib_sensor_aec_HdrAECtrl_v21_sub_tags), NULL
8707 },
8708 [CALIB_SENSOR_AEC_V21_HDRAECTRL_LONGFRMMODE_TAG_ID] =
8709 { "LongFrmMode", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8710 check_tags_array_info(calib_sensor_aec_LongFrmMode_v21_sub_tags), NULL
8711 },
8712 [CALIB_SENSOR_AEC_V21_HDRAECTRL_LONGFRMMODE_MODE_TAG_ID] =
8713 { "mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
8714 check_tags_array_ignore, NULL
8715 },
8716 [CALIB_SENSOR_AEC_V21_HDRAECTRL_LONGFRMMODE_NORMAL_TAG_ID] =
8717 { "NORMAL", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8718 check_tags_array_ignore, NULL
8719 },
8720 [CALIB_SENSOR_AEC_V21_HDRAECTRL_LONGFRMMODE_LONGFRAME_TAG_ID] =
8721 { "LONGFRAME", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8722 check_tags_array_ignore, NULL
8723 },
8724 [CALIB_SENSOR_AEC_V21_HDRAECTRL_LONGFRMMODE_AUTO_LONGFRAME_TAG_ID] =
8725 { "AUTO_LONGFRAME", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8726 check_tags_array_ignore, NULL
8727 },
8728 [CALIB_SENSOR_AEC_V21_HDRAECTRL_LONGFRMMODE_SFRMMINLINE_TAG_ID] =
8729 { "SfrmMinLine", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8730 check_tags_array_ignore, NULL
8731 },
8732 [CALIB_SENSOR_AEC_V21_HDRAECTRL_LONGFRMMODE_LFRMMODEEXPTH_TAG_ID] =
8733 { "LfrmModeExpTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8734 check_tags_array_ignore, NULL
8735 },
8736 [CALIB_SENSOR_AEC_V21_HDRAECTRL_EXPRATIOCTRL_TAG_ID] =
8737 { "ExpRatioCtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8738 check_tags_array_info(calib_sensor_aec_ExpRatioCtrl_v21_sub_tags), NULL
8739 },
8740 [CALIB_SENSOR_AEC_V21_HDRAECTRL_EXPRATIOTYPE_TAG_ID] =
8741 { "ExpRatioType", CALIB_TAG_TYPE_CHAR, {-1, -1},
8742 check_tags_array_ignore, NULL
8743 },
8744 [CALIB_SENSOR_AEC_V21_HDRAECTRL_EXPRATIOTYPE_AUTO_TAG_ID] =
8745 { "AUTO", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8746 check_tags_array_ignore, NULL
8747 },
8748 [CALIB_SENSOR_AEC_V21_HDRAECTRL_EXPRATIOTYPE_FIX_TAG_ID] =
8749 { "FIX", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8750 check_tags_array_ignore, NULL
8751 },
8752 [CALIB_SENSOR_AEC_V21_HDRAECTRL_RATIOEXPDOT_TAG_ID] =
8753 { "RatioExpDot", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8754 check_tags_array_ignore, NULL
8755 },
8756 [CALIB_SENSOR_AEC_V21_HDRAECTRL_M2SRATIOFIX_TAG_ID] =
8757 { "M2SRatioFix", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8758 check_tags_array_ignore, NULL
8759 },
8760 [CALIB_SENSOR_AEC_V21_HDRAECTRL_L2MRATIOFIX_TAG_ID] =
8761 { "L2MRatioFix", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8762 check_tags_array_ignore, NULL
8763 },
8764 [CALIB_SENSOR_AEC_V21_HDRAECTRL_M2SRATIOMAX_TAG_ID] =
8765 { "M2SRatioMax", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8766 check_tags_array_ignore, NULL
8767 },
8768 [CALIB_SENSOR_AEC_V21_HDRAECTRL_L2MRATIOMAX_TAG_ID] =
8769 { "L2MRatioMax", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8770 check_tags_array_ignore, NULL
8771 },
8772 [CALIB_SENSOR_AEC_V21_HDRAECTRL_LUMADISTTH_TAG_ID] =
8773 { "LumaDistTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8774 check_tags_array_ignore, NULL
8775 },
8776
8777 [CALIB_SENSOR_AEC_V21_HDRAECTRL_LFRAMECTRL_TAG_ID] =
8778 { "LframeCtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8779 check_tags_array_info(calib_sensor_aec_LframeCtrl_v21_sub_tags), NULL
8780 },
8781 [CALIB_SENSOR_AEC_V21_HDRAECTRL_OEROILOWTH_TAG_ID] =
8782 { "OEROILowTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8783 check_tags_array_ignore, NULL
8784 },
8785 [CALIB_SENSOR_AEC_V21_HDRAECTRL_LVHIGHTH_TAG_ID] =
8786 { "LvHighTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8787 check_tags_array_ignore, NULL
8788 },
8789 [CALIB_SENSOR_AEC_V21_HDRAECTRL_LVLOWTH_TAG_ID] =
8790 { "LvLowTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8791 check_tags_array_ignore, NULL
8792 },
8793 [CALIB_SENSOR_AEC_V21_HDRAECTRL_LEXPLEVEL_TAG_ID] =
8794 { "LExpLevel", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8795 check_tags_array_ignore, NULL
8796 },
8797 [CALIB_SENSOR_AEC_V21_HDRAECTRL_LSETPOINT_TAG_ID] =
8798 { "LSetPoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8799 check_tags_array_ignore, NULL
8800 },
8801 [CALIB_SENSOR_AEC_V21_HDRAECTRL_TARGETLLLUMA_TAG_ID] =
8802 { "TargetLLLuma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8803 check_tags_array_ignore, NULL
8804 },
8805 [CALIB_SENSOR_AEC_V21_HDRAECTRL_NONOEPDFTH_TAG_ID] =
8806 { "NonOEPdfTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8807 check_tags_array_ignore, NULL
8808 },
8809 [CALIB_SENSOR_AEC_V21_HDRAECTRL_LOWLIGHTPDFTH_TAG_ID] =
8810 { "LowLightPdfTh", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8811 check_tags_array_ignore, NULL
8812 },
8813
8814 [CALIB_SENSOR_AEC_V21_HDRAECTRL_MFRAMECTRL_TAG_ID] =
8815 { "MframeCtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8816 check_tags_array_info(calib_sensor_aec_MframeCtrl_v21_sub_tags), NULL
8817 },
8818 [CALIB_SENSOR_AEC_V21_HDRAECTRL_MEXPLEVEL_TAG_ID] =
8819 { "MExpLevel", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8820 check_tags_array_ignore, NULL
8821 },
8822 [CALIB_SENSOR_AEC_V21_HDRAECTRL_MSETPOINT_TAG_ID] =
8823 { "MSetPoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8824 check_tags_array_ignore, NULL
8825 },
8826
8827 [CALIB_SENSOR_AEC_V21_HDRAECTRL_SFRAMECTRL_TAG_ID] =
8828 { "SframeCtrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8829 check_tags_array_info(calib_sensor_aec_SframeCtrl_v21_sub_tags), NULL
8830 },
8831 [CALIB_SENSOR_AEC_V21_HDRAECTRL_SEXPLEVEL_TAG_ID] =
8832 { "SExpLevel", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8833 check_tags_array_ignore, NULL
8834 },
8835 [CALIB_SENSOR_AEC_V21_HDRAECTRL_SSETPOINT_TAG_ID] =
8836 { "SSetPoint", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8837 check_tags_array_ignore, NULL
8838 },
8839 [CALIB_SENSOR_AEC_V21_HDRAECTRL_TARGETHLLUMA_TAG_ID] =
8840 { "TargetHLLuma", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8841 check_tags_array_ignore, NULL
8842 },
8843 [CALIB_SENSOR_AEC_V21_HDRAECTRL_HLROIEXPANDEN_TAG_ID] =
8844 { "HLROIExpandEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8845 check_tags_array_ignore, NULL
8846 },
8847 [CALIB_SENSOR_AEC_V21_HDRAECTRL_HLLUMATOLERANCE_TAG_ID] =
8848 { "HLLumaTolerance", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8849 check_tags_array_ignore, NULL
8850 },
8851
8852 // System
8853 [CALIB_SYSTEM_TAG_ID] =
8854 { "system", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8855 check_tags_array_info(calib_system_sub_tags), NULL
8856 },
8857
8858 [CALIB_SYSTEM_HDR_TAG_ID] =
8859 { "HDR", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8860 check_tags_array_info(calib_system_hdr_sub_tags), NULL
8861 },
8862 [CALIB_SYSTEM_HDR_ENABLE_TAG_ID] =
8863 { "enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8864 check_tags_array_ignore, NULL
8865 },
8866 [CALIB_SYSTEM_HDR_SUPPORT_MODE_TAG_ID] =
8867 { "support_mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
8868 check_tags_array_ignore, NULL
8869 },
8870 [CALIB_SYSTEM_HDR_LINE_MODE_TAG_ID] =
8871 { "line_mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
8872 check_tags_array_ignore, NULL
8873 },
8874
8875 [CALIB_SYSTEM_DCG_SETTING_TAG_ID] =
8876 { "DCG_SETTING", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8877 check_tags_array_info(calib_system_DCG_SETTING_sub_tags), NULL
8878 },
8879 [CALIB_SYSTEM_DCG_SETTING_NORMAL_TAG_ID] =
8880 { "Normal", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8881 check_tags_array_info(calib_system_DCG_SETTING_Normal_sub_tags), NULL
8882 },
8883 [CALIB_SYSTEM_DCG_SETTING_HDR_TAG_ID] =
8884 { "Hdr", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8885 check_tags_array_info(calib_system_DCG_SETTING_Hdr_sub_tags), NULL
8886 },
8887 [CALIB_SYSTEM_DCG_SUPPORT_EN_TAG_ID] =
8888 { "support_en", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8889 check_tags_array_ignore, NULL
8890 },
8891 [CALIB_SYSTEM_DCG_OPTYPE_TAG_ID] =
8892 { "dcg_optype", CALIB_TAG_TYPE_CHAR, {-1, -1},
8893 check_tags_array_ignore, NULL
8894 },
8895 [CALIB_SYSTEM_DCG_OPTYPE_AUTO_TAG_ID] =
8896 { "AUTO", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8897 check_tags_array_ignore, NULL
8898 },
8899 [CALIB_SYSTEM_DCG_OPTYPE_MANUAL_TAG_ID] =
8900 { "MANUAL", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8901 check_tags_array_ignore, NULL
8902 },
8903 [CALIB_SYSTEM_DCG_MODE_INIT_TAG_ID] =
8904 { "dcgmode_init", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8905 check_tags_array_ignore, NULL
8906 },
8907 [CALIB_SYSTEM_DCG_RATIO_TAG_ID] =
8908 { "dcg_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8909 check_tags_array_ignore, NULL
8910 },
8911 [CALIB_SYSTEM_DCG_GAINCTRL_TAG_ID] =
8912 { "gain_ctrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8913 check_tags_array_info(calib_system_gain_ctrl_sub_tags), NULL
8914 },
8915 [CALIB_SYSTEM_DCG_ENVCTRL_TAG_ID] =
8916 { "env_ctrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8917 check_tags_array_info(calib_system_env_ctrl_sub_tags), NULL
8918 },
8919 [CALIB_SYSTEM_DCG_SYNC_SWITCH_TAG_ID] =
8920 { "sync_switch", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8921 check_tags_array_ignore, NULL
8922 },
8923 [CALIB_SYSTEM_DCG_ENABLE_TAG_ID] =
8924 { "enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8925 check_tags_array_ignore, NULL
8926 },
8927 [CALIB_SYSTEM_DCG_LCG2HCG_TH_TAG_ID] =
8928 { "lcg2hcg_th", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8929 check_tags_array_ignore, NULL
8930 },
8931 [CALIB_SYSTEM_DCG_HCG2LCG_TH_TAG_ID] =
8932 { "hcg2lcg_th", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8933 check_tags_array_ignore, NULL
8934 },
8935
8936 [CALIB_SYSTEM_EXP_DELAY_TAG_ID] =
8937 { "EXP_DELAY", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8938 check_tags_array_info(calib_system_EXP_DELAY_sub_tags), NULL
8939 },
8940 [CALIB_SYSTEM_EXP_DELAY_NORMAL_TAG_ID] =
8941 { "Normal", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8942 check_tags_array_info(calib_system_EXP_DELAY_Normal_sub_tags), NULL
8943 },
8944 [CALIB_SYSTEM_EXP_DELAY_HDR_TAG_ID] =
8945 { "Hdr", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8946 check_tags_array_info(calib_system_EXP_DELAY_Hdr_sub_tags), NULL
8947 },
8948 [CALIB_SYSTEM_EXP_DELAY_TIME_TAG_ID] =
8949 { "time_delay", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8950 check_tags_array_ignore, NULL
8951 },
8952 [CALIB_SYSTEM_EXP_DELAY_GAIN_TAG_ID] =
8953 { "gain_delay", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8954 check_tags_array_ignore, NULL
8955 },
8956 [CALIB_SYSTEM_EXP_DELAY_DCG_TAG_ID] =
8957 { "dcg_delay", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8958 check_tags_array_ignore, NULL
8959 },
8960 // ExpSet
8961 [CALIB_EXPSET_TAG_ID] =
8962 { "expset", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8963 check_tags_array_info(calib_expset_sub_tags), NULL
8964 },
8965 [CALIB_EXPSET_GAIN2REG_TAG_ID] =
8966 { "Gain2Reg", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8967 check_tags_array_info(calib_expset_gain2reg_sub_tags), NULL
8968 },
8969 [CALIB_EXPSET_GAIN2REG_ISLINEAR_TAG_ID] =
8970 { "IsLinear", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8971 check_tags_array_ignore, NULL
8972 },
8973 [CALIB_EXPSET_GAIN2REG_LINEAR_TAG_ID] =
8974 { "Linear", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8975 check_tags_array_ignore, NULL
8976 },
8977 [CALIB_EXPSET_GAIN2REG_NONLINEAR_TAG_ID] =
8978 { "NonLinear", CALIB_TAG_TYPE_CHAR, {-1, -1},
8979 check_tags_array_ignore, NULL
8980 },
8981 [CALIB_EXPSET_GAIN2REG_NONLINEAR_DB_TAG_ID] =
8982 { "DB_MODE", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
8983 check_tags_array_ignore, NULL
8984 },
8985 [CALIB_EXPSET_TIME2REG_TAG_ID] =
8986 { "Time2Reg", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8987 check_tags_array_ignore, NULL
8988 },
8989 [CALIB_EXPSET_GAINSET_TAG_ID] =
8990 { "CISGainSet", CALIB_TAG_TYPE_STRUCT, {-1, -1},
8991 check_tags_array_info(calib_expset_gainset_sub_tags), NULL
8992 },
8993 [CALIB_EXPSET_CISAGAIN_RANGE_TAG_ID] =
8994 { "CISAgainRange", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8995 check_tags_array_ignore, NULL
8996 },
8997 [CALIB_EXPSET_CISEXTRAAGAIN_RANGE_TAG_ID] =
8998 { "CISExtraAgainRange", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
8999 check_tags_array_ignore, NULL
9000 },
9001 [CALIB_EXPSET_CISDGAIN_RANGE_TAG_ID] =
9002 { "CISDgainRange", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9003 check_tags_array_ignore, NULL
9004 },
9005 [CALIB_EXPSET_CISISPDGAIN_RANGE_TAG_ID] =
9006 { "CISIspDgainRange", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9007 check_tags_array_ignore, NULL
9008 },
9009 [CALIB_EXPSET_CISHDRGAININDSETEN_TAG_ID] =
9010 { "CISHdrGainIndSetEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9011 check_tags_array_ignore, NULL
9012 },
9013 [CALIB_EXPSET_TIMESET_TAG_ID] =
9014 { "CISTimeSet", CALIB_TAG_TYPE_STRUCT, {-1, -1},
9015 check_tags_array_info(calib_expset_timeset_sub_tags), NULL
9016 },
9017 [CALIB_EXPSET_TIMESET_NORMAL_TAG_ID] =
9018 { "Normal", CALIB_TAG_TYPE_STRUCT, {-1, -1},
9019 check_tags_array_info(calib_expset_timeset_normal_sub_tags), NULL
9020 },
9021 [CALIB_EXPSET_TIMESET_HDR_TAG_ID] =
9022 { "Hdr", CALIB_TAG_TYPE_CELL, {-1, -1},
9023 check_tags_array_info(calib_expset_timeset_hdr_sub_tags), NULL
9024 },
9025 [CALIB_EXPSET_NAME_TAG_ID] =
9026 { "name", CALIB_TAG_TYPE_CHAR, {-1, -1},
9027 check_tags_array_ignore, NULL
9028 },
9029 [CALIB_EXPSET_CISLINTIMEREG_MAXFAC_TAG_ID] =
9030 { "CISTimeRegMaxFac", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9031 check_tags_array_ignore, NULL
9032 },
9033 [CALIB_EXPSET_CISHDRTIMEREG_SUMFAC_TAG_ID] =
9034 { "CISTimeRegSumFac", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9035 check_tags_array_ignore, NULL
9036 },
9037 [CALIB_EXPSET_CISTIMEREG_UNEQUALEN_TAG_ID] =
9038 { "CISTimeRegUnEqualEn", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9039 check_tags_array_ignore, NULL
9040 },
9041 [CALIB_EXPSET_CISTIMEREG_ODEVITY_TAG_ID] =
9042 { "CISTimeRegOdevity", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9043 check_tags_array_ignore, NULL
9044 },
9045 [CALIB_EXPSET_CISTIMEREG_MIN_TAG_ID] =
9046 { "CISTimeRegMin", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9047 check_tags_array_ignore, NULL
9048 },
9049 [CALIB_EXPSET_CISTIMEREG_MAX_TAG_ID] =
9050 { "CISTimeRegMax", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9051 check_tags_array_ignore, NULL
9052 },
9053 [CALIB_EXPSET_CISMINFPS_TAG_ID] =
9054 { "CISMinFps", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9055 check_tags_array_ignore, NULL
9056 },
9057
9058 [CALIB_EXPSET_HDRSET_TAG_ID] =
9059 { "CISHdrSet", CALIB_TAG_TYPE_STRUCT, {-1, -1},
9060 check_tags_array_info(calib_expset_hdrset_sub_tags), NULL
9061 },
9062 [CALIB_EXPSET_HDRSET_ENABLE_TAG_ID] =
9063 { "enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9064 check_tags_array_ignore, NULL
9065 },
9066 [CALIB_EXPSET_HDRSET_SUPPORT_MODE_TAG_ID] =
9067 { "support_mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
9068 check_tags_array_ignore, NULL
9069 },
9070 [CALIB_EXPSET_HDRSET_LINE_MODE_TAG_ID] =
9071 { "line_mode", CALIB_TAG_TYPE_CHAR, {-1, -1},
9072 check_tags_array_ignore, NULL
9073 },
9074
9075 [CALIB_EXPSET_DCGSET_TAG_ID] =
9076 { "CISDcgSet", CALIB_TAG_TYPE_STRUCT, {-1, -1},
9077 check_tags_array_info(calib_expset_dcgset_sub_tags), NULL
9078 },
9079 [CALIB_EXPSET_DCGSET_NORMAL_TAG_ID] =
9080 { "Normal", CALIB_TAG_TYPE_STRUCT, {-1, -1},
9081 check_tags_array_info(calib_expset_dcgset_normal_sub_tags), NULL
9082 },
9083 [CALIB_EXPSET_DCGSET_HDR_TAG_ID] =
9084 { "Hdr", CALIB_TAG_TYPE_STRUCT, {-1, -1},
9085 check_tags_array_info(calib_expset_dcgset_hdr_sub_tags), NULL
9086 },
9087 [CALIB_EXPSET_DCGSET_SUPPORT_EN_TAG_ID] =
9088 { "support_en", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9089 check_tags_array_ignore, NULL
9090 },
9091 [CALIB_EXPSET_DCGSET_OPTYPE_TAG_ID] =
9092 { "dcg_optype", CALIB_TAG_TYPE_CHAR, {-1, -1},
9093 check_tags_array_ignore, NULL
9094 },
9095 [CALIB_EXPSET_DCGSET_OPTYPE_AUTO_TAG_ID] =
9096 { "AUTO", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
9097 check_tags_array_ignore, NULL
9098 },
9099 [CALIB_EXPSET_DCGSET_OPTYPE_MANUAL_TAG_ID] =
9100 { "MANUAL", CALIB_TAG_TYPE_UNKNOWN, {-1, -1},
9101 check_tags_array_ignore, NULL
9102 },
9103 [CALIB_EXPSET_DCGSET_MODE_INIT_TAG_ID] =
9104 { "dcgmode_init", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9105 check_tags_array_ignore, NULL
9106 },
9107 [CALIB_EXPSET_DCGSET_RATIO_TAG_ID] =
9108 { "dcg_ratio", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9109 check_tags_array_ignore, NULL
9110 },
9111 [CALIB_EXPSET_DCGSET_GAINCTRL_TAG_ID] =
9112 { "gain_ctrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
9113 check_tags_array_info(calib_expset_dcgset_gainctrl_sub_tags), NULL
9114 },
9115 [CALIB_EXPSET_DCGSET_ENVCTRL_TAG_ID] =
9116 { "env_ctrl", CALIB_TAG_TYPE_STRUCT, {-1, -1},
9117 check_tags_array_info(calib_expset_dcgset_envctrl_sub_tags), NULL
9118 },
9119 [CALIB_EXPSET_DCGSET_SYNC_SWITCH_TAG_ID] =
9120 { "sync_switch", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9121 check_tags_array_ignore, NULL
9122 },
9123 [CALIB_EXPSET_DCGSET_ENABLE_TAG_ID] =
9124 { "enable", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9125 check_tags_array_ignore, NULL
9126 },
9127 [CALIB_EXPSET_DCGSET_LCG2HCG_TH_TAG_ID] =
9128 { "lcg2hcg_th", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9129 check_tags_array_ignore, NULL
9130 },
9131 [CALIB_EXPSET_DCGSET_HCG2LCG_TH_TAG_ID] =
9132 { "hcg2lcg_th", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9133 check_tags_array_ignore, NULL
9134 },
9135
9136 [CALIB_EXPSET_EXP_UPDATE_TAG_ID] =
9137 { "CISExpUpdate", CALIB_TAG_TYPE_STRUCT, {-1, -1},
9138 check_tags_array_info(calib_expset_expupdate_sub_tags), NULL
9139 },
9140 [CALIB_EXPSET_EXP_UPDATE_NORMAL_TAG_ID] =
9141 { "Normal", CALIB_TAG_TYPE_STRUCT, {-1, -1},
9142 check_tags_array_info(calib_expset_expupdate_normal_sub_tags), NULL
9143 },
9144 [CALIB_EXPSET_EXP_UPDATE_HDR_TAG_ID] =
9145 { "Hdr", CALIB_TAG_TYPE_STRUCT, {-1, -1},
9146 check_tags_array_info(calib_expset_expupdate_hdr_sub_tags), NULL
9147 },
9148 [CALIB_EXPSET_EXP_UPDATE_TIME_TAG_ID] =
9149 { "time_update", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9150 check_tags_array_ignore, NULL
9151 },
9152 [CALIB_EXPSET_EXP_UPDATE_GAIN_TAG_ID] =
9153 { "gain_update", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9154 check_tags_array_ignore, NULL
9155 },
9156 [CALIB_EXPSET_EXP_UPDATE_DCG_TAG_ID] =
9157 { "dcg_update", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9158 check_tags_array_ignore, NULL
9159 },
9160 [CALIB_EXPSET_CISFLIP_TAG_ID] =
9161 { "CISFlip", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9162 check_tags_array_ignore, NULL
9163 },
9164
9165 //Module Info
9166 [CALIB_MODULEINFO_TAG_ID] =
9167 { "module", CALIB_TAG_TYPE_STRUCT, {-1, -1},
9168 check_tags_array_info(calib_moduleinfo_sub_tags), NULL
9169 },
9170 [CALIB_MODULEINFO_FNUMBER_TAG_ID] =
9171 { "FNumber", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9172 check_tags_array_ignore, NULL
9173 },
9174 [CALIB_MODULEINFO_EFL_TAG_ID] =
9175 { "EFL", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9176 check_tags_array_ignore, NULL
9177 },
9178 [CALIB_MODULEINFO_LENS_TRANSMITTANCE_TAG_ID] =
9179 { "LensTavg", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9180 check_tags_array_ignore, NULL
9181 },
9182 [CALIB_MODULEINFO_IRCUT_TRANSMITTANCE_TAG_ID] =
9183 { "IRCutTavg", CALIB_TAG_TYPE_DOUBLE, {-1, -1},
9184 check_tags_array_ignore, NULL
9185 },
9186
9187 };
9188
9189 typedef struct calib_tag_check_info_s {
9190 // all sub tags should be checked
9191 uint32_t* checking_tags;
9192 // sub tags array size
9193 uint32_t count;
9194 // check times for each sub tag
9195 int16_t* tag_counts_remain;
9196 } calib_tag_check_info_t;
9197
calib_check_calc_checksum()9198 uint32_t calib_check_calc_checksum() {
9199
9200 calib_tag_info_t* tag_info = NULL;
9201 int i = 0, j = 0;
9202 uint32_t checkSum = 0;
9203 int length = 0;
9204 uint32_t value = 0;
9205
9206 for(i = 0; i < CALIB_IQ_TAG_END; i++) {
9207 length = 0;
9208 tag_info = &(g_calib_tag_infos[i]);
9209
9210 //add name
9211 if(tag_info->name == NULL) {
9212 LOGE("%s(%d): pls init the taginfo in g_calib_tag_infos first, id:%d, Assert!\n",
9213 __FUNCTION__, __LINE__, i);
9214 DCT_ASSERT(false);
9215 }
9216
9217 length = strlen(tag_info->name);
9218 for(j = 0; j < length; j++) {
9219 value = (uint32_t)(tag_info->name[j]);
9220 checkSum += value;
9221 }
9222
9223 // add type
9224 value = (uint32_t)(tag_info->type);
9225 checkSum += value;
9226
9227 //add size
9228 value = (uint32_t)(tag_info->size[0]);
9229 checkSum += value;
9230 value = (uint32_t)(tag_info->size[1]);
9231 checkSum += value;
9232 }
9233
9234 LOGD("%s(%d): checksum:%u \n", __FUNCTION__, __LINE__, checkSum);
9235
9236 LOGD("%s(%d): exit\n", __FUNCTION__, __LINE__);
9237 return checkSum;
9238 }
9239
9240 /***************************************************************
9241 * name: calib_check_getID_by_name
9242 * description: called to get tag id from tag name
9243 *
9244 * params:
9245 * tag_name: current tag name
9246 * parent_tag_id: current parent tag id, used to to retrieve the correspoing
9247 * calib_tag_info_t from g_calib_tag_infos.
9248 * tag_id: current tag id, used to to retrieve the correspoing
9249 * calib_tag_info_t from g_calib_tag_infos.
9250 *
9251 ***************************************************************/
calib_check_getID_by_name(char * tag_name,CALIB_IQ_TAG_ID_T parent_tag_id,CALIB_IQ_TAG_ID_T * tag_id)9252 int calib_check_getID_by_name(char* tag_name, CALIB_IQ_TAG_ID_T parent_tag_id, CALIB_IQ_TAG_ID_T * tag_id ) {
9253
9254 uint32_t i = 0;
9255 calib_tag_check_info_t* parent_check_info =
9256 (calib_tag_check_info_t*)(g_calib_tag_infos[parent_tag_id].check_info);
9257
9258 if(parent_tag_id >= CALIB_IQ_TAG_END) {
9259 LOGE("%s(%d): parent_tag_id:%d tag_name:%s --- tag id is is wrong: min:0 max:%d \n",
9260 __FUNCTION__, __LINE__,
9261 parent_tag_id, tag_name, CALIB_IQ_TAG_END);
9262 DCT_ASSERT(false);
9263 return -1;
9264 }
9265
9266
9267 #ifdef CALIBDB_CHECK_DEBUG
9268 LOGD("%s(%d): parent_tag_id:%d parent_tag_name:%s tagname:%s \n",
9269 __FUNCTION__, __LINE__,
9270 parent_tag_id, TAG_NAME(parent_tag_id),
9271 tag_name);
9272 #endif
9273
9274 if (!parent_check_info) {
9275 LOGD("%s(%d): parent_tag_id:%d parent_tag_name:%s tag_name:%s --- parent_check_info is NULL, return\n",
9276 __FUNCTION__, __LINE__, parent_tag_id, TAG_NAME(parent_tag_id), tag_name);
9277 DCT_ASSERT(false);
9278 return -1;
9279 }
9280
9281 //find sub tag id == tag_id , then set size to tag_counts_remain
9282 for( i = 0; i < parent_check_info->count; i++) {
9283 if( !strcmp(TAG_NAME(parent_check_info->checking_tags[i]), tag_name)) {
9284 *tag_id = (CALIB_IQ_TAG_ID_T)parent_check_info->checking_tags[i];
9285 break;
9286 }
9287 }
9288
9289 if(i < parent_check_info->count) {
9290 return 0;
9291 } else {
9292 LOGE("%s(%d): subtag: %s from parent tag: %s is unknown, assert!!!\n",
9293 __FUNCTION__, __LINE__, tag_name, TAG_NAME(parent_tag_id));
9294 DCT_ASSERT(false);
9295 return -1;
9296 }
9297 }
9298
9299 /***************************************************************
9300 * name: calib_check_tag_attrs
9301 * description: called when entering tag. check tag's attributes.
9302 *
9303 * params:
9304 * tag_id: current tag id, used to to retrieve the correspoing
9305 * calib_tag_info_t from g_calib_tag_infos.
9306 * size: the current tag's size parsed from xml
9307 * type: the current tag's type parsed from xml
9308 *
9309 ***************************************************************/
calib_check_cell_set_size(CALIB_IQ_TAG_ID_T tag_id,CALIB_IQ_TAG_ID_T parent_tag_id,int size)9310 int calib_check_cell_set_size(CALIB_IQ_TAG_ID_T tag_id, CALIB_IQ_TAG_ID_T parent_tag_id, int size) {
9311
9312 calib_tag_info_t* tag_info = &(g_calib_tag_infos[tag_id]);
9313 calib_tag_check_info_t* parent_check_info =
9314 (calib_tag_check_info_t*)(g_calib_tag_infos[parent_tag_id].check_info);
9315
9316 if(tag_id >= CALIB_IQ_TAG_END || parent_tag_id >= CALIB_IQ_TAG_END) {
9317 LOGE("%s(%d): parent_tag_id:%d tag_id:%d tag_name:%s --- tag id is is wrong: min:0 max:%d \n",
9318 __FUNCTION__, __LINE__,
9319 parent_tag_id, tag_id, TAG_NAME(tag_id), CALIB_IQ_TAG_END);
9320 DCT_ASSERT(false);
9321 return -1;
9322 }
9323
9324 #ifdef CALIBDB_CHECK_DEBUG
9325 LOGD("%s(%d): parent_tag_id:%d parent_tag_name:%s tag id:%d tagname:%s size:%d \n",
9326 __FUNCTION__, __LINE__,
9327 parent_tag_id, TAG_NAME(parent_tag_id),
9328 tag_id, TAG_NAME(tag_id), size);
9329 #endif
9330
9331 if (!parent_check_info || !tag_info) {
9332 LOGD("%s(%d): parent_tag_id:%d parent_tag_name:%s tag_id:%d tag_name:%s --- invalid pointer, return\n",
9333 __FUNCTION__, __LINE__, parent_tag_id, TAG_NAME(parent_tag_id), tag_id, TAG_NAME(tag_id));
9334 DCT_ASSERT(false);
9335 return -1;
9336 }
9337
9338 if(tag_info->type == CALIB_TAG_TYPE_CELL) {
9339 //find sub tag id == tag_id , then set size to tag_counts_remain
9340 for(uint32_t i = 0; i < parent_check_info->count; i++) {
9341 if(parent_check_info->checking_tags[i] == tag_id) {
9342 parent_check_info->tag_counts_remain[i] = size;
9343 }
9344 }
9345 }
9346
9347 return 0;
9348 }
9349
9350
9351 /***************************************************************
9352 * name: calib_check_tag_attrs
9353 * description: called when entering tag. check tag's attributes.
9354 *
9355 * params:
9356 * tag_id: current tag id, used to to retrieve the correspoing
9357 * calib_tag_info_t from g_calib_tag_infos.
9358 * size: the current tag's size parsed from xml
9359 * type: the current tag's type parsed from xml
9360 *
9361 ***************************************************************/
calib_check_tag_attrs(CALIB_IQ_TAG_ID_T tag_id,uint32_t type,int size,CALIB_IQ_TAG_ID_T parent_tag_id)9362 int calib_check_tag_attrs(CALIB_IQ_TAG_ID_T tag_id,
9363 uint32_t type,
9364 int size,
9365 CALIB_IQ_TAG_ID_T parent_tag_id)
9366 {
9367 calib_tag_info_t* tag_info = &(g_calib_tag_infos[tag_id]);
9368
9369 if(tag_id >= CALIB_IQ_TAG_END || parent_tag_id >= CALIB_IQ_TAG_END) {
9370 LOGE("%s(%d): parent_tag_id:%d tag_id:%d --- tag id is is wrong: min:0 max:%d \n",
9371 __FUNCTION__, __LINE__, parent_tag_id, tag_id, CALIB_IQ_TAG_END);
9372 goto failure;
9373 }
9374
9375 #ifdef CALIBDB_CHECK_DEBUG
9376 LOGD("%s(%d): parent_tag_id:%d parent_tag_name:%s tag id:%d tagname:%s \n",
9377 __FUNCTION__, __LINE__, parent_tag_id, TAG_NAME(parent_tag_id), tag_id, TAG_NAME(tag_id));
9378 #endif
9379
9380 if (!tag_info) {
9381 LOGE("%s(%d): parent_tag_id:%d parent_tag_name:%s tag_id:%d tag_name:%s --- tag_info is NULL \n",
9382 __FUNCTION__, __LINE__, parent_tag_id, TAG_NAME(parent_tag_id), tag_id, TAG_NAME(tag_id));
9383 goto failure;
9384 }
9385
9386 if(size <= 0) {
9387 LOGE("%s(%d): parent_tag_id:%d parent_tag_name:%s tag_id:%d tag_name:%s --- tag size:%d is wrong \n",
9388 __FUNCTION__, __LINE__, parent_tag_id, TAG_NAME(parent_tag_id), tag_id, TAG_NAME(tag_id), size);
9389 goto failure;
9390 }
9391
9392 // check type
9393 if(tag_info->type != type) {
9394 LOGE("%s(%d): parent_tag_id:%d parent_tag_name:%s tag_id:%d tag_name:%s --- tag_info type not match (%d) != (%d) \n",
9395 __FUNCTION__, __LINE__,
9396 parent_tag_id, TAG_NAME(parent_tag_id), tag_id, TAG_NAME(tag_id),
9397 tag_info->type, type);
9398 goto failure;
9399 }
9400
9401 // check size if size is static
9402 if(tag_info->size[0] != -1 && tag_info->size[1] != -1) {
9403 if(tag_info->size[0] * tag_info->size[1] != size) {
9404 LOGE("%s(%d): parent_tag_id:%d parent_tag_name:%s tag_id:%d tag_name:%s --- tag_info size not match (%d) != (%d) \n",
9405 __FUNCTION__, __LINE__,
9406 parent_tag_id, TAG_NAME(parent_tag_id), tag_id, TAG_NAME(tag_id),
9407 tag_info->size[0] * tag_info->size[1], size);
9408 goto failure;
9409 }
9410 }
9411
9412 return 0;
9413
9414 failure:
9415
9416 LOGE("%s(%d): parent_tag_id:%d parent_tag_name:%s tag_id:%d tag_name:%s --- ASSERT!!!\n",
9417 __FUNCTION__, __LINE__, parent_tag_id, TAG_NAME(parent_tag_id), tag_id, TAG_NAME(tag_id));
9418
9419 DCT_ASSERT(false);
9420
9421 return -1;
9422
9423 }
9424
9425 /***************************************************************
9426 * name: calib_check_nonleaf_tag_start
9427 * description: called when entering a non leaf node tag. non leaf
9428 * node means the node has more than one sub tags.
9429 * params:
9430 * tag_id: current tag id, used to to retrieve the correspoing
9431 * calib_tag_info_t from g_calib_tag_infos.
9432 *
9433 ***************************************************************/
calib_check_nonleaf_tag_start(CALIB_IQ_TAG_ID_T tag_id,CALIB_IQ_TAG_ID_T parent_tag_id)9434 int calib_check_nonleaf_tag_start(CALIB_IQ_TAG_ID_T tag_id, CALIB_IQ_TAG_ID_T parent_tag_id)
9435 {
9436 int ret = -1;
9437 // return if tag name is "cell"
9438 // if not the leaf node, generate check tag list
9439 calib_tag_info_t *tag_info = &(g_calib_tag_infos[tag_id]);
9440 calib_tag_check_info_t* check_info =
9441 (calib_tag_check_info_t *)calloc(sizeof(calib_tag_check_info_t), 1);
9442
9443 if(check_info == NULL) {
9444 LOGE("%s(%d): tag_id:%d tag_name:%s --- check_info malloc fail \n",
9445 __FUNCTION__, __LINE__, tag_id, TAG_NAME(tag_id));
9446 goto failure;
9447 }
9448
9449 #ifdef CALIBDB_CHECK_DEBUG
9450 LOGD("%s(%d): tag id:%d tagname:%s \n",
9451 __FUNCTION__, __LINE__, tag_id, TAG_NAME(tag_id));
9452 #endif
9453
9454 if(tag_id >= CALIB_IQ_TAG_END || parent_tag_id >= CALIB_IQ_TAG_END) {
9455 LOGE("%s(%d): tag_id:%d parent_tag_id:%d --- tag_id is wrong: min:0 max:%d\n",
9456 __FUNCTION__, __LINE__, tag_id, parent_tag_id, CALIB_IQ_TAG_END);
9457 goto failure;
9458 }
9459
9460 //mark parent id first
9461 if(tag_id != CALIB_FILESTART_TAG_ID) {
9462 int ret = calib_check_tag_mark(tag_id, parent_tag_id);
9463 if(ret != 0) {
9464 LOGE("%s(%d): tag_id:%d tag_name:%s parent_id:%d parent_name:%s: mark parent error assert !!!\n",
9465 __FUNCTION__, __LINE__,
9466 tag_id, TAG_NAME(tag_id),
9467 parent_tag_id, TAG_NAME(parent_tag_id));
9468 goto failure;
9469 }
9470 }
9471
9472 if (!check_info) {
9473 LOGE("%s(%d): tag_id:%d tag_name:%s --- check info malloc fail!\n",
9474 __FUNCTION__, __LINE__, tag_id, TAG_NAME(tag_id));
9475 goto failure;
9476 }
9477
9478 if (tag_info->check_info != NULL) {
9479 LOGE("%s(%d): tag_id:%d tag_name:%s --- has check info already \n",
9480 __FUNCTION__, __LINE__, tag_id, TAG_NAME(tag_id));
9481 goto failure;
9482 }
9483
9484 if (tag_info->sub_tags_array_size > 0) {
9485 #ifdef CALIBDB_CHECK_DEBUG
9486 LOGD("%s(%d): tag_id:%d tag_name:%s --- sub_tags_array_size:%d \n",
9487 __FUNCTION__, __LINE__,
9488 tag_id, TAG_NAME(tag_id),
9489 tag_info->sub_tags_array_size);
9490 #endif
9491 check_info->checking_tags =
9492 (uint32_t *)malloc(tag_info->sub_tags_array_size * sizeof(uint32_t));
9493 if(check_info->checking_tags == NULL) {
9494 LOGE("%s(%d): tag_id:%d tag_name:%s --- checking_tags malloc fail \n",
9495 __FUNCTION__, __LINE__, tag_id, TAG_NAME(tag_id));
9496 goto failure;
9497 }
9498 memset(check_info->checking_tags, 0x00,
9499 tag_info->sub_tags_array_size * sizeof(uint32_t));
9500
9501 memcpy(check_info->checking_tags, tag_info->sub_tags_array,
9502 sizeof(uint32_t) * tag_info->sub_tags_array_size);
9503
9504 check_info->tag_counts_remain =
9505 (int16_t *)malloc(tag_info->sub_tags_array_size * sizeof(int16_t));
9506 if (!check_info->tag_counts_remain) {
9507 LOGE("%s(%d): tag_id:%d tag_name:%s --- new tag_counts_remain malloc fail \n",
9508 __FUNCTION__, __LINE__, tag_id, TAG_NAME(tag_id));
9509 goto failure;
9510 }
9511 for (int32_t i = 0; i < tag_info->sub_tags_array_size; i++ ) {
9512 check_info->tag_counts_remain[i] = 1;
9513 }
9514 }
9515
9516 check_info->count = tag_info->sub_tags_array_size;
9517 tag_info->check_info = (void*)check_info;
9518
9519 #ifdef CALIBDB_CHECK_DEBUG
9520 LOGD("%s(%d): tag_id:%d tag_name:%s --- check info:%p size:%d \n",
9521 __FUNCTION__, __LINE__,
9522 tag_id, TAG_NAME(tag_id),
9523 check_info, check_info->count);
9524 #endif
9525
9526 return ret;
9527
9528 failure:
9529 if (check_info) {
9530 if (check_info->tag_counts_remain)
9531 free(check_info->tag_counts_remain);
9532 if (check_info->checking_tags )
9533 free(check_info->checking_tags);
9534 free(check_info);
9535 }
9536
9537 LOGE("%s(%d): tag_id:%d tag_name:%s --- return failure \n",
9538 __FUNCTION__, __LINE__, tag_id, TAG_NAME(tag_id));
9539 return ret;
9540 }
9541
9542 /***************************************************************
9543 * name: calib_check_tag_mark
9544 * description: called for every tag. for non leaf node tag, should
9545 * be called before calib_check_tag_end.
9546 * params:
9547 * tag_id: be marked as checked in parent's checking list
9548 * parent_tag_id: to look for the parents checking list
9549 * return
9550 *
9551 ***************************************************************/
calib_check_tag_mark(CALIB_IQ_TAG_ID_T tag_id,CALIB_IQ_TAG_ID_T parent_tag_id)9552 int calib_check_tag_mark(CALIB_IQ_TAG_ID_T tag_id, CALIB_IQ_TAG_ID_T parent_tag_id)
9553 {
9554 // remove the checkd tag from parent's checking tag list
9555 calib_tag_check_info_t* parent_check_info =
9556 (calib_tag_check_info_t*)(g_calib_tag_infos[parent_tag_id].check_info);
9557
9558 if(tag_id >= CALIB_IQ_TAG_END || parent_tag_id >= CALIB_IQ_TAG_END ) {
9559 LOGE("%s(%d): parent_tag_id:%d tag_id:%d --- tag_id is wrong: min:0 max:%d\n",
9560 __FUNCTION__, __LINE__,
9561 parent_tag_id, tag_id, CALIB_IQ_TAG_END);
9562 DCT_ASSERT(false);
9563 return -1;
9564 }
9565
9566 #ifdef CALIBDB_CHECK_DEBUG
9567 LOGD("%s(%d): parent_tag_id:%d parent_tag_name:%s tag id:%d tagname:%s \n",
9568 __FUNCTION__, __LINE__, parent_tag_id, TAG_NAME(parent_tag_id), tag_id, TAG_NAME(tag_id));
9569 #endif
9570
9571 if (!parent_check_info) {
9572 LOGD("%s(%d): parent_tag_id:%d parent_tag_name:%s tag_id:%d tag_name:%s --- parent_check_info is NULL, return\n",
9573 __FUNCTION__, __LINE__, parent_tag_id, TAG_NAME(parent_tag_id), tag_id, TAG_NAME(tag_id));
9574 DCT_ASSERT(false);
9575 return -1;
9576 }
9577
9578 bool found_checking_tag = false;
9579 for (uint32_t i = 0; i < parent_check_info->count; i++) {
9580 if (tag_id == parent_check_info->checking_tags[i]) {
9581 if (parent_check_info->tag_counts_remain[i] <= 0 ) {
9582 LOGE("%s(%d): parent_tag_id:%d parent_tag_name:%s tag_id:%d tag_name:%s --- tag_counts_remain <= 0 assert!!!\n",
9583 __FUNCTION__, __LINE__, parent_tag_id, TAG_NAME(parent_tag_id), tag_id, TAG_NAME(tag_id));
9584 DCT_ASSERT(false);
9585 return -1;
9586 }
9587 parent_check_info->tag_counts_remain[i]--;
9588 found_checking_tag = true;
9589 break;
9590 }
9591 }
9592 if (!found_checking_tag) {
9593 LOGE("%s(%d): parent_tag_id:%d parent_tag_name:%s tag_id:%d tag_name:%s can't find this tag, assert!!!\n",
9594 __FUNCTION__, __LINE__, parent_tag_id, TAG_NAME(parent_tag_id), tag_id, TAG_NAME(tag_id));
9595 #ifdef XML_STRICT_CHECK
9596 DCT_ASSERT(false);
9597 return -1;
9598 #endif
9599 }
9600 return 0;
9601 }
9602
9603 /***************************************************************
9604 * name: calib_check_nonleaf_tag_end
9605 * description: called when leaving a tag. should be pair called
9606 * with calib_check_nonleaf_tag_start. check if all
9607 * needed sub tags have been parsed.
9608 * params:
9609 * tag_id
9610 * return
9611 *
9612 ***************************************************************/
calib_check_nonleaf_tag_end(CALIB_IQ_TAG_ID_T tag_id)9613 int calib_check_nonleaf_tag_end(CALIB_IQ_TAG_ID_T tag_id)
9614 {
9615 // return if tag name is "cell"
9616 if(tag_id >= CALIB_IQ_TAG_END) {
9617 LOGE("%s(%d): tag_id:%d --- tag_id is wrong: min:0 max:%d\n",
9618 __FUNCTION__, __LINE__, tag_id, CALIB_IQ_TAG_END);
9619 return -1;
9620 }
9621
9622 #ifdef CALIBDB_CHECK_DEBUG
9623 LOGD("%s(%d): tag id:%d tagname:%s \n",
9624 __FUNCTION__, __LINE__, tag_id, TAG_NAME(tag_id));
9625 #endif
9626
9627 calib_tag_info_t *tag_info = &(g_calib_tag_infos[tag_id]);
9628 calib_tag_check_info_t* check_info = (calib_tag_check_info_t*)(tag_info->check_info);
9629 if (!check_info) {
9630 LOGD("%s(%d): tag_id:%d tag_name:%s --- has check info already \n",
9631 __FUNCTION__, __LINE__, tag_id, TAG_NAME(tag_id));
9632 return -1;
9633 }
9634
9635 #ifdef CALIBDB_CHECK_DEBUG
9636 LOGD("%s(%d): check info:%p size:%d \n",
9637 __FUNCTION__, __LINE__, check_info, check_info->count);
9638 #endif
9639
9640 // check if all tags have been checked successfully
9641 for (uint32_t i = 0; i < check_info->count; i++) {
9642 if (check_info->tag_counts_remain[i] != 0) {
9643 LOGW("%s(%d): parent_id:%d parent_name:%s tag_id:%d tag_name:%s --- tag_counts_remain[%d]:%d != 0 assert!!!\n",
9644 __FUNCTION__, __LINE__,
9645 tag_id,
9646 TAG_NAME(tag_id),
9647 check_info->checking_tags[i],
9648 TAG_NAME(check_info->checking_tags[i]),
9649 i, check_info->tag_counts_remain[i]);
9650 #ifdef XML_STRICT_CHECK
9651 DCT_ASSERT(false);
9652 return -1;
9653 #endif
9654 }
9655 }
9656 // free check info
9657 if (check_info->tag_counts_remain)
9658 free(check_info->tag_counts_remain);
9659 if (check_info->checking_tags)
9660 free(check_info->checking_tags);
9661
9662 free(check_info);
9663
9664 tag_info->check_info = NULL;
9665
9666 return 0;
9667 }
9668