summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Tjin <pattjin@google.com>2015-05-07 10:12:25 -0700
committerPatrick Tjin <pattjin@google.com>2015-05-07 10:12:25 -0700
commitdef78a4c35e3eb3b8c017b314dc213b1a23dd48c (patch)
treed856b59a797f404abfe2b181011ae935b5f2f1e1
parent2b0fd4d3ea48c4336b55f0692c4057fe9d329dc5 (diff)
downloadmsm8994-def78a4c35e3eb3b8c017b314dc213b1a23dd48c.tar.gz
msm8994: Update kernel headers
Updates kernel headers to match tag: AU_LINUX_ANDROID_LA.BF64.1.2.9.05.01.00.089.060 Change-Id: I2d24f96ba219f40fbd1a5fd6c04ba5f39f4a170a
-rw-r--r--kernel-headers/linux/msm_audio_calibration.h604
-rw-r--r--kernel-headers/sound/lsm_params.h122
-rw-r--r--original-kernel-headers/linux/msm_audio_calibration.h44
-rw-r--r--original-kernel-headers/sound/lsm_params.h114
4 files changed, 559 insertions, 325 deletions
diff --git a/kernel-headers/linux/msm_audio_calibration.h b/kernel-headers/linux/msm_audio_calibration.h
index 1da8d2f..ebcc966 100644
--- a/kernel-headers/linux/msm_audio_calibration.h
+++ b/kernel-headers/linux/msm_audio_calibration.h
@@ -22,524 +22,566 @@
#include <linux/ioctl.h>
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define CAL_IOCTL_MAGIC 'a'
-#define AUDIO_ALLOCATE_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 200, void *)
-#define AUDIO_DEALLOCATE_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 201, void *)
-#define AUDIO_PREPARE_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 202, void *)
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
-#define AUDIO_SET_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 203, void *)
-#define AUDIO_GET_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 204, void *)
-#define AUDIO_POST_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 205, void *)
-#define AUDIO_GET_RTAC_ADM_INFO _IOR(CAL_IOCTL_MAGIC, 207, void *)
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
-#define AUDIO_GET_RTAC_VOICE_INFO _IOR(CAL_IOCTL_MAGIC, 208, void *)
-#define AUDIO_GET_RTAC_ADM_CAL _IOWR(CAL_IOCTL_MAGIC, 209, void *)
-#define AUDIO_SET_RTAC_ADM_CAL _IOWR(CAL_IOCTL_MAGIC, 210, void *)
-#define AUDIO_GET_RTAC_ASM_CAL _IOWR(CAL_IOCTL_MAGIC, 211, void *)
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
-#define AUDIO_SET_RTAC_ASM_CAL _IOWR(CAL_IOCTL_MAGIC, 212, void *)
-#define AUDIO_GET_RTAC_CVS_CAL _IOWR(CAL_IOCTL_MAGIC, 213, void *)
-#define AUDIO_SET_RTAC_CVS_CAL _IOWR(CAL_IOCTL_MAGIC, 214, void *)
-#define AUDIO_GET_RTAC_CVP_CAL _IOWR(CAL_IOCTL_MAGIC, 215, void *)
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
-#define AUDIO_SET_RTAC_CVP_CAL _IOWR(CAL_IOCTL_MAGIC, 216, void *)
-#define AUDIO_GET_RTAC_AFE_CAL _IOWR(CAL_IOCTL_MAGIC, 217, void *)
-#define AUDIO_SET_RTAC_AFE_CAL _IOWR(CAL_IOCTL_MAGIC, 218, void *)
+#define AUDIO_ALLOCATE_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 200, void *)
+#define AUDIO_DEALLOCATE_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 201, void *)
+#define AUDIO_PREPARE_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 202, void *)
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define AUDIO_SET_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 203, void *)
+#define AUDIO_GET_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 204, void *)
+#define AUDIO_POST_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 205, void *)
+#define AUDIO_GET_RTAC_ADM_INFO _IOR(CAL_IOCTL_MAGIC, 207, void *)
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define AUDIO_GET_RTAC_VOICE_INFO _IOR(CAL_IOCTL_MAGIC, 208, void *)
+#define AUDIO_GET_RTAC_ADM_CAL _IOWR(CAL_IOCTL_MAGIC, 209, void *)
+#define AUDIO_SET_RTAC_ADM_CAL _IOWR(CAL_IOCTL_MAGIC, 210, void *)
+#define AUDIO_GET_RTAC_ASM_CAL _IOWR(CAL_IOCTL_MAGIC, 211, void *)
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define AUDIO_SET_RTAC_ASM_CAL _IOWR(CAL_IOCTL_MAGIC, 212, void *)
+#define AUDIO_GET_RTAC_CVS_CAL _IOWR(CAL_IOCTL_MAGIC, 213, void *)
+#define AUDIO_SET_RTAC_CVS_CAL _IOWR(CAL_IOCTL_MAGIC, 214, void *)
+#define AUDIO_GET_RTAC_CVP_CAL _IOWR(CAL_IOCTL_MAGIC, 215, void *)
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define AUDIO_SET_RTAC_CVP_CAL _IOWR(CAL_IOCTL_MAGIC, 216, void *)
+#define AUDIO_GET_RTAC_AFE_CAL _IOWR(CAL_IOCTL_MAGIC, 217, void *)
+#define AUDIO_SET_RTAC_AFE_CAL _IOWR(CAL_IOCTL_MAGIC, 218, void *)
enum {
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- CVP_VOC_RX_TOPOLOGY_CAL_TYPE = 0,
- CVP_VOC_TX_TOPOLOGY_CAL_TYPE,
- CVP_VOCPROC_STATIC_CAL_TYPE,
- CVP_VOCPROC_DYNAMIC_CAL_TYPE,
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- CVS_VOCSTRM_STATIC_CAL_TYPE,
- CVP_VOCDEV_CFG_CAL_TYPE,
- CVP_VOCPROC_STATIC_COL_CAL_TYPE,
- CVP_VOCPROC_DYNAMIC_COL_CAL_TYPE,
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- CVS_VOCSTRM_STATIC_COL_CAL_TYPE,
- ADM_TOPOLOGY_CAL_TYPE,
- ADM_CUST_TOPOLOGY_CAL_TYPE,
- ADM_AUDPROC_CAL_TYPE,
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- ADM_AUDVOL_CAL_TYPE,
- ASM_TOPOLOGY_CAL_TYPE,
- ASM_CUST_TOPOLOGY_CAL_TYPE,
- ASM_AUDSTRM_CAL_TYPE,
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- AFE_COMMON_RX_CAL_TYPE,
- AFE_COMMON_TX_CAL_TYPE,
- AFE_ANC_CAL_TYPE,
- AFE_AANC_CAL_TYPE,
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- AFE_FB_SPKR_PROT_CAL_TYPE,
- AFE_HW_DELAY_CAL_TYPE,
- AFE_SIDETONE_CAL_TYPE,
- LSM_CAL_TYPE,
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- ADM_RTAC_INFO_CAL_TYPE,
- VOICE_RTAC_INFO_CAL_TYPE,
- ADM_RTAC_APR_CAL_TYPE,
- ASM_RTAC_APR_CAL_TYPE,
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- VOICE_RTAC_APR_CAL_TYPE,
- MAD_CAL_TYPE,
- ULP_AFE_CAL_TYPE,
- ULP_LSM_CAL_TYPE,
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- DTS_EAGLE_CAL_TYPE,
- AUDIO_CORE_METAINFO_CAL_TYPE,
- SRS_TRUMEDIA_CAL_TYPE,
- MAX_CAL_TYPES,
+ CVP_VOC_RX_TOPOLOGY_CAL_TYPE = 0,
+ CVP_VOC_TX_TOPOLOGY_CAL_TYPE,
+ CVP_VOCPROC_STATIC_CAL_TYPE,
+ CVP_VOCPROC_DYNAMIC_CAL_TYPE,
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ CVS_VOCSTRM_STATIC_CAL_TYPE,
+ CVP_VOCDEV_CFG_CAL_TYPE,
+ CVP_VOCPROC_STATIC_COL_CAL_TYPE,
+ CVP_VOCPROC_DYNAMIC_COL_CAL_TYPE,
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ CVS_VOCSTRM_STATIC_COL_CAL_TYPE,
+ ADM_TOPOLOGY_CAL_TYPE,
+ ADM_CUST_TOPOLOGY_CAL_TYPE,
+ ADM_AUDPROC_CAL_TYPE,
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ ADM_AUDVOL_CAL_TYPE,
+ ASM_TOPOLOGY_CAL_TYPE,
+ ASM_CUST_TOPOLOGY_CAL_TYPE,
+ ASM_AUDSTRM_CAL_TYPE,
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ AFE_COMMON_RX_CAL_TYPE,
+ AFE_COMMON_TX_CAL_TYPE,
+ AFE_ANC_CAL_TYPE,
+ AFE_AANC_CAL_TYPE,
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ AFE_FB_SPKR_PROT_CAL_TYPE,
+ AFE_HW_DELAY_CAL_TYPE,
+ AFE_SIDETONE_CAL_TYPE,
+ AFE_TOPOLOGY_CAL_TYPE,
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ AFE_CUST_TOPOLOGY_CAL_TYPE,
+ LSM_CUST_TOPOLOGY_CAL_TYPE,
+ LSM_TOPOLOGY_CAL_TYPE,
+ LSM_CAL_TYPE,
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ ADM_RTAC_INFO_CAL_TYPE,
+ VOICE_RTAC_INFO_CAL_TYPE,
+ ADM_RTAC_APR_CAL_TYPE,
+ ASM_RTAC_APR_CAL_TYPE,
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ VOICE_RTAC_APR_CAL_TYPE,
+ MAD_CAL_TYPE,
+ ULP_AFE_CAL_TYPE,
+ ULP_LSM_CAL_TYPE,
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ DTS_EAGLE_CAL_TYPE,
+ AUDIO_CORE_METAINFO_CAL_TYPE,
+ SRS_TRUMEDIA_CAL_TYPE,
+ MAX_CAL_TYPES,
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
};
enum {
- VERSION_0_0,
+ VERSION_0_0,
};
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
enum {
- PER_VOCODER_CAL_BIT_MASK = 0x10000,
+ PER_VOCODER_CAL_BIT_MASK = 0x10000,
};
#define MAX_IOCTL_CMD_SIZE 512
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
struct audio_cal_header {
- int32_t data_size;
- int32_t version;
- int32_t cal_type;
+ int32_t data_size;
+ int32_t version;
+ int32_t cal_type;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- int32_t cal_type_size;
+ int32_t cal_type_size;
};
struct audio_cal_type_header {
- int32_t version;
+ int32_t version;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- int32_t buffer_number;
+ int32_t buffer_number;
};
struct audio_cal_data {
- int32_t cal_size;
+ int32_t cal_size;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- int32_t mem_handle;
+ int32_t mem_handle;
};
struct audio_cal_type_alloc {
- struct audio_cal_type_header cal_hdr;
+ struct audio_cal_type_header cal_hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_data cal_data;
+ struct audio_cal_data cal_data;
};
struct audio_cal_alloc {
- struct audio_cal_header hdr;
+ struct audio_cal_header hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_type_alloc cal_type;
+ struct audio_cal_type_alloc cal_type;
};
struct audio_cal_type_dealloc {
- struct audio_cal_type_header cal_hdr;
+ struct audio_cal_type_header cal_hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_data cal_data;
+ struct audio_cal_data cal_data;
};
struct audio_cal_dealloc {
- struct audio_cal_header hdr;
+ struct audio_cal_header hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_type_dealloc cal_type;
+ struct audio_cal_type_dealloc cal_type;
};
struct audio_cal_type_prepare {
- struct audio_cal_type_header cal_hdr;
+ struct audio_cal_type_header cal_hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_data cal_data;
+ struct audio_cal_data cal_data;
};
struct audio_cal_prepare {
- struct audio_cal_header hdr;
+ struct audio_cal_header hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_type_prepare cal_type;
+ struct audio_cal_type_prepare cal_type;
};
struct audio_cal_type_post {
- struct audio_cal_type_header cal_hdr;
+ struct audio_cal_type_header cal_hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_data cal_data;
+ struct audio_cal_data cal_data;
};
struct audio_cal_post {
- struct audio_cal_header hdr;
+ struct audio_cal_header hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_type_post cal_type;
+ struct audio_cal_type_post cal_type;
};
struct audio_cal_info_metainfo {
- uint32_t nKey;
+ uint32_t nKey;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
};
enum {
- RX_DEVICE,
- TX_DEVICE,
+ RX_DEVICE,
+ TX_DEVICE,
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- MAX_PATH_TYPE
+ MAX_PATH_TYPE
};
struct audio_cal_info_adm_top {
- int32_t topology;
+ int32_t topology;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- int32_t acdb_id;
- int32_t path;
- int32_t app_type;
- int32_t sample_rate;
+ int32_t acdb_id;
+ int32_t path;
+ int32_t app_type;
+ int32_t sample_rate;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
};
struct audio_cal_info_audproc {
- int32_t acdb_id;
- int32_t path;
+ int32_t acdb_id;
+ int32_t path;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- int32_t app_type;
- int32_t sample_rate;
+ int32_t app_type;
+ int32_t sample_rate;
};
struct audio_cal_info_audvol {
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- int32_t acdb_id;
- int32_t path;
- int32_t app_type;
- int32_t vol_index;
+ int32_t acdb_id;
+ int32_t path;
+ int32_t app_type;
+ int32_t vol_index;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
};
struct audio_cal_info_afe {
- int32_t acdb_id;
- int32_t path;
+ int32_t acdb_id;
+ int32_t path;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- int32_t sample_rate;
+ int32_t sample_rate;
};
-struct audio_cal_info_asm_top {
- int32_t topology;
+struct audio_cal_info_afe_top {
+ int32_t topology;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- int32_t app_type;
+ int32_t acdb_id;
+ int32_t path;
+ int32_t sample_rate;
};
-struct audio_cal_info_audstrm {
- int32_t app_type;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+struct audio_cal_info_asm_top {
+ int32_t topology;
+ int32_t app_type;
};
-struct audio_cal_info_aanc {
- int32_t acdb_id;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+struct audio_cal_info_audstrm {
+ int32_t app_type;
};
+struct audio_cal_info_aanc {
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ int32_t acdb_id;
+};
#define MAX_HW_DELAY_ENTRIES 25
struct audio_cal_hw_delay_entry {
- uint32_t sample_rate;
- uint32_t delay_usec;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ uint32_t sample_rate;
+ uint32_t delay_usec;
};
struct audio_cal_hw_delay_data {
- uint32_t num_entries;
- struct audio_cal_hw_delay_entry entry[MAX_HW_DELAY_ENTRIES];
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ uint32_t num_entries;
+ struct audio_cal_hw_delay_entry entry[MAX_HW_DELAY_ENTRIES];
};
struct audio_cal_info_hw_delay {
- int32_t acdb_id;
- int32_t path;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- int32_t property_type;
- struct audio_cal_hw_delay_data data;
+ int32_t acdb_id;
+ int32_t path;
+ int32_t property_type;
+ struct audio_cal_hw_delay_data data;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
};
enum msm_spkr_prot_states {
+ MSM_SPKR_PROT_CALIBRATED,
+ MSM_SPKR_PROT_CALIBRATION_IN_PROGRESS,
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- MSM_SPKR_PROT_CALIBRATED,
- MSM_SPKR_PROT_CALIBRATION_IN_PROGRESS,
- MSM_SPKR_PROT_DISABLED,
- MSM_SPKR_PROT_NOT_CALIBRATED
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ MSM_SPKR_PROT_DISABLED,
+ MSM_SPKR_PROT_NOT_CALIBRATED,
+ MSM_SPKR_PROT_PRE_CALIBRATED,
};
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
enum msm_spkr_count {
- SP_V2_SPKR_1,
- SP_V2_SPKR_2,
+ SP_V2_SPKR_1,
+ SP_V2_SPKR_2,
+ SP_V2_NUM_MAX_SPKRS
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- SP_V2_NUM_MAX_SPKRS
};
struct audio_cal_info_spk_prot_cfg {
- int32_t r0[SP_V2_NUM_MAX_SPKRS];
+ int32_t r0[SP_V2_NUM_MAX_SPKRS];
+ int32_t t0[SP_V2_NUM_MAX_SPKRS];
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- int32_t t0[SP_V2_NUM_MAX_SPKRS];
- uint32_t quick_calib_flag;
- uint32_t mode;
+ uint32_t quick_calib_flag;
+ uint32_t mode;
};
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
struct audio_cal_info_msm_spk_prot_status {
- int32_t r0[SP_V2_NUM_MAX_SPKRS];
- int32_t status;
-};
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ int32_t r0[SP_V2_NUM_MAX_SPKRS];
+ int32_t status;
+};
struct audio_cal_info_sidetone {
- uint16_t enable;
- uint16_t gain;
- int32_t tx_acdb_id;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- int32_t rx_acdb_id;
- int32_t mid;
- int32_t pid;
+ uint16_t enable;
+ uint16_t gain;
+ int32_t tx_acdb_id;
+ int32_t rx_acdb_id;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ int32_t mid;
+ int32_t pid;
+};
+struct audio_cal_info_lsm_top {
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ int32_t topology;
+ int32_t acdb_id;
+ int32_t app_type;
};
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
struct audio_cal_info_lsm {
- int32_t acdb_id;
- int32_t path;
- int32_t app_type;
+ int32_t acdb_id;
+ int32_t path;
+ int32_t app_type;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
};
struct audio_cal_info_voc_top {
- int32_t topology;
- int32_t acdb_id;
+ int32_t topology;
+ int32_t acdb_id;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
};
struct audio_cal_info_vocproc {
- int32_t tx_acdb_id;
- int32_t rx_acdb_id;
+ int32_t tx_acdb_id;
+ int32_t rx_acdb_id;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- int32_t tx_sample_rate;
- int32_t rx_sample_rate;
+ int32_t tx_sample_rate;
+ int32_t rx_sample_rate;
};
enum {
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- DEFAULT_FEATURE_SET,
- VOL_BOOST_FEATURE_SET,
+ DEFAULT_FEATURE_SET,
+ VOL_BOOST_FEATURE_SET,
};
struct audio_cal_info_vocvol {
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- int32_t tx_acdb_id;
- int32_t rx_acdb_id;
- int32_t feature_set;
+ int32_t tx_acdb_id;
+ int32_t rx_acdb_id;
+ int32_t feature_set;
};
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
struct audio_cal_info_vocdev_cfg {
- int32_t tx_acdb_id;
- int32_t rx_acdb_id;
+ int32_t tx_acdb_id;
+ int32_t rx_acdb_id;
};
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define MAX_VOICE_COLUMNS 20
union audio_cal_col_na {
- uint8_t val8;
- uint16_t val16;
+ uint8_t val8;
+ uint16_t val16;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- uint32_t val32;
- uint64_t val64;
+ uint32_t val32;
+ uint64_t val64;
} __packed;
struct audio_cal_col {
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- uint32_t id;
- uint32_t type;
- union audio_cal_col_na na_value;
+ uint32_t id;
+ uint32_t type;
+ union audio_cal_col_na na_value;
} __packed;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
struct audio_cal_col_data {
- uint32_t num_columns;
- struct audio_cal_col column[MAX_VOICE_COLUMNS];
+ uint32_t num_columns;
+ struct audio_cal_col column[MAX_VOICE_COLUMNS];
} __packed;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
struct audio_cal_info_voc_col {
- int32_t table_id;
- int32_t tx_acdb_id;
- int32_t rx_acdb_id;
+ int32_t table_id;
+ int32_t tx_acdb_id;
+ int32_t rx_acdb_id;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_col_data data;
+ struct audio_cal_col_data data;
};
struct audio_cal_type_basic {
- struct audio_cal_type_header cal_hdr;
+ struct audio_cal_type_header cal_hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_data cal_data;
+ struct audio_cal_data cal_data;
};
struct audio_cal_basic {
- struct audio_cal_header hdr;
+ struct audio_cal_header hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_type_basic cal_type;
+ struct audio_cal_type_basic cal_type;
};
struct audio_cal_type_adm_top {
- struct audio_cal_type_header cal_hdr;
+ struct audio_cal_type_header cal_hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_data cal_data;
- struct audio_cal_info_adm_top cal_info;
+ struct audio_cal_data cal_data;
+ struct audio_cal_info_adm_top cal_info;
};
struct audio_cal_adm_top {
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_header hdr;
- struct audio_cal_type_adm_top cal_type;
+ struct audio_cal_header hdr;
+ struct audio_cal_type_adm_top cal_type;
};
struct audio_cal_type_metainfo {
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_type_header cal_hdr;
- struct audio_cal_data cal_data;
- struct audio_cal_info_metainfo cal_info;
+ struct audio_cal_type_header cal_hdr;
+ struct audio_cal_data cal_data;
+ struct audio_cal_info_metainfo cal_info;
};
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
struct audio_core_metainfo {
- struct audio_cal_header hdr;
- struct audio_cal_type_metainfo cal_type;
+ struct audio_cal_header hdr;
+ struct audio_cal_type_metainfo cal_type;
};
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
struct audio_cal_type_audproc {
- struct audio_cal_type_header cal_hdr;
- struct audio_cal_data cal_data;
- struct audio_cal_info_audproc cal_info;
+ struct audio_cal_type_header cal_hdr;
+ struct audio_cal_data cal_data;
+ struct audio_cal_info_audproc cal_info;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
};
struct audio_cal_audproc {
- struct audio_cal_header hdr;
- struct audio_cal_type_audproc cal_type;
+ struct audio_cal_header hdr;
+ struct audio_cal_type_audproc cal_type;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
};
struct audio_cal_type_audvol {
- struct audio_cal_type_header cal_hdr;
- struct audio_cal_data cal_data;
+ struct audio_cal_type_header cal_hdr;
+ struct audio_cal_data cal_data;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_info_audvol cal_info;
+ struct audio_cal_info_audvol cal_info;
};
struct audio_cal_audvol {
- struct audio_cal_header hdr;
+ struct audio_cal_header hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_type_audvol cal_type;
+ struct audio_cal_type_audvol cal_type;
};
struct audio_cal_type_asm_top {
- struct audio_cal_type_header cal_hdr;
+ struct audio_cal_type_header cal_hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_data cal_data;
- struct audio_cal_info_asm_top cal_info;
+ struct audio_cal_data cal_data;
+ struct audio_cal_info_asm_top cal_info;
};
struct audio_cal_asm_top {
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_header hdr;
- struct audio_cal_type_asm_top cal_type;
+ struct audio_cal_header hdr;
+ struct audio_cal_type_asm_top cal_type;
};
struct audio_cal_type_audstrm {
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_type_header cal_hdr;
- struct audio_cal_data cal_data;
- struct audio_cal_info_audstrm cal_info;
+ struct audio_cal_type_header cal_hdr;
+ struct audio_cal_data cal_data;
+ struct audio_cal_info_audstrm cal_info;
};
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
struct audio_cal_audstrm {
- struct audio_cal_header hdr;
- struct audio_cal_type_audstrm cal_type;
+ struct audio_cal_header hdr;
+ struct audio_cal_type_audstrm cal_type;
};
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
struct audio_cal_type_afe {
- struct audio_cal_type_header cal_hdr;
- struct audio_cal_data cal_data;
- struct audio_cal_info_afe cal_info;
+ struct audio_cal_type_header cal_hdr;
+ struct audio_cal_data cal_data;
+ struct audio_cal_info_afe cal_info;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
};
struct audio_cal_afe {
- struct audio_cal_header hdr;
- struct audio_cal_type_afe cal_type;
+ struct audio_cal_header hdr;
+ struct audio_cal_type_afe cal_type;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
};
+struct audio_cal_type_afe_top {
+ struct audio_cal_type_header cal_hdr;
+ struct audio_cal_data cal_data;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ struct audio_cal_info_afe_top cal_info;
+};
+struct audio_cal_afe_top {
+ struct audio_cal_header hdr;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ struct audio_cal_type_afe_top cal_type;
+};
struct audio_cal_type_aanc {
- struct audio_cal_type_header cal_hdr;
- struct audio_cal_data cal_data;
+ struct audio_cal_type_header cal_hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_info_aanc cal_info;
+ struct audio_cal_data cal_data;
+ struct audio_cal_info_aanc cal_info;
};
struct audio_cal_aanc {
- struct audio_cal_header hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_type_aanc cal_type;
+ struct audio_cal_header hdr;
+ struct audio_cal_type_aanc cal_type;
};
struct audio_cal_type_fb_spk_prot_cfg {
- struct audio_cal_type_header cal_hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_data cal_data;
- struct audio_cal_info_spk_prot_cfg cal_info;
+ struct audio_cal_type_header cal_hdr;
+ struct audio_cal_data cal_data;
+ struct audio_cal_info_spk_prot_cfg cal_info;
};
-struct audio_cal_fb_spk_prot_cfg {
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_header hdr;
- struct audio_cal_type_fb_spk_prot_cfg cal_type;
+struct audio_cal_fb_spk_prot_cfg {
+ struct audio_cal_header hdr;
+ struct audio_cal_type_fb_spk_prot_cfg cal_type;
};
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
struct audio_cal_type_hw_delay {
+ struct audio_cal_type_header cal_hdr;
+ struct audio_cal_data cal_data;
+ struct audio_cal_info_hw_delay cal_info;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_type_header cal_hdr;
- struct audio_cal_data cal_data;
- struct audio_cal_info_hw_delay cal_info;
};
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
struct audio_cal_hw_delay {
- struct audio_cal_header hdr;
- struct audio_cal_type_hw_delay cal_type;
-};
+ struct audio_cal_header hdr;
+ struct audio_cal_type_hw_delay cal_type;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+};
struct audio_cal_type_sidetone {
- struct audio_cal_type_header cal_hdr;
- struct audio_cal_data cal_data;
- struct audio_cal_info_sidetone cal_info;
+ struct audio_cal_type_header cal_hdr;
+ struct audio_cal_data cal_data;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ struct audio_cal_info_sidetone cal_info;
};
struct audio_cal_sidetone {
- struct audio_cal_header hdr;
- struct audio_cal_type_sidetone cal_type;
+ struct audio_cal_header hdr;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ struct audio_cal_type_sidetone cal_type;
+};
+struct audio_cal_type_lsm_top {
+ struct audio_cal_type_header cal_hdr;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ struct audio_cal_data cal_data;
+ struct audio_cal_info_lsm_top cal_info;
+};
+struct audio_cal_lsm_top {
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ struct audio_cal_header hdr;
+ struct audio_cal_type_lsm_top cal_type;
};
struct audio_cal_type_lsm {
- struct audio_cal_type_header cal_hdr;
- struct audio_cal_data cal_data;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_info_lsm cal_info;
+ struct audio_cal_type_header cal_hdr;
+ struct audio_cal_data cal_data;
+ struct audio_cal_info_lsm cal_info;
};
-struct audio_cal_lsm {
- struct audio_cal_header hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_type_lsm cal_type;
+struct audio_cal_lsm {
+ struct audio_cal_header hdr;
+ struct audio_cal_type_lsm cal_type;
};
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
struct audio_cal_type_voc_top {
- struct audio_cal_type_header cal_hdr;
+ struct audio_cal_type_header cal_hdr;
+ struct audio_cal_data cal_data;
+ struct audio_cal_info_voc_top cal_info;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_data cal_data;
- struct audio_cal_info_voc_top cal_info;
};
struct audio_cal_voc_top {
+ struct audio_cal_header hdr;
+ struct audio_cal_type_voc_top cal_type;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_header hdr;
- struct audio_cal_type_voc_top cal_type;
};
struct audio_cal_type_vocproc {
+ struct audio_cal_type_header cal_hdr;
+ struct audio_cal_data cal_data;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_type_header cal_hdr;
- struct audio_cal_data cal_data;
- struct audio_cal_info_vocproc cal_info;
+ struct audio_cal_info_vocproc cal_info;
};
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
struct audio_cal_vocproc {
- struct audio_cal_header hdr;
- struct audio_cal_type_vocproc cal_type;
-};
+ struct audio_cal_header hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ struct audio_cal_type_vocproc cal_type;
+};
struct audio_cal_type_vocvol {
- struct audio_cal_type_header cal_hdr;
- struct audio_cal_data cal_data;
- struct audio_cal_info_vocvol cal_info;
+ struct audio_cal_type_header cal_hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ struct audio_cal_data cal_data;
+ struct audio_cal_info_vocvol cal_info;
};
struct audio_cal_vocvol {
- struct audio_cal_header hdr;
- struct audio_cal_type_vocvol cal_type;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ struct audio_cal_header hdr;
+ struct audio_cal_type_vocvol cal_type;
};
struct audio_cal_type_vocdev_cfg {
- struct audio_cal_type_header cal_hdr;
- struct audio_cal_data cal_data;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_info_vocdev_cfg cal_info;
+ struct audio_cal_type_header cal_hdr;
+ struct audio_cal_data cal_data;
+ struct audio_cal_info_vocdev_cfg cal_info;
};
-struct audio_cal_vocdev_cfg {
- struct audio_cal_header hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_type_vocdev_cfg cal_type;
+struct audio_cal_vocdev_cfg {
+ struct audio_cal_header hdr;
+ struct audio_cal_type_vocdev_cfg cal_type;
};
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
struct audio_cal_type_voc_col {
- struct audio_cal_type_header cal_hdr;
+ struct audio_cal_type_header cal_hdr;
+ struct audio_cal_data cal_data;
+ struct audio_cal_info_voc_col cal_info;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_data cal_data;
- struct audio_cal_info_voc_col cal_info;
};
struct audio_cal_voc_col {
+ struct audio_cal_header hdr;
+ struct audio_cal_type_voc_col cal_type;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_header hdr;
- struct audio_cal_type_voc_col cal_type;
};
struct audio_cal_type_fb_spk_prot_status {
+ struct audio_cal_type_header cal_hdr;
+ struct audio_cal_data cal_data;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- struct audio_cal_type_header cal_hdr;
- struct audio_cal_data cal_data;
- struct audio_cal_info_msm_spk_prot_status cal_info;
+ struct audio_cal_info_msm_spk_prot_status cal_info;
};
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
struct audio_cal_fb_spk_prot_status {
- struct audio_cal_header hdr;
- struct audio_cal_type_fb_spk_prot_status cal_type;
-};
+ struct audio_cal_header hdr;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ struct audio_cal_type_fb_spk_prot_status cal_type;
+};
#endif
diff --git a/kernel-headers/sound/lsm_params.h b/kernel-headers/sound/lsm_params.h
index 34c6c55..49ea6a3 100644
--- a/kernel-headers/sound/lsm_params.h
+++ b/kernel-headers/sound/lsm_params.h
@@ -22,74 +22,124 @@
#include <sound/asound.h>
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SNDRV_LSM_VERSION SNDRV_PROTOCOL_VERSION(0, 1, 0)
+#define LSM_OUT_FORMAT_PCM (0)
+#define LSM_OUT_FORMAT_ADPCM (1 << 0)
+#define LSM_OUT_DATA_RAW (0)
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define LSM_OUT_DATA_PACKED (1)
+#define LSM_OUT_DATA_EVENTS_DISABLED (0)
+#define LSM_OUT_DATA_EVENTS_ENABLED (1)
+#define LSM_OUT_TRANSFER_MODE_RT (0)
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define LSM_OUT_TRANSFER_MODE_FTRT (1)
enum lsm_app_id {
- LSM_VOICE_WAKEUP_APP_ID = 1,
- LSM_VOICE_WAKEUP_APP_ID_V2 = 2,
+ LSM_VOICE_WAKEUP_APP_ID = 1,
+ LSM_VOICE_WAKEUP_APP_ID_V2 = 2,
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
};
enum lsm_detection_mode {
- LSM_MODE_KEYWORD_ONLY_DETECTION = 1,
- LSM_MODE_USER_KEYWORD_DETECTION
+ LSM_MODE_KEYWORD_ONLY_DETECTION = 1,
+ LSM_MODE_USER_KEYWORD_DETECTION
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
};
enum lsm_vw_status {
- LSM_VOICE_WAKEUP_STATUS_RUNNING = 1,
- LSM_VOICE_WAKEUP_STATUS_DETECTED,
+ LSM_VOICE_WAKEUP_STATUS_RUNNING = 1,
+ LSM_VOICE_WAKEUP_STATUS_DETECTED,
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- LSM_VOICE_WAKEUP_STATUS_END_SPEECH,
- LSM_VOICE_WAKEUP_STATUS_REJECTED
+ LSM_VOICE_WAKEUP_STATUS_END_SPEECH,
+ LSM_VOICE_WAKEUP_STATUS_REJECTED
};
-struct snd_lsm_sound_model {
+enum LSM_PARAM_TYPE {
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ LSM_ENDPOINT_DETECT_THRESHOLD = 0,
+ LSM_OPERATION_MODE,
+ LSM_GAIN,
+ LSM_MIN_CONFIDENCE_LEVELS,
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- __u8 __user *data;
- __u32 data_size;
- enum lsm_detection_mode detection_mode;
- __u16 min_keyw_confidence;
+ LSM_REG_SND_MODEL,
+ LSM_DEREG_SND_MODEL,
+ LSM_CUSTOM_PARAMS,
+ LSM_PARAMS_MAX,
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- __u16 min_user_confidence;
- bool detect_failure;
};
-struct snd_lsm_sound_model_v2 {
+struct snd_lsm_ep_det_thres {
+ __u32 epd_begin;
+ __u32 epd_end;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- __u8 __user *data;
- __u8 *confidence_level;
- __u32 data_size;
- enum lsm_detection_mode detection_mode;
+};
+struct snd_lsm_detect_mode {
+ enum lsm_detection_mode mode;
+ bool detect_failure;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- __u8 num_confidence_levels;
- bool detect_failure;
};
-struct snd_lsm_session_data {
+struct snd_lsm_gain {
+ __u16 gain;
+};
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+struct snd_lsm_sound_model_v2 {
+ __u8 __user * data;
+ __u8 * confidence_level;
+ __u32 data_size;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- enum lsm_app_id app_id;
+ enum lsm_detection_mode detection_mode;
+ __u8 num_confidence_levels;
+ bool detect_failure;
+};
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+struct snd_lsm_session_data {
+ enum lsm_app_id app_id;
};
struct snd_lsm_event_status {
- __u16 status;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- __u16 payload_size;
- __u8 payload[0];
+ __u16 status;
+ __u16 payload_size;
+ __u8 payload[0];
};
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
struct snd_lsm_detection_params {
+ __u8 * conf_level;
+ enum lsm_detection_mode detect_mode;
+ __u8 num_confidence_levels;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ bool detect_failure;
+};
+struct lsm_params_info {
+ __u32 module_id;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ __u32 param_id;
+ __u32 param_size;
+ __u8 __user * param_data;
+ enum LSM_PARAM_TYPE param_type;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+};
+struct snd_lsm_module_params {
+ __u8 __user * params;
+ __u32 num_params;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
- __u8 *conf_level;
- enum lsm_detection_mode detect_mode;
- __u8 num_confidence_levels;
- bool detect_failure;
+ __u32 data_size;
+};
+struct snd_lsm_output_format_cfg {
+ __u8 format;
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+ __u8 packing;
+ __u8 events;
+ __u8 mode;
};
-#define SNDRV_LSM_REG_SND_MODEL _IOW('U', 0x00, struct snd_lsm_sound_model)
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SNDRV_LSM_DEREG_SND_MODEL _IOW('U', 0x01, int)
#define SNDRV_LSM_EVENT_STATUS _IOW('U', 0x02, struct snd_lsm_event_status)
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SNDRV_LSM_ABORT_EVENT _IOW('U', 0x03, int)
#define SNDRV_LSM_START _IOW('U', 0x04, int)
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SNDRV_LSM_STOP _IOW('U', 0x05, int)
#define SNDRV_LSM_SET_SESSION_DATA _IOW('U', 0x06, struct snd_lsm_session_data)
-/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
-#define SNDRV_LSM_REG_SND_MODEL_V2 _IOW('U', 0x07, struct snd_lsm_sound_model_v2)
+#define SNDRV_LSM_REG_SND_MODEL_V2 _IOW('U', 0x07, struct snd_lsm_sound_model_v2)
#define SNDRV_LSM_LAB_CONTROL _IOW('U', 0x08, uint32_t)
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#define SNDRV_LSM_STOP_LAB _IO('U', 0x09)
-#define SNDRV_LSM_SET_PARAMS _IOW('U', 0x0A, struct snd_lsm_detection_params)
+#define SNDRV_LSM_SET_PARAMS _IOW('U', 0x0A, struct snd_lsm_detection_params)
+#define SNDRV_LSM_SET_MODULE_PARAMS _IOW('U', 0x0B, struct snd_lsm_module_params)
+#define SNDRV_LSM_OUT_FORMAT_CFG _IOW('U', 0x0C, struct snd_lsm_output_format_cfg)
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
#endif
diff --git a/original-kernel-headers/linux/msm_audio_calibration.h b/original-kernel-headers/linux/msm_audio_calibration.h
index dfa6663..78f6ffd 100644
--- a/original-kernel-headers/linux/msm_audio_calibration.h
+++ b/original-kernel-headers/linux/msm_audio_calibration.h
@@ -71,7 +71,11 @@ enum {
AFE_FB_SPKR_PROT_CAL_TYPE,
AFE_HW_DELAY_CAL_TYPE,
AFE_SIDETONE_CAL_TYPE,
+ AFE_TOPOLOGY_CAL_TYPE,
+ AFE_CUST_TOPOLOGY_CAL_TYPE,
+ LSM_CUST_TOPOLOGY_CAL_TYPE,
+ LSM_TOPOLOGY_CAL_TYPE,
LSM_CAL_TYPE,
ADM_RTAC_INFO_CAL_TYPE,
@@ -216,6 +220,14 @@ struct audio_cal_info_afe {
int32_t sample_rate;
};
+struct audio_cal_info_afe_top {
+ int32_t topology;
+ int32_t acdb_id;
+ /* RX_DEVICE or TX_DEVICE */
+ int32_t path;
+ int32_t sample_rate;
+};
+
struct audio_cal_info_asm_top {
int32_t topology;
int32_t app_type;
@@ -253,7 +265,8 @@ enum msm_spkr_prot_states {
MSM_SPKR_PROT_CALIBRATED,
MSM_SPKR_PROT_CALIBRATION_IN_PROGRESS,
MSM_SPKR_PROT_DISABLED,
- MSM_SPKR_PROT_NOT_CALIBRATED
+ MSM_SPKR_PROT_NOT_CALIBRATED,
+ MSM_SPKR_PROT_PRE_CALIBRATED,
};
enum msm_spkr_count {
@@ -285,6 +298,13 @@ struct audio_cal_info_sidetone {
int32_t pid;
};
+struct audio_cal_info_lsm_top {
+ int32_t topology;
+ int32_t acdb_id;
+ int32_t app_type;
+};
+
+
struct audio_cal_info_lsm {
int32_t acdb_id;
/* RX_DEVICE or TX_DEVICE */
@@ -436,6 +456,17 @@ struct audio_cal_afe {
struct audio_cal_type_afe cal_type;
};
+struct audio_cal_type_afe_top {
+ struct audio_cal_type_header cal_hdr;
+ struct audio_cal_data cal_data;
+ struct audio_cal_info_afe_top cal_info;
+};
+
+struct audio_cal_afe_top {
+ struct audio_cal_header hdr;
+ struct audio_cal_type_afe_top cal_type;
+};
+
struct audio_cal_type_aanc {
struct audio_cal_type_header cal_hdr;
struct audio_cal_data cal_data;
@@ -480,6 +511,17 @@ struct audio_cal_sidetone {
struct audio_cal_type_sidetone cal_type;
};
+struct audio_cal_type_lsm_top {
+ struct audio_cal_type_header cal_hdr;
+ struct audio_cal_data cal_data;
+ struct audio_cal_info_lsm_top cal_info;
+};
+
+struct audio_cal_lsm_top {
+ struct audio_cal_header hdr;
+ struct audio_cal_type_lsm_top cal_type;
+};
+
struct audio_cal_type_lsm {
struct audio_cal_type_header cal_hdr;
struct audio_cal_data cal_data;
diff --git a/original-kernel-headers/sound/lsm_params.h b/original-kernel-headers/sound/lsm_params.h
index a7e8187..eafdc11 100644
--- a/original-kernel-headers/sound/lsm_params.h
+++ b/original-kernel-headers/sound/lsm_params.h
@@ -6,6 +6,18 @@
#define SNDRV_LSM_VERSION SNDRV_PROTOCOL_VERSION(0, 1, 0)
+#define LSM_OUT_FORMAT_PCM (0)
+#define LSM_OUT_FORMAT_ADPCM (1 << 0)
+
+#define LSM_OUT_DATA_RAW (0)
+#define LSM_OUT_DATA_PACKED (1)
+
+#define LSM_OUT_DATA_EVENTS_DISABLED (0)
+#define LSM_OUT_DATA_EVENTS_ENABLED (1)
+
+#define LSM_OUT_TRANSFER_MODE_RT (0)
+#define LSM_OUT_TRANSFER_MODE_FTRT (1)
+
enum lsm_app_id {
LSM_VOICE_WAKEUP_APP_ID = 1,
LSM_VOICE_WAKEUP_APP_ID_V2 = 2,
@@ -23,15 +35,47 @@ enum lsm_vw_status {
LSM_VOICE_WAKEUP_STATUS_REJECTED
};
-struct snd_lsm_sound_model {
- __u8 __user *data;
- __u32 data_size;
- enum lsm_detection_mode detection_mode;
- __u16 min_keyw_confidence;
- __u16 min_user_confidence;
+enum LSM_PARAM_TYPE {
+ LSM_ENDPOINT_DETECT_THRESHOLD = 0,
+ LSM_OPERATION_MODE,
+ LSM_GAIN,
+ LSM_MIN_CONFIDENCE_LEVELS,
+ LSM_REG_SND_MODEL,
+ LSM_DEREG_SND_MODEL,
+ LSM_CUSTOM_PARAMS,
+ /* driver ioctl will parse only so many params */
+ LSM_PARAMS_MAX,
+};
+
+/*
+ * Data for LSM_ENDPOINT_DETECT_THRESHOLD param_type
+ * @epd_begin: Begin threshold
+ * @epd_end: End threshold
+ */
+struct snd_lsm_ep_det_thres {
+ __u32 epd_begin;
+ __u32 epd_end;
+};
+
+/*
+ * Data for LSM_OPERATION_MODE param_type
+ * @mode: The detection mode to be used
+ * @detect_failure: Setting to enable failure detections.
+ */
+struct snd_lsm_detect_mode {
+ enum lsm_detection_mode mode;
bool detect_failure;
};
+/*
+ * Data for LSM_GAIN param_type
+ * @gain: The gain to be applied on LSM
+ */
+struct snd_lsm_gain {
+ __u16 gain;
+};
+
+
struct snd_lsm_sound_model_v2 {
__u8 __user *data;
__u8 *confidence_level;
@@ -58,7 +102,59 @@ struct snd_lsm_detection_params {
bool detect_failure;
};
-#define SNDRV_LSM_REG_SND_MODEL _IOW('U', 0x00, struct snd_lsm_sound_model)
+/*
+ * Param info for each parameter type
+ * @module_id: Module to which parameter is to be set
+ * @param_id: Parameter that is to be set
+ * @param_size: size (in number of bytes) for the data
+ * in param_data.
+ * For confidence levels, this is num_conf_levels
+ * For REG_SND_MODEL, this is size of sound model
+ * For CUSTOM_PARAMS, this is size of the entire blob of data
+ * @param_data: Data for the parameter.
+ * For some param_types this is a structure defined, ex: LSM_GAIN
+ * For CONFIDENCE_LEVELS, this is array of confidence levels
+ * For REG_SND_MODEL, this is the sound model data
+ * For CUSTOM_PARAMS, this is the blob of custom data.
+ */
+struct lsm_params_info {
+ __u32 module_id;
+ __u32 param_id;
+ __u32 param_size;
+ __u8 __user *param_data;
+ enum LSM_PARAM_TYPE param_type;
+};
+
+/*
+ * Data passed to the SET_PARAM_V2 IOCTL
+ * @num_params: Number of params that are to be set
+ * should not be greater than LSM_PARAMS_MAX
+ * @params: Points to an array of lsm_params_info
+ * Each entry points to one parameter to set
+ * @data_size: size (in bytes) for params
+ * should be equal to
+ * num_params * sizeof(struct lsm_parms_info)
+ */
+struct snd_lsm_module_params {
+ __u8 __user *params;
+ __u32 num_params;
+ __u32 data_size;
+};
+
+/*
+ * Data passed to LSM_OUT_FORMAT_CFG IOCTL
+ * @format: The media format enum
+ * @packing: indicates the packing method used for data path
+ * @events: indicates whether data path events need to be enabled
+ * @transfer_mode: indicates whether FTRT mode or RT mode.
+ */
+struct snd_lsm_output_format_cfg {
+ __u8 format;
+ __u8 packing;
+ __u8 events;
+ __u8 mode;
+};
+
#define SNDRV_LSM_DEREG_SND_MODEL _IOW('U', 0x01, int)
#define SNDRV_LSM_EVENT_STATUS _IOW('U', 0x02, struct snd_lsm_event_status)
#define SNDRV_LSM_ABORT_EVENT _IOW('U', 0x03, int)
@@ -71,5 +167,9 @@ struct snd_lsm_detection_params {
#define SNDRV_LSM_STOP_LAB _IO('U', 0x09)
#define SNDRV_LSM_SET_PARAMS _IOW('U', 0x0A, \
struct snd_lsm_detection_params)
+#define SNDRV_LSM_SET_MODULE_PARAMS _IOW('U', 0x0B, \
+ struct snd_lsm_module_params)
+#define SNDRV_LSM_OUT_FORMAT_CFG _IOW('U', 0x0C, \
+ struct snd_lsm_output_format_cfg)
#endif