[T106][ZXW-22]7520V3SCV2.01.01.02P42U09_VEC_V0.8_AP_VEC origin source commit
Change-Id: Ic6e05d89ecd62fc34f82b23dcf306c93764aec4b
diff --git a/cp/ps/driver/inc/misc/aud_nv.h b/cp/ps/driver/inc/misc/aud_nv.h
new file mode 100644
index 0000000..3d171b3
--- /dev/null
+++ b/cp/ps/driver/inc/misc/aud_nv.h
@@ -0,0 +1,1232 @@
+/***********************************************************************
+* Copyright (C) 2001, ZTE Corporation.
+*
+* File Name: aud_nv.h
+* File Mark:
+* Description: Provide audio NV function prototype declaration and type declaration. The audio NV type declaration is moved from eep.h.
+* Others:
+* Version: v0.5
+* Author: Wangjun
+* Date: 2009-02-14
+*
+* History 1:
+* Date:
+* Version:
+* Author:
+* Modification:
+* History 2:
+**********************************************************************/
+
+#ifndef _AUD_NV_H
+#define _AUD_NV_H
+
+
+
+/**************************************************************************
+ * Include files *
+ **************************************************************************/
+
+
+
+/**************************************************************************
+ * Macro *
+ **************************************************************************/
+#ifndef int16
+#define int16 short int
+#endif
+#ifndef int32
+#define int32 long
+#endif
+
+/* Defines to determine array sizes */
+#if 0
+#define EEP_AUD_BIQUAD_FILTERS_UL 30
+#define EEP_AUD_BIQUAD_FILTERS_DL 20
+#define EEP_AUD_BIQUAD_FILTERS_CBUF 10
+#endif
+#if 0
+#define EEP_AUD_FIR_FILTERS_UL 5
+#define EEP_AUD_FIR_FILTERS_DL 5
+#define EEP_AUD_FIR_FILTERS_CBUF 5
+#endif
+#if 0
+#define EEP_AUD_HF 8
+#endif
+#if 0
+#define EEP_AUD_ASP_UL 5
+#define EEP_AUD_DL_NR 5
+#endif
+#define EEP_AUD_UPLINK_PATHS 22
+#define EEP_AUD_DOWNLINK_PATHS 29
+
+#define AUDIO_PATHS 10 /*defined multiple places -also in aud_data.h*/
+
+/*[Begin] [lvwenhua-2010/9/16]*/
+#define EEP_CODEC_UPLINK_PATHS 3 //MAX_CODEC_INPUT_PATH
+#define EEP_CODEC_DOWNLINK_PATHS 5 //MAX_CODEC_OUTPUT_PATH
+#define EEP_VOICE_OUTPUT_VOL_LEVELS 12 /* MAX_VOICE_OUTPUT_VOL_LEVEL */
+#define EEP_MIDI_OUTPUT_VOL_LEVELS 12 /* MAX_MIDI_OUTPUT_VOL_LEVEL */
+#define EEP_TONE_OUTPUT_VOL_LEVELS 12 /* MAX_TONE_OUTPUT_VOL_LEVEL */
+#define EEP_PCM_OUTPUT_VOL_LEVELS 12 /* MAX_AUDIO_OUTPUT_VOL_LEVEL */
+/*[End] [lvwenhua-2010/9/16]*/
+
+#define EEP_AUD_CEPT 0
+#define EEP_AUD_ANSI 1
+#define EEP_AUD_JAPAN 2
+#define EEP_AUD_REGION_END 3
+
+typedef struct
+{
+ UINT16 gain_out; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÏÂÐеÄgain_outÔöÒæ£»
+ ȡֵ·¶Î§£º0 µ½0x7FFF,
+ 0 db ֵΪ0x1FFF£»
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,23,25,26,27,28ʱ:
+ aud_audio_downlink_parms[n].downlink_gain_cells.gain_out = 8192;
+ µ±n =20,21,22,24ʱ:
+ aud_audio_downlink_parms[n].downlink_gain_cells.gain_out = 0;
+ *********************************************************************************/
+
+ UINT16 gain_out_use; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÏÂÐеÄgain_outÔöÒæÊÇ·ñÊÇÓÉNV²ÎÊýÉèÖã»
+ ȡֵ·¶Î§£º0: ²»Ê¹ÓÃ
+ 1: ʹÓÃNV²ÎÊý
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,21,22,25,26,27,28ʱ:
+ aud_audio_downlink_parms[n].downlink_gain_cells.gain_out_use=1;
+ µ±n =20,23,24ʱ:
+ aud_audio_downlink_parms[n].downlink_gain_cells.gain_out_use=0;
+ *********************************************************************************/
+
+ UINT16 kappa0; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÏÂÐеÄkappa0ÔöÒæ£»
+ ȡֵ·¶Î§£º0 µ½0x7FFF,
+ 0 db ֵΪ0x7FFF£»
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,23,25,26,27,28ʱ:
+ aud_audio_downlink_parms[n].downlink_gain_cells.kappa0=32767;
+ µ±n =21,22,24ʱ:
+ aud_audio_downlink_parms[0].downlink_gain_cells.kappa0=0;
+ *********************************************************************************/
+
+ UINT16 kappa0_use; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÏÂÐеÄkappa0ÔöÒæÊÇ·ñÊÇÓÉNV²ÎÊýÉèÖã»
+ ȡֵ·¶Î§£º0: ²»Ê¹ÓÃ
+ 1: ʹÓÃNV²ÎÊý
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,25,26,27,28ʱ:
+ aud_audio_downlink_parms[n].downlink_gain_cells.kappa0_use = 1;
+ µ±n =20,21,22,23,24ʱ:
+ aud_audio_downlink_parms[n].downlink_gain_cells.kappa0_use = 0;
+ *********************************************************************************/
+
+ UINT16 mix_afe; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÏÂÐеĻìºÏµ½AFEµÄmix_afeÔöÒæ£»
+ ȡֵ·¶Î§£º0 µ½0x7FFF,
+ 0 db ֵΪ0x3FFF£»
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,24,25,26,27,28ʱ:
+ aud_audio_downlink_parms[n].downlink_gain_cells.mix_afe=1;
+ µ±n =21,22,23ʱ:
+ aud_audio_downlink_parms[n].downlink_gain_cells.mix_afe=0;
+ *********************************************************************************/
+
+ UINT16 mix_afe_use; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÏÂÐеĻìºÏµ½AFEµÄmix_afeÔöÒæÊÇ·ñÓÉNV²ÎÊýÉèÖã»
+ ȡֵ·¶Î§£º0: ²»Ê¹ÓÃ
+ 1: ʹÓÃNV²ÎÊý
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,24,25,26,27,28ʱ:
+ aud_audio_downlink_parms[n].downlink_gain_cells.mix_afe_use=0;
+ µ±n =21,22,23ʱ:
+ aud_audio_downlink_parms[n].downlink_gain_cells.mix_afe_use=1;
+ *********************************************************************************/
+}
+eep_aud_downlink_gain_cells_type;
+
+typedef struct
+{
+ SINT16 hf_algorithm_init; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄhandsfreeµÄµÚÒ»´ÎÆô¶¯£»
+ ȡֵ·¶Î§£º0µ½0xFF
+
+ ³ö³§Öµ£º
+ ÔÚÊý×éÖУ¬aud_hf[3].hf_algorithm_init=0£¬ÆäÓ඼Ϊ397¡£
+ *********************************************************************************/
+
+ SINT16 hf_algorithm_restart; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄhandsfreeµÄÖØÐÂÆô¶¯£»
+ ȡֵ·¶Î§£º0µ½0xFF
+
+ ³ö³§Öµ£º
+ ÔÚÊý×éÖУ¬aud_hf[3].hf_algorithm_restart=0£¬ÆäÓ඼Ϊ270¡£
+ *********************************************************************************/
+
+ UINT16 step_width; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄhandsfreeµÄLMSµ÷½ÚµÄ²½³¤£»
+ ȡֵ·¶Î§£º0µ½32767
+
+ ³ö³§Öµ£º
+ 2200
+ *********************************************************************************/
+
+ UINT16 lms_length; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄLMSÂ˲¨Æ÷ϵÊý¸öÊý£»
+ ȡֵ·¶Î§£º2µ½400
+
+ ³ö³§Öµ£º
+ 250
+ *********************************************************************************/
+
+ UINT16 lms_offset; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄLMSÂ˲¨Æ÷ϵÊý¸öÊýµÄÆ«ÒÆ£»
+ ȡֵ·¶Î§£º0µ½400
+
+ ³ö³§Öµ£º
+ 8
+ *********************************************************************************/
+
+ UINT16 block_length; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄLMS¿é¸üÐÂÏòÁ¿³¤¶È£»
+ ȡֵ·¶Î§£º2£¬4£¬5£¬8
+
+ ³ö³§Öµ£º
+ 5
+ *********************************************************************************/
+
+ SINT16 rxtx_relation; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteakÊäÈëÊä³ö¼ûµÄ¹ØÏµ£»
+ ȡֵ·¶Î§£º-960µ½960
+
+ ³ö³§Öµ£º
+ ÔÚÊý×éÖÐ:
+ aud_hf[0].rxtx_relation=-200£»
+ aud_hf[1].rxtx_relation=150£»
+ ÆäÓ඼Ϊ-400¡£
+
+ *********************************************************************************/
+
+ UINT16 add_atten; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteakµÄ×Ô¶¯Ôö񾀣¿éµÄË¥¼õ£»
+ ȡֵ·¶Î§£º0µ½960
+
+ ³ö³§Öµ£º
+ 0
+ *********************************************************************************/
+
+ UINT16 min_atten; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteakµÄ×Ô¶¯Ôö񾀣¿éµÄ×îС˥¼õ£»
+ ȡֵ·¶Î§£º0µ½960
+
+ ³ö³§Öµ£º
+ 0
+ *********************************************************************************/
+
+ UINT16 max_atten; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteakµÄ×Ô¶¯Ôö񾀣¿éµÄ×î´óË¥¼õ£»
+ ȡֵ·¶Î§£º0µ½960
+
+ ³ö³§Öµ£º
+ 500
+ *********************************************************************************/
+
+ UINT16 nr_sw_2; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteakµÄÔëÒôÒÖÖÆÄ£¿éµÄ×î´óË¥¼õ£»
+ ȡֵ·¶Î§£º0µ½32767
+
+ ³ö³§Öµ£º
+ 16384
+ *********************************************************************************/
+
+ UINT16 nr_u_fak_0; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteakµÄÔëÒôÒÖÖÆÄ£¿éµÄ´ø¿í0µÄ½µÔëÒòËØ£»
+ ȡֵ·¶Î§£º0µ½16384
+
+ ³ö³§Öµ£º
+ 16384
+ *********************************************************************************/
+
+ UINT16 nr_u_fak; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteakµÄÔëÒôÒÖÖÆÄ£¿éµÄ´ø¿í1µ½7µÄ½µÔëÒòËØ£»
+ ȡֵ·¶Î§£º0µ½16384
+
+ ³ö³§Öµ£º
+ 16384
+ *********************************************************************************/
+}
+eep_aud_hf_type;
+
+typedef struct
+{
+ UINT16 coeffi; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄbiquadÂ˲¨Æ÷ÊÇÉÏÐÐÂ˲¨»¹ÊÇÏÂÐÐÂ˲¨£»
+ ȡֵ·¶Î§£º0: ÉÏÐÐ
+ 1: ÏÂÐÐ
+ 2: CBuf
+
+ ³ö³§Öµ£º
+ ÉÏÐеÄÂ˲¨Æ÷(aud_uplink_biquad_filters)Ϊ: 0
+ ÏÂÐеÄÂ˲¨Æ÷(aud_downlink_biquad_filters)Ϊ: 1
+ CBuf Â˲¨Æ÷ Ϊ: 2
+ *********************************************************************************/
+
+ UINT16 a1_1; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄbiquadÂ˲¨Æ÷²ÎÊý£»
+ ȡֵ·¶Î§£º0µ½0xFFFF
+
+ ³ö³§Öµ£º
+ ÉÏÐÐÂ˲¨Æ÷µÄaud_uplink_biquad_filters[0].a1_1=14878£¬ÆäÓ඼Ϊ0£»
+ ÏÂÐÐÂ˲¨Æ÷µÄaud_downlink_biquad_filters[0].a1_1=35445£¬ÆäÓ඼Ϊ0£»
+ CBuf Â˲¨Æ÷µÄaud_cbuf_biquad_filters[0].a1_1=57878; ÆäÓ඼Ϊ0¡£
+ *********************************************************************************/
+
+ UINT16 b1_1; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄbiquadÂ˲¨Æ÷²ÎÊý£»
+ ȡֵ·¶Î§£º0µ½0xFFFF
+
+ ³ö³§Öµ£º
+ ÉÏÐÐÂ˲¨Æ÷µÄaud_uplink_biquad_filters[0].b1_1=13372£¬ÆäÓ඼Ϊ0£»
+ ÏÂÐÐÂ˲¨Æ÷µÄaud_downlink_biquad_filters[0].b1_1=35572£¬ÆäÓ඼Ϊ0£»
+ CBuf Â˲¨Æ÷µÄaud_cbuf_biquad_filters[0].b1_1=45294£¬ÆäÓ඼Ϊ0¡£
+ *********************************************************************************/
+
+ UINT16 a2_1; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄbiquadÂ˲¨Æ÷²ÎÊý£»
+ ȡֵ·¶Î§£º0µ½0xFFFF
+
+ ³ö³§Öµ£º
+ ÉÏÐÐÂ˲¨Æ÷µÄa2_1¶¼Îª0£»
+ ÏÂÐÐÂ˲¨Æ÷µÄaud_downlink_biquad_filters[0].a2_1=30091£¬ÆäÓ඼Ϊ0£»
+ CBuf Â˲¨Æ÷µÄaud_cbuf_biquad_filters[0].a2_1=5321£¬ÆäÓ඼Ϊ0¡£
+ *********************************************************************************/
+
+ UINT16 b2_1; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄbiquadÂ˲¨Æ÷²ÎÊý£»
+ ȡֵ·¶Î§£º0µ½0xFFFF
+
+ ³ö³§Öµ£º
+ ÉÏÐÐÂ˲¨Æ÷µÄb2_1¶¼Îª0£»
+ ÏÂÐÐÂ˲¨Æ÷µÄaud_downlink_biquad_filters[0].b2_1=27668£¬ÆäÓ඼Ϊ0£»
+ CBuf Â˲¨Æ÷µÄaud_cbuf_biquad_filters[0].b2_1=14049£¬ÆäÓ඼Ϊ0¡£
+ *********************************************************************************/
+
+ UINT16 a0_1; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄbiquadÂ˲¨Æ÷²ÎÊý£»
+ ȡֵ·¶Î§£º0µ½0xFFFF
+
+ ³ö³§Öµ£º
+ ÉÏÐÐÂ˲¨Æ÷µÄaud_uplink_biquad_filters[0].a0_1=29756£¬ÆäÓ඼Ϊ32767£»
+ ÏÂÐÐÂ˲¨Æ÷µÄaud_downlink_biquad_filters[0].a0_1=30091£¬ÆäÓ඼Ϊ32767£»
+ CBuf Â˲¨Æ÷µÄaud_cbuf_biquad_filters[0].a0_1=14315£¬ÆäÓ඼Ϊ32767¡£
+ *********************************************************************************/
+
+ UINT16 a1_2; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄbiquadÂ˲¨Æ÷²ÎÊý£»
+ ȡֵ·¶Î§£º0µ½0xFFFF
+
+ ³ö³§Öµ£º
+ ÉÏÐÐÂ˲¨Æ÷µÄaud_uplink_biquad_filters[0].a1_2=39151£¬ÆäÓ඼Ϊ0£»
+ ÏÂÐÐÂ˲¨Æ÷µÄaud_downlink_biquad_filters[0].a1_2=26488£¬ÆäÓ඼Ϊ0£»
+ CBuf Â˲¨Æ÷µÄa1_2¶¼Îª0¡£
+ *********************************************************************************/
+
+ UINT16 b1_2; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄbiquadÂ˲¨Æ÷²ÎÊý£»
+ ȡֵ·¶Î§£º0µ½0xFFFF
+
+ ³ö³§Öµ£º
+ ÉÏÐÐÂ˲¨Æ÷µÄaud_uplink_biquad_filters[0].b1_2=36192£¬ÆäÓ඼Ϊ0£»
+ ÏÂÐÐÂ˲¨Æ÷µÄaud_downlink_biquad_filters[0].b1_2=24996£¬ÆäÓ඼Ϊ0£»
+ CBuf Â˲¨Æ÷µÄb1_2¶¼Îª0¡£
+ *********************************************************************************/
+
+ UINT16 a2_2; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄbiquadÂ˲¨Æ÷²ÎÊý£»
+ ȡֵ·¶Î§£º0µ½0xFFFF
+
+ ³ö³§Öµ£º
+ ÉÏÐÐÂ˲¨Æ÷µÄaud_uplink_biquad_filters[0].a2_2=26385£¬ÆäÓ඼Ϊ0£»
+ ÏÂÐÐÂ˲¨Æ÷µÄaud_downlink_biquad_filters[0].a2_2=26488£¬ÆäÓ඼Ϊ0£»
+ CBuf Â˲¨Æ÷µÄa2_2¶¼Îª0¡£
+ *********************************************************************************/
+
+ UINT16 b2_2; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄbiquadÂ˲¨Æ÷²ÎÊý£»
+ ȡֵ·¶Î§£º0µ½0xFFFF
+
+ ³ö³§Öµ£º
+ ÉÏÐÐÂ˲¨Æ÷µÄaud_uplink_biquad_filters[0].b2_2=26962£¬ÆäÓ඼Ϊ0£»
+ ÏÂÐÐÂ˲¨Æ÷µÄaud_downlink_biquad_filters[0].b2_2=23168£¬ÆäÓ඼Ϊ0£»
+ CBuf Â˲¨Æ÷µÄb2_2¶¼Îª0¡£
+ *********************************************************************************/
+
+ UINT16 a0_2; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄbiquadÂ˲¨Æ÷²ÎÊý£»
+ ȡֵ·¶Î§£º0µ½0xFFFF
+
+ ³ö³§Öµ£º
+ ÉÏÐÐÂ˲¨Æ÷µÄaud_uplink_biquad_filters[0].a0_2=26385£¬ÆäÓ඼Ϊ32767£»
+ ÏÂÐÐÂ˲¨Æ÷µÄaud_downlink_biquad_filters[0].a0_2=26488£¬ÆäÓ඼Ϊ32767£»
+ CBuf Â˲¨Æ÷µÄa0_2¶¼Îª32767¡£
+ *********************************************************************************/
+}
+eep_aud_biquad_filters_type;
+
+
+typedef struct
+{
+ eep_aud_downlink_gain_cells_type downlink_gain_cells; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÏÂÐеÄÔöÒæ£»
+ ȡֵ·¶Î§£º¼ûeep_aud_downlink_gain_cells_type½á¹¹Ìå
+
+ ³ö³§Öµ£º
+ ¼ûeep_aud_downlink_gain_cells_type½á¹¹Ìå
+ *********************************************************************************/
+
+ #if 0
+ int16 biquad_filter_dl_index_8kHz; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃÏÂÐÐ8KHZ biquad_filterµÄË÷ÒýÖµ£»
+ ȡֵ·¶Î§£º0µ½20
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,3,4,6,7,10,11,12,13,14,15,16,17,18,19,20,23,24,25,26,27,28ʱ:
+ aud_audio_downlink_parms[n].biquad_filter_dl_index_8kHz=0;
+ µ±n =5,8,9,21,22,ʱ:
+ aud_audio_downlink_parms[n].biquad_filter_dl_index_8kHz=1;
+ *********************************************************************************/
+ #endif
+ eep_aud_biquad_filters_type biquad_filter_dl_8kHz;
+
+ #if 0
+ int16 biquad_filter_dl_index_16kHz; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃÏÂÐÐ16KHZ biquad_filterµÄË÷ÒýÖµ£»
+ ȡֵ·¶Î§£º0µ½20
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,3,4,6,7,10,11,12,13,14,15,16,17,18,19,20,23,24,25,26,27,28ʱ:
+ aud_audio_downlink_parms[n].biquad_filter_dl_index_16kHz=0;
+ µ±n =5,8,9,21,22,ʱ:
+ aud_audio_downlink_parms[n].biquad_filter_dl_index_16kHz=1;
+ *********************************************************************************/
+ #endif
+ eep_aud_biquad_filters_type biquad_filter_dl_16kHz;
+
+ #if 0
+ int16 biquad_filter_cbuf_index; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃCBUF biquad_filterµÄË÷ÒýÖµ£»
+ ȡֵ·¶Î§£º0µ½10
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,3,4,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28ʱ:
+ aud_audio_downlink_parms[n].biquad_filter_cbuf_index=0;
+ µ±n =5ʱ:
+ aud_audio_downlink_parms[n].biquad_filter_cbuf_index=1;
+ *********************************************************************************/
+ #endif
+ eep_aud_biquad_filters_type biquad_filter_cbuf;
+
+ #if 0
+ int16 fir_filter_dl_index; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖà teakÏÂÐеÄfir_filterµÄË÷ÒýÖµ£»
+ ȡֵ·¶Î§£º0µ½5
+
+ ³ö³§Öµ£º
+ 0
+ *********************************************************************************/
+
+ int16 fir_filter_cbuf_index; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖà teakµÄCBUFµÄ fir_filterµÄË÷ÒýÖµ£»
+ ȡֵ·¶Î§£º0µ½5
+
+ ³ö³§Öµ£º
+ 0
+ *********************************************************************************/
+
+ int16 dl_nr_index; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖà teakµÄÏÂÐеÄÔëÒôÒÖÖÆµÄͨµÀµÄË÷ÒýÖµ£»
+ ȡֵ·¶Î§£º0µ½5
+
+ ³ö³§Öµ£º
+ 0
+ *********************************************************************************/
+
+ #endif
+ UINT16 side_tone_fact; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖà teakµÄside_toneµÄÖµ£»
+ ȡֵ·¶Î§£º0µ½0x7FFF
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,4,6,7,8,9,10,11,12,13,16,17,18,19,24,25,26,27,28ʱ:
+ aud_audio_downlink_parms[n].side_tone_fact=500;
+ µ±n =3,5,14,15,20,23,ʱ:
+ aud_audio_downlink_parms[n].side_tone_fact=0;
+ µ±n =21,22,ʱ:
+ aud_audio_downlink_parms[n].side_tone_fact=5787;
+ *********************************************************************************/
+
+ UINT16 side_tone_fact_use; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄside_toneµÄÖµÊÇ·ñÓÉNV²ÎÊýÉèÖã»
+ ȡֵ·¶Î§£º0: ²»Ê¹ÓÃ
+ 1: ʹÓÃNV²ÎÊý
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,3,4,5,6,7,8,9,10,11,12,13,16,17,18,19,20,21,22,24,25,26,27,28ʱ:
+ aud_audio_downlink_parms[n].side_tone_fact_use=1;
+ µ±n =14,15,23ʱ:
+ aud_audio_downlink_parms[n].side_tone_fact_use=0;
+ *********************************************************************************/
+}
+eep_audio_downlink_parms_type; /* 14*2 bytes */
+
+typedef struct
+{
+ UINT16 scal_mic; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÉÏÐеÄscal_micÔöÒæ£»
+ ȡֵ·¶Î§£º0 µ½0x7FFF,
+ 0 db ֵΪ0x1FFF£»
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n = 0,1,4,6,7,9,13,18,19,20,21ʱ:
+ aud_audio_uplink_parms[n].uplink_gain_cells.scal_mic=6143;
+ µ±n = 2,3,5,12,14ʱ:
+ aud_audio_uplink_parms[2].uplink_gain_cells.scal_mic=8192;
+ µ±n = 10,11ʱ:
+ aud_audio_uplink_parms[2].uplink_gain_cells.scal_mic=8191;
+ µ±n = 8,15,16,17ʱ:
+ aud_audio_uplink_parms[n].uplink_gain_cells.scal_mic=0;
+ *********************************************************************************/
+
+ UINT16 scal_mic_use; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÉÏÐеÄscal_micÔöÒæÊÇ·ñÊÇÓÉNV²ÎÊýÉèÖã»
+ ȡֵ·¶Î§£º0: ²»Ê¹ÓÃ
+ 1: ʹÓÃNV²ÎÊý
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,3,4,6,7,8,9,10,11,13,14,18,19,20,21ʱ:
+ aud_audio_uplink_parms[n].uplink_gain_cells.scal_mic_use=1;
+ µ±n =5,12,15,16,17ʱ:
+ aud_audio_uplink_parms[n].uplink_gain_cells.scal_mic_use=0;
+ *********************************************************************************/
+
+ UINT16 lambda0; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÉÏÐеÄlambda0ÔöÒæ£»
+ ȡֵ·¶Î§£º0 µ½0x7FFF,
+ 0 db ֵΪ0x7FFF£»
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,3,4,5,6,7,9,12,13,14,19,20,21ʱ:
+ aud_audio_uplink_parms[n].uplink_gain_cells.lambda0=32767;
+ µ±n =8,10,11,15,16,17,18ʱ:
+ aud_audio_uplink_parms[n].uplink_gain_cells.lambda0=0;
+ *********************************************************************************/
+
+ UINT16 lambda0_use; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÉÏÐеÄlambda0ÔöÒæÊÇ·ñÊÇÓÉNV²ÎÊýÉèÖã»
+ ȡֵ·¶Î§£º0: ²»Ê¹ÓÃ
+ 1: ʹÓÃNV²ÎÊý
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,3,4,6,7,8,9,13,19,20,21ʱ:
+ aud_audio_uplink_parms[n].uplink_gain_cells.lambda0_use=1;
+ µ±n =5,10,11,12,14,15,16,17,18ʱ:
+ aud_audio_uplink_parms[n].uplink_gain_cells.lambda0_use=0;
+ *********************************************************************************/
+
+ UINT16 gamma0; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÉÏÐеÄgamma0ÔöÒæ£»
+ ȡֵ·¶Î§£º0 µ½0x7FFF,
+ 0 db ֵΪ0x7FFF£»
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,3,4,5,6,7,8,9,12,13,14,19,20,21ʱ:
+ aud_audio_uplink_parms[n].uplink_gain_cells.gamma0=32767;
+ µ±n =10,11,15,16,17,18ʱ:
+ aud_audio_uplink_parms[n].uplink_gain_cells.gamma0=0;
+ *********************************************************************************/
+
+ UINT16 gamma0_use; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÉÏÐеÄgamma0ÔöÒæÊÇ·ñÊÇÓÉNV²ÎÊýÉèÖã»
+ ȡֵ·¶Î§£º0: ²»Ê¹ÓÃ
+ 1: ʹÓÃNV²ÎÊý
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =5,8,10,11,12,14,15,16,17,18ʱ:
+ aud_audio_uplink_parms[n].uplink_gain_cells.gamma0_use=0
+ µ±n =0,1,2,3,4,6,7,9,13,19,20,21ʱ:
+ aud_audio_uplink_parms[n].uplink_gain_cells.gamma0_use=1
+ *********************************************************************************/
+
+ UINT16 scal_afe; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÉÏÐеÄscal_afeÔöÒæ£»
+ ȡֵ·¶Î§£º0 µ½0x7FFF,
+ 0 db ֵΪ0x1FFF£»
+ ³ö³§Öµ£º
+ Êý×éÖУ¬³ýÁËaud_audio_uplink_parms[5].uplink_gain_cells.scal_afe=8192,
+ ÆäÓ඼Ϊ0.
+ *********************************************************************************/
+
+ UINT16 scal_afe_use; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÉÏÐеÄscal_afeÔöÒæÊÇ·ñÊÇÓÉNV²ÎÊýÉèÖã»
+ ȡֵ·¶Î§£º0: ²»Ê¹ÓÃ
+ 1: ʹÓÃNV²ÎÊý
+
+ ³ö³§Öµ£º
+ Êý×éÖУ¬³ýÁËaud_audio_uplink_parms[5].uplink_gain_cells.scal_afe_use=1,
+ ÆäÓàaud_audio_uplink_parms[n].uplink_gain_cells.scal_afe_use=0.
+ *********************************************************************************/
+
+ UINT16 scal_mic2; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÉÏÐеÄscal_mic2ÔöÒæ£»
+ ȡֵ·¶Î§£º0 µ½0x7FFF,
+ 0 db ֵΪ0x1FFF£»
+ ³ö³§Öµ£º
+ Êý×éÖÐ,aud_audio_uplink_parms[5].uplink_gain_cells.scal_mic2=8192;
+ ÆäÓ඼Ϊ0.
+ *********************************************************************************/
+
+ UINT16 scal_mic2_use; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÉÏÐеÄscal_mic2ÔöÒæÊÇ·ñÊÇÓÉNV²ÎÊýÉèÖã»
+ ȡֵ·¶Î§£º0: ²»Ê¹ÓÃ
+ 1: ʹÓÃNV²ÎÊý
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,3,4,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21ʱ:
+ aud_audio_uplink_parms[n].uplink_gain_cells.scal_mic2_use=0;
+ µ±n =5ʱ:
+ aud_audio_uplink_parms[n].uplink_gain_cells.scal_mic2_use=1;
+ *********************************************************************************/
+
+ UINT16 afe_tone; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÉÏÐеÄafe_toneÔöÒæ£»
+ ȡֵ·¶Î§£º0 µ½0x7FFF,
+ 0 db ֵΪ0x3FFF£»
+ ³ö³§Öµ£º
+ Êý×éÖÐ,aud_audio_uplink_parms[5].uplink_gain_cells.afe_tone=16384;
+ ÆäÓ඼Ϊ0.
+ *********************************************************************************/
+
+ UINT16 afe_tone_use; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÉÏÐеÄafe_toneÔöÒæÊÇ·ñÊÇÓÉNV²ÎÊýÉèÖã»
+ ȡֵ·¶Î§£º0: ²»Ê¹ÓÃ
+ 1: ʹÓÃNV²ÎÊý
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,aud_audio_uplink_parms[5].uplink_gain_cells.afe_tone_use=1;
+ ÆäÓ඼Ϊ0.
+ *********************************************************************************/
+
+ UINT16 mix_pcmrec; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÉÏÐеĻìºÏPCMÒôÀÖµÄmix_pcmrecÔöÒæ£»
+ ȡֵ·¶Î§£º0 µ½0x7FFF,
+ 0 db ֵΪ0x3FFF£»
+ ³ö³§Öµ£º
+ Êý×éÖÐ,aud_audio_uplink_parms[12].uplink_gain_cells.mix_pcmrec=1;
+ ÆäÓ඼Ϊ0.
+ *********************************************************************************/
+}
+eep_aud_uplink_gain_cells_type;
+
+
+typedef struct
+{
+ eep_aud_uplink_gain_cells_type uplink_gain_cells; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÉÏÐеÄÔöÒæ£»
+ ȡֵ·¶Î§£º¼ûeep_aud_uplink_gain_cells_type½á¹¹Ìå
+
+ ³ö³§Öµ£º
+ ¼ûeep_aud_uplink_gain_cells_type½á¹¹Ìå
+ *********************************************************************************/
+
+ #if 0
+ int16 biquad_filter_ul_index_8kHz; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃÉÏÐÐ8KHZ biquad_filterµÄË÷ÒýÖµ£»
+ ȡֵ·¶Î§£º0µ½30
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,4,5,6,7,8,9,12,13,14,15,16,17,18,19,20,21ʱ:
+ aud_audio_uplink_parms[n].biquad_filter_ul_index_8kHz=0;
+ µ±n =3,10,11ʱ:
+ aud_audio_uplink_parms[n].biquad_filter_ul_index_8kHz=1;
+ *********************************************************************************/
+ #endif
+ eep_aud_biquad_filters_type biquad_filter_ul_8kHz;
+
+ #if 0
+ int16 biquad_filter_ul_index_16kHz; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃÉÏÐÐ16KHZ biquad_filterµÄË÷ÒýÖµ£»
+ ȡֵ·¶Î§£º0µ½30
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,4,5,6,7,8,9,12,13,14,15,16,17,18,19,20,21ʱ:
+ aud_audio_uplink_parms[n].biquad_filter_ul_index_16kHz=0;
+ µ±n =3,10,11ʱ:
+ aud_audio_uplink_parms[n].biquad_filter_ul_index_16kHz=1;
+ *********************************************************************************/
+ #endif
+ eep_aud_biquad_filters_type biquad_filter_ul_16kHz;
+
+ #if 0
+ int16 biquad_filter_ul_index_48kHz; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃÉÏÐÐ48KHZ biquad_filterµÄË÷ÒýÖµ£»
+ ȡֵ·¶Î§£º0µ½30
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,4,5,6,7,8,9,12,13,14,15,16,17,18,19,20,21ʱ:
+ aud_audio_uplink_parms[n].biquad_filter_ul_index_48kHz=0;
+ µ±n =3,10,11ʱ:
+ aud_audio_uplink_parms[n].biquad_filter_ul_index_48kHz=1;
+ *********************************************************************************/
+ #endif
+ eep_aud_biquad_filters_type biquad_filter_ul_48kHz;
+
+ #if 0
+ int16 fir_filter_ul_index; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖà teakÉÏÐеÄfir_filterµÄË÷ÒýÖµ£»
+ ȡֵ·¶Î§£º0µ½5
+
+ ³ö³§Öµ£º
+ 0
+ *********************************************************************************/
+ #endif
+
+ #if 0
+ int16 hf_index; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖà teakµÄhandsfreeµÄË÷ÒýÖµ£»
+ ȡֵ·¶Î§£º0µ½8
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,6,8,9,20,21ʱ:
+ aud_audio_uplink_parms[n].hf_index=0;
+ µ±n =1,2,4,5,10,11,12,13,14,15,16,17,18,19ʱ:
+ aud_audio_uplink_parms[n].hf_index=1;
+ µ±n =7ʱ:
+ aud_audio_uplink_parms[n].hf_index=2;
+ µ±n =3ʱ:
+ aud_audio_uplink_parms[n].hf_index=3;
+ *********************************************************************************/
+ #endif
+ eep_aud_hf_type hf;
+
+ #if 0
+ int16 asp_ul_index; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖà teakµÄÉÏÐеÄASPµÄË÷ÒýÖµ£»
+ ȡֵ·¶Î§£º0µ½5
+
+ ³ö³§Öµ£º
+ 0
+ *********************************************************************************/
+ #endif
+
+ UINT16 mic_gain; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖà teakµÄÉÏÐеÄmic_gainÔöÒæ£»
+ ȡֵ·¶Î§£º0x0µ½0x10
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,4,7,12,13,14,18,20,21ʱ:
+ aud_audio_uplink_parms[n].mic_gain=10;
+ µ±n =2,3,ʱ:
+ aud_audio_uplink_parms[n].mic_gain=6;
+ µ±n =5,ʱ:
+ aud_audio_uplink_parms[n].mic_gain=2;
+ µ±n =6,19ʱ:
+ aud_audio_uplink_parms[n].mic_gain=14;
+ µ±n =8,9,ʱ:
+ aud_audio_uplink_parms[n].mic_gain=5;
+ µ±n =10,11,15,16,17,ʱ:
+ aud_audio_uplink_parms[n].mic_gain=0;
+ *********************************************************************************/
+
+ UINT16 mic_gain_use; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÏÂÐеÄmic_gainÔöÒæÊÇ·ñÓÉNV²ÎÊýÉèÖã»
+ ȡֵ·¶Î§£º0: ²»Ê¹ÓÃ
+ 1: ʹÓÃNV²ÎÊý
+
+ ³ö³§Öµ£º
+ Êý×éÖÐ,µ±n =0,1,2,4,5,6,7,9,10,11,13,14,18,19,20,21ʱ:
+ aud_audio_uplink_parms[n].mic_gain_use=1;
+ µ±n =8,12,15,16,17ʱ:
+ aud_audio_uplink_parms[n].mic_gain_use=0;
+ *********************************************************************************/
+
+ #if 0
+ UINT16 tx_dither; /********************************************************************************
+ ¹¦ÄÜ£º AFEµÄÏà¹ØÉèÖã»
+ ȡֵ·¶Î§£ºnot used
+
+
+ ³ö³§Öµ£º
+ 0
+ *********************************************************************************/
+
+ UINT16 tx_dither_use; /********************************************************************************
+ ¹¦ÄÜ£º AFEµÄÏà¹ØÉèÖÃÊÇ·ñÓÉNV²ÎÊýÉèÖã»
+ ȡֵ·¶Î§£º0: ²»Ê¹ÓÃ
+ 1: ʹÓÃNV²ÎÊý
+
+ ³ö³§Öµ£º
+ 0
+ *********************************************************************************/
+ #endif
+}
+eep_audio_uplink_parms_type; /* 23*2 bytes */
+
+typedef struct
+{
+ unsigned char audio_parms_from_eep_used; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÊÇ·ñʹÓÃNV²ÎÊýµÄÖµ£»
+ ȡֵ·¶Î§£º0: ²»Ê¹ ÓÃ(false)
+ 1: ʹÓã»(true)
+ ³ö³§Öµ£º
+ 1
+ *********************************************************************************/
+
+ #if 0
+ unsigned char aud_use_filters_ul; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÊÇ·ñʹÓÃÓïÒôͨ·µÄÉÏÐÐÂ˲¨Æ÷£»
+ ȡֵ·¶Î§£º0: ²»Ê¹ ÓÃ(none)
+ 1: ʹÓÃfirÂ˲¨Æ÷ (fir)
+ 4: ʹÓÃbiquadÂ˲¨Æ÷ (biquad)
+ 5: ʹÓÃfir+biquadÂ˲¨Æ÷(fir+biquad)
+ ³ö³§Öµ£º
+ 1
+ *********************************************************************************/
+
+
+ unsigned char aud_use_filters_dl; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÊÇ·ñʹÓÃÓïÒôͨ·µÄÏÂÐÐÂ˲¨Æ÷£»
+ ȡֵ·¶Î§£º0: ²»Ê¹ ÓÃ(none)
+ 1: ʹÓÃfirÂ˲¨Æ÷ (fir)
+ 4: ʹÓÃbiquadÂ˲¨Æ÷ (biquad)
+ 5: ʹÓÃfir+biquadÂ˲¨Æ÷(fir+biquad)
+ ³ö³§Öµ£º
+ 1
+ *********************************************************************************/
+
+ unsigned char aud_use_filters_cbuf; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÊÇ·ñʹÓÃcircular buffer 48KHZͨ·ÉϵÄÂ˲¨Æ÷£»
+ ȡֵ·¶Î§£º0: ²»Ê¹ ÓÃ(none)
+ 1: ʹÓÃfirÂ˲¨Æ÷ (fir)
+ 4: ʹÓÃbiquadÂ˲¨Æ÷ (biquad)
+ 5: ʹÓÃfir+biquadÂ˲¨Æ÷(fir+biquad)
+ ³ö³§Öµ£º
+ 1
+ *********************************************************************************/
+
+ #endif
+ #if 0
+ eep_aud_biquad_filters_type aud_uplink_biquad_filters[EEP_AUD_BIQUAD_FILTERS_UL]; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÉÏÐеÄbiquadÂ˲¨Æ÷²ÎÊý£»
+ ȡֵ·¶Î§£º
+ ¼ûeep_aud_biquad_filters_type½á¹¹Ì壻
+ ³ö³§Öµ£º
+ ¼ûeep_aud_biquad_filters_type½á¹¹Ì壻
+ *********************************************************************************/
+
+
+ eep_aud_biquad_filters_type aud_downlink_biquad_filters[EEP_AUD_BIQUAD_FILTERS_DL]; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÏÂÐеÄbiquadÂ˲¨Æ÷²ÎÊý£»
+ ȡֵ·¶Î§£º
+ ¼ûeep_aud_biquad_filters_type½á¹¹Ì壻
+ ³ö³§Öµ£º
+ ¼ûeep_aud_biquad_filters_type½á¹¹Ì壻
+ *********************************************************************************/
+
+ eep_aud_biquad_filters_type aud_cbuf_biquad_filters[EEP_AUD_BIQUAD_FILTERS_CBUF]; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak µÄcircular buffer 48KHZͨ·ÉϵÄÂ˲¨Æ÷²ÎÊý£»
+ ȡֵ·¶Î§£º
+ ¼ûeep_aud_biquad_filters_type½á¹¹Ì壻
+ ³ö³§Öµ£º
+ ¼ûeep_aud_biquad_filters_type½á¹¹Ì壻
+ *********************************************************************************/
+
+ #endif
+ #if 0
+ eep_aud_fir_filter_type aud_uplink_fir_filters[EEP_AUD_FIR_FILTERS_UL]; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÉÏÐеÄfirÂ˲¨Æ÷²ÎÊý£»
+ ȡֵ·¶Î§£º
+ ¼ûeep_aud_fir_filter_type½á¹¹Ì壻
+ ³ö³§Öµ£º
+ ¼ûeep_aud_fir_filter_type½á¹¹Ì壻
+ *********************************************************************************/
+
+ eep_aud_fir_filter_type aud_downlink_fir_filters[EEP_AUD_FIR_FILTERS_DL]; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÏÂÐеÄfirÂ˲¨Æ÷²ÎÊý£»
+ ȡֵ·¶Î§£º
+ ¼ûeep_aud_fir_filter_type½á¹¹Ì壻
+ ³ö³§Öµ£º
+ ¼ûeep_aud_fir_filter_type½á¹¹Ì壻
+ *********************************************************************************/
+
+
+ eep_aud_fir_filter_type aud_cbuf_fir_filters[EEP_AUD_FIR_FILTERS_CBUF]; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteakµÄcircular buffer 48KHZͨ·ÉϵÄÂ˲¨Æ÷²ÎÊý£»
+ ȡֵ·¶Î§£º
+ ¼ûeep_aud_fir_filter_type½á¹¹Ì壻
+ ³ö³§Öµ£º
+ ¼ûeep_aud_fir_filter_type½á¹¹Ì壻
+ *********************************************************************************/
+
+ eep_aud_hf_type aud_hf[EEP_AUD_HF]; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteakµÄhandsfreeµÄ²ÎÊý£»
+ ȡֵ·¶Î§£º
+ ¼ûeep_aud_hf_type½á¹¹Ì壻
+ ³ö³§Öµ£º
+ ¼ûeep_aud_hf_type½á¹¹Ì壻
+ *********************************************************************************/
+
+ #endif
+ #if 0
+ eep_aud_asp_ul_type aud_asp_ul[EEP_AUD_ASP_UL]; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteakµÄÉÏÐÐͨµÀÉÏÕðµ´±£»¤µÄ²ÎÊý£»
+ ȡֵ·¶Î§£º
+ ¼ûeep_aud_asp_ul_type½á¹¹Ì壻
+ ³ö³§Öµ£º
+ ¼ûeep_aud_asp_ul_type½á¹¹Ì壻
+ *********************************************************************************/
+
+ eep_aud_dl_nr_type aud_dl_nr[EEP_AUD_DL_NR]; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteakµÄÏÂÐÐͨµÀÉϽµµÍÔëÒôµÄ²ÎÊý£»
+ ȡֵ·¶Î§£º
+ ¼ûeep_aud_dl_nr_type½á¹¹Ì壻
+ ³ö³§Öµ£º
+ ¼ûeep_aud_dl_nr_type½á¹¹Ì壻
+ *********************************************************************************/
+
+ #endif
+ eep_audio_uplink_parms_type aud_audio_uplink_parms[EEP_AUD_UPLINK_PATHS]; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteakµÄÉÏÐÐÓïÒôͨ·ÉϵIJÎÊý£»
+ ȡֵ·¶Î§£º
+ ¼ûeep_audio_uplink_parms_type½á¹¹Ì壻
+ ³ö³§Öµ£º
+ ¼ûeep_audio_uplink_parms_type½á¹¹Ì壻
+ *********************************************************************************/
+
+ eep_audio_downlink_parms_type aud_audio_downlink_parms[EEP_AUD_DOWNLINK_PATHS]; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteakµÄÏÂÐÐÓïÒôͨ·ÉϵIJÎÊý£»
+ ȡֵ·¶Î§£º
+ ¼ûeep_audio_downlink_parms_type½á¹¹Ì壻
+ ³ö³§Öµ£º
+ ¼ûeep_audio_downlink_parms_type½á¹¹Ì壻
+ *********************************************************************************/
+
+ #if 0
+ unsigned char fill[2]; /********************************************************************************
+ ¹¦ÄÜ£º Ìî³äλ£»
+ ȡֵ·¶Î§£º0 µ½ 255
+
+ ³ö³§Öµ£º
+ 255
+ *********************************************************************************/
+ #endif
+}
+eep_aud_path_data_type;
+
+typedef struct
+{
+ SINT16 mix_afe; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖûìºÏµ½AFEµÄÒôƵ×ÊÔ´ÔöÒæÖµ£»
+ ȡֵ·¶Î§£º0 µ½0x7FFF,
+ 0 db ֵΪ0x3FFF£»
+ ³ö³§Öµ£º
+ aud_cbuf_mix_parms[5].mix_afe=0,ÆäÓ඼Ϊ32767¡£
+ *********************************************************************************/
+
+ SINT16 mix_i2s1; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖûìºÏµ½I2S1µÄÒôƵ×ÊÔ´ÔöÒæÖµ£»
+ ȡֵ·¶Î§£º0 µ½0x7FFF,
+ 0 db ֵΪ0x3FFF£»
+ ³ö³§Öµ£º
+ aud_cbuf_mix_parms[5].mix_i2s1=0£¬ÆäÓ඼Ϊ32767¡£
+ *********************************************************************************/
+}
+eepaud_static_cbuf_mix_parms_type;
+
+typedef SINT16 eep_aud_region_type;
+
+/********************************************************************************
+¹¦ÄÜ£º ÉèÖÃteakµÄÉÏÐÐÓïÒôͨµÀµÄÔöÒæ£»
+ȡֵ·¶Î§£º0 µ½0x7FFF,
+ 0 db ֵΪ0x1FFF£»
+
+³ö³§Öµ£º
+ ÔÚ³ÌÐòÖÐΪһ¸ö32λµÄÊý×é
+ ÔÚÊý×é[0] µ½ [31] ÖУ¬³ýÁË[3]Ϊ0x5000£¬ÆäÓ඼Ϊ0x2000
+*********************************************************************************/
+typedef struct
+{
+ SINT16 scal_in;
+}
+eepaud_static_scal_in_parms_type;
+
+/********************************************************************************
+¹¦ÄÜ£º ÉèÖÃteakµÄÏÂÐÐÓïÒôͨµÀµÄÔöÒæ£»
+ȡֵ·¶Î§£º0 µ½0x7FFF,
+ 0 db ֵΪ0x1FFF£»
+
+³ö³§Öµ£º
+ 0x2000
+*********************************************************************************/
+typedef struct
+{
+ SINT16 scal_out;
+}
+eepaud_static_scal_out_parms_type;
+
+/*[Begin] [lvwenhua-2010/9/16]*/
+typedef struct
+{
+ SINT16 scal_i2s1;
+}
+eepaud_static_scal_i2s1_parms_type;
+
+typedef struct
+{
+ SINT16 scal_rec;
+}
+eepaud_static_scal_rec_parms_type;
+/*[End] [lvwenhua-2010/9/16]*/
+
+typedef struct
+{
+ UINT16 gain[EEP_VOICE_OUTPUT_VOL_LEVELS];
+} eep_voice_volume_config_type;
+
+typedef struct
+{
+ UINT16 gain[EEP_MIDI_OUTPUT_VOL_LEVELS];
+} eep_midi_volume_config_type;
+
+typedef struct
+{
+ UINT16 gain[EEP_TONE_OUTPUT_VOL_LEVELS];
+} eep_tone_volume_config_type;
+
+#ifdef _USE_CODEC_TLV3212
+typedef enum
+{
+ PMIC_MIC_GAIN_MINUS_12DB = 0,
+ PMIC_MIC_GAIN_MINUS_9DB,
+ PMIC_MIC_GAIN_MINUS_6DB,
+ PMIC_MIC_GAIN_MINUS_3DB,
+ PMIC_MIC_GAIN_0DB,
+ PMIC_MIC_GAIN_PLUS_3DB,
+ PMIC_MIC_GAIN_PLUS_6DB,
+ PMIC_MIC_GAIN_PLUS_9DB,
+ PMIC_MIC_GAIN_PLUS_12DB,
+ PMIC_MIC_GAIN_PLUS_15DB,
+ PMIC_MIC_GAIN_PLUS_18DB,
+ PMIC_MIC_GAIN_MAX
+
+} EEP_PMIC_AUDIO_MIC_GAIN;
+
+typedef enum
+{
+ PMIC_OUTPGA_GAIN_PLUS_24DB = 0,
+ PMIC_OUTPGA_GAIN_PLUS_21DB,
+ PMIC_OUTPGA_GAIN_PLUS_18DB,
+ PMIC_OUTPGA_GAIN_PLUS_15DB,
+ PMIC_OUTPGA_GAIN_PLUS_12DB,
+ PMIC_OUTPGA_GAIN_PLUS_9DB,
+ PMIC_OUTPGA_GAIN_PLUS_6DB,
+ PMIC_OUTPGA_GAIN_PLUS_3DB,
+ PMIC_OUTPGA_GAIN_0DB,
+ PMIC_OUTPGA_GAIN_MINUS_3DB,
+ PMIC_OUTPGA_GAIN_MINUS_6DB,
+ PMIC_OUTPGA_GAIN_MINUS_9DB,
+ PMIC_OUTPGA_GAIN_MINUS_12DB,
+ PMIC_OUTPGA_GAIN_MINUS_15DB,
+ PMIC_OUTPGA_GAIN_MINUS_18DB,
+ PMIC_OUTPGA_GAIN_MINUS_21DB,
+ PMIC_OUTPGA_GAIN_MINUS_24DB,
+ PMIC_OUTPGA_GAIN_MINUS_27DB,
+ PMIC_OUTPGA_GAIN_MINUS_30DB,
+ PMIC_OUTPGA_GAIN_MINUS_33DB,
+ PMIC_OUTPGA_GAIN_MINUS_36DB,
+ PMIC_OUTPGA_GAIN_MINUS_39DB,
+ PMIC_OUTPGA_GAIN_MINUS_42DB,
+ PMIC_OUTPGA_GAIN_MINUS_45DB,
+ PMIC_OUTPGA_GAIN_MINUS_48DB,
+ PMIC_OUTPGA_GAIN_MINUS_51DB,
+ PMIC_OUTPGA_GAIN_MINUS_54DB,
+ PMIC_OUTPGA_GAIN_MINUS_57DB,
+ PMIC_OUTPGA_GAIN_MINUS_60DB,
+ PMIC_OUTPGA_GAIN_MINUS_63DB,
+ PMIC_OUTPGA_GAIN_MAX
+
+} EEP_PMIC_AUDIO_OUTPUT_PGA_GAIN;
+/*added by miaolin 20130805*/
+
+#else
+
+typedef enum
+{
+ PMIC_MIC_GAIN_MINUS_12DB = 0,
+ PMIC_MIC_GAIN_MINUS_9DB,
+ PMIC_MIC_GAIN_MINUS_6DB,
+ PMIC_MIC_GAIN_MINUS_3DB,
+ PMIC_MIC_GAIN_0DB,
+ PMIC_MIC_GAIN_PLUS_3DB,
+ PMIC_MIC_GAIN_PLUS_6DB,
+ PMIC_MIC_GAIN_PLUS_9DB,
+ PMIC_MIC_GAIN_PLUS_12DB,
+ PMIC_MIC_GAIN_PLUS_15DB,
+ PMIC_MIC_GAIN_PLUS_18DB,
+ PMIC_MIC_GAIN_MAX
+
+} EEP_PMIC_AUDIO_MIC_GAIN;
+
+typedef enum
+{
+ PMIC_OUTPGA_GAIN_PLUS_24DB = 0,
+ PMIC_OUTPGA_GAIN_PLUS_21DB,
+ PMIC_OUTPGA_GAIN_PLUS_18DB,
+ PMIC_OUTPGA_GAIN_PLUS_15DB,
+ PMIC_OUTPGA_GAIN_PLUS_12DB,
+ PMIC_OUTPGA_GAIN_PLUS_9DB,
+ PMIC_OUTPGA_GAIN_PLUS_6DB,
+ PMIC_OUTPGA_GAIN_PLUS_3DB,
+ PMIC_OUTPGA_GAIN_0DB,
+ PMIC_OUTPGA_GAIN_MINUS_3DB,
+ PMIC_OUTPGA_GAIN_MINUS_6DB,
+ PMIC_OUTPGA_GAIN_MINUS_9DB,
+ PMIC_OUTPGA_GAIN_MINUS_12DB,
+ PMIC_OUTPGA_GAIN_MINUS_15DB,
+ PMIC_OUTPGA_GAIN_MINUS_18DB,
+ PMIC_OUTPGA_GAIN_MINUS_21DB,
+ PMIC_OUTPGA_GAIN_MINUS_24DB,
+ PMIC_OUTPGA_GAIN_MINUS_27DB,
+ PMIC_OUTPGA_GAIN_MINUS_30DB,
+ PMIC_OUTPGA_GAIN_MINUS_33DB,
+ PMIC_OUTPGA_GAIN_MINUS_36DB,
+ PMIC_OUTPGA_GAIN_MINUS_39DB,
+ PMIC_OUTPGA_GAIN_MINUS_42DB,
+ PMIC_OUTPGA_GAIN_MINUS_45DB,
+ PMIC_OUTPGA_GAIN_MINUS_48DB,
+ PMIC_OUTPGA_GAIN_MINUS_51DB,
+ PMIC_OUTPGA_GAIN_MINUS_54DB,
+ PMIC_OUTPGA_GAIN_MINUS_57DB,
+ PMIC_OUTPGA_GAIN_MINUS_60DB,
+ PMIC_OUTPGA_GAIN_MINUS_63DB,
+ PMIC_OUTPGA_GAIN_MAX
+
+} EEP_PMIC_AUDIO_OUTPUT_PGA_GAIN;
+#endif
+
+#ifndef _USE_DATACARD
+typedef struct
+{
+ EEP_PMIC_AUDIO_OUTPUT_PGA_GAIN gain[EEP_PCM_OUTPUT_VOL_LEVELS];
+} eep_pcm_volume_config_type;
+#endif
+
+
+typedef struct
+{
+ eep_voice_volume_config_type voice_vol_gain_config[EEP_CODEC_DOWNLINK_PATHS];
+ eep_midi_volume_config_type midi_vol_gain_config[EEP_CODEC_DOWNLINK_PATHS];
+ eep_tone_volume_config_type tone_vol_gain_config[EEP_CODEC_DOWNLINK_PATHS];
+#ifndef _USE_DATACARD
+ eep_pcm_volume_config_type pcm_vol_gain_config[EEP_CODEC_DOWNLINK_PATHS];
+#endif
+}aud_eep_volume_config_type;
+
+
+#ifndef _USE_DATACARD
+typedef struct
+{
+ EEP_PMIC_AUDIO_MIC_GAIN pga_tx;
+}aud_pmic_eep_pga_tx_type;
+
+typedef struct
+{
+ EEP_PMIC_AUDIO_OUTPUT_PGA_GAIN pga_rx;
+}aud_pmic_eep_pga_rx_type;
+/*[End] [lvwenhua-2010/9/16]*/
+#endif
+
+typedef volatile struct _aud_eep_static_type
+{
+ eep_aud_path_data_type aud_path_data; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÓïÒôÉÏÏÂÐÐͨ·ÉϵÄÔöÒæÂ˲¨²ÎÊýµÈ£»
+ ȡֵ·¶Î§£º¸Ã½á¹¹ÌåµÄȡֵ·¶Î§¼ûeep_aud_path_data_type½á¹¹Ì壻
+
+ ³ö³§Öµ£º
+ ¼ûeep_aud_path_data_type½á¹¹Ì壻
+ *********************************************************************************/
+
+ #if 0
+ eep_external_audio_type external_audio; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteak ÊÇ·ñʹÓÃÍⲿÒôƵÉ豸£»
+ ȡֵ·¶Î§£º0: ʹÄÜ
+ 1: ²»Ê¹ÄÜ£»
+ ³ö³§Öµ£º
+ 0
+ *********************************************************************************/
+ #endif
+
+ eepaud_static_cbuf_mix_parms_type aud_cbuf_mix_parms[AUDIO_PATHS]; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖûìºÏµ½I2S1ºÍAFEµÄÒôƵ×ÊÔ´ÔöÒæÖµ£»
+ ȡֵ·¶Î§£º0 µ½0x7FFF,
+ 0 db ֵΪ0x3FFF£»
+ ³ö³§Öµ£º
+ ¼ûeepaud_static_cbuf_mix_parms_type½á¹¹Ì壻
+ *********************************************************************************/
+
+
+ #if 0
+ eep_aud_fm_radio_type aud_fm_radio; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteakµÄÊÕÒô»úµÄÉèÖ㬷½°¸ÖÐûÓÐʹÓøù¦ÄÜ£¬
+ Õâ¸ö²ÎÊýÔڽṹÌåÖпÉÒÔÈ¥µô£»
+ ȡֵ·¶Î§£º¸Ã½á¹¹ÌåµÄȡֵ·¶Î§¼ûeep_aud_fm_radio_type½á¹¹Ìå¡£
+
+ ³ö³§Öµ£º
+ ¼ûeep_aud_fm_radio_type½á¹¹Ìå¡£
+ *********************************************************************************/
+ #endif
+
+ eep_aud_region_type aud_region; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteakµÄʹÓÃÇøÓò£»
+ ȡֵ·¶Î§£º0: EEP_AUD_CEPT
+ 1: EEP_AUD_ANSI
+ 2: EEP_AUD_JAPAN£»
+ ³ö³§Öµ£º
+ 0
+ *********************************************************************************/
+
+ eepaud_static_scal_in_parms_type aud_scal_in_parms[EEP_AUD_UPLINK_PATHS]; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteakµÄÉÏÐÐÓïÒôͨµÀµÄÔöÒæ£»
+ ȡֵ·¶Î§£º0 µ½0x7FFF,
+ 0 db ֵΪ0x1FFF£»
+
+ ³ö³§Öµ£º
+ ¼ûeepaud_static_scal_in_parms_type½á¹¹Ìå¡£
+ *********************************************************************************/
+
+ eepaud_static_scal_out_parms_type aud_scal_out_parms[EEP_AUD_DOWNLINK_PATHS]; /********************************************************************************
+ ¹¦ÄÜ£º ÉèÖÃteakµÄÏÂÐÐÓïÒôͨµÀµÄÔöÒæ£»
+ ȡֵ·¶Î§£º0 µ½0x7FFF,
+ 0 db ֵΪ 0x1FFF£»
+
+ ³ö³§Öµ£º
+ ¼ûeepaud_static_scal_out_parms_type½á¹¹Ìå¡£
+ *********************************************************************************/
+ /*[Begin] [lvwenhua-2010/9/16]*/
+ eepaud_static_scal_i2s1_parms_type aud_scal_i2s1_parms[EEP_AUD_DOWNLINK_PATHS];
+ eepaud_static_scal_rec_parms_type aud_scal_rec_parms[EEP_AUD_DOWNLINK_PATHS];
+ /*[End] [lvwenhua-2010/9/16]*/
+
+#ifndef _USE_DATACARD
+ /*[Begin] [lvwenhua-2010/9/16]*/
+ aud_pmic_eep_pga_tx_type pmic_pga_tx_parms[EEP_AUD_UPLINK_PATHS];
+ aud_pmic_eep_pga_rx_type pmic_pga_rx_parms[EEP_AUD_DOWNLINK_PATHS];
+#endif
+
+ aud_eep_volume_config_type aud_volume_config;
+ /*[End] [lvwenhua-2010/9/16]*/
+}
+aud_eep_static_type;
+
+#endif /* _AUD_NV_H */
+
+