FreeCalypso > hg > fc-magnetite
annotate src/aci2/aci/dcm_handle_message.c @ 701:35e7f9d0379f
targets: add TARGET_HAS_BUZZER to c11x, c139 and dsample
This new target config preprocessor symbol was introduced in Tourmaline
in connection with the new approach to playing buzzer melodies via PWT,
properly omitting the responsible code on targets where BU output
controls the vibrator instead. That code is not present in Magnetite
and we have no plans to backport it here, but target header files
should be kept consistent between the two trees, especially given
that we plan to support FC Venus target in Magnetite.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sat, 26 Mar 2022 19:51:34 +0000 |
parents | 93999a60b835 |
children |
rev | line source |
---|---|
3
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /* |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 +----------------------------------------------------------------------------- |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 | Project : GSM-F&D (8411) |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 | Modul : ACI |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 +----------------------------------------------------------------------------- |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 | Copyright 2002 Texas Instruments Berlin, AG |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 | All rights reserved. |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 | |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 | This file is confidential and a trade secret of Texas |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 | Instruments Berlin, AG |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 | The receipt of or possession of this file does not convey |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 | any rights to reproduce or disclose its contents or to |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 | manufacture, use, or sell anything it may describe, in |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 | whole, or in part, without the specific written consent of |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 | Texas Instruments Berlin, AG. |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 +----------------------------------------------------------------------------- |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 | Description : DCM handle_msg function, which is called when DCM |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 | receives a new message by application or rAT_function. |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 +----------------------------------------------------------------------------- |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 */ |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 /*********************************** INCLUDES ********************************************/ |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 #include "aci_all.h" |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 #include "dcm.h" |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 #include "dcm_utils.h" |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 #include "dcm_state.h" |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 #include "dcm_env.h" |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 /**************************** LOCAL VARIABLE DEFINITION ***********************************/ |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 /**************************** EXTERN VARIABLE DEFINITION **********************************/ |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 extern T_DCM_ENV_CTRL_BLK *dcm_env_ctrl_blk_p; |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 /**************************** LOCAL FUCNTION DEFINITION ***********************************/ |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 /************************** EXTERN FUCNTION DEFINITION ************************************/ |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 /****************************************************************************************** |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 * Function : dcm_handle_message |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 * Description : Called every time DCM is in WAITING state or |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 * When receiving message from Application or rAT_function |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 * Parameter : T_DCM_HDR |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 * -Pointer on the header of the message. |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 * Return : T_DCM_RET DCM |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 * -DCM Result : DCM_OK, DCM_NOT_READY. |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 * History : 0001 03/09/17 CJH Created |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 ********************************************************************************************/ |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 T_DCM_RET dcm_handle_message(T_DCM_HDR *msg_p) |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 { |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 T_DCM_GET_CURRENT_CONN_REQ_MSG *current_conn_info; |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 TRACE_FUNCTION("DCM: dcm_handle_message()"); |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 dcm_display_message(msg_p->msg_id); |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 dcm_dispay_state((U8)dcm_env_ctrl_blk_p->state[0], |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55 (U8)dcm_env_ctrl_blk_p->substate[0]); |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57 if (msg_p != NULL) |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58 { |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 /* get current conn req is always received regardless of current state..*/ |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60 if(msg_p->msg_id == DCM_GET_CURRENT_CONN_REQ_MSG) |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
61 { |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
62 TRACE_EVENT("DCM: DCM_GET_CURRENT_CONN_REQ_MSG"); |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
63 current_conn_info = (T_DCM_GET_CURRENT_CONN_REQ_MSG*)msg_p; |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
64 dcm_process_get_current_conn_event(current_conn_info); |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
65 return DCM_OK; |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
66 } |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
67 switch (dcm_env_ctrl_blk_p->state[0]) |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
68 { |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
69 case DCM_IDLE: |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70 TRACE_EVENT("DCM: DCM_IDLE") ; |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71 /* there is no current action */ |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72 return dcm_idle(msg_p); |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 case DCM_ACTIVATING_CONN: |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
75 TRACE_EVENT("DCM: DCM_ACTIVATING_CONN") ; |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
76 /* An IP User have asked the opening of a connection */ |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 return dcm_activating_conn(msg_p); |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78 |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79 case DCM_CONN_ACTIVATED: |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
80 TRACE_EVENT("DCM: DCM_CONN_ACTIVATED") ; |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
81 /* At leat, on connection is active */ |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
82 return dcm_conn_activated(msg_p); |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
83 |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
84 case DCM_CLOSING_CONN: |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
85 TRACE_EVENT("DCM: DCM_CLOSING_CONN") ; |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
86 /* An IP User have asked the closing of a connection */ |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
87 return dcm_closing_conn(msg_p); |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
88 |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
89 default: |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
90 TRACE_EVENT("DCM: unknown state") ; |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
91 return DCM_NOT_READY; |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
92 } |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
93 } |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
94 else |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
95 { |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
96 TRACE_ERROR("DCM: NULL message") ; |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
97 return DCM_INVALID_PARAMETER; |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
98 } |
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
99 } |