177 lines
		
	
	
		
			4.9 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			177 lines
		
	
	
		
			4.9 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| #ifndef QDSP5AUDRECCMDI_H
 | |
| #define QDSP5AUDRECCMDI_H
 | |
| 
 | |
| /*====*====*====*====*====*====*====*====*====*====*====*====*====*====*====*
 | |
| 
 | |
|     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
 | |
| 
 | |
| GENERAL DESCRIPTION
 | |
|   This file contains defintions of format blocks of commands
 | |
|   that are accepted by AUDREC Task
 | |
| 
 | |
| REFERENCES
 | |
|   None
 | |
| 
 | |
| EXTERNALIZED FUNCTIONS
 | |
|   None
 | |
| 
 | |
| Copyright(c) 1992 - 2008 by QUALCOMM, Incorporated.
 | |
| 
 | |
| This software is licensed under the terms of the GNU General Public
 | |
| License version 2, as published by the Free Software Foundation, and
 | |
| may be copied, distributed, and modified under those terms.
 | |
| 
 | |
| This program is distributed in the hope that it will be useful,
 | |
| but WITHOUT ANY WARRANTY; without even the implied warranty of
 | |
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | |
| GNU General Public License for more details.
 | |
| 
 | |
| *====*====*====*====*====*====*====*====*====*====*====*====*====*====*====*/
 | |
| 
 | |
| /*===========================================================================
 | |
| 
 | |
|                       EDIT HISTORY FOR FILE
 | |
| 
 | |
| This section contains comments describing changes made to this file.
 | |
| Notice that changes are listed in reverse chronological order.
 | |
| 
 | |
|  $Header: //source/qcom/qct/multimedia2/Audio/drivers/QDSP5Driver/QDSP5Interface/main/latest/qdsp5audreccmdi.h#3 $
 | |
| 
 | |
| ============================================================================*/
 | |
| 
 | |
| /*
 | |
|  * AUDRECTASK COMMANDS
 | |
|  * ARM uses 2 queues to communicate with the AUDRECTASK
 | |
|  * 1.uPAudRecCmdQueue
 | |
|  * Location :MEMC
 | |
|  * Buffer Size : 8
 | |
|  * No of Buffers in a queue : 3
 | |
|  * 2.audRecUpBitStreamQueue
 | |
|  * Location : MEMC
 | |
|  * Buffer Size : 4
 | |
|  * No of buffers in a queue : 2
 | |
|  */
 | |
| 
 | |
| /*
 | |
|  * Commands on uPAudRecCmdQueue
 | |
|  */
 | |
| 
 | |
| /*
 | |
|  * Command to initiate and terminate the audio recording section
 | |
|  */
 | |
| 
 | |
| #define AUDREC_CMD_CFG		0x0000
 | |
| #define	AUDREC_CMD_CFG_LEN	sizeof(audrec_cmd_cfg)
 | |
| 
 | |
| #define	AUDREC_CMD_TYPE_0_INDEX_WAV	0x0000
 | |
| #define	AUDREC_CMD_TYPE_0_INDEX_AAC	0x0001
 | |
| 
 | |
| #define AUDREC_CMD_TYPE_0_ENA		0x4000
 | |
| #define AUDREC_CMD_TYPE_0_DIS		0x0000
 | |
| 
 | |
| #define AUDREC_CMD_TYPE_0_NOUPDATE	0x0000
 | |
| #define AUDREC_CMD_TYPE_0_UPDATE	0x8000
 | |
| 
 | |
| #define	AUDREC_CMD_TYPE_1_INDEX_SBC	0x0002
 | |
| 
 | |
| #define AUDREC_CMD_TYPE_1_ENA		0x4000
 | |
| #define AUDREC_CMD_TYPE_1_DIS		0x0000
 | |
| 
 | |
| #define AUDREC_CMD_TYPE_1_NOUPDATE	0x0000
 | |
| #define AUDREC_CMD_TYPE_1_UPDATE	0x8000
 | |
| 
 | |
| typedef struct {
 | |
| 	unsigned short 	cmd_id;
 | |
| 	unsigned short	type_0;
 | |
| 	unsigned short	type_1;
 | |
| } __attribute__((packed)) audrec_cmd_cfg;
 | |
| 
 | |
| 
 | |
| /*
 | |
|  * Command to configure the recording parameters for RecType0(AAC/WAV) encoder
 | |
|  */
 | |
| 
 | |
| #define	AUDREC_CMD_AREC0PARAM_CFG	0x0001
 | |
| #define	AUDREC_CMD_AREC0PARAM_CFG_LEN	\
 | |
| 	sizeof(audrec_cmd_arec0param_cfg)
 | |
| 
 | |
| #define	AUDREC_CMD_SAMP_RATE_INDX_8000		0x000B
 | |
| #define	AUDREC_CMD_SAMP_RATE_INDX_11025		0x000A
 | |
| #define	AUDREC_CMD_SAMP_RATE_INDX_12000		0x0009
 | |
| #define	AUDREC_CMD_SAMP_RATE_INDX_16000		0x0008
 | |
| #define	AUDREC_CMD_SAMP_RATE_INDX_22050		0x0007
 | |
| #define	AUDREC_CMD_SAMP_RATE_INDX_24000		0x0006
 | |
| #define	AUDREC_CMD_SAMP_RATE_INDX_32000		0x0005
 | |
| #define	AUDREC_CMD_SAMP_RATE_INDX_44100		0x0004
 | |
| #define	AUDREC_CMD_SAMP_RATE_INDX_48000		0x0003
 | |
| 
 | |
| #define AUDREC_CMD_STEREO_MODE_MONO		0x0000
 | |
| #define AUDREC_CMD_STEREO_MODE_STEREO		0x0001
 | |
| 
 | |
| typedef struct {
 | |
| 	unsigned short 	cmd_id;
 | |
| 	unsigned short	ptr_to_extpkt_buffer_msw;
 | |
| 	unsigned short	ptr_to_extpkt_buffer_lsw;
 | |
| 	unsigned short	buf_len;
 | |
| 	unsigned short	samp_rate_index;
 | |
| 	unsigned short	stereo_mode;
 | |
| 	unsigned short 	rec_quality;
 | |
| } __attribute__((packed)) audrec_cmd_arec0param_cfg;
 | |
| 
 | |
| /*
 | |
|  * Command to configure the recording parameters for RecType1(SBC) encoder
 | |
|  */
 | |
| 
 | |
| #define AUDREC_CMD_AREC1PARAM_CFG	0x0002
 | |
| #define AUDREC_CMD_AREC1PARAM_CFG_LEN	\
 | |
| 	sizeof(audrec_cmd_arec1param_cfg)
 | |
| 
 | |
| #define AUDREC_CMD_PARAM_BUF_BLOCKS_4	0x0000
 | |
| #define AUDREC_CMD_PARAM_BUF_BLOCKS_8	0x0001
 | |
| #define AUDREC_CMD_PARAM_BUF_BLOCKS_12	0x0002
 | |
| #define AUDREC_CMD_PARAM_BUF_BLOCKS_16	0x0003
 | |
| 
 | |
| #define AUDREC_CMD_PARAM_BUF_SUB_BANDS_8	0x0010
 | |
| #define AUDREC_CMD_PARAM_BUF_MODE_MONO		0x0000
 | |
| #define AUDREC_CMD_PARAM_BUF_MODE_DUAL		0x0040
 | |
| #define AUDREC_CMD_PARAM_BUF_MODE_STEREO	0x0050
 | |
| #define AUDREC_CMD_PARAM_BUF_MODE_JSTEREO	0x0060
 | |
| #define AUDREC_CMD_PARAM_BUF_LOUDNESS		0x0000
 | |
| #define AUDREC_CMD_PARAM_BUF_SNR		0x0100
 | |
| #define AUDREC_CMD_PARAM_BUF_BASIC_VER		0x0000
 | |
| 
 | |
| typedef struct {
 | |
| 	unsigned short 	cmd_id;
 | |
| 	unsigned short	ptr_to_extpkt_buffer_msw;
 | |
| 	unsigned short	ptr_to_extpkt_buffer_lsw;
 | |
| 	unsigned short	buf_len;
 | |
| 	unsigned short	param_buf;
 | |
| 	unsigned short	bit_rate_0;
 | |
| 	unsigned short	bit_rate_1;
 | |
| } __attribute__((packed)) audrec_cmd_arec1param_cfg;
 | |
| 
 | |
| 
 | |
| /*
 | |
|  * Commands on audRecUpBitStreamQueue 
 | |
|  */
 | |
| 
 | |
| /*
 | |
|  * Command to indicate the current packet read count
 | |
|  */
 | |
| 
 | |
| #define AUDREC_CMD_PACKET_EXT_PTR		0x0000
 | |
| #define AUDREC_CMD_PACKET_EXT_PTR_LEN	\
 | |
| 	sizeof(audrec_cmd_packet_ext_ptr)
 | |
| 
 | |
| #define AUDREC_CMD_TYPE_0	0x0000
 | |
| #define AUDREC_CMD_TYPE_1	0x0001
 | |
| 
 | |
| typedef struct {
 | |
| 	unsigned short  cmd_id;
 | |
| 	unsigned short	type;
 | |
| 	unsigned short 	curr_rec_count_msw;
 | |
| 	unsigned short 	curr_rec_count_lsw;
 | |
| } __attribute__((packed)) audrec_cmd_packet_ext_ptr;
 | |
| 
 | |
| #endif
 |