blob: f0c4915d20b7237f23bc275abc0b20f59c585b43 [file] [log] [blame]
Ben Romberger12dce252013-01-04 15:23:07 -08001#ifndef _LINUX_MSM_AUDIO_ACDB_H
2#define _LINUX_MSM_AUDIO_ACDB_H
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07003
4#include <linux/msm_audio.h>
5
6#define AUDIO_SET_VOCPROC_CAL _IOW(AUDIO_IOCTL_MAGIC, \
7 (AUDIO_MAX_COMMON_IOCTL_NUM+0), unsigned)
8#define AUDIO_SET_VOCPROC_STREAM_CAL _IOW(AUDIO_IOCTL_MAGIC, \
9 (AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned)
10#define AUDIO_SET_VOCPROC_VOL_CAL _IOW(AUDIO_IOCTL_MAGIC, \
11 (AUDIO_MAX_COMMON_IOCTL_NUM+2), unsigned)
12#define AUDIO_SET_AUDPROC_RX_CAL _IOW(AUDIO_IOCTL_MAGIC, \
13 (AUDIO_MAX_COMMON_IOCTL_NUM+3), unsigned)
14#define AUDIO_SET_AUDPROC_RX_STREAM_CAL _IOW(AUDIO_IOCTL_MAGIC, \
15 (AUDIO_MAX_COMMON_IOCTL_NUM+4), unsigned)
16#define AUDIO_SET_AUDPROC_RX_VOL_CAL _IOW(AUDIO_IOCTL_MAGIC, \
17 (AUDIO_MAX_COMMON_IOCTL_NUM+5), unsigned)
18#define AUDIO_SET_AUDPROC_TX_CAL _IOW(AUDIO_IOCTL_MAGIC, \
19 (AUDIO_MAX_COMMON_IOCTL_NUM+6), unsigned)
20#define AUDIO_SET_AUDPROC_TX_STREAM_CAL _IOW(AUDIO_IOCTL_MAGIC, \
21 (AUDIO_MAX_COMMON_IOCTL_NUM+7), unsigned)
22#define AUDIO_SET_AUDPROC_TX_VOL_CAL _IOW(AUDIO_IOCTL_MAGIC, \
23 (AUDIO_MAX_COMMON_IOCTL_NUM+8), unsigned)
24#define AUDIO_SET_SIDETONE_CAL _IOW(AUDIO_IOCTL_MAGIC, \
25 (AUDIO_MAX_COMMON_IOCTL_NUM+9), unsigned)
26#define AUDIO_SET_ANC_CAL _IOW(AUDIO_IOCTL_MAGIC, \
27 (AUDIO_MAX_COMMON_IOCTL_NUM+10), unsigned)
28#define AUDIO_SET_VOICE_RX_TOPOLOGY _IOW(AUDIO_IOCTL_MAGIC, \
29 (AUDIO_MAX_COMMON_IOCTL_NUM+11), unsigned)
30#define AUDIO_SET_VOICE_TX_TOPOLOGY _IOW(AUDIO_IOCTL_MAGIC, \
31 (AUDIO_MAX_COMMON_IOCTL_NUM+12), unsigned)
Ben Rombergerc49b85d2011-07-15 18:55:34 -070032#define AUDIO_SET_ADM_RX_TOPOLOGY _IOW(AUDIO_IOCTL_MAGIC, \
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070033 (AUDIO_MAX_COMMON_IOCTL_NUM+13), unsigned)
Ben Rombergerc49b85d2011-07-15 18:55:34 -070034#define AUDIO_SET_ADM_TX_TOPOLOGY _IOW(AUDIO_IOCTL_MAGIC, \
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070035 (AUDIO_MAX_COMMON_IOCTL_NUM+14), unsigned)
Ben Rombergerc49b85d2011-07-15 18:55:34 -070036#define AUDIO_SET_ASM_TOPOLOGY _IOW(AUDIO_IOCTL_MAGIC, \
37 (AUDIO_MAX_COMMON_IOCTL_NUM+15), unsigned)
Ben Rombergerb7603232011-11-23 17:16:27 -080038#define AUDIO_SET_AFE_TX_CAL _IOW(AUDIO_IOCTL_MAGIC, \
39 (AUDIO_MAX_COMMON_IOCTL_NUM+16), unsigned)
40#define AUDIO_SET_AFE_RX_CAL _IOW(AUDIO_IOCTL_MAGIC, \
41 (AUDIO_MAX_COMMON_IOCTL_NUM+17), unsigned)
Ben Romberger7bd45ac2012-10-09 19:35:48 -070042#define AUDIO_SET_VOCPROC_COL_CAL _IOW(AUDIO_IOCTL_MAGIC, \
43 (AUDIO_MAX_COMMON_IOCTL_NUM+18), unsigned)
44#define AUDIO_SET_VOCSTRM_COL_CAL _IOW(AUDIO_IOCTL_MAGIC, \
45 (AUDIO_MAX_COMMON_IOCTL_NUM+19), unsigned)
46#define AUDIO_SET_VOCVOL_COL_CAL _IOW(AUDIO_IOCTL_MAGIC, \
47 (AUDIO_MAX_COMMON_IOCTL_NUM+20), unsigned)
48#define AUDIO_SET_VOCPROC_DEV_CFG_CAL _IOW(AUDIO_IOCTL_MAGIC, \
49 (AUDIO_MAX_COMMON_IOCTL_NUM+21), unsigned)
Ben Romberger12dce252013-01-04 15:23:07 -080050#define AUDIO_SET_LSM_CAL _IOW(AUDIO_IOCTL_MAGIC, \
51 (AUDIO_MAX_COMMON_IOCTL_NUM+22), unsigned)
Ben Romberger39fae342013-02-19 12:12:44 -080052#define AUDIO_SET_ADM_CUSTOM_TOPOLOGY _IOW(AUDIO_IOCTL_MAGIC, \
53 (AUDIO_MAX_COMMON_IOCTL_NUM+23), unsigned)
54#define AUDIO_SET_ASM_CUSTOM_TOPOLOGY _IOW(AUDIO_IOCTL_MAGIC, \
55 (AUDIO_MAX_COMMON_IOCTL_NUM+24), unsigned)
Ben Rombergerb7603232011-11-23 17:16:27 -080056
57#define AUDIO_MAX_ACDB_IOCTL (AUDIO_MAX_COMMON_IOCTL_NUM+30)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070058
59/* ACDB structures */
60struct cal_block {
61 uint32_t cal_size; /* Size of Cal Data */
62 uint32_t cal_offset; /* offset pointer to Cal Data */
63};
64
65struct sidetone_cal {
66 uint16_t enable;
67 uint16_t gain;
68};
69
70/* For Real-Time Audio Calibration */
Ben Rombergerc49b85d2011-07-15 18:55:34 -070071#define AUDIO_GET_RTAC_ADM_INFO _IOR(AUDIO_IOCTL_MAGIC, \
Ben Rombergerb7603232011-11-23 17:16:27 -080072 (AUDIO_MAX_ACDB_IOCTL+1), unsigned)
Ben Rombergerc49b85d2011-07-15 18:55:34 -070073#define AUDIO_GET_RTAC_VOICE_INFO _IOR(AUDIO_IOCTL_MAGIC, \
Ben Rombergerb7603232011-11-23 17:16:27 -080074 (AUDIO_MAX_ACDB_IOCTL+2), unsigned)
Ben Rombergerc49b85d2011-07-15 18:55:34 -070075#define AUDIO_GET_RTAC_ADM_CAL _IOWR(AUDIO_IOCTL_MAGIC, \
Ben Rombergerb7603232011-11-23 17:16:27 -080076 (AUDIO_MAX_ACDB_IOCTL+3), unsigned)
Ben Rombergerc49b85d2011-07-15 18:55:34 -070077#define AUDIO_SET_RTAC_ADM_CAL _IOWR(AUDIO_IOCTL_MAGIC, \
Ben Rombergerb7603232011-11-23 17:16:27 -080078 (AUDIO_MAX_ACDB_IOCTL+4), unsigned)
Ben Rombergerc49b85d2011-07-15 18:55:34 -070079#define AUDIO_GET_RTAC_ASM_CAL _IOWR(AUDIO_IOCTL_MAGIC, \
Ben Rombergerb7603232011-11-23 17:16:27 -080080 (AUDIO_MAX_ACDB_IOCTL+5), unsigned)
Ben Rombergerc49b85d2011-07-15 18:55:34 -070081#define AUDIO_SET_RTAC_ASM_CAL _IOWR(AUDIO_IOCTL_MAGIC, \
Ben Rombergerb7603232011-11-23 17:16:27 -080082 (AUDIO_MAX_ACDB_IOCTL+6), unsigned)
Ben Rombergerc49b85d2011-07-15 18:55:34 -070083#define AUDIO_GET_RTAC_CVS_CAL _IOWR(AUDIO_IOCTL_MAGIC, \
Ben Rombergerb7603232011-11-23 17:16:27 -080084 (AUDIO_MAX_ACDB_IOCTL+7), unsigned)
Ben Rombergerc49b85d2011-07-15 18:55:34 -070085#define AUDIO_SET_RTAC_CVS_CAL _IOWR(AUDIO_IOCTL_MAGIC, \
Ben Rombergerb7603232011-11-23 17:16:27 -080086 (AUDIO_MAX_ACDB_IOCTL+8), unsigned)
Ben Rombergerc49b85d2011-07-15 18:55:34 -070087#define AUDIO_GET_RTAC_CVP_CAL _IOWR(AUDIO_IOCTL_MAGIC, \
Ben Rombergerb7603232011-11-23 17:16:27 -080088 (AUDIO_MAX_ACDB_IOCTL+9), unsigned)
Ben Rombergerc49b85d2011-07-15 18:55:34 -070089#define AUDIO_SET_RTAC_CVP_CAL _IOWR(AUDIO_IOCTL_MAGIC, \
Ben Rombergerb7603232011-11-23 17:16:27 -080090 (AUDIO_MAX_ACDB_IOCTL+10), unsigned)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070091
Ben Rombergerb7603232011-11-23 17:16:27 -080092#define AUDIO_MAX_RTAC_IOCTL (AUDIO_MAX_ACDB_IOCTL+20)
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070093
Ben Romberger12dce252013-01-04 15:23:07 -080094#endif /* _LINUX_MSM_AUDIO_ACDB_H */