comparison src/g23m-aci/aci/cmh_gmm.h @ 1:fa8dc04885d8

src/g23m-*: import from Magnetite
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 16 Oct 2020 06:25:50 +0000
parents
children
comparison
equal deleted inserted replaced
0:4e78acac3d88 1:fa8dc04885d8
1 /*
2 +-----------------------------------------------------------------------------
3 | Project :
4 | Modul :
5 +-----------------------------------------------------------------------------
6 | Copyright 2002 Texas Instruments Berlin, AG
7 | All rights reserved.
8 |
9 | This file is confidential and a trade secret of Texas
10 | Instruments Berlin, AG
11 | The receipt of or possession of this file does not convey
12 | any rights to reproduce or disclose its contents or to
13 | manufacture, use, or sell anything it may describe, in
14 | whole, or in part, without the specific written consent of
15 | Texas Instruments Berlin, AG.
16 +-----------------------------------------------------------------------------
17 | Purpose : Definitions for the protocol stack adapter
18 | GPRS Mobility Mangement ( GMM ).
19 +-----------------------------------------------------------------------------
20 */
21
22 #ifdef GPRS
23
24 #ifndef CMH_GMM_H
25 #define CMH_GMM_H
26
27 /*==== CONSTANTS ==================================================*/
28
29
30 /*==== TYPES ======================================================*/
31 typedef enum
32 {
33 GMMH_CMD_OK,
34 GMMH_CMD_AT_NOT_HANDLED
35
36 } T_GMMH_RETURN;
37
38 typedef enum
39 {
40 GMMU_AT_GPRS,
41 GMMU_AT_GSM
42
43 } T_GMM_USER;
44
45 typedef struct
46 {
47 T_PERCENT_CGCLASS current;
48 T_PERCENT_CGCLASS requested;
49
50 } T_GACI_MOBILE_CLASS;
51
52 /*==== PROTOTYPES =================================================*/
53 EXTERN void cmhGMM_Init ( void );
54 EXTERN void cmhGMM_Attached ( UBYTE attach_type, T_plmn *plmn, UBYTE search_running );
55 EXTERN void cmhGMM_NoAttach ( UBYTE detach_type, USHORT cause, UBYTE search_running );
56 EXTERN void cmhGMM_Detached ( UBYTE detach_type );
57 EXTERN void cmhGMM_NetDetach ( UBYTE detach_type, USHORT cause, UBYTE search_running );
58 EXTERN SHORT cmhGMM_Plmn ( void );
59 EXTERN SHORT cmhGMM_Suspend ( UBYTE cell_state );
60 EXTERN SHORT cmhGMM_Resume ( void );
61 EXTERN SHORT cmhGMM_Info ( void );
62 EXTERN SHORT cmhGMM_CipheringInd ( UBYTE gsm_ciph, UBYTE gprs_ciph );
63
64
65 EXTERN T_ATTACH_STATE cmhGMM_Get_state ( void );
66 EXTERN void cmhGMM_Set_state ( T_ATTACH_STATE state );
67 EXTERN T_ACI_RETURN cmhGMM_attach_if_necessary ( T_ACI_CMD_SRC srcId, T_ACI_AT_CMD curCmd );
68 EXTERN SHORT cmhGMM_inform_other_psa ( SHORT state );
69
70 EXTERN UBYTE cmhGMM_requested_attach_type ( T_GMM_USER usr, UBYTE m_class );
71 EXTERN UBYTE cmhGMM_translate_gmm_cause_to_nreg_cs ( USHORT cause );
72 EXTERN BOOL cmhGMM_isClassCG ( void );
73
74
75 EXTERN SHORT psaG_MM_CMD_REG ( void );
76 EXTERN SHORT psaG_MM_CMD_DEREG ( UBYTE detach_type );
77 EXTERN SHORT psaG_MM_CMD_NET_SRCH ( void );
78 EXTERN SHORT psaG_MM_CMD_NET_SEL ( void );
79 EXTERN SHORT psaG_MM_CMD_SET_REGMD ( UBYTE mode );
80
81 EXTERN SHORT gprs_sim_inserted ( void );
82 EXTERN BOOL cmhGMM_class_eq_CG ( void );
83 EXTERN T_ACI_RETURN cmhGMM_attach ( UBYTE mobile_class );
84
85 EXTERN void cmhGMM_send_percentNetworkRegistrationStatus( T_P_CGREG_STAT p_cgreg );
86 EXTERN void cmhGMM_send_NetworkRegistrationStatus( T_CGREG_STAT cgreg, T_P_CGREG_STAT p_cgreg );
87 EXTERN UBYTE cmhGMM_isPLMN_Home( void );
88 EXTERN UBYTE cmhGMM_isPLMN_Valid (void);
89 EXTERN void cmhGMM_setPLMN(T_plmn *plmn);
90
91
92 EXTERN void cmhGMM_allContextsDeactivated ( void );
93 EXTERN T_ACI_RETURN cmhGMM_contextActivation( T_ACI_CMD_SRC srcId, T_ACI_AT_CMD curCmd );
94
95 /*==== EXPORT =====================================================*/
96 #ifdef CMH_GMMF_C
97
98 GLOBAL T_ENT_STAT gmmEntStat;
99 GLOBAL T_GACI_MOBILE_CLASS gaciMobileClass;
100
101 #else
102
103 EXTERN T_ENT_STAT gmmEntStat;
104 EXTERN T_GACI_MOBILE_CLASS gaciMobileClass;
105
106 #endif /* CMH_GMMF_C */
107
108 #endif /* CMH_GMM_H */
109
110
111 #endif /* GPRS */
112 /*==== EOF =======================================================*/