FreeCalypso > hg > fc-magnetite
annotate src/g23m-gsm/l1/l1_pei.c @ 526:fbf0fabc5505
doc/Bootloader written
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Sat, 22 Sep 2018 05:59:38 +0000 | 
| parents | 49254db81128 | 
| children | 
| rev | line source | 
|---|---|
| 104 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 /* | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 +----------------------------------------------------------------------------- | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 | Project : | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 4 | Modul : | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 +----------------------------------------------------------------------------- | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 6 | Copyright 2002 Texas Instruments Berlin, AG | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 7 | All rights reserved. | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 8 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 9 | This file is confidential and a trade secret of Texas | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 10 | Instruments Berlin, AG | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 11 | The receipt of or possession of this file does not convey | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 12 | any rights to reproduce or disclose its contents or to | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 | manufacture, use, or sell anything it may describe, in | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 14 | whole, or in part, without the specific written consent of | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 | Texas Instruments Berlin, AG. | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 +----------------------------------------------------------------------------- | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 | Purpose : This module implements the process body interface | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 18 | for the entity L1. | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 +----------------------------------------------------------------------------- | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 21 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 22 #define L1_PEI_C | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 23 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 24 #define ENTITY_L1 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 25 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 26 #define CUST_OS_C | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 27 /*==== INCLUDES =============================================================*/ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 28 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 29 #if 1 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 30 #include <string.h> | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 31 #if defined (NEW_FRAME) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 32 #include "typedefs.h" /* to get Condat data types */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 33 #else | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 34 #include "stddefs.h" /* to get Condat data types */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 35 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 36 #include "vsi.h" /* to get a lot of macros */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 37 #include "custom.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 38 #ifdef GPRS | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 39 #include "macdef.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 40 #include "gprs.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 41 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 42 #include "gsm.h" /* to get a lot of macros */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 43 #include "prim.h" /* to get the definitions of used SAP and directions */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 44 #include "pei.h" /* to get PEI interface */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 45 #include "tools.h" /* to get common tools */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 46 #include "l1.h" /* to get the global entity definitions */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 47 #include "cust_os.h" /* to get cust_os definitions */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 48 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 49 #else /* 1 */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 50 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 51 #if defined NEW_FRAME | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 52 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 53 #include <string.h> | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 54 #include <stdio.h> | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 55 #include "typedefs.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 56 #include "pconst.cdg" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 57 #include "mconst.cdg" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 58 #include "message.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 59 #include "ccdapi.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 60 #include "vsi.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 61 #include "custom.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 62 #include "gsm.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 63 #include "prim.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 64 #include "cnf_l1.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 65 #include "mon_l1.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 66 #include "cus_l1.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 67 #include "pei.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 68 #include "tok.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 69 #include "l1.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 70 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 71 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 72 #else | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 73 #include <string.h> | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 74 #include <stdio.h> | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 75 #include "stddefs.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 76 #include "pconst.cdg" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 77 #include "mconst.cdg" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 78 #include "message.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 79 #include "ccdapi.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 80 #include "custom.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 81 #include "gsm.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 82 #include "prim.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 83 #include "cnf_l1.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 84 #include "mon_l1.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 85 #include "vsi.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 86 #include "pei.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 87 #include "tok.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 88 #include "l1.h" | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 89 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 90 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 91 #endif /* 1 */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 92 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 93 /*==== CONSTS ================================================================*/ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 94 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 95 /*==== TYPES =================================================================*/ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 96 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 97 typedef struct | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 98 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 99 char *version; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 100 } T_MONITOR; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 101 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 102 /*==== LOCALS ================================================================*/ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 103 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 104 static T_MONITOR l1_mon; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 105 static USHORT first_access = TRUE; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 106 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 107 /*==== PROTOTYPES ============================================================*/ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 108 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 109 SHORT pei_create (T_PEI_INFO **info); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 110 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 111 void l1_create_ISR (void); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 112 void l1a_task(unsigned arcg, void *argv); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 113 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 114 /*==== PRIVATE FUNCTIONS =====================================================*/ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 115 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 116 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 117 /* | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 118 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 119 | Function : pei_primitive | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 120 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 121 | Description : Process protocol specific primitive. | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 122 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 123 | Parameters : prim - pointer to the received primitive | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 124 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 125 | Return : PEI_OK - function succeeded | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 126 | PEI_ERROR - function failed | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 127 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 128 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 129 | | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 130 PL PPC(GPRS only) UPLINK | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 131 | | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 132 +------v-----------v-------+ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 133 | | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 134 | L1 ASYNC | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 135 | | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 136 +-------------^------------+ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 137 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 138 L1 SYNC DOWNLINK | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 139 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 140 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 141 */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 142 #if defined (NEW_FRAME) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 143 LOCAL SHORT pei_primitive (void * ptr) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 144 #else | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 145 EXPORT T_PEI_RETURN pei_primitive (T_PRIM * prim) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 146 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 147 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 148 #if defined (NEW_FRAME) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 149 T_PRIM *prim = (T_PRIM*)ptr; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 150 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 151 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 152 USHORT opc = prim->custom.opc; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 153 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 154 /* | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 155 * primitive is not a GSM primitive - forward it to the environment | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 156 */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 157 if (opc & SYS_MASK) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 158 vsi_c_primitive (VSI_CALLER prim); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 159 else | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 160 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 161 PFREE (P2D(prim)); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 162 return PEI_ERROR; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 163 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 164 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 165 return PEI_OK; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 166 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 167 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 168 /* | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 169 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 170 | Function : pei_init | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 171 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 172 | Description : Initialize Protocol Stack Entity | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 173 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 174 | Parameters : handle - task handle | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 175 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 176 | Return : PEI_OK - entity initialised | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 177 | PEI_ERROR - entity not (yet) initialised | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 178 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 179 */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 180 #if defined (NEW_FRAME) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 181 LOCAL SHORT pei_init ( T_HANDLE Handle ) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 182 #else | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 183 T_PEI_RETURN pei_init (void) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 184 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 185 { | 
| 110 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 186 extern int etm_is_running; /* FreeCalypso addition */ | 
| 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 187 | 
| 104 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 188 #if defined (NEW_FRAME) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 189 L1_Handle = Handle; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 190 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 191 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 192 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 193 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 194 #ifdef TI_PS_HCOMM_CHANGE | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 195 #ifdef NEW_FRAME | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 196 if ( first_access == TRUE ) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 197 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 198 first_access = FALSE; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 199 _osx_init(); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 200 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 201 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 202 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 203 if (!cl_hcom_all_handles_open()) return PEI_ERROR; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 204 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 205 #ifdef NEW_FRAME | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 206 _osx_open (VSI_CALLER L1_QUEUE, _hCommL1); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 207 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 208 _osx_open (VSI_CALLER DL_QUEUE, _hCommPL); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 209 _osx_open (VSI_CALLER RR_QUEUE, _hCommPL); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 210 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 211 _osx_open (VSI_CALLER GPF_ACI_QUEUE, _hCommMMI); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 212 #else | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 213 #ifdef NEW_FRAME | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 214 if ( first_access == TRUE ) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 215 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 216 first_access = FALSE; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 217 _osx_init(); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 218 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 219 /* | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 220 * Associate own "queue" handle (a task handle in the end) with L1_QUEUE, | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 221 * in order to be able to receive primitives. | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 222 */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 223 if (hCommL1 < VSI_OK) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 224 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 225 if ((hCommL1 = vsi_c_open (VSI_CALLER L1_NAME)) < VSI_OK) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 226 return PEI_ERROR; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 227 _osx_open (VSI_CALLER L1_QUEUE, hCommL1); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 228 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 229 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 230 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 231 if (hCommPL < VSI_OK) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 232 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 233 if ((hCommPL = vsi_c_open (VSI_CALLER PL_NAME)) < VSI_OK) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 234 return PEI_ERROR; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 235 _osx_open (VSI_CALLER DL_QUEUE, hCommPL); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 236 _osx_open (VSI_CALLER RR_QUEUE, hCommPL); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 237 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 238 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 239 if (hCommACI < VSI_OK) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 240 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 241 if ((hCommACI = vsi_c_open (VSI_CALLER ACI_NAME)) < VSI_OK) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 242 return PEI_ERROR; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 243 _osx_open (VSI_CALLER GPF_ACI_QUEUE, hCommACI); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 244 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 245 #endif /* TI_PS_HCOMM_CHANGE */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 246 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 247 #ifdef GPRS | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 248 if (hCommGRR < VSI_OK) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 249 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 250 if ((hCommGRR = vsi_c_open (VSI_CALLER GRR_NAME)) < VSI_OK) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 251 return PEI_ERROR; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 252 _osx_open (VSI_CALLER GRR_QUEUE, hCommGRR); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 253 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 254 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 255 if (hCommLLC < VSI_OK) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 256 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 257 if ((hCommLLC = vsi_c_open (VSI_CALLER LLC_NAME)) < VSI_OK) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 258 return PEI_ERROR; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 259 _osx_open (VSI_CALLER LLC_QUEUE, hCommLLC); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 260 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 261 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 262 if (hCommSNDCP < VSI_OK) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 263 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 264 if ((hCommSNDCP = vsi_c_open (VSI_CALLER SNDCP_NAME)) < VSI_OK) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 265 return PEI_ERROR; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 266 _osx_open (VSI_CALLER SNDCP_QUEUE, hCommSNDCP); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 267 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 268 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 269 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 270 /* | 
| 110 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 271 * FreeCalypso addition: TI's original code contains a boot time | 
| 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 272 * race condition: if the L1A task starts running before ETM over | 
| 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 273 * in RiViera land has initialized itself, the etm_register() call | 
| 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 274 * at the beginning of l1a_task() that registers L1TM causes a | 
| 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 275 * boot time crash. It appears that this race condition has always | 
| 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 276 * been there, but it has been unmasked when we made a port of R2D | 
| 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 277 * to the Motorola C139 LCD. | 
| 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 278 * | 
| 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 279 * Our solution: we hold off on L1 GPF task startup until ETM | 
| 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 280 * has been initialized, just like we hold off until the message | 
| 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 281 * queues L1 needs to send to have been created. | 
| 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 282 */ | 
| 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 283 if (!etm_is_running) | 
| 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 284 return PEI_ERROR; | 
| 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 285 | 
| 
49254db81128
implemented fix for the L1/ETM boot time race condition bug
 Mychaela Falconia <falcon@freecalypso.org> parents: 
107diff
changeset | 286 /* | 
| 104 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 287 * Register VSI_CALLER as generic caller entity. | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 288 */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 289 _osx_open (VSI_CALLER 0, 0); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 290 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 291 l1_create_ISR (); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 292 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 293 return PEI_OK; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 294 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 295 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 296 /* | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 297 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 298 | Function : pei_timeout | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 299 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 300 | Description : Process timeout. | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 301 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 302 | Parameters : index - timer index | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 303 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 304 | Return : PEI_OK - timeout processed | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 305 | PEI_ERROR - timeout not processed | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 306 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 307 */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 308 #if !defined (NEW_FRAME) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 309 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 310 T_PEI_RETURN l1_pei_timeout (T_VSI_THANDLE handle) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 311 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 312 TRACE_FUNCTION ("pei_timeout()") | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 313 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 314 return PEI_OK; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 315 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 316 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 317 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 318 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 319 /* | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 320 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 321 | Function : pei_exit | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 322 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 323 | Description : Close Resources and terminate. | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 324 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 325 | Parameters : - | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 326 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 327 | Return : PEI_OK - exit sucessful | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 328 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 329 */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 330 #if defined (NEW_FRAME) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 331 LOCAL SHORT pei_exit (void) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 332 #else | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 333 T_PEI_RETURN l1_pei_exit (void) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 334 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 335 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 336 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 337 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 338 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 339 #ifdef TI_PS_HCOMM_CHANGE | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 340 #else | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 341 vsi_c_close (VSI_CALLER hCommPL); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 342 hCommPL = VSI_ERROR; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 343 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 344 return PEI_OK; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 345 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 346 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 347 /* | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 348 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 349 | Function : pei_run | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 350 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 351 | Description : Process Primitives, main loop is located in the | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 352 | Protocol Stack Entity. | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 353 | Only needed in active body variant | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 354 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 355 | Parameters : taskhandle - handle of current process | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 356 | comhandle - queue handle of current process | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 357 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 358 | Return : PEI_OK - sucessful | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 359 | PEI_ERROR - not successful | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 360 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 361 */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 362 #if defined (NEW_FRAME) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 363 LOCAL SHORT pei_run ( T_HANDLE taskhandle, T_HANDLE comhandle ) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 364 #else | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 365 T_PEI_RETURN l1_pei_run (T_VSI_CHANDLE comhandle) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 366 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 367 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 368 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 369 #ifdef TI_PS_HCOMM_CHANGE | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 370 #else | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 371 hCommL1 = comhandle; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 372 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 373 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 374 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 375 l1a_task (0, NULL); | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 376 return PEI_OK; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 377 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 378 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 379 /* | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 380 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 381 | Function : pei_config | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 382 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 383 | Description : Dynamic Configuration. | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 384 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 385 | Parameters : in_string - configuration string | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 386 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 387 | Return : PEI_OK - sucessful | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 388 | PEI_ERROR - not successful | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 389 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 390 */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 391 LOCAL SHORT pei_config (T_PEI_CONFIG inString) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 392 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 393 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 394 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 395 if ( _osx_config ( inString ) == OSX_OK ) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 396 return PEI_OK; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 397 else | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 398 return PEI_ERROR; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 399 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 400 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 401 /* | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 402 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 403 | Function : pei_monitor | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 404 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 405 | Description : Monitoring of physical Parameters. | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 406 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 407 | Parameters : out_monitor - return the address of the data to be monitored | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 408 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 409 | Return : PEI_OK - sucessful (address in out_monitor is valid) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 410 | PEI_ERROR - not successful | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 411 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 412 */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 413 #if defined (NEW_FRAME) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 414 LOCAL SHORT pei_monitor (void ** monitor) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 415 #else | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 416 T_PEI_RETURN l1_pei_monitor (void ** monitor) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 417 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 418 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 419 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 420 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 421 l1_mon.version = "ALR 2.0.0"; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 422 *monitor = &l1_mon; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 423 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 424 return PEI_OK; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 425 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 426 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 427 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 428 /*==== PUBLIC FUNCTIONS =====================================================*/ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 429 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 430 /* | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 431 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 432 | Function : pei_create | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 433 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 434 | Description : Create the Protocol Stack Entity. | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 435 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 436 | Parameters : info - Pointer to the structure of entity parameters | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 437 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 438 | Return : PEI_OK - entity created successfully | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 439 | | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 440 +------------------------------------------------------------------------------ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 441 */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 442 #if defined (NEW_FRAME) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 443 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 444 GLOBAL SHORT l1_pei_create ( T_PEI_INFO **info ) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 445 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 446 static T_PEI_INFO pei_info = | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 447 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 448 "L1", | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 449 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 450 pei_init, | 
| 107 
267cefdca4b6
src/g23m-gsm/l1/l1_pei.c: tweaked to match TCS211 binary object
 Mychaela Falconia <falcon@freecalypso.org> parents: 
