annotate src/g23m-aci/aci/hl_audio_drv.c @ 623:df3649549840

Leonardo target: targets/leonardo.{conf,h} created
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 22 Dec 2019 00:23:38 +0000
parents 92dbfa906f66
children 597869e59805
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
162
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 /*
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 +-----------------------------------------------------------------------------
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 | Project : GSM-PS (6147)
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 | Modul : AOC
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 +-----------------------------------------------------------------------------
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 | Copyright 2002 Texas Instruments Berlin, AG
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 | All rights reserved.
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 |
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 | This file is confidential and a trade secret of Texas
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 | Instruments Berlin, AG
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 | The receipt of or possession of this file does not convey
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 | any rights to reproduce or disclose its contents or to
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 | manufacture, use, or sell anything it may describe, in
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 | whole, or in part, without the specific written consent of
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 | Texas Instruments Berlin, AG.
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 +-----------------------------------------------------------------------------
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 | Purpose : This module defines the functions for the high level audio
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18 driver interface.
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 +-----------------------------------------------------------------------------
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20 */
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 #ifndef HL_AUDIO_DRV_C
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24 #define HL_AUDIO_DRV_C
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25 #endif
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27 #include "aci_all.h"
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28 #include "aci_cmh.h"
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29 #include "aci.h"
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 #include "psa.h"
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31 #include "hl_audio_drv.h"
597
f18b29e27be5 First attempt at MCSI voice path automatic switching
Mychaela Falconia <falcon@freecalypso.org>
parents: 162
diff changeset
32 #include "rv/rv_general.h"
f18b29e27be5 First attempt at MCSI voice path automatic switching
Mychaela Falconia <falcon@freecalypso.org>
parents: 162
diff changeset
33 #include "audio/audio_api.h"
602
92dbfa906f66 fc-target.cfg config header renamed to more sensible fc-target.h
Mychaela Falconia <falcon@freecalypso.org>
parents: 600
diff changeset
34 #include "fc-target.h"
162
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37 /* ===============GLOBAL VARIABLES====================*/
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39 LOCAL T_HL_VOCODER_STATE currVocoderState;
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40
600
8f50b202e81f board preprocessor conditionals: prep for more FC hw in the future
Mychaela Falconia <falcon@freecalypso.org>
parents: 599
diff changeset
41 #ifdef CONFIG_TARGET_FCMODEM
597
f18b29e27be5 First attempt at MCSI voice path automatic switching
Mychaela Falconia <falcon@freecalypso.org>
parents: 162
diff changeset
42 GLOBAL UBYTE aci_digital_voice_autoswitch;
f18b29e27be5 First attempt at MCSI voice path automatic switching
Mychaela Falconia <falcon@freecalypso.org>
parents: 162
diff changeset
43 #endif
f18b29e27be5 First attempt at MCSI voice path automatic switching
Mychaela Falconia <falcon@freecalypso.org>
parents: 162
diff changeset
44
162
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
45
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
46 /* =============FUNCTION DEFINITIONS FOR L1===========*/
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
47 #ifdef VOCODER_FUNC_INTERFACE
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
48 void vocoder_mute_dl( BOOL mute );
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
49 void vocoder_mute_ul( BOOL mute );
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
50 void enable_tch_vocoder (BOOL vocoder_on);
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
51 #endif /* VOCODER_FUNC_INTERFACE */
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
52
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
53
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
54 /*================= FUNCTIONS ========================*/
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
55
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
56 /*
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
57 +-------------------------------------------------------------------+
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
58 | PROJECT : GSM-PS (6147) MODULE : HL_AUDIO_DRV |
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
59 | ROUTINE : hl_audio_drv_init |
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
60 +-------------------------------------------------------------------+
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
61
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
62 PURPOSE : This function is called to initialise the variables in
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
63 the High Level Audio driver
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
64 */
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
65 GLOBAL void hl_audio_drv_init (void)
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
66 {
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
67 TRACE_FUNCTION("hl_audio_drv_init()");
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
68
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
69 currVocoderState = HL_VOCODER_DISABLED;
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
70 }
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
71
600
8f50b202e81f board preprocessor conditionals: prep for more FC hw in the future
Mychaela Falconia <falcon@freecalypso.org>
parents: 599
diff changeset
72 #ifdef CONFIG_TARGET_FCMODEM
599
4626d7a955de aci3 MCSI autoswitch: RV return path fix
Mychaela Falconia <falcon@freecalypso.org>
parents: 598
diff changeset
73 static void audio_mode_callback(void *event_from_audio)
4626d7a955de aci3 MCSI autoswitch: RV return path fix
Mychaela Falconia <falcon@freecalypso.org>
parents: 598
diff changeset
74 {
4626d7a955de aci3 MCSI autoswitch: RV return path fix
Mychaela Falconia <falcon@freecalypso.org>
parents: 598
diff changeset
75 /* do nothing at this time */
4626d7a955de aci3 MCSI autoswitch: RV return path fix
Mychaela Falconia <falcon@freecalypso.org>
parents: 598
diff changeset
76 }
4626d7a955de aci3 MCSI autoswitch: RV return path fix
Mychaela Falconia <falcon@freecalypso.org>
parents: 598
diff changeset
77 #endif
4626d7a955de aci3 MCSI autoswitch: RV return path fix
Mychaela Falconia <falcon@freecalypso.org>
parents: 598
diff changeset
78
162
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
79 /*
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
80 +-------------------------------------------------------------------+
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
81 | PROJECT : GSM-PS (6147) MODULE : PSA_CCF |
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
82 | ROUTINE : hl_drv_set_vocoder_state|
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
83 +-------------------------------------------------------------------+
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
84
598
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
85 PURPOSE : This function will enable or disable vocoder as needed,
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
86 and possibly also enable/disable the MCSI digital voice
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
87 path if running on a FreeCalypso modem in the digital
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
88 voice interface configuration.
162
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
89 */
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
90 GLOBAL void hl_drv_set_vocoder_state(BOOL user_attach)
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
91 {
600
8f50b202e81f board preprocessor conditionals: prep for more FC hw in the future
Mychaela Falconia <falcon@freecalypso.org>
parents: 599
diff changeset
92 #ifdef CONFIG_TARGET_FCMODEM
597
f18b29e27be5 First attempt at MCSI voice path automatic switching
Mychaela Falconia <falcon@freecalypso.org>
parents: 162
diff changeset
93 T_AUDIO_VOICE_PATH_SETTING vpath;
f18b29e27be5 First attempt at MCSI voice path automatic switching
Mychaela Falconia <falcon@freecalypso.org>
parents: 162
diff changeset
94 T_AUDIO_FULL_ACCESS_WRITE audio_param;
599
4626d7a955de aci3 MCSI autoswitch: RV return path fix
Mychaela Falconia <falcon@freecalypso.org>
parents: 598
diff changeset
95 T_RV_RETURN return_path;
597
f18b29e27be5 First attempt at MCSI voice path automatic switching
Mychaela Falconia <falcon@freecalypso.org>
parents: 162
diff changeset
96 #endif
f18b29e27be5 First attempt at MCSI voice path automatic switching
Mychaela Falconia <falcon@freecalypso.org>
parents: 162
diff changeset
97
162
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
98 TRACE_FUNCTION("hl_drv_set_vocoder_state");
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
99
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
100 if ( (user_attach EQ TRUE AND currVocoderState EQ HL_VOCODER_ENABLED) OR
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
101 (user_attach EQ FALSE AND currVocoderState EQ HL_VOCODER_DISABLED) )
598
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
102 return; /* No state change requested */
162
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
103
598
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
104 if (user_attach)
162
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
105 {
598
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
106 enable_tch_vocoder(TRUE);
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
107 vocoder_mute_dl (FALSE); /* un-mute speaker */
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
108 vocoder_mute_ul (FALSE); /* un-mute microphone */
600
8f50b202e81f board preprocessor conditionals: prep for more FC hw in the future
Mychaela Falconia <falcon@freecalypso.org>
parents: 599
diff changeset
109 #ifdef CONFIG_TARGET_FCMODEM
598
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
110 if (aci_digital_voice_autoswitch)
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
111 {
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
112 vpath = AUDIO_BLUETOOTH_HEADSET;
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
113 audio_param.variable_indentifier = AUDIO_PATH_USED;
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
114 audio_param.data = &vpath;
599
4626d7a955de aci3 MCSI autoswitch: RV return path fix
Mychaela Falconia <falcon@freecalypso.org>
parents: 598
diff changeset
115 return_path.addr_id = NULL;
4626d7a955de aci3 MCSI autoswitch: RV return path fix
Mychaela Falconia <falcon@freecalypso.org>
parents: 598
diff changeset
116 return_path.callback_func = audio_mode_callback;
598
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
117 audio_full_access_write(&audio_param, return_path);
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
118 }
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
119 #endif
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
120 currVocoderState = HL_VOCODER_ENABLED;
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
121 }
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
122 else
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
123 {
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
124 vocoder_mute_dl (TRUE); /* mute speaker */
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
125 vocoder_mute_ul (TRUE); /* mute microphone */
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
126 enable_tch_vocoder (FALSE); /* disable vocoder */
600
8f50b202e81f board preprocessor conditionals: prep for more FC hw in the future
Mychaela Falconia <falcon@freecalypso.org>
parents: 599
diff changeset
127 #ifdef CONFIG_TARGET_FCMODEM
598
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
128 if (aci_digital_voice_autoswitch)
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
129 {
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
130 vpath = AUDIO_GSM_VOICE_PATH;
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
131 audio_param.variable_indentifier = AUDIO_PATH_USED;
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
132 audio_param.data = &vpath;
599
4626d7a955de aci3 MCSI autoswitch: RV return path fix
Mychaela Falconia <falcon@freecalypso.org>
parents: 598
diff changeset
133 return_path.addr_id = NULL;
4626d7a955de aci3 MCSI autoswitch: RV return path fix
Mychaela Falconia <falcon@freecalypso.org>
parents: 598
diff changeset
134 return_path.callback_func = audio_mode_callback;
598
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
135 audio_full_access_write(&audio_param, return_path);
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
136 }
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
137 #endif
717ed17d82c6 aci3 vocoder control revamped, AT@VSEL now works as it should
Mychaela Falconia <falcon@freecalypso.org>
parents: 597
diff changeset
138 currVocoderState = HL_VOCODER_DISABLED;
162
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
139 }
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
140
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
141 return;
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
142 }
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
143
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
144 /*
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
145 +-------------------------------------------------------------------+
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
146 | PROJECT : GSM-PS (6147) MODULE : HL_AUDIO_DRV |
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
147 | ROUTINE : hl_drv_get_vocoder_state |
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
148 +-------------------------------------------------------------------+
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
149
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
150 PURPOSE : This function returns the state of the vocoder
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
151 */
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
152
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
153 GLOBAL T_HL_VOCODER_STATE hl_drv_get_vocoder_state (void)
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
154 {
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
155 return currVocoderState;
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
156 }
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
157
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
158 #ifndef VOCODER_FUNC_INTERFACE
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
159 /*
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
160 +-------------------------------------------------------------------+
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
161 | PROJECT : GSM-PS (6147) MODULE : HL_AUDIO_DRV |
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
162 | ROUTINE : hl_drv_vocoder_enabled |
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
163 +-------------------------------------------------------------------+
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
164
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
165 PURPOSE : Currently this function does nothing
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
166 */
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
167
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
168 GLOBAL void hl_drv_vocoder_state_set (void)
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
169 {
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
170 TRACE_FUNCTION("hl_drv_vocoder_enabled()");
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
171
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
172 switch(currVocoderState)
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
173 {
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
174 case HL_VOCODER_ENABLE_INITIATED:
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
175 currVocoderState = HL_VOCODER_ENABLED;
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
176 break;
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
177
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
178 case HL_VOCODER_DISABLE_INITIATED:
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
179 currVocoderState = HL_VOCODER_DISABLED;
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
180 break;
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
181
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
182 default:
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
183 break;
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
184
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
185 }
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
186 }
53929b40109c src/g23m-aci: initial import from TCS3.2/LoCosto
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
187 #endif