Home | History | Annotate | Download | only in linux
      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 _MSM_AUDIO_CALIBRATION_H
     20 #define _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   AFE_SIDETONE_IIR_CAL_TYPE,
    105   MAX_CAL_TYPES,
    106 };
    107 #define AFE_FB_SPKR_PROT_TH_VI_CAL_TYPE AFE_FB_SPKR_PROT_TH_VI_CAL_TYPE
    108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    109 #define AFE_FB_SPKR_PROT_EX_VI_CAL_TYPE AFE_FB_SPKR_PROT_EX_VI_CAL_TYPE
    110 #define AFE_SIDETONE_IIR_CAL_TYPE AFE_SIDETONE_IIR_CAL_TYPE
    111 enum {
    112   VERSION_0_0,
    113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    114 };
    115 enum {
    116   PER_VOCODER_CAL_BIT_MASK = 0x10000,
    117 };
    118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    119 #define MAX_IOCTL_CMD_SIZE 512
    120 struct audio_cal_header {
    121   int32_t data_size;
    122   int32_t version;
    123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    124   int32_t cal_type;
    125   int32_t cal_type_size;
    126 };
    127 struct audio_cal_type_header {
    128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    129   int32_t version;
    130   int32_t buffer_number;
    131 };
    132 struct audio_cal_data {
    133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    134   int32_t cal_size;
    135   int32_t mem_handle;
    136 };
    137 struct audio_cal_type_alloc {
    138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    139   struct audio_cal_type_header cal_hdr;
    140   struct audio_cal_data cal_data;
    141 };
    142 struct audio_cal_alloc {
    143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    144   struct audio_cal_header hdr;
    145   struct audio_cal_type_alloc cal_type;
    146 };
    147 struct audio_cal_type_dealloc {
    148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    149   struct audio_cal_type_header cal_hdr;
    150   struct audio_cal_data cal_data;
    151 };
    152 struct audio_cal_dealloc {
    153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    154   struct audio_cal_header hdr;
    155   struct audio_cal_type_dealloc cal_type;
    156 };
    157 struct audio_cal_type_prepare {
    158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    159   struct audio_cal_type_header cal_hdr;
    160   struct audio_cal_data cal_data;
    161 };
    162 struct audio_cal_prepare {
    163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    164   struct audio_cal_header hdr;
    165   struct audio_cal_type_prepare cal_type;
    166 };
    167 struct audio_cal_type_post {
    168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    169   struct audio_cal_type_header cal_hdr;
    170   struct audio_cal_data cal_data;
    171 };
    172 struct audio_cal_post {
    173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    174   struct audio_cal_header hdr;
    175   struct audio_cal_type_post cal_type;
    176 };
    177 struct audio_cal_info_metainfo {
    178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    179   uint32_t nKey;
    180 };
    181 enum {
    182   RX_DEVICE,
    183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    184   TX_DEVICE,
    185   MAX_PATH_TYPE
    186 };
    187 struct audio_cal_info_adm_top {
    188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    189   int32_t topology;
    190   int32_t acdb_id;
    191   int32_t path;
    192   int32_t app_type;
    193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    194   int32_t sample_rate;
    195 };
    196 struct audio_cal_info_audproc {
    197   int32_t acdb_id;
    198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    199   int32_t path;
    200   int32_t app_type;
    201   int32_t sample_rate;
    202 };
    203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    204 struct audio_cal_info_audvol {
    205   int32_t acdb_id;
    206   int32_t path;
    207   int32_t app_type;
    208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    209   int32_t vol_index;
    210 };
    211 struct audio_cal_info_afe {
    212   int32_t acdb_id;
    213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    214   int32_t path;
    215   int32_t sample_rate;
    216 };
    217 struct audio_cal_info_afe_top {
    218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    219   int32_t topology;
    220   int32_t acdb_id;
    221   int32_t path;
    222   int32_t sample_rate;
    223 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    224 };
    225 struct audio_cal_info_asm_top {
    226   int32_t topology;
    227   int32_t app_type;
    228 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    229 };
    230 struct audio_cal_info_audstrm {
    231   int32_t app_type;
    232 };
    233 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    234 struct audio_cal_info_aanc {
    235   int32_t acdb_id;
    236 };
    237 #define MAX_HW_DELAY_ENTRIES 25
    238 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    239 struct audio_cal_hw_delay_entry {
    240   uint32_t sample_rate;
    241   uint32_t delay_usec;
    242 };
    243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    244 struct audio_cal_hw_delay_data {
    245   uint32_t num_entries;
    246   struct audio_cal_hw_delay_entry entry[MAX_HW_DELAY_ENTRIES];
    247 };
    248 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    249 struct audio_cal_info_hw_delay {
    250   int32_t acdb_id;
    251   int32_t path;
    252   int32_t property_type;
    253 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    254   struct audio_cal_hw_delay_data data;
    255 };
    256 enum msm_spkr_prot_states {
    257   MSM_SPKR_PROT_CALIBRATED,
    258 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    259   MSM_SPKR_PROT_CALIBRATION_IN_PROGRESS,
    260   MSM_SPKR_PROT_DISABLED,
    261   MSM_SPKR_PROT_NOT_CALIBRATED,
    262   MSM_SPKR_PROT_PRE_CALIBRATED,
    263 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    264   MSM_SPKR_PROT_IN_FTM_MODE
    265 };
    266 #define MSM_SPKR_PROT_IN_FTM_MODE MSM_SPKR_PROT_IN_FTM_MODE
    267 enum msm_spkr_count {
    268 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    269   SP_V2_SPKR_1,
    270   SP_V2_SPKR_2,
    271   SP_V2_NUM_MAX_SPKRS
    272 };
    273 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    274 struct audio_cal_info_spk_prot_cfg {
    275   int32_t r0[SP_V2_NUM_MAX_SPKRS];
    276   int32_t t0[SP_V2_NUM_MAX_SPKRS];
    277   uint32_t quick_calib_flag;
    278 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    279   uint32_t mode;
    280 };
    281 struct audio_cal_info_sp_th_vi_ftm_cfg {
    282   uint32_t wait_time[SP_V2_NUM_MAX_SPKRS];
    283 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    284   uint32_t ftm_time[SP_V2_NUM_MAX_SPKRS];
    285   uint32_t mode;
    286 };
    287 struct audio_cal_info_sp_ex_vi_ftm_cfg {
    288 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    289   uint32_t wait_time[SP_V2_NUM_MAX_SPKRS];
    290   uint32_t ftm_time[SP_V2_NUM_MAX_SPKRS];
    291   uint32_t mode;
    292 };
    293 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    294 struct audio_cal_info_sp_ex_vi_param {
    295   int32_t freq_q20[SP_V2_NUM_MAX_SPKRS];
    296   int32_t resis_q24[SP_V2_NUM_MAX_SPKRS];
    297   int32_t qmct_q24[SP_V2_NUM_MAX_SPKRS];
    298 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    299   int32_t status[SP_V2_NUM_MAX_SPKRS];
    300 };
    301 struct audio_cal_info_sp_th_vi_param {
    302   int32_t r_dc_q24[SP_V2_NUM_MAX_SPKRS];
    303 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    304   int32_t temp_q22[SP_V2_NUM_MAX_SPKRS];
    305   int32_t status[SP_V2_NUM_MAX_SPKRS];
    306 };
    307 struct audio_cal_info_msm_spk_prot_status {
    308 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    309   int32_t r0[SP_V2_NUM_MAX_SPKRS];
    310   int32_t status;
    311 };
    312 struct audio_cal_info_sidetone {
    313 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    314   uint16_t enable;
    315   uint16_t gain;
    316   int32_t tx_acdb_id;
    317   int32_t rx_acdb_id;
    318 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    319   int32_t mid;
    320   int32_t pid;
    321 };
    322 #define MAX_SIDETONE_IIR_DATA_SIZE 224
    323 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    324 #define MAX_NO_IIR_FILTER_STAGE 10
    325 struct audio_cal_info_sidetone_iir {
    326   uint16_t iir_enable;
    327   uint16_t num_biquad_stages;
    328 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    329   uint16_t pregain;
    330   int32_t tx_acdb_id;
    331   int32_t rx_acdb_id;
    332   int32_t mid;
    333 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    334   int32_t pid;
    335   uint8_t iir_config[MAX_SIDETONE_IIR_DATA_SIZE];
    336 };
    337 struct audio_cal_info_lsm_top {
    338 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    339   int32_t topology;
    340   int32_t acdb_id;
    341   int32_t app_type;
    342 };
    343 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    344 struct audio_cal_info_lsm {
    345   int32_t acdb_id;
    346   int32_t path;
    347   int32_t app_type;
    348 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    349 };
    350 struct audio_cal_info_voc_top {
    351   int32_t topology;
    352   int32_t acdb_id;
    353 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    354 };
    355 struct audio_cal_info_vocproc {
    356   int32_t tx_acdb_id;
    357   int32_t rx_acdb_id;
    358 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    359   int32_t tx_sample_rate;
    360   int32_t rx_sample_rate;
    361 };
    362 enum {
    363 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    364   DEFAULT_FEATURE_SET,
    365   VOL_BOOST_FEATURE_SET,
    366 };
    367 struct audio_cal_info_vocvol {
    368 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    369   int32_t tx_acdb_id;
    370   int32_t rx_acdb_id;
    371   int32_t feature_set;
    372 };
    373 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    374 struct audio_cal_info_vocdev_cfg {
    375   int32_t tx_acdb_id;
    376   int32_t rx_acdb_id;
    377 };
    378 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    379 #define MAX_VOICE_COLUMNS 20
    380 union audio_cal_col_na {
    381   uint8_t val8;
    382   uint16_t val16;
    383 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    384   uint32_t val32;
    385   uint64_t val64;
    386 } __attribute__((packed));
    387 struct audio_cal_col {
    388 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    389   uint32_t id;
    390   uint32_t type;
    391   union audio_cal_col_na na_value;
    392 } __attribute__((packed));
    393 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    394 struct audio_cal_col_data {
    395   uint32_t num_columns;
    396   struct audio_cal_col column[MAX_VOICE_COLUMNS];
    397 } __attribute__((packed));
    398 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    399 struct audio_cal_info_voc_col {
    400   int32_t table_id;
    401   int32_t tx_acdb_id;
    402   int32_t rx_acdb_id;
    403 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    404   struct audio_cal_col_data data;
    405 };
    406 struct audio_cal_type_basic {
    407   struct audio_cal_type_header cal_hdr;
    408 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    409   struct audio_cal_data cal_data;
    410 };
    411 struct audio_cal_basic {
    412   struct audio_cal_header hdr;
    413 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    414   struct audio_cal_type_basic cal_type;
    415 };
    416 struct audio_cal_type_adm_top {
    417   struct audio_cal_type_header cal_hdr;
    418 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    419   struct audio_cal_data cal_data;
    420   struct audio_cal_info_adm_top cal_info;
    421 };
    422 struct audio_cal_adm_top {
    423 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    424   struct audio_cal_header hdr;
    425   struct audio_cal_type_adm_top cal_type;
    426 };
    427 struct audio_cal_type_metainfo {
    428 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    429   struct audio_cal_type_header cal_hdr;
    430   struct audio_cal_data cal_data;
    431   struct audio_cal_info_metainfo cal_info;
    432 };
    433 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    434 struct audio_core_metainfo {
    435   struct audio_cal_header hdr;
    436   struct audio_cal_type_metainfo cal_type;
    437 };
    438 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    439 struct audio_cal_type_audproc {
    440   struct audio_cal_type_header cal_hdr;
    441   struct audio_cal_data cal_data;
    442   struct audio_cal_info_audproc cal_info;
    443 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    444 };
    445 struct audio_cal_audproc {
    446   struct audio_cal_header hdr;
    447   struct audio_cal_type_audproc cal_type;
    448 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    449 };
    450 struct audio_cal_type_audvol {
    451   struct audio_cal_type_header cal_hdr;
    452   struct audio_cal_data cal_data;
    453 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    454   struct audio_cal_info_audvol cal_info;
    455 };
    456 struct audio_cal_audvol {
    457   struct audio_cal_header hdr;
    458 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    459   struct audio_cal_type_audvol cal_type;
    460 };
    461 struct audio_cal_type_asm_top {
    462   struct audio_cal_type_header cal_hdr;
    463 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    464   struct audio_cal_data cal_data;
    465   struct audio_cal_info_asm_top cal_info;
    466 };
    467 struct audio_cal_asm_top {
    468 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    469   struct audio_cal_header hdr;
    470   struct audio_cal_type_asm_top cal_type;
    471 };
    472 struct audio_cal_type_audstrm {
    473 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    474   struct audio_cal_type_header cal_hdr;
    475   struct audio_cal_data cal_data;
    476   struct audio_cal_info_audstrm cal_info;
    477 };
    478 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    479 struct audio_cal_audstrm {
    480   struct audio_cal_header hdr;
    481   struct audio_cal_type_audstrm cal_type;
    482 };
    483 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    484 struct audio_cal_type_afe {
    485   struct audio_cal_type_header cal_hdr;
    486   struct audio_cal_data cal_data;
    487   struct audio_cal_info_afe cal_info;
    488 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    489 };
    490 struct audio_cal_afe {
    491   struct audio_cal_header hdr;
    492   struct audio_cal_type_afe cal_type;
    493 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    494 };
    495 struct audio_cal_type_afe_top {
    496   struct audio_cal_type_header cal_hdr;
    497   struct audio_cal_data cal_data;
    498 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    499   struct audio_cal_info_afe_top cal_info;
    500 };
    501 struct audio_cal_afe_top {
    502   struct audio_cal_header hdr;
    503 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    504   struct audio_cal_type_afe_top cal_type;
    505 };
    506 struct audio_cal_type_aanc {
    507   struct audio_cal_type_header cal_hdr;
    508 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    509   struct audio_cal_data cal_data;
    510   struct audio_cal_info_aanc cal_info;
    511 };
    512 struct audio_cal_aanc {
    513 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    514   struct audio_cal_header hdr;
    515   struct audio_cal_type_aanc cal_type;
    516 };
    517 struct audio_cal_type_fb_spk_prot_cfg {
    518 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    519   struct audio_cal_type_header cal_hdr;
    520   struct audio_cal_data cal_data;
    521   struct audio_cal_info_spk_prot_cfg cal_info;
    522 };
    523 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    524 struct audio_cal_fb_spk_prot_cfg {
    525   struct audio_cal_header hdr;
    526   struct audio_cal_type_fb_spk_prot_cfg cal_type;
    527 };
    528 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    529 struct audio_cal_type_sp_th_vi_ftm_cfg {
    530   struct audio_cal_type_header cal_hdr;
    531   struct audio_cal_data cal_data;
    532   struct audio_cal_info_sp_th_vi_ftm_cfg cal_info;
    533 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    534 };
    535 struct audio_cal_sp_th_vi_ftm_cfg {
    536   struct audio_cal_header hdr;
    537   struct audio_cal_type_sp_th_vi_ftm_cfg cal_type;
    538 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    539 };
    540 struct audio_cal_type_sp_ex_vi_ftm_cfg {
    541   struct audio_cal_type_header cal_hdr;
    542   struct audio_cal_data cal_data;
    543 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    544   struct audio_cal_info_sp_ex_vi_ftm_cfg cal_info;
    545 };
    546 struct audio_cal_sp_ex_vi_ftm_cfg {
    547   struct audio_cal_header hdr;
    548 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    549   struct audio_cal_type_sp_ex_vi_ftm_cfg cal_type;
    550 };
    551 struct audio_cal_type_hw_delay {
    552   struct audio_cal_type_header cal_hdr;
    553 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    554   struct audio_cal_data cal_data;
    555   struct audio_cal_info_hw_delay cal_info;
    556 };
    557 struct audio_cal_hw_delay {
    558 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    559   struct audio_cal_header hdr;
    560   struct audio_cal_type_hw_delay cal_type;
    561 };
    562 struct audio_cal_type_sidetone {
    563 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    564   struct audio_cal_type_header cal_hdr;
    565   struct audio_cal_data cal_data;
    566   struct audio_cal_info_sidetone cal_info;
    567 };
    568 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    569 struct audio_cal_sidetone {
    570   struct audio_cal_header hdr;
    571   struct audio_cal_type_sidetone cal_type;
    572 };
    573 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    574 struct audio_cal_type_sidetone_iir {
    575   struct audio_cal_type_header cal_hdr;
    576   struct audio_cal_data cal_data;
    577   struct audio_cal_info_sidetone_iir cal_info;
    578 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    579 };
    580 struct audio_cal_sidetone_iir {
    581   struct audio_cal_header hdr;
    582   struct audio_cal_type_sidetone_iir cal_type;
    583 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    584 };
    585 struct audio_cal_type_lsm_top {
    586   struct audio_cal_type_header cal_hdr;
    587   struct audio_cal_data cal_data;
    588 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    589   struct audio_cal_info_lsm_top cal_info;
    590 };
    591 struct audio_cal_lsm_top {
    592   struct audio_cal_header hdr;
    593 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    594   struct audio_cal_type_lsm_top cal_type;
    595 };
    596 struct audio_cal_type_lsm {
    597   struct audio_cal_type_header cal_hdr;
    598 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    599   struct audio_cal_data cal_data;
    600   struct audio_cal_info_lsm cal_info;
    601 };
    602 struct audio_cal_lsm {
    603 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    604   struct audio_cal_header hdr;
    605   struct audio_cal_type_lsm cal_type;
    606 };
    607 struct audio_cal_type_voc_top {
    608 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    609   struct audio_cal_type_header cal_hdr;
    610   struct audio_cal_data cal_data;
    611   struct audio_cal_info_voc_top cal_info;
    612 };
    613 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    614 struct audio_cal_voc_top {
    615   struct audio_cal_header hdr;
    616   struct audio_cal_type_voc_top cal_type;
    617 };
    618 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    619 struct audio_cal_type_vocproc {
    620   struct audio_cal_type_header cal_hdr;
    621   struct audio_cal_data cal_data;
    622   struct audio_cal_info_vocproc cal_info;
    623 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    624 };
    625 struct audio_cal_vocproc {
    626   struct audio_cal_header hdr;
    627   struct audio_cal_type_vocproc cal_type;
    628 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    629 };
    630 struct audio_cal_type_vocvol {
    631   struct audio_cal_type_header cal_hdr;
    632   struct audio_cal_data cal_data;
    633 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    634   struct audio_cal_info_vocvol cal_info;
    635 };
    636 struct audio_cal_vocvol {
    637   struct audio_cal_header hdr;
    638 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    639   struct audio_cal_type_vocvol cal_type;
    640 };
    641 struct audio_cal_type_vocdev_cfg {
    642   struct audio_cal_type_header cal_hdr;
    643 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    644   struct audio_cal_data cal_data;
    645   struct audio_cal_info_vocdev_cfg cal_info;
    646 };
    647 struct audio_cal_vocdev_cfg {
    648 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    649   struct audio_cal_header hdr;
    650   struct audio_cal_type_vocdev_cfg cal_type;
    651 };
    652 struct audio_cal_type_voc_col {
    653 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    654   struct audio_cal_type_header cal_hdr;
    655   struct audio_cal_data cal_data;
    656   struct audio_cal_info_voc_col cal_info;
    657 };
    658 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    659 struct audio_cal_voc_col {
    660   struct audio_cal_header hdr;
    661   struct audio_cal_type_voc_col cal_type;
    662 };
    663 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    664 struct audio_cal_type_fb_spk_prot_status {
    665   struct audio_cal_type_header cal_hdr;
    666   struct audio_cal_data cal_data;
    667   struct audio_cal_info_msm_spk_prot_status cal_info;
    668 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    669 };
    670 struct audio_cal_fb_spk_prot_status {
    671   struct audio_cal_header hdr;
    672   struct audio_cal_type_fb_spk_prot_status cal_type;
    673 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    674 };
    675 struct audio_cal_type_sp_th_vi_param {
    676   struct audio_cal_type_header cal_hdr;
    677   struct audio_cal_data cal_data;
    678 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    679   struct audio_cal_info_sp_th_vi_param cal_info;
    680 };
    681 struct audio_cal_sp_th_vi_param {
    682   struct audio_cal_header hdr;
    683 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    684   struct audio_cal_type_sp_th_vi_param cal_type;
    685 };
    686 struct audio_cal_type_sp_ex_vi_param {
    687   struct audio_cal_type_header cal_hdr;
    688 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    689   struct audio_cal_data cal_data;
    690   struct audio_cal_info_sp_ex_vi_param cal_info;
    691 };
    692 struct audio_cal_sp_ex_vi_param {
    693 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    694   struct audio_cal_header hdr;
    695   struct audio_cal_type_sp_ex_vi_param cal_type;
    696 };
    697 #endif
    698 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    699 
    700