blob: 5cb1d65bc206b7c859a572780224eb551b3eaad1 [file] [log] [blame]
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001/* Copyright (c) 2009, Code Aurora Forum. All rights reserved.
2 *
3 * This program is free software; you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License version 2 and
5 * only version 2 as published by the Free Software Foundation.
6 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
11 *
12 */
13
14#ifndef __MSM_AUDIO_VOICEMEMO_H
15#define __MSM_AUDIO_VOICEMEMO_H
16
17#include <linux/msm_audio.h>
18
19#define AUDIO_GET_VOICEMEMO_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
20 (AUDIO_MAX_COMMON_IOCTL_NUM+0), unsigned)
21#define AUDIO_SET_VOICEMEMO_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
22 (AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned)
23
24/* rec_type */
25enum rpc_voc_rec_dir_type {
26 RPC_VOC_REC_NONE,
27 RPC_VOC_REC_FORWARD,
28 RPC_VOC_REC_REVERSE,
29 RPC_VOC_REC_BOTH,
30 RPC_VOC_MAX_REC_TYPE
31};
32
33/* capability */
34enum rpc_voc_capability_type {
35 RPC_VOC_CAP_IS733 = 4,
36 RPC_VOC_CAP_IS127 = 8,
37 RPC_VOC_CAP_AMR = 64,
38 RPC_VOC_CAP_32BIT_DUMMY = 2147483647
39};
40
41/* Rate */
42enum rpc_voc_rate_type {
43 RPC_VOC_0_RATE = 0,
44 RPC_VOC_8_RATE,
45 RPC_VOC_4_RATE,
46 RPC_VOC_2_RATE,
47 RPC_VOC_1_RATE,
48 RPC_VOC_ERASURE,
49 RPC_VOC_ERR_RATE,
50 RPC_VOC_AMR_RATE_475 = 0,
51 RPC_VOC_AMR_RATE_515 = 1,
52 RPC_VOC_AMR_RATE_590 = 2,
53 RPC_VOC_AMR_RATE_670 = 3,
54 RPC_VOC_AMR_RATE_740 = 4,
55 RPC_VOC_AMR_RATE_795 = 5,
56 RPC_VOC_AMR_RATE_1020 = 6,
57 RPC_VOC_AMR_RATE_1220 = 7,
58};
59
60/* frame_format */
61enum rpc_voc_pb_len_rate_var_type {
62 RPC_VOC_PB_NATIVE_QCP = 3,
63 RPC_VOC_PB_AMR,
64 RPC_VOC_PB_EVB
65};
66
67struct msm_audio_voicememo_config {
68 uint32_t rec_type;
69 uint32_t rec_interval_ms;
70 uint32_t auto_stop_ms;
71 uint32_t capability;
72 uint32_t max_rate;
73 uint32_t min_rate;
74 uint32_t frame_format;
75 uint32_t dtx_enable;
76 uint32_t data_req_ms;
77};
78
79#endif /* __MSM_AUDIO_VOICEMEMO_H */