]>
Commit | Line | Data |
---|---|---|
e79753ed PM |
1 | #ifndef QDSP5AUDRECCMDI_H |
2 | #define QDSP5AUDRECCMDI_H | |
3 | ||
4 | /*====*====*====*====*====*====*====*====*====*====*====*====*====*====*====* | |
5 | ||
6 | A U D I O R E C O R D I N T E R N A L C O M M A N D S | |
7 | ||
8 | GENERAL DESCRIPTION | |
9 | This file contains defintions of format blocks of commands | |
10 | that are accepted by AUDREC Task | |
11 | ||
12 | REFERENCES | |
13 | None | |
14 | ||
15 | EXTERNALIZED FUNCTIONS | |
16 | None | |
17 | ||
18 | Copyright(c) 1992 - 2008 by QUALCOMM, Incorporated. | |
19 | ||
20 | This software is licensed under the terms of the GNU General Public | |
21 | License version 2, as published by the Free Software Foundation, and | |
22 | may be copied, distributed, and modified under those terms. | |
23 | ||
24 | This program is distributed in the hope that it will be useful, | |
25 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
26 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
27 | GNU General Public License for more details. | |
28 | ||
29 | *====*====*====*====*====*====*====*====*====*====*====*====*====*====*====*/ | |
30 | ||
31 | /*=========================================================================== | |
32 | ||
33 | EDIT HISTORY FOR FILE | |
34 | ||
35 | This section contains comments describing changes made to this file. | |
36 | Notice that changes are listed in reverse chronological order. | |
37 | ||
38 | $Header: //source/qcom/qct/multimedia2/Audio/drivers/QDSP5Driver/QDSP5Interface/main/latest/qdsp5audreccmdi.h#3 $ | |
39 | ||
40 | ============================================================================*/ | |
41 | ||
42 | /* | |
43 | * AUDRECTASK COMMANDS | |
44 | * ARM uses 2 queues to communicate with the AUDRECTASK | |
45 | * 1.uPAudRecCmdQueue | |
46 | * Location :MEMC | |
47 | * Buffer Size : 8 | |
48 | * No of Buffers in a queue : 3 | |
49 | * 2.audRecUpBitStreamQueue | |
50 | * Location : MEMC | |
51 | * Buffer Size : 4 | |
52 | * No of buffers in a queue : 2 | |
53 | */ | |
54 | ||
55 | /* | |
56 | * Commands on uPAudRecCmdQueue | |
57 | */ | |
58 | ||
59 | /* | |
60 | * Command to initiate and terminate the audio recording section | |
61 | */ | |
62 | ||
63 | #define AUDREC_CMD_CFG 0x0000 | |
64 | #define AUDREC_CMD_CFG_LEN sizeof(audrec_cmd_cfg) | |
65 | ||
66 | #define AUDREC_CMD_TYPE_0_INDEX_WAV 0x0000 | |
67 | #define AUDREC_CMD_TYPE_0_INDEX_AAC 0x0001 | |
68 | ||
69 | #define AUDREC_CMD_TYPE_0_ENA 0x4000 | |
70 | #define AUDREC_CMD_TYPE_0_DIS 0x0000 | |
71 | ||
72 | #define AUDREC_CMD_TYPE_0_NOUPDATE 0x0000 | |
73 | #define AUDREC_CMD_TYPE_0_UPDATE 0x8000 | |
74 | ||
75 | #define AUDREC_CMD_TYPE_1_INDEX_SBC 0x0002 | |
76 | ||
77 | #define AUDREC_CMD_TYPE_1_ENA 0x4000 | |
78 | #define AUDREC_CMD_TYPE_1_DIS 0x0000 | |
79 | ||
80 | #define AUDREC_CMD_TYPE_1_NOUPDATE 0x0000 | |
81 | #define AUDREC_CMD_TYPE_1_UPDATE 0x8000 | |
82 | ||
83 | typedef struct { | |
84 | unsigned short cmd_id; | |
85 | unsigned short type_0; | |
86 | unsigned short type_1; | |
87 | } __attribute__((packed)) audrec_cmd_cfg; | |
88 | ||
89 | ||
90 | /* | |
91 | * Command to configure the recording parameters for RecType0(AAC/WAV) encoder | |
92 | */ | |
93 | ||
94 | #define AUDREC_CMD_AREC0PARAM_CFG 0x0001 | |
95 | #define AUDREC_CMD_AREC0PARAM_CFG_LEN \ | |
96 | sizeof(audrec_cmd_arec0param_cfg) | |
97 | ||
98 | #define AUDREC_CMD_SAMP_RATE_INDX_8000 0x000B | |
99 | #define AUDREC_CMD_SAMP_RATE_INDX_11025 0x000A | |
100 | #define AUDREC_CMD_SAMP_RATE_INDX_12000 0x0009 | |
101 | #define AUDREC_CMD_SAMP_RATE_INDX_16000 0x0008 | |
102 | #define AUDREC_CMD_SAMP_RATE_INDX_22050 0x0007 | |
103 | #define AUDREC_CMD_SAMP_RATE_INDX_24000 0x0006 | |
104 | #define AUDREC_CMD_SAMP_RATE_INDX_32000 0x0005 | |
105 | #define AUDREC_CMD_SAMP_RATE_INDX_44100 0x0004 | |
106 | #define AUDREC_CMD_SAMP_RATE_INDX_48000 0x0003 | |
107 | ||
108 | #define AUDREC_CMD_STEREO_MODE_MONO 0x0000 | |
109 | #define AUDREC_CMD_STEREO_MODE_STEREO 0x0001 | |
110 | ||
111 | typedef struct { | |
112 | unsigned short cmd_id; | |
113 | unsigned short ptr_to_extpkt_buffer_msw; | |
114 | unsigned short ptr_to_extpkt_buffer_lsw; | |
115 | unsigned short buf_len; | |
116 | unsigned short samp_rate_index; | |
117 | unsigned short stereo_mode; | |
118 | unsigned short rec_quality; | |
119 | } __attribute__((packed)) audrec_cmd_arec0param_cfg; | |
120 | ||
121 | /* | |
122 | * Command to configure the recording parameters for RecType1(SBC) encoder | |
123 | */ | |
124 | ||
125 | #define AUDREC_CMD_AREC1PARAM_CFG 0x0002 | |
126 | #define AUDREC_CMD_AREC1PARAM_CFG_LEN \ | |
127 | sizeof(audrec_cmd_arec1param_cfg) | |
128 | ||
129 | #define AUDREC_CMD_PARAM_BUF_BLOCKS_4 0x0000 | |
130 | #define AUDREC_CMD_PARAM_BUF_BLOCKS_8 0x0001 | |
131 | #define AUDREC_CMD_PARAM_BUF_BLOCKS_12 0x0002 | |
132 | #define AUDREC_CMD_PARAM_BUF_BLOCKS_16 0x0003 | |
133 | ||
134 | #define AUDREC_CMD_PARAM_BUF_SUB_BANDS_8 0x0010 | |
135 | #define AUDREC_CMD_PARAM_BUF_MODE_MONO 0x0000 | |
136 | #define AUDREC_CMD_PARAM_BUF_MODE_DUAL 0x0040 | |
137 | #define AUDREC_CMD_PARAM_BUF_MODE_STEREO 0x0050 | |
138 | #define AUDREC_CMD_PARAM_BUF_MODE_JSTEREO 0x0060 | |
139 | #define AUDREC_CMD_PARAM_BUF_LOUDNESS 0x0000 | |
140 | #define AUDREC_CMD_PARAM_BUF_SNR 0x0100 | |
141 | #define AUDREC_CMD_PARAM_BUF_BASIC_VER 0x0000 | |
142 | ||
143 | typedef struct { | |
144 | unsigned short cmd_id; | |
145 | unsigned short ptr_to_extpkt_buffer_msw; | |
146 | unsigned short ptr_to_extpkt_buffer_lsw; | |
147 | unsigned short buf_len; | |
148 | unsigned short param_buf; | |
149 | unsigned short bit_rate_0; | |
150 | unsigned short bit_rate_1; | |
151 | } __attribute__((packed)) audrec_cmd_arec1param_cfg; | |
152 | ||
153 | ||
154 | /* | |
155 | * Commands on audRecUpBitStreamQueue | |
156 | */ | |
157 | ||
158 | /* | |
159 | * Command to indicate the current packet read count | |
160 | */ | |
161 | ||
162 | #define AUDREC_CMD_PACKET_EXT_PTR 0x0000 | |
163 | #define AUDREC_CMD_PACKET_EXT_PTR_LEN \ | |
164 | sizeof(audrec_cmd_packet_ext_ptr) | |
165 | ||
166 | #define AUDREC_CMD_TYPE_0 0x0000 | |
167 | #define AUDREC_CMD_TYPE_1 0x0001 | |
168 | ||
169 | typedef struct { | |
170 | unsigned short cmd_id; | |
171 | unsigned short type; | |
172 | unsigned short curr_rec_count_msw; | |
173 | unsigned short curr_rec_count_lsw; | |
174 | } __attribute__((packed)) audrec_cmd_packet_ext_ptr; | |
175 | ||
176 | #endif |