FreeCalypso > hg > fc-magnetite
annotate src/g23m-aci/aci/hl_audio_drv.c @ 639:026c98f757a6
tpudrv12.h & targets/gtm900.h: our current support is for MGC2GSMT version only
As it turns out, there exist two different Huawei-made hw platforms both
bearing the marketing name GTM900-B: one is MG01GSMT, the other is MGC2GSMT.
The two are NOT fw-compatible: aside from flash chip differences which
should be handled by autodetection, the two hw platforms are already known
to have different RFFEs with different control signals, and there may be
other differences not yet known. Our current gtm900 build target is for
MGC2GSMT only; we do not yet have a specimen of MG01GSMT on hand, hence
no support for that version will be possible until and unless someone
provides one.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Thu, 30 Jan 2020 18:19:01 +0000 |
parents | 597869e59805 |
children |
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 |
631
597869e59805
config: introduced new CONFIG_MCSI_MODEM preprocessor symbol
Mychaela Falconia <falcon@freecalypso.org>
parents:
602
diff
changeset
|
41 #ifdef CONFIG_MCSI_MODEM |
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 |
631
597869e59805
config: introduced new CONFIG_MCSI_MODEM preprocessor symbol
Mychaela Falconia <falcon@freecalypso.org>
parents:
602
diff
changeset
|
72 #ifdef CONFIG_MCSI_MODEM |
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 { |
631
597869e59805
config: introduced new CONFIG_MCSI_MODEM preprocessor symbol
Mychaela Falconia <falcon@freecalypso.org>
parents:
602
diff
changeset
|
92 #ifdef CONFIG_MCSI_MODEM |
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 */ |
631
597869e59805
config: introduced new CONFIG_MCSI_MODEM preprocessor symbol
Mychaela Falconia <falcon@freecalypso.org>
parents:
602
diff
changeset
|
109 #ifdef CONFIG_MCSI_MODEM |
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 */ |
631
597869e59805
config: introduced new CONFIG_MCSI_MODEM preprocessor symbol
Mychaela Falconia <falcon@freecalypso.org>
parents:
602
diff
changeset
|
127 #ifdef CONFIG_MCSI_MODEM |
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 |