1 /****************************************************************************
2  ****************************************************************************
3  ***
4  ***   This header was automatically generated from a Linux kernel header
5  ***   of the same name, to make information necessary for userspace to
6  ***   call into the kernel available to libc.  It contains only constants,
7  ***   structures, and macros generated from the original header, and thus,
8  ***   contains no copyrightable information.
9  ***
10  ***   To edit the content of this header, modify the corresponding
11  ***   source file (e.g. under external/kernel-headers/original/) then
12  ***   run bionic/libc/kernel/tools/update_all.py
13  ***
14  ***   Any manual change here will be lost the next time this script will
15  ***   be run. You've been warned!
16  ***
17  ****************************************************************************
18  ****************************************************************************/
19 #ifndef _UAPI_MSM_AUDIO_CALIBRATION_H
20 #define _UAPI_MSM_AUDIO_CALIBRATION_H
21 #include <linux/types.h>
22 #include <linux/ioctl.h>
23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24 #define CAL_IOCTL_MAGIC 'a'
25 #define AUDIO_ALLOCATE_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 200, void *)
26 #define AUDIO_DEALLOCATE_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 201, void *)
27 #define AUDIO_PREPARE_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 202, void *)
28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29 #define AUDIO_SET_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 203, void *)
30 #define AUDIO_GET_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 204, void *)
31 #define AUDIO_POST_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 205, void *)
32 #define AUDIO_GET_RTAC_ADM_INFO _IOR(CAL_IOCTL_MAGIC, 207, void *)
33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34 #define AUDIO_GET_RTAC_VOICE_INFO _IOR(CAL_IOCTL_MAGIC, 208, void *)
35 #define AUDIO_GET_RTAC_ADM_CAL _IOWR(CAL_IOCTL_MAGIC, 209, void *)
36 #define AUDIO_SET_RTAC_ADM_CAL _IOWR(CAL_IOCTL_MAGIC, 210, void *)
37 #define AUDIO_GET_RTAC_ASM_CAL _IOWR(CAL_IOCTL_MAGIC, 211, void *)
38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39 #define AUDIO_SET_RTAC_ASM_CAL _IOWR(CAL_IOCTL_MAGIC, 212, void *)
40 #define AUDIO_GET_RTAC_CVS_CAL _IOWR(CAL_IOCTL_MAGIC, 213, void *)
41 #define AUDIO_SET_RTAC_CVS_CAL _IOWR(CAL_IOCTL_MAGIC, 214, void *)
42 #define AUDIO_GET_RTAC_CVP_CAL _IOWR(CAL_IOCTL_MAGIC, 215, void *)
43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44 #define AUDIO_SET_RTAC_CVP_CAL _IOWR(CAL_IOCTL_MAGIC, 216, void *)
45 #define AUDIO_GET_RTAC_AFE_CAL _IOWR(CAL_IOCTL_MAGIC, 217, void *)
46 #define AUDIO_SET_RTAC_AFE_CAL _IOWR(CAL_IOCTL_MAGIC, 218, void *)
47 enum {
48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49   CVP_VOC_RX_TOPOLOGY_CAL_TYPE = 0,
50   CVP_VOC_TX_TOPOLOGY_CAL_TYPE,
51   CVP_VOCPROC_STATIC_CAL_TYPE,
52   CVP_VOCPROC_DYNAMIC_CAL_TYPE,
53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54   CVS_VOCSTRM_STATIC_CAL_TYPE,
55   CVP_VOCDEV_CFG_CAL_TYPE,
56   CVP_VOCPROC_STATIC_COL_CAL_TYPE,
57   CVP_VOCPROC_DYNAMIC_COL_CAL_TYPE,
58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59   CVS_VOCSTRM_STATIC_COL_CAL_TYPE,
60   ADM_TOPOLOGY_CAL_TYPE,
61   ADM_CUST_TOPOLOGY_CAL_TYPE,
62   ADM_AUDPROC_CAL_TYPE,
63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64   ADM_AUDVOL_CAL_TYPE,
65   ASM_TOPOLOGY_CAL_TYPE,
66   ASM_CUST_TOPOLOGY_CAL_TYPE,
67   ASM_AUDSTRM_CAL_TYPE,
68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69   AFE_COMMON_RX_CAL_TYPE,
70   AFE_COMMON_TX_CAL_TYPE,
71   AFE_ANC_CAL_TYPE,
72   AFE_AANC_CAL_TYPE,
73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74   AFE_FB_SPKR_PROT_CAL_TYPE,
75   AFE_HW_DELAY_CAL_TYPE,
76   AFE_SIDETONE_CAL_TYPE,
77   AFE_TOPOLOGY_CAL_TYPE,
78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79   AFE_CUST_TOPOLOGY_CAL_TYPE,
80   LSM_CUST_TOPOLOGY_CAL_TYPE,
81   LSM_TOPOLOGY_CAL_TYPE,
82   LSM_CAL_TYPE,
83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84   ADM_RTAC_INFO_CAL_TYPE,
85   VOICE_RTAC_INFO_CAL_TYPE,
86   ADM_RTAC_APR_CAL_TYPE,
87   ASM_RTAC_APR_CAL_TYPE,
88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89   VOICE_RTAC_APR_CAL_TYPE,
90   MAD_CAL_TYPE,
91   ULP_AFE_CAL_TYPE,
92   ULP_LSM_CAL_TYPE,
93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94   DTS_EAGLE_CAL_TYPE,
95   AUDIO_CORE_METAINFO_CAL_TYPE,
96   SRS_TRUMEDIA_CAL_TYPE,
97   CORE_CUSTOM_TOPOLOGIES_CAL_TYPE,
98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99   ADM_RTAC_AUDVOL_CAL_TYPE,
100   ULP_LSM_TOPOLOGY_ID_CAL_TYPE,
101   AFE_FB_SPKR_PROT_TH_VI_CAL_TYPE,
102   AFE_FB_SPKR_PROT_EX_VI_CAL_TYPE,
103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104   MAX_CAL_TYPES,
105 };
106 #define AFE_FB_SPKR_PROT_TH_VI_CAL_TYPE AFE_FB_SPKR_PROT_TH_VI_CAL_TYPE
107 #define AFE_FB_SPKR_PROT_EX_VI_CAL_TYPE AFE_FB_SPKR_PROT_EX_VI_CAL_TYPE
108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109 enum {
110   VERSION_0_0,
111 };
112 enum {
113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114   PER_VOCODER_CAL_BIT_MASK = 0x10000,
115 };
116 #define MAX_IOCTL_CMD_SIZE 512
117 struct audio_cal_header {
118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119   int32_t data_size;
120   int32_t version;
121   int32_t cal_type;
122   int32_t cal_type_size;
123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124 };
125 struct audio_cal_type_header {
126   int32_t version;
127   int32_t buffer_number;
128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129 };
130 struct audio_cal_data {
131   int32_t cal_size;
132   int32_t mem_handle;
133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134 };
135 struct audio_cal_type_alloc {
136   struct audio_cal_type_header cal_hdr;
137   struct audio_cal_data cal_data;
138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139 };
140 struct audio_cal_alloc {
141   struct audio_cal_header hdr;
142   struct audio_cal_type_alloc cal_type;
143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
144 };
145 struct audio_cal_type_dealloc {
146   struct audio_cal_type_header cal_hdr;
147   struct audio_cal_data cal_data;
148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
149 };
150 struct audio_cal_dealloc {
151   struct audio_cal_header hdr;
152   struct audio_cal_type_dealloc cal_type;
153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
154 };
155 struct audio_cal_type_prepare {
156   struct audio_cal_type_header cal_hdr;
157   struct audio_cal_data cal_data;
158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
159 };
160 struct audio_cal_prepare {
161   struct audio_cal_header hdr;
162   struct audio_cal_type_prepare cal_type;
163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
164 };
165 struct audio_cal_type_post {
166   struct audio_cal_type_header cal_hdr;
167   struct audio_cal_data cal_data;
168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
169 };
170 struct audio_cal_post {
171   struct audio_cal_header hdr;
172   struct audio_cal_type_post cal_type;
173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
174 };
175 struct audio_cal_info_metainfo {
176   uint32_t nKey;
177 };
178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
179 enum {
180   RX_DEVICE,
181   TX_DEVICE,
182   MAX_PATH_TYPE
183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
184 };
185 struct audio_cal_info_adm_top {
186   int32_t topology;
187   int32_t acdb_id;
188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
189   int32_t path;
190   int32_t app_type;
191   int32_t sample_rate;
192 };
193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
194 struct audio_cal_info_audproc {
195   int32_t acdb_id;
196   int32_t path;
197   int32_t app_type;
198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
199   int32_t sample_rate;
200 };
201 struct audio_cal_info_audvol {
202   int32_t acdb_id;
203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
204   int32_t path;
205   int32_t app_type;
206   int32_t vol_index;
207 };
208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
209 struct audio_cal_info_afe {
210   int32_t acdb_id;
211   int32_t path;
212   int32_t sample_rate;
213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
214 };
215 struct audio_cal_info_afe_top {
216   int32_t topology;
217   int32_t acdb_id;
218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
219   int32_t path;
220   int32_t sample_rate;
221 };
222 struct audio_cal_info_asm_top {
223 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
224   int32_t topology;
225   int32_t app_type;
226 };
227 struct audio_cal_info_audstrm {
228 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
229   int32_t app_type;
230 };
231 struct audio_cal_info_aanc {
232   int32_t acdb_id;
233 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
234 };
235 #define MAX_HW_DELAY_ENTRIES 25
236 struct audio_cal_hw_delay_entry {
237   uint32_t sample_rate;
238 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
239   uint32_t delay_usec;
240 };
241 struct audio_cal_hw_delay_data {
242   uint32_t num_entries;
243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
244   struct audio_cal_hw_delay_entry entry[MAX_HW_DELAY_ENTRIES];
245 };
246 struct audio_cal_info_hw_delay {
247   int32_t acdb_id;
248 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
249   int32_t path;
250   int32_t property_type;
251   struct audio_cal_hw_delay_data data;
252 };
253 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
254 enum msm_spkr_prot_states {
255   MSM_SPKR_PROT_CALIBRATED,
256   MSM_SPKR_PROT_CALIBRATION_IN_PROGRESS,
257   MSM_SPKR_PROT_DISABLED,
258 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
259   MSM_SPKR_PROT_NOT_CALIBRATED,
260   MSM_SPKR_PROT_PRE_CALIBRATED,
261   MSM_SPKR_PROT_IN_FTM_MODE
262 };
263 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
264 #define MSM_SPKR_PROT_IN_FTM_MODE MSM_SPKR_PROT_IN_FTM_MODE
265 enum msm_spkr_count {
266   SP_V2_SPKR_1,
267   SP_V2_SPKR_2,
268 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
269   SP_V2_NUM_MAX_SPKRS
270 };
271 struct audio_cal_info_spk_prot_cfg {
272   int32_t r0[SP_V2_NUM_MAX_SPKRS];
273 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
274   int32_t t0[SP_V2_NUM_MAX_SPKRS];
275   uint32_t quick_calib_flag;
276   uint32_t mode;
277 };
278 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
279 struct audio_cal_info_sp_th_vi_ftm_cfg {
280   uint32_t wait_time[SP_V2_NUM_MAX_SPKRS];
281   uint32_t ftm_time[SP_V2_NUM_MAX_SPKRS];
282   uint32_t mode;
283 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
284 };
285 struct audio_cal_info_sp_ex_vi_ftm_cfg {
286   uint32_t wait_time[SP_V2_NUM_MAX_SPKRS];
287   uint32_t ftm_time[SP_V2_NUM_MAX_SPKRS];
288 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
289   uint32_t mode;
290 };
291 struct audio_cal_info_sp_ex_vi_param {
292   int32_t freq_q20[SP_V2_NUM_MAX_SPKRS];
293 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
294   int32_t resis_q24[SP_V2_NUM_MAX_SPKRS];
295   int32_t qmct_q24[SP_V2_NUM_MAX_SPKRS];
296   int32_t status[SP_V2_NUM_MAX_SPKRS];
297 };
298 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
299 struct audio_cal_info_sp_th_vi_param {
300   int32_t r_dc_q24[SP_V2_NUM_MAX_SPKRS];
301   int32_t temp_q22[SP_V2_NUM_MAX_SPKRS];
302   int32_t status[SP_V2_NUM_MAX_SPKRS];
303 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
304 };
305 struct audio_cal_info_msm_spk_prot_status {
306   int32_t r0[SP_V2_NUM_MAX_SPKRS];
307   int32_t status;
308 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
309 };
310 struct audio_cal_info_sidetone {
311   uint16_t enable;
312   uint16_t gain;
313 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
314   int32_t tx_acdb_id;
315   int32_t rx_acdb_id;
316   int32_t mid;
317   int32_t pid;
318 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
319 };
320 struct audio_cal_info_lsm_top {
321   int32_t topology;
322   int32_t acdb_id;
323 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
324   int32_t app_type;
325 };
326 struct audio_cal_info_lsm {
327   int32_t acdb_id;
328 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
329   int32_t path;
330   int32_t app_type;
331 };
332 struct audio_cal_info_voc_top {
333 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
334   int32_t topology;
335   int32_t acdb_id;
336 };
337 struct audio_cal_info_vocproc {
338 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
339   int32_t tx_acdb_id;
340   int32_t rx_acdb_id;
341   int32_t tx_sample_rate;
342   int32_t rx_sample_rate;
343 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
344 };
345 enum {
346   DEFAULT_FEATURE_SET,
347   VOL_BOOST_FEATURE_SET,
348 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
349 };
350 struct audio_cal_info_vocvol {
351   int32_t tx_acdb_id;
352   int32_t rx_acdb_id;
353 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
354   int32_t feature_set;
355 };
356 struct audio_cal_info_vocdev_cfg {
357   int32_t tx_acdb_id;
358 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
359   int32_t rx_acdb_id;
360 };
361 #define MAX_VOICE_COLUMNS 20
362 union audio_cal_col_na {
363 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
364   uint8_t val8;
365   uint16_t val16;
366   uint32_t val32;
367   uint64_t val64;
368 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
369 } __packed;
370 struct audio_cal_col {
371   uint32_t id;
372   uint32_t type;
373 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
374   union audio_cal_col_na na_value;
375 } __packed;
376 struct audio_cal_col_data {
377   uint32_t num_columns;
378 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
379   struct audio_cal_col column[MAX_VOICE_COLUMNS];
380 } __packed;
381 struct audio_cal_info_voc_col {
382   int32_t table_id;
383 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
384   int32_t tx_acdb_id;
385   int32_t rx_acdb_id;
386   struct audio_cal_col_data data;
387 };
388 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
389 struct audio_cal_type_basic {
390   struct audio_cal_type_header cal_hdr;
391   struct audio_cal_data cal_data;
392 };
393 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
394 struct audio_cal_basic {
395   struct audio_cal_header hdr;
396   struct audio_cal_type_basic cal_type;
397 };
398 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
399 struct audio_cal_type_adm_top {
400   struct audio_cal_type_header cal_hdr;
401   struct audio_cal_data cal_data;
402   struct audio_cal_info_adm_top cal_info;
403 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
404 };
405 struct audio_cal_adm_top {
406   struct audio_cal_header hdr;
407   struct audio_cal_type_adm_top cal_type;
408 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
409 };
410 struct audio_cal_type_metainfo {
411   struct audio_cal_type_header cal_hdr;
412   struct audio_cal_data cal_data;
413 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
414   struct audio_cal_info_metainfo cal_info;
415 };
416 struct audio_core_metainfo {
417   struct audio_cal_header hdr;
418 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
419   struct audio_cal_type_metainfo cal_type;
420 };
421 struct audio_cal_type_audproc {
422   struct audio_cal_type_header cal_hdr;
423 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
424   struct audio_cal_data cal_data;
425   struct audio_cal_info_audproc cal_info;
426 };
427 struct audio_cal_audproc {
428 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
429   struct audio_cal_header hdr;
430   struct audio_cal_type_audproc cal_type;
431 };
432 struct audio_cal_type_audvol {
433 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
434   struct audio_cal_type_header cal_hdr;
435   struct audio_cal_data cal_data;
436   struct audio_cal_info_audvol cal_info;
437 };
438 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
439 struct audio_cal_audvol {
440   struct audio_cal_header hdr;
441   struct audio_cal_type_audvol cal_type;
442 };
443 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
444 struct audio_cal_type_asm_top {
445   struct audio_cal_type_header cal_hdr;
446   struct audio_cal_data cal_data;
447   struct audio_cal_info_asm_top cal_info;
448 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
449 };
450 struct audio_cal_asm_top {
451   struct audio_cal_header hdr;
452   struct audio_cal_type_asm_top cal_type;
453 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
454 };
455 struct audio_cal_type_audstrm {
456   struct audio_cal_type_header cal_hdr;
457   struct audio_cal_data cal_data;
458 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
459   struct audio_cal_info_audstrm cal_info;
460 };
461 struct audio_cal_audstrm {
462   struct audio_cal_header hdr;
463 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
464   struct audio_cal_type_audstrm cal_type;
465 };
466 struct audio_cal_type_afe {
467   struct audio_cal_type_header cal_hdr;
468 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
469   struct audio_cal_data cal_data;
470   struct audio_cal_info_afe cal_info;
471 };
472 struct audio_cal_afe {
473 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
474   struct audio_cal_header hdr;
475   struct audio_cal_type_afe cal_type;
476 };
477 struct audio_cal_type_afe_top {
478 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
479   struct audio_cal_type_header cal_hdr;
480   struct audio_cal_data cal_data;
481   struct audio_cal_info_afe_top cal_info;
482 };
483 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
484 struct audio_cal_afe_top {
485   struct audio_cal_header hdr;
486   struct audio_cal_type_afe_top cal_type;
487 };
488 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
489 struct audio_cal_type_aanc {
490   struct audio_cal_type_header cal_hdr;
491   struct audio_cal_data cal_data;
492   struct audio_cal_info_aanc cal_info;
493 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
494 };
495 struct audio_cal_aanc {
496   struct audio_cal_header hdr;
497   struct audio_cal_type_aanc cal_type;
498 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
499 };
500 struct audio_cal_type_fb_spk_prot_cfg {
501   struct audio_cal_type_header cal_hdr;
502   struct audio_cal_data cal_data;
503 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
504   struct audio_cal_info_spk_prot_cfg cal_info;
505 };
506 struct audio_cal_fb_spk_prot_cfg {
507   struct audio_cal_header hdr;
508 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
509   struct audio_cal_type_fb_spk_prot_cfg cal_type;
510 };
511 struct audio_cal_type_sp_th_vi_ftm_cfg {
512   struct audio_cal_type_header cal_hdr;
513 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
514   struct audio_cal_data cal_data;
515   struct audio_cal_info_sp_th_vi_ftm_cfg cal_info;
516 };
517 struct audio_cal_sp_th_vi_ftm_cfg {
518 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
519   struct audio_cal_header hdr;
520   struct audio_cal_type_sp_th_vi_ftm_cfg cal_type;
521 };
522 struct audio_cal_type_sp_ex_vi_ftm_cfg {
523 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
524   struct audio_cal_type_header cal_hdr;
525   struct audio_cal_data cal_data;
526   struct audio_cal_info_sp_ex_vi_ftm_cfg cal_info;
527 };
528 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
529 struct audio_cal_sp_ex_vi_ftm_cfg {
530   struct audio_cal_header hdr;
531   struct audio_cal_type_sp_ex_vi_ftm_cfg cal_type;
532 };
533 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
534 struct audio_cal_type_hw_delay {
535   struct audio_cal_type_header cal_hdr;
536   struct audio_cal_data cal_data;
537   struct audio_cal_info_hw_delay cal_info;
538 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
539 };
540 struct audio_cal_hw_delay {
541   struct audio_cal_header hdr;
542   struct audio_cal_type_hw_delay cal_type;
543 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
544 };
545 struct audio_cal_type_sidetone {
546   struct audio_cal_type_header cal_hdr;
547   struct audio_cal_data cal_data;
548 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
549   struct audio_cal_info_sidetone cal_info;
550 };
551 struct audio_cal_sidetone {
552   struct audio_cal_header hdr;
553 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
554   struct audio_cal_type_sidetone cal_type;
555 };
556 struct audio_cal_type_lsm_top {
557   struct audio_cal_type_header cal_hdr;
558 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
559   struct audio_cal_data cal_data;
560   struct audio_cal_info_lsm_top cal_info;
561 };
562 struct audio_cal_lsm_top {
563 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
564   struct audio_cal_header hdr;
565   struct audio_cal_type_lsm_top cal_type;
566 };
567 struct audio_cal_type_lsm {
568 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
569   struct audio_cal_type_header cal_hdr;
570   struct audio_cal_data cal_data;
571   struct audio_cal_info_lsm cal_info;
572 };
573 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
574 struct audio_cal_lsm {
575   struct audio_cal_header hdr;
576   struct audio_cal_type_lsm cal_type;
577 };
578 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
579 struct audio_cal_type_voc_top {
580   struct audio_cal_type_header cal_hdr;
581   struct audio_cal_data cal_data;
582   struct audio_cal_info_voc_top cal_info;
583 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
584 };
585 struct audio_cal_voc_top {
586   struct audio_cal_header hdr;
587   struct audio_cal_type_voc_top cal_type;
588 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
589 };
590 struct audio_cal_type_vocproc {
591   struct audio_cal_type_header cal_hdr;
592   struct audio_cal_data cal_data;
593 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
594   struct audio_cal_info_vocproc cal_info;
595 };
596 struct audio_cal_vocproc {
597   struct audio_cal_header hdr;
598 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
599   struct audio_cal_type_vocproc cal_type;
600 };
601 struct audio_cal_type_vocvol {
602   struct audio_cal_type_header cal_hdr;
603 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
604   struct audio_cal_data cal_data;
605   struct audio_cal_info_vocvol cal_info;
606 };
607 struct audio_cal_vocvol {
608 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
609   struct audio_cal_header hdr;
610   struct audio_cal_type_vocvol cal_type;
611 };
612 struct audio_cal_type_vocdev_cfg {
613 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
614   struct audio_cal_type_header cal_hdr;
615   struct audio_cal_data cal_data;
616   struct audio_cal_info_vocdev_cfg cal_info;
617 };
618 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
619 struct audio_cal_vocdev_cfg {
620   struct audio_cal_header hdr;
621   struct audio_cal_type_vocdev_cfg cal_type;
622 };
623 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
624 struct audio_cal_type_voc_col {
625   struct audio_cal_type_header cal_hdr;
626   struct audio_cal_data cal_data;
627   struct audio_cal_info_voc_col cal_info;
628 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
629 };
630 struct audio_cal_voc_col {
631   struct audio_cal_header hdr;
632   struct audio_cal_type_voc_col cal_type;
633 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
634 };
635 struct audio_cal_type_fb_spk_prot_status {
636   struct audio_cal_type_header cal_hdr;
637   struct audio_cal_data cal_data;
638 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
639   struct audio_cal_info_msm_spk_prot_status cal_info;
640 };
641 struct audio_cal_fb_spk_prot_status {
642   struct audio_cal_header hdr;
643 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
644   struct audio_cal_type_fb_spk_prot_status cal_type;
645 };
646 struct audio_cal_type_sp_th_vi_param {
647   struct audio_cal_type_header cal_hdr;
648 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
649   struct audio_cal_data cal_data;
650   struct audio_cal_info_sp_th_vi_param cal_info;
651 };
652 struct audio_cal_sp_th_vi_param {
653 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
654   struct audio_cal_header hdr;
655   struct audio_cal_type_sp_th_vi_param cal_type;
656 };
657 struct audio_cal_type_sp_ex_vi_param {
658 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
659   struct audio_cal_type_header cal_hdr;
660   struct audio_cal_data cal_data;
661   struct audio_cal_info_sp_ex_vi_param cal_info;
662 };
663 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
664 struct audio_cal_sp_ex_vi_param {
665   struct audio_cal_header hdr;
666   struct audio_cal_type_sp_ex_vi_param cal_type;
667 };
668 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
669 #endif
670 
671