FreeCalypso > hg > freecalypso-citrine
annotate g23m-gsm/mm/mm_em.c @ 18:a872b92dcd3c
tpudrv12.c: TPU_wait_idle() call removed to match TCS211
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Fri, 10 Jun 2016 06:42:21 +0000 | 
| parents | 75a11d740a02 | 
| children | 
| rev | line source | 
|---|---|
| 
0
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
1 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
2 +----------------------------------------------------------------------------- | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
3 | Project : | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
4 | Modul : | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
5 +----------------------------------------------------------------------------- | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
6 | Copyright 2002 Texas Instruments Berlin, AG | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
7 | All rights reserved. | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
8 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
9 | This file is confidential and a trade secret of Texas | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
10 | Instruments Berlin, AG | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
11 | The receipt of or possession of this file does not convey | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
12 | any rights to reproduce or disclose its contents or to | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
13 | manufacture, use, or sell anything it may describe, in | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
14 | whole, or in part, without the specific written consent of | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
15 | Texas Instruments Berlin, AG. | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
16 +----------------------------------------------------------------------------- | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
17 | Purpose : This Module defines the engineering mode (EM) device driver for | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
18 | the G23 protocol stack. This driver is used to control all | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
19 } engineering mode related functions. | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
20 +----------------------------------------------------------------------------- | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
21 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
22 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
23 #ifndef MM_EM_C | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
24 #define MM_EM_C | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
25 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
26 #include "config.h" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
27 #include "fixedconf.h" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
28 #include "condat-features.h" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
29 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
30 #define ENTITY_MM | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
31 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
32 /*==== INCLUDES ===================================================*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
33 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
34 #include <string.h> | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
35 #include <stdlib.h> | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
36 #include <stddef.h> | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
37 #include "typedefs.h" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
38 #include "pcm.h" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
39 #include "pconst.cdg" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
40 #include "mconst.cdg" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
41 #include "message.h" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
42 #include "ccdapi.h" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
43 #include "vsi.h" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
44 #include "custom.h" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
45 #include "gsm.h" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
46 #include "prim.h" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
47 #include "cnf_mm.h" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
48 #include "mon_mm.h" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
49 #include "pei.h" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
50 #include "tok.h" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
51 #include "mm.h" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
52 #include "mm_em.h" | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
53 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
54 /*==== EXPORT =====================================================*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
55 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
56 /*==== PRIVAT =====================================================*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
57 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
58 /*==== VARIABLES ==================================================*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
59 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
60 #ifdef FF_EM_MODE | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
61 GLOBAL UBYTE em_mm_event_buffer[EM_MM_BUFFER_SIZE]; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
62 GLOBAL UBYTE em_mm_buffer_write; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
63 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
64 /* Event tracing flags for EM */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
65 GLOBAL BOOL mm_v[EM_MAX_MM_EVENTS]; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
66 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
67 static UBYTE em_mm_trace_occured; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
68 #endif /* FF_EM_MODE */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
69 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
70 /*==== FUNCTIONS ==================================================*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
71 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
72 #ifdef FF_EM_MODE | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
73 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
74 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
75 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
76 | Function : em_write_buffer_2 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
77 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
78 | Description : Perform buffer check and store corresponding data in it. | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
79 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
80 | Parameters : Event number | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
81 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
82 | Return : TRUE/FALSE | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
83 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
84 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
85 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
86 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
87 GLOBAL UBYTE em_write_buffer_2 (UBYTE event_no) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
88 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
89 TRACE_FUNCTION ("mm_em_write_buffer_2()"); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
90 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
91 if (check_write_index(2)) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
92 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
93 em_mm_event_buffer[em_mm_buffer_write++] = event_no; /* Tag: Event number */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
94 em_mm_event_buffer[em_mm_buffer_write++] = 0; /* Length: 0 means no value */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
95 return FALSE; /* Data is stored inside buffer, reset flag */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
96 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
97 else | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
98 return TRUE; /* No more space inside buffer, serve flag next time */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
99 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
100 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
101 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
102 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
103 | Function : em_write_buffer_3 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
104 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
105 | Description : Perform buffer check and store corresponding data in it. | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
106 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
107 | Parameters : Event number, data value | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
108 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
109 | Return : TRUE/FALSE | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
110 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
111 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
112 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
113 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
114 GLOBAL UBYTE em_write_buffer_3 (UBYTE event_no, UBYTE value) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
115 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
116 TRACE_FUNCTION ("mm_em_write_buffer_3()"); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
117 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
118 if (check_write_index(3)) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
119 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
120 em_mm_event_buffer[em_mm_buffer_write++] = event_no; /* Tag: Event number */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
121 em_mm_event_buffer[em_mm_buffer_write++] = 1; /* Length: 0 means no value */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
122 em_mm_event_buffer[em_mm_buffer_write++] = value; /* Value: Data to be stored */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
123 return FALSE; /* Data is stored inside buffer, reset flag */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
124 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
125 else | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
126 return TRUE; /* No more space inside buffer, serve flag next time */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
127 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
128 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
129 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
130 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
131 | Function : em_write_buffer_3a | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
132 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
133 | Description : Perform buffer check and store corresponding data in it. | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
134 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
135 | Parameters : Event number, data value (USHORT) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
136 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
137 | Return : TRUE/FALSE | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
138 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
139 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
140 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
141 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
142 GLOBAL UBYTE em_write_buffer_3a (UBYTE event_no, USHORT value) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
143 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
144 TRACE_FUNCTION ("mm_em_write_buffer_3a()"); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
145 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
146 if (check_write_index(4)) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
147 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
148 em_mm_event_buffer[em_mm_buffer_write++] = event_no; /* Tag: Event number */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
149 em_mm_event_buffer[em_mm_buffer_write++] = 2; /* Length: 0 means no value */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
150 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
151 /* Value: Data to be stored. MSB first, LSB second */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
152 em_mm_event_buffer[em_mm_buffer_write++] = (UBYTE)(value >> 8); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
153 em_mm_event_buffer[em_mm_buffer_write++] = (UBYTE)(value); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
154 return FALSE; /* Data is stored inside buffer, reset flag */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
155 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
156 else | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
157 return TRUE; /* No more space inside buffer, serve flag next time */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
158 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
159 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
160 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
161 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
162 | Function : em_write_buffer_3b | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
163 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
164 | Description : Perform buffer check and store corresponding data in it. | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
165 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
166 | Parameters : Event number, data value (ULONG) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
167 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
168 | Return : TRUE/FALSE | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
169 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
170 | Pupose : Used for storing TMSI | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
171 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
172 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
173 #define RINGBUF_3B_LENGTH (2 + 4) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
174 GLOBAL UBYTE em_write_buffer_3b (UBYTE event_no, ULONG value) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
175 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
176 TRACE_FUNCTION ("mm_em_write_buffer_3b()"); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
177 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
178 if (check_write_index(RINGBUF_3B_LENGTH)) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
179 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
180 em_mm_event_buffer[em_mm_buffer_write++] = event_no; /* Tag: Event number */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
181 em_mm_event_buffer[em_mm_buffer_write++] = RINGBUF_3B_LENGTH-2; /* Length: 0 means no value */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
182 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
183 /* Value: Data to be stored. MSB first, LSB second */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
184 em_mm_event_buffer[em_mm_buffer_write++] = (UBYTE)(value>>24); /* MSB first */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
185 em_mm_event_buffer[em_mm_buffer_write++] = (UBYTE)(value>>16); /* new TMSI */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
186 em_mm_event_buffer[em_mm_buffer_write++] = (UBYTE)(value>> 8); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
187 em_mm_event_buffer[em_mm_buffer_write++] = (UBYTE)(value); /* LSB last */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
188 return FALSE; /* Data is stored inside buffer, reset flag */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
189 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
190 else | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
191 return TRUE; /* No more space inside buffer, serve flag next time */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
192 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
193 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
194 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
195 | Function : em_write_buffer_4 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
196 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
197 | Description : Perform buffer check and store corresponding data in it. | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
198 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
199 | Parameters : Event number, data value1, data plmn (T_plmn) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
200 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
201 | Return : TRUE/FALSE | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
202 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
203 | Pupose : Used for storing PLMN list | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
204 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
205 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
206 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
207 GLOBAL UBYTE em_write_buffer_4 (UBYTE event_no, UBYTE value1, T_plmn *plmn) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
208 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
209 UBYTE i; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
210 UBYTE n = 2; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
211 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
212 TRACE_FUNCTION ("mm_em_write_buffer_4()"); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
213 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
214 n += ((SIZE_MCC + SIZE_MNC) * value1); /*Compute exact size of data to be stored*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
215 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
216 if(check_write_index(n)) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
217 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
218 em_mm_event_buffer[em_mm_buffer_write++] = event_no; /* Tag: Event number */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
219 em_mm_event_buffer[em_mm_buffer_write++] = (n - 2); /* Length: 0 means no value */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
220 for (i = 0; i < value1; i++) /*stores MCC and MNC of every available PLMN*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
221 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
222 if(plmn[i].v_plmn) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
223 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
224 memcpy(&em_mm_event_buffer[em_mm_buffer_write], plmn[i].mcc, SIZE_MCC); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
225 em_mm_buffer_write += SIZE_MCC; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
226 memcpy(&em_mm_event_buffer[em_mm_buffer_write], plmn[i].mnc, SIZE_MNC); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
227 em_mm_buffer_write += SIZE_MNC; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
228 } /*valid*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
229 } /*for*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
230 return FALSE; /* Data is stored inside buffer, reset flag */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
231 }/* check write index*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
232 else | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
233 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
234 return TRUE; /* No more space inside buffer, serve flag next time */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
235 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
236 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
237 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
238 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
239 | Function : em_write_buffer_4a | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
240 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
241 | Description : Perform buffer check and store corresponding data in it. | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
242 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
243 | Parameters : Event number, data value1 (UBYTE), data value2 (USHORT) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
244 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
245 | Return : TRUE/FALSE | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
246 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
247 | Pupose : Used for storing Location Update Reject | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
248 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
249 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
250 #define RINGBUF_4A_LENGTH (2 + 1 + 2) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
251 GLOBAL UBYTE em_write_buffer_4a (UBYTE event_no, UBYTE value1, USHORT value2) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
252 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
253 TRACE_FUNCTION ("mm_em_write_buffer_4a()"); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
254 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
255 if (check_write_index(RINGBUF_4A_LENGTH)) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
256 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
257 em_mm_event_buffer[em_mm_buffer_write++] = event_no; /* Tag: Event number */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
258 em_mm_event_buffer[em_mm_buffer_write++] = RINGBUF_4A_LENGTH-2; /* Length: 0 means no value */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
259 em_mm_event_buffer[em_mm_buffer_write++] = value1; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
260 em_mm_event_buffer[em_mm_buffer_write++] = (UBYTE)(value2 >> 8); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
261 em_mm_event_buffer[em_mm_buffer_write++] = (UBYTE)(value2); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
262 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
263 return FALSE; /* Data is stored inside buffer, reset flag */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
264 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
265 }/* check write index*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
266 else | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
267 return TRUE; /* No more space inside buffer, serve flag next time */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
268 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
269 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
270 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
271 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
272 | Function : em_write_buffer_4b | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
273 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
274 | Description : Perform buffer check and store corresponding data in it. | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
275 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
276 | Parameters : Event number, data identity type (UBYTE), data value (UBYTE *) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
277 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
278 | Return : TRUE/FALSE | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
279 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
280 | Pupose : Used for storing IMEI, IMEISV, IMSI during Identity Request/Response | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
281 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
282 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
283 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
284 GLOBAL UBYTE em_write_buffer_4b (UBYTE event_no, UBYTE ident_type, UBYTE *value) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
285 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
286 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
287 UBYTE n; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
288 UBYTE digits; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
289 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
290 TRACE_FUNCTION ("mm_em_write_buffer_4b()"); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
291 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
292 switch (ident_type) /*Creating length of data to be stored*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
293 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
294 case ID_TYPE_IMEI: | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
295 digits = 14; /*length of IMEI */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
296 break; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
297 case ID_TYPE_IMSI: | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
298 case ID_TYPE_IMEISV: | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
299 digits = 16; /*length of IMSI / IMEISV */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
300 break; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
301 default: /* Illegal mobile identity - not possible because of calling function*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
302 break; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
303 } /*switch*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
304 n = 3 + digits; /* Tag + Length + Type + Digits */ /*lint !e644*/ /*for lint: Digits are | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
305 always initialized because of calling function*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
306 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
307 if (check_write_index(n)) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
308 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
309 em_mm_event_buffer[em_mm_buffer_write++] = event_no; /* Tag: Event number */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
310 em_mm_event_buffer[em_mm_buffer_write++] = (n - 2); /* Length: 0 means no value */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
311 em_mm_event_buffer[em_mm_buffer_write++] = ident_type; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
312 memcpy (&em_mm_event_buffer[em_mm_buffer_write], value, digits); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
313 em_mm_buffer_write += digits; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
314 return FALSE; /* Data is stored inside buffer, reset flag */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
315 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
316 }/* check write index*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
317 else | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
318 return TRUE; /* No more space inside buffer, serve flag next time */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
319 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
320 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
321 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
322 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
323 | Function : em_write_buffer_4c | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
324 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
325 | Description : Perform buffer check and store corresponding data in it. | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
326 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
327 | Parameters : Event number, data identity type (UBYTE), data value (ULONG) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
328 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
329 | Return : TRUE/FALSE | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
330 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
331 | Pupose : Used during Identity Request/Response for storing TMSI | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
332 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
333 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
334 #define RINGBUF_4C_LENGTH (2 + 1 + 4) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
335 GLOBAL UBYTE em_write_buffer_4c (UBYTE event_no, UBYTE ident_type, ULONG value) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
336 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
337 TRACE_FUNCTION ("mm_em_write_buffer_4c()"); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
338 if (check_write_index(RINGBUF_4C_LENGTH)) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
339 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
340 em_mm_event_buffer[em_mm_buffer_write++] = event_no; /* Tag: Event number */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
341 em_mm_event_buffer[em_mm_buffer_write++] = (RINGBUF_4C_LENGTH - 2); /* Length: 0 means no value */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
342 em_mm_event_buffer[em_mm_buffer_write++] = ident_type; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
343 em_mm_event_buffer[em_mm_buffer_write++] = (UBYTE)(value>>24); /* MSB first */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
344 em_mm_event_buffer[em_mm_buffer_write++] = (UBYTE)(value>>16); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
345 em_mm_event_buffer[em_mm_buffer_write++] = (UBYTE)(value>> 8); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
346 em_mm_event_buffer[em_mm_buffer_write++] = (UBYTE)(value); /* LSB last */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
347 return FALSE; /* Data is stored inside buffer, reset flag */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
348 }/* check write index*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
349 else | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
350 return TRUE; /* No more space inside buffer, serve flag next time */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
351 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
352 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
353 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
354 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
355 | Function : em_write_buffer_5a | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
356 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
357 | Description : Perform buffer check and store corresponding data in it. | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
358 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
359 | Parameters : Event number, data value (UBYTE), data mcc (UBYTE), data mnc (UBYTE) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
360 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
361 | Return : TRUE/FALSE | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
362 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
363 | Pupose : Used for storing Service Mode, MCC und MNC during registration | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
364 | Used for storing data during cell reselection | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
365 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
366 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
367 #define RINGBUF_5A_LENGTH (2 + 1 + SIZE_MCC + SIZE_MNC) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
368 GLOBAL UBYTE em_write_buffer_5a (UBYTE event_no, UBYTE value, UBYTE mcc[SIZE_MCC], UBYTE mnc[SIZE_MNC]) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
369 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
370 TRACE_FUNCTION ("mm_em_write_buffer_5a()"); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
371 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
372 if (check_write_index(RINGBUF_5A_LENGTH)) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
373 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
374 em_mm_event_buffer[em_mm_buffer_write++] = event_no; /* Tag: Event number */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
375 em_mm_event_buffer[em_mm_buffer_write++] = RINGBUF_5A_LENGTH-2; /* Length: 0 means no value */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
376 em_mm_event_buffer[em_mm_buffer_write++] = value; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
377 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
378 /*missing check for validy*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
379 memcpy(&em_mm_event_buffer[em_mm_buffer_write], mcc, SIZE_MCC); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
380 em_mm_buffer_write += SIZE_MCC; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
381 memcpy(&em_mm_event_buffer[em_mm_buffer_write], mnc, SIZE_MNC); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
382 em_mm_buffer_write += SIZE_MNC; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
383 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
384 return FALSE; /* Data is stored inside buffer, reset flag */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
385 }/* check write index*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
386 else | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
387 return TRUE; /* No more space inside buffer, serve flag next time */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
388 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
389 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
390 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
391 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
392 | Function : em_write_buffer_6 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
393 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
394 | Description : Perform buffer check and store corresponding data in it. | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
395 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
396 | Parameters : Event number, data location update type (UBYTE), data lai (T_loc_area_ident) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
397 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
398 | Return : TRUE/FALSE | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
399 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
400 | Pupose : Used for storing Location Update Type, MCC, MNC and LAC | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
401 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
402 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
403 #define RINGBUF_6_LENGTH (2 + 1 + SIZE_MCC + SIZE_MNC + 2) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
404 GLOBAL UBYTE em_write_buffer_6 (UBYTE event_no, UBYTE loc_upd_type, T_loc_area_ident lai) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
405 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
406 TRACE_FUNCTION ("mm_em_write_buffer_6()"); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
407 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
408 if (check_write_index(RINGBUF_6_LENGTH)) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
409 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
410 em_mm_event_buffer[em_mm_buffer_write++] = event_no; /* Tag: Event number */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
411 em_mm_event_buffer[em_mm_buffer_write++] = RINGBUF_6_LENGTH - 2; /* Length: 0 means no value */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
412 em_mm_event_buffer[em_mm_buffer_write++] = loc_upd_type; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
413 memcpy(&em_mm_event_buffer[em_mm_buffer_write], lai.mcc, SIZE_MCC); /*stores MCC*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
414 em_mm_buffer_write += SIZE_MCC; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
415 memcpy(&em_mm_event_buffer[em_mm_buffer_write], lai.mnc, SIZE_MNC); /*stores MNC*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
416 em_mm_buffer_write += SIZE_MNC; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
417 em_mm_event_buffer[em_mm_buffer_write++] = (UBYTE)(lai.lac >> 8); /*stores LAC*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
418 em_mm_event_buffer[em_mm_buffer_write++] = (UBYTE)(lai.lac); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
419 return FALSE; /* Data is stored inside buffer, reset flag */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
420 }/* check write index*/ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
421 else | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
422 return TRUE; /* No more space inside buffer, serve flag next time */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
423 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
424 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
425 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
426 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
427 | Function : check_write_index | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
428 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
429 | Description : Checks the write index inside the buffer. No reset when | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
430 | buffer is full. | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
431 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
432 | Parameters : Number of bytes to be stored in buffer | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
433 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
434 | Return : TRUE/FALSE | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
435 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
436 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
437 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
438 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
439 GLOBAL UBYTE check_write_index (UBYTE n) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
440 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
441 TRACE_FUNCTION ("mm_check_write_index()"); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
442 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
443 if (em_mm_buffer_write + n < EM_MM_BUFFER_SIZE) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
444 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
445 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
446 * ACI is informed about the first event trace, | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
447 * used for later data processing. | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
448 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
449 if (em_mm_trace_occured EQ 0) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
450 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
451 PALLOC(data, EM_DATA_IND); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
452 data->entity = EM_MM; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
453 PSENDX(MMI, data); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
454 em_mm_trace_occured++; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
455 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
456 return TRUE; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
457 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
458 else | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
459 return FALSE; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
460 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
461 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
462 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
463 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
464 | Function : mm_em_mm_event_req | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
465 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
466 | Description : Set the event tracing flags according the bitmask for dl | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
467 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
468 | Parameters : Primitive - Bitmask | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
469 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
470 | Return : | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
471 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
472 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
473 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
474 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
475 GLOBAL void mm_em_dl_event_req (T_EM_DL_EVENT_REQ *em_dl_event_req) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
476 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
477 TRACE_FUNCTION ("mm_em_dl_event_req()"); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
478 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
479 PSENDX(DL, em_dl_event_req); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
480 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
481 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
482 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
483 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
484 | Function : em_init_mm_event_trace | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
485 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
486 | Description : Initialize the event tracing flags for MM | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
487 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
488 | Parameters : void | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
489 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
490 | Return : void | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
491 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
492 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
493 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
494 GLOBAL void em_init_mm_event_trace(void) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
495 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
496 UBYTE i; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
497 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
498 TRACE_FUNCTION ("em_init_mm_event_trace()"); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
499 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
500 for (i = 0; i < EM_MAX_MM_EVENTS; i++) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
501 mm_v[i] = 0; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
502 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
503 em_mm_buffer_write = 0; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
504 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
505 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
506 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
507 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
508 | Function : mm_em_mm_event_req | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
509 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
510 | Description : Set the event tracing flags according the bitmask | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
511 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
512 | Parameters : Primitive - Bitmask | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
513 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
514 | Return : | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
515 | | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
516 +------------------------------------------------------------------------------ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
517 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
518 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
519 GLOBAL void mm_em_mm_event_req (T_EM_MM_EVENT_REQ *em_mm_event_req) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
520 { | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
521 UBYTE i; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
522 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
523 TRACE_FUNCTION ("mm_em_mm_event_req()"); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
524 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
525 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
526 * The event tracing flags are set according the bitmask. mm_v[i] are | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
527 * the flags belonging to the event number described in 8443.601 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
528 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
529 for(i = 1; i < EM_MAX_MM_EVENTS; i++) | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
530 mm_v[i] = ((em_mm_event_req->bitmask_mm & (0x01<<(i-1))) > 0) ? TRUE : FALSE; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
531 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
532 /* | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
533 * A new event trace is generated therefore the flag is reset. | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
534 */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
535 em_mm_trace_occured = 0; | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
536 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
537 PFREE(em_mm_event_req); | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
538 } | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
539 #endif /* FF_EM_MODE */ | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
540 | 
| 
 
75a11d740a02
initial import of gsm-fw from freecalypso-sw rev 1033:5ab737ac3ad7
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
541 #endif /* MM_EM_C */ | 
