comparison src/g23m-gprs/upm/upm_sndcp_control.h @ 1:d393cd9bb723

src/g23m-*: initial import from Magnetite
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 15 Jul 2018 04:40:46 +0000
parents
children
comparison
equal deleted inserted replaced
0:b6a5e36de839 1:d393cd9bb723
1 /*----------------------------------------------------------------------------
2 | Project : 3G PS
3 | Module : UPM
4 +-----------------------------------------------------------------------------
5 | Copyright 2003 Texas Instruments.
6 | All rights reserved.
7 |
8 | This file is confidential and a trade secret of Texas
9 | Instruments .
10 | The receipt of or possession of this file does not convey
11 | any rights to reproduce or disclose its contents or to
12 | manufacture, use, or sell anything it may describe, in
13 | whole, or in part, without the specific written consent of
14 | Texas Instruments.
15 +-----------------------------------------------------------------------------
16 | Purpose: SNDCP Control state machine definitions in the UPM entity.
17 | For design details, see:
18 | 8010.939 UPM Detailed Specification
19 +---------------------------------------------------------------------------*/
20
21 /*==== DECLARATION CONTROL =================================================*/
22
23 #ifndef _UPM_SNDCP_CONTROL_H
24 #define _UPM_SNDCP_CONTROL_H
25
26 /*==== INCLUDES =============================================================*/
27
28 #include "upm.h"
29
30 /*==== CONSTS ===============================================================*/
31
32 /*==== TYPES ================================================================*/
33 typedef enum
34 {
35 /* Incoming primitives */
36 UPM_P_SN_ACTIVATE_CNF,
37 UPM_P_SN_DEACTIVATE_CNF,
38 UPM_P_SN_MODIFY_CNF,
39 UPM_P_SN_STATUS_IND,
40 UPM_P_MMPM_SEQUENCE_IND,
41 /* Events from Link Control */
42 UPM_I_SNDCP_AWAIT_ESTABLISH,
43 UPM_I_SNDCP_ESTABLISH_LLC_LINK,
44 UPM_I_SNDCP_MODIFY_LLC_LINK,
45 UPM_I_SNDCP_RELEASE_LLC_LINK,
46 /* Number of events */
47 UPM_SNDCP_CONTROL_NUMBER_OF_EVENTS
48 } T_UPM_SNDCP_CONTROL_EVENT;
49
50 typedef enum
51 {
52 UPM_SNDCP_INACTIVE,
53 UPM_SNDCP_AWAIT_ACTIVATE,
54 UPM_SNDCP_ACTIVATING,
55 UPM_SNDCP_ACTIVE,
56 UPM_SNDCP_MODIFYING,
57 UPM_SNDCP_DEACTIVATING,
58 UPM_SNDCP_CONTROL_NUMBER_OF_STATES
59 } T_UPM_SNDCP_CONTROL_STATE;
60
61 /*==== EXPORTS ==============================================================*/
62 extern void upm_sndcp_control_init(struct T_CONTEXT_DATA *ptr_context_data);
63
64 extern void upm_sndcp_control_exit(struct T_CONTEXT_DATA *ptr_context_data);
65
66 extern void upm_sndcp_control(struct T_CONTEXT_DATA *ptr_context_data,
67 T_UPM_SNDCP_CONTROL_EVENT event,
68 /*@null@*/ void *data);
69
70 extern void upm_sndcp_dispatch_sn_count_cnf (T_SN_COUNT_CNF *);
71 extern void upm_sndcp_dispatch_sn_status_ind (T_SN_STATUS_IND *);
72 extern void upm_sndcp_dispatch_sn_sequence_cnf (T_SN_SEQUENCE_CNF *);
73
74 extern void upm_sndcp_dispatch_mmpm_sequence_ind (T_MMPM_SEQUENCE_IND *);
75
76 extern void upm_sndcp_dispatch_upm_count_req (T_UPM_COUNT_REQ *);
77 #endif /* _UPM_SNDCP_CONTROL_H */
78 /*==== END OF FILE ==========================================================*/