FreeCalypso > hg > fc-magnetite
annotate src/g23m-gprs/grr/grr_psip.c @ 351:353514087133
components/config_gsm_{fl,ir}: created
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Sun, 24 Dec 2017 23:43:51 +0000 | 
| parents | 219afcfc6250 | 
| children | 
| rev | line source | 
|---|---|
| 183 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 /* | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 +----------------------------------------------------------------------------- | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 | Project : GPRS (8441) | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 4 | Modul : GRR | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 +----------------------------------------------------------------------------- | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 6 | Copyright 2002 Texas Instruments Berlin, AG | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 7 | All rights reserved. | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 8 | | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 9 | This file is confidential and a trade secret of Texas | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 10 | Instruments Berlin, AG | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 11 | The receipt of or possession of this file does not convey | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 12 | any rights to reproduce or disclose its contents or to | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 | manufacture, use, or sell anything it may describe, in | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 14 | whole, or in part, without the specific written consent of | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 | Texas Instruments Berlin, AG. | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 +----------------------------------------------------------------------------- | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 | Purpose : This module implements primitive handler functions for service | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 18 | PSI of entity GRR. | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 +----------------------------------------------------------------------------- | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 21 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 22 #ifndef GRR_PSIP_C | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 23 #define GRR_PSIP_C | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 24 #endif | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 25 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 26 #define ENTITY_GRR | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 27 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 28 /*==== INCLUDES =============================================================*/ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 29 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 30 #include "typedefs.h" /* to get Condat data types */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 31 #include <string.h> | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 32 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 33 #include "vsi.h" /* to get a lot of macros */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 34 #include "macdef.h" | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 35 #include "gprs.h" | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 36 #include "gsm.h" /* to get a lot of macros */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 37 #include "ccdapi.h" /* to get CCD API */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 38 #include "cnf_grr.h" /* to get cnf-definitions */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 39 #include "mon_grr.h" /* to get mon-definitions */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 40 #include "prim.h" /* to get the definitions of used SAP and directions */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 41 #include "message.h" | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 42 #include "grr.h" /* to get the global entity definitions */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 43 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 44 #include "grr_f.h" /* */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 45 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 46 #include "grr_psip.h" /* header file of primitives*/ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 47 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 48 #include "grr_psif.h" /* header file of functions*/ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 49 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 50 #include "grr_meass.h" /* signals exchanged between PSI and MEAS*/ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 51 #include "grr_ctrls.h" /* header file of functions*/ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 52 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 53 /*==== CONST ================================================================*/ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 54 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 55 /*==== LOCAL VARS ===========================================================*/ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 56 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 57 /*==== PRIVATE FUNCTIONS ====================================================*/ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 58 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 59 /*==== PUBLIC FUNCTIONS =====================================================*/ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 60 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 61 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 62 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 63 /* | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 64 +------------------------------------------------------------------------------ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 65 | Function : psi_t_60_sec | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 66 +------------------------------------------------------------------------------ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 67 | Description : Handles the primitive T_60_SEC | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 68 | | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 69 | Parameters : void | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 70 | | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 71 +------------------------------------------------------------------------------ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 72 */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 73 GLOBAL void psi_t_60_sec ( void ) | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 74 { | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 75 TRACE_FUNCTION( "t_60_sec" ); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 76 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 77 #ifndef _TARGET_ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 78 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 79 /* | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 80 * No PSI1 or PSI13 or SI13 received within 60 sec | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 81 * This will result in a cell reselection | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 82 */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 83 TRACE_EVENT( "No PSI1 or PSI13 or SI13 received within 60 sec" ); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 84 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 85 sig_psi_ctrl_psi1or_psi13_receiption_failure(); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 86 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 87 #else /* #ifndef _TARGET_ */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 88 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 89 TRACE_EVENT( "Processing timeout of T_60_SEC disabled on target" ); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 90 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 91 #endif /* #ifndef _TARGET_ */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 92 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 93 } /* psi_t_60_sec() */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 94 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 95 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 96 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 97 /* | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 98 +------------------------------------------------------------------------------ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 99 | Function : psi_t_30_sec | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 100 +------------------------------------------------------------------------------ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 101 | Description : Handles the primitive T_30_SEC | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 102 | | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 103 | Parameters : void | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 104 | | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 105 +------------------------------------------------------------------------------ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 106 */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 107 GLOBAL void psi_t_30_sec ( void) | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 108 { | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 109 TRACE_FUNCTION( "t_30_sec" ); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 110 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 111 /*#ifndef _TARGET_*/ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 112 /* | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 113 * No PSI1 received within 30 sec | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 114 */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 115 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 116 switch( GET_STATE( PSI ) ) | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 117 { | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 118 case PSI_TRANSFER: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 119 if(grr_data->test_mode NEQ CGRLC_NO_TEST_MODE) | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 120 { | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 121 psi_start_30sec(); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 122 TRACE_EVENT( "T_30_SEC received during test mode" ); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 123 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 124 } | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 125 /*lint -fallthrough*/ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 126 case PSI_IDLE: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 127 /* | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 128 If the mobile station has not received the PSI1 message within the last 30 seconds, | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 129 it shall attempt to receive the PSI1 message each time it is scheduled on PBCCH. | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 130 Such attempts shall be made during both packet idle and packet transfer modes. | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 131 */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 132 switch(psc_db->acq_type) | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 133 { | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 134 case NONE: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 135 psc_db->acq_type = PERIODICAL_PSI1_READING; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 136 psi_receive_psi(READ_PSI1_IN_PSI1_REPEAT_PERIODS); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 137 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 138 default: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 139 /* | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 140 * Access to the network not allowed or complete PSI | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 141 * has not been read. Nothing to do. Acquisition is running | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 142 */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 143 TRACE_EVENT("PSI not complete/ access not allowed"); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 144 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 145 } | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 146 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 147 case PSI_BCCH_TRANSFER: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 148 if(grr_data->test_mode NEQ CGRLC_NO_TEST_MODE) | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 149 { | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 150 psi_start_30sec(); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 151 TRACE_EVENT( "T_30_SEC received during test mode" ); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 152 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 153 } | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 154 /*lint -fallthrough*/ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 155 case PSI_BCCH_IDLE: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 156 /* | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 157 If the mobile station has received neither the SI13 nor the PSI13 message within | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 158 the last 30 seconds, it shall attempt to receive the SI13 message each time it is | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 159 scheduled on BCCH. Such attempts shall be made during both packet idle and packet | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 160 transfer modes. | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 161 */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 162 switch(psc_db->acq_type) | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 163 { | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 164 case NONE: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 165 psc_db->acq_type = PERIODICAL_SI13_READING; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 166 sig_psi_ctrl_read_si( UPDATE_SI13 ); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 167 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 168 default: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 169 /* | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 170 * Access to the network not allowed or complete SI | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 171 * has not been read. Nothing to do. Acquisition is running | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 172 */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 173 TRACE_EVENT("SI not complete/ access not allowed"); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 174 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 175 } | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 176 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 177 default: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 178 TRACE_ERROR( "T_30_SEC unexpected" ); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 179 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 180 } | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 181 /*#endif*/ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 182 } /* psi_t_30_sec() */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 183 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 184 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 185 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 186 /* | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 187 +------------------------------------------------------------------------------ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 188 | Function : psi_t_10_sec | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 189 +------------------------------------------------------------------------------ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 190 | Description : Handles the primitive T_10_SEC | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 191 | | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 192 | Parameters : void | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 193 | | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 194 +------------------------------------------------------------------------------ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 195 */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 196 GLOBAL void psi_t_10_sec ( void ) | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 197 { | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 198 TRACE_FUNCTION( "t_10_sec" ); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 199 /* | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 200 * partial or complete acq has not completed within 10 seconds | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 201 */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 202 /*#ifndef _TARGET_*/ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 203 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 204 if( grr_t_status( T3174 ) > 0 ) | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 205 { | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 206 TRACE_EVENT( "psi_t_10_sec expired when t3174 is running" ); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 207 return; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 208 } | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 209 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 210 switch( GET_STATE( PSI ) ) | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 211 { | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 212 case PSI_IDLE: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 213 case PSI_TRANSFER: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 214 psi_stop_10sec(); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 215 /* If the mobile station has not received the required messages within 10 seconds | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 216 * after the start of the acquisition procedure, an attempt to receive a missing message | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 217 * shall be made each time the message is scheduled on the broadcast channel. | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 218 * This case should not happen -except the network goes down. Reason: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 219 * in case of partial or complete acquisition we read all required (P)SI messages | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 220 * each time the message is scheduled on the broadcast channel. Our reading process | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 221 * continues until the 60 second expires or we receive the required messages. | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 222 * If the 60 second timer expires we should perform a cell selection | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 223 */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 224 psi_update_data_to_request(INIT_NOT_NEEDED ); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 225 switch(psc_db->acq_type) | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 226 { | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 227 case COMPLETE: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 228 psi_complete_acq(COMPLETE); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 229 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 230 case PARTIAL: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 231 psi_partial_acq(); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 232 psc_db->send_psi_status = TRUE; /* this parameters has meaning if the network supports PSI STATUS */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 233 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 234 default: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 235 TRACE_ERROR("Unknown acq_type in T_10_sec (PBCCH)"); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 236 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 237 } | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 238 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 239 case PSI_BCCH_IDLE: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 240 case PSI_BCCH_TRANSFER: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 241 psi_stop_10sec(); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 242 /* Please see comment above */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 243 switch(psc_db->acq_type) | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 244 { | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 245 case COMPLETE: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 246 sig_psi_ctrl_read_si(COMPLETE_SI); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 247 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 248 case PARTIAL: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 249 sig_psi_ctrl_read_si(psc_db->si_to_acquire); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 250 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 251 default: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 252 TRACE_ERROR("Unknown acq_type in T_10_sec (BCCH)"); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 253 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 254 } | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 255 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 256 default: | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 257 TRACE_ERROR( "T_10_SEC unexpected" ); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 258 break; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 259 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 260 } | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 261 /*#endif*/ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 262 } /* psi_t_10_sec() */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 263 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 264 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 265 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 266 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 267 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 268 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 269 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 270 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 271 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 272 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 273 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 274 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 275 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 276 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 277 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 278 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 279 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 280 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 281 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 282 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 283 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 284 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 285 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 286 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 287 /* | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 288 +------------------------------------------------------------------------------ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 289 | Function : psi_complete_psi_read_failed | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 290 +------------------------------------------------------------------------------ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 291 | Description : Handles the primitive PSI_COMPLETE_PSI_READ_FAILED | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 292 | | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 293 | Parameters : void | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 294 | | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 295 +------------------------------------------------------------------------------ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 296 */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 297 GLOBAL void psi_complete_psi_read_failed ( void ) | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 298 { | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 299 TRACE_FUNCTION( "psi_complete_psi_read_failed" ); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 300 /* | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 301 * reading of complete PSI within 10 sec failed | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 302 * Stop PBCCH reading if running, | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 303 * Inform CTRL, cell reselection should be performed | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 304 */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 305 TRACE_EVENT("reading of complete PSI within 10 sec failed"); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 306 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 307 if( grr_t_status( T3174 ) > 0 ) | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 308 { | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 309 TRACE_EVENT( "psi_complete_psi expired when t3174 is running" ); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 310 return; | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 311 } | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 312 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 313 SET_STATE( PSI, PSI_NULL ); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 314 if(psc_db->acq_type NEQ NONE) /* acquisition has been running, so we have to stop this acq.*/ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 315 { | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 316 TRACE_EVENT("psi_stop_psi_reading"); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 317 psi_stop_psi_reading(NONE); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 318 } | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 319 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 320 psi_stop_timer(); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 321 psi_reset_all(); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 322 /* | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 323 * Perform CR | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 324 */ | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 325 sig_psi_ctrl_psi1or_psi13_receiption_failure(); | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 326 | 
| 
219afcfc6250
src/g23m-gprs: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 327 } /* psi_complete_psi_read_failed() */ | 