104diff
changeset | 451 #if 1 //#ifdef _SIMULATION_ // FreeCalypso: match TCS211 | 
| 104 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 452 pei_exit, | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 453 #else | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 454 NULL, | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 455 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 456 NULL, /* no primitive function */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 457 NULL, /* no timeout function */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 458 NULL, /* no signal function */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 459 pei_run, | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 460 pei_config, | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 461 pei_monitor, | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 462 }, | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 463 #if defined (GPRS) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 464 2800, /* Stack Size */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 465 #else | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 466 #if defined (FAX_AND_DATA) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 467 2800, /* Stack Size */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 468 #else | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 469 1805, /* Stacksize */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 470 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 471 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 472 10, /* Queue Entries */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 473 235, /* Priority */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 474 0, /* number of timer */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 475 #ifdef GPRS | 
| 107 
267cefdca4b6
src/g23m-gsm/l1/l1_pei.c: tweaked to match TCS211 binary object
 Mychaela Falconia <falcon@freecalypso.org> parents: 
104diff
changeset | 476 COPY_BY_REF|TRC_NO_SUSPEND|PRIM_NO_SUSPEND | INT_DATA_TASK /* flags */ | 
| 104 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 477 #else | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 478 COPY_BY_REF|TRC_NO_SUSPEND|PRIM_NO_SUSPEND /* flags */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 479 #endif | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 480 }; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 481 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 482 /* | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 483 * export startup configuration data | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 484 */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 485 *info = &pei_info; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 486 /* | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 487 * Initialize entity data | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 488 */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 489 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 490 return PEI_OK; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 491 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 492 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 493 #else /* NEW_FRAME */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 494 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 495 T_PEI_RETURN pei_create (T_VSI_CNAME * name) | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 496 { | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 497 TRACE_FUNCTION ("pei_create()") | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 498 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 499 *name = L1_NAME; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 500 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 501 return PEI_OK; | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 502 } | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 503 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 504 #endif /* NEW_FRAME */ | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 505 | 
| 
27a4235405c6
src/g23m-gsm: import from LoCosto source
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 506 /*==== END OF FILE ==========================================================*/ | 
