FreeCalypso > hg > fc-magnetite
annotate src/g23m-aci/aci/psa_gmmf.c @ 477:f65a4399093d
hybrid config: re-enabled obscure AT commands which require TI_PS_FF_* flags
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Thu, 14 Jun 2018 03:04:53 +0000 | 
| parents | 53929b40109c | 
| children | 
| rev | line source | 
|---|---|
| 162 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 +----------------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 | Project : | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 4 | Modul : | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 +----------------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 6 | Copyright 2002 Texas Instruments Berlin, AG | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 7 | All rights reserved. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 8 | | 
| 
53929b40109c
src/g23m-aci: 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 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 10 | Instruments Berlin, AG | 
| 
53929b40109c
src/g23m-aci: 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 | 
| 
53929b40109c
src/g23m-aci: 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 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 | manufacture, use, or sell anything it may describe, in | 
| 
53929b40109c
src/g23m-aci: 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 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 | Texas Instruments Berlin, AG. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 +----------------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 | Purpose : This module defines the functions for the protocol | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 18 | stack adapter for the registration part of mobility | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 | management ( GMM ). | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 +----------------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 21 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 22 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 23 #if defined (GPRS) && defined (DTI) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 24 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 25 #ifndef PSA_GMMF_C | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 26 #define PSA_GMMF_C | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 27 #endif | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 28 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 29 #include "aci_all.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 30 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 31 #undef TRACING | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 32 /*==== INCLUDES ===================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 33 #include "aci_cmh.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 34 #include "ati_cmd.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 35 #include "aci_cmd.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 36 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 37 #include "dti.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 38 #include "dti_conn_mng.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 39 #include "dti_cntrl_mng.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 40 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 41 #include "gaci_cmh.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 42 #include "gaci.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 43 #include "aci.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 44 #include "psa.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 45 #include "psa_gmm.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 46 #include "cmh.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 47 #include "cmh_gmm.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 48 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 49 /*==== CONSTANTS ==================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 50 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 51 /*==== TYPES ======================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 52 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 53 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 54 /*==== EXPORT =====================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 55 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 56 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 57 /*==== VARIABLES ==================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 58 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 59 /*==== FUNCTIONS ==================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 60 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 61 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 62 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 63 +-------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 64 | PROJECT : GPRS (8441) MODULE : PSA_GMMF | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 65 | ROUTINE : psaGMM_Init | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 66 +-------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 67 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 68 PURPOSE : initialize the protocol stack adapter for GMM. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 69 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 70 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 71 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 72 /* MACRO: initializer for set parameter */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 73 #ifdef INIT_SET_PARM | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 74 #undef INIT_SET_PARM | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 75 #endif | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 76 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 77 #define INIT_SET_PARM( dest, def )\ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 78 for( LpCnt = 0; LpCnt < OWN_SRC_MAX; LpCnt++ )\ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 79 gmmShrdPrm.setPrm[LpCnt].dest = def | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 80 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 81 GLOBAL void psaGMM_Init ( UBYTE auto_attach, UBYTE auto_detach, UBYTE mobile_class ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 82 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 83 UBYTE LpCnt; /* holds loop counter for macro */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 84 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 85 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 86 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 87 * set default parms | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 88 *------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 89 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 90 default_mobile_class = mobile_class; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 91 gmmShrdPrm.mobile_class = default_mobile_class; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 92 gmmShrdPrm.requested_mobile_class = gmmShrdPrm.mobile_class; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 93 gmmShrdPrm.last_attach_type = ATTACH_TYPE_DETACHED; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 94 gmmShrdPrm.current_attach_type = ATTACH_TYPE_DETACHED; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 95 gmmShrdPrm.requested_attach_type = ATTACH_TYPE_DETACHED; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 96 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 97 automatic_attach_mode = (T_CGAATT_ATTACH_MODE)auto_attach; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 98 automatic_detach_mode = (T_CGAATT_DETACH_MODE)auto_detach; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 99 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 100 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 101 * GlumPs | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 102 * ANS 15-Mar-00 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 103 * GMM knows that SIM is not inserted | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 104 * gmmShrdPrm.service_mode = SERVICE_MODE_LIMITED; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 105 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 106 gmmShrdPrm.service_mode = SERVICE_MODE_FULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 107 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 108 for (LpCnt = 0; LpCnt < MAX_PLMN_ID; LpCnt++) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 109 gmmShrdPrm.gprs_status[LpCnt] = GMMREG_GSM_ONLY; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 110 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 111 gmmShrdPrm.gprs_indicator = P_CREG_GPRS_Support_Unknown; /* ACI-SPR-24473 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 112 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 113 gmmShrdPrm.cgreg_stat = CGREG_STAT_NOT_REG; /* +CGREG status */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 114 gmmShrdPrm.p_cgreg_stat = P_CGREG_STAT_NOT_REG; /* %CGREG status */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 115 gmmShrdPrm.lac = NOT_PRESENT_16BIT; /* current cell coordinates */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 116 gmmShrdPrm.cid = NOT_PRESENT_16BIT; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 117 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 118 switch(gmmShrdPrm.mobile_class) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 119 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 120 case GMMREG_CLASS_A : | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 121 gaciMobileClass.current = PERCENT_CGCLASS_A; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 122 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 123 case GMMREG_CLASS_B : | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 124 gaciMobileClass.current = PERCENT_CGCLASS_B; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 125 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 126 case GMMREG_CLASS_BC : | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 127 gaciMobileClass.current = PERCENT_CGCLASS_BC; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 128 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 129 case GMMREG_CLASS_BG : | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 130 gaciMobileClass.current = PERCENT_CGCLASS_BG; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 131 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 132 case GMMREG_CLASS_CC : | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 133 gaciMobileClass.current = PERCENT_CGCLASS_CC; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 134 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 135 case GMMREG_CLASS_CG : | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 136 gaciMobileClass.current = PERCENT_CGCLASS_CG; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 137 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 138 default: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 139 gaciMobileClass.current = PERCENT_CGCLASS_MAX; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 140 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 141 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 142 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 143 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 144 #ifdef GMM_PRIMITIVE_TRACES_ADVANCED | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 145 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 146 char* dbg_attachType(UBYTE attach_type) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 147 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 148 char* type[3] ={"GPRS", "IMSI", "COMB"}; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 149 return type[attach_type - 1]; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 150 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 151 char* dbg_detachType(UBYTE detach_type) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 152 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 153 char* type[8] ={"GPRS", "IMSI", "COMB", | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 154 "SIM_REM", "POWER_OFF", "DISABLE_GPRS", | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 155 "LIM_SERV", "SOFT_OFF"}; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 156 return type[detach_type - 1]; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 157 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 158 char* dbg_mobileClass(UBYTE mobile_class) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 159 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 160 char* running[6] ={"A", "B", "BC", | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 161 "BG", "CC", "CG"}; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 162 return running[mobile_class - 1]; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 163 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 164 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 165 char* dbg_searchRunning(UBYTE search_running) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 166 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 167 char* running[2] ={"NOT_RUN", "SEARCH_RUN"}; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 168 return running[search_running]; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 169 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 170 char* dbg_cellState(UBYTE cell_state) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 171 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 172 char* state[8] ={"FULL_SERV", "LIM_SERV", "CS_CALL", | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 173 "GPRS_NOT_SUP", "TRY_TO_UPD"}; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 174 return state[cell_state]; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 175 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 176 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 177 #endif /* GMM_PRIMITIVE_TRACES_ADVANCED */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 178 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 179 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 180 +-----------------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 181 | PROJECT : GSM-PS (6147) MODULE : PSA_GMMF | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 182 | ROUTINE : is_GMM_searching_stoped | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 183 +-----------------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 184 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 185 PURPOSE : Answer the Question: "Is the automatic searching from GMM stoped?" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 186 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 187 LOCAL BOOL is_GMM_searching_stoped (USHORT cause) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 188 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 189 switch ( cause ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 190 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 191 case MMCS_IMSI_IN_HLR: /* Network cause #2 via MM */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 192 /* GMMCS_IMSI_UNKNOWN: */ /* Via GMM, this doesn't stop GPRS */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 193 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 194 case MMCS_ILLEGAL_MS: /* Network cause #3 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 195 case GMMCS_ILLEGAL_MS: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 196 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 197 case MMCS_ILLEGAL_ME: /* Network cause #2 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 198 case GMMCS_ILLEGAL_ME: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 199 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 200 /* No MMCS_GPRS_NOT_ALLOWED */ /* Doesn't exist in MM protocol */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 201 case GMMCS_GPRS_NOT_ALLOWED: /* Network cause #7 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 202 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 203 /* No MMCS_GSM_GPRS_NOT_ALLOWED */ /* Doesn't exist in MM protocol */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 204 case GMMCS_GSM_GPRS_NOT_ALLOWED: /* Network cause #8 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 205 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 206 case MMCS_SIM_REMOVED: /* SIM has been removed/disabled */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 207 case GMMCS_SIM_REMOVED: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 208 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 209 case MMCS_AUTHENTICATION_REJECTED: /* AUTHENTICATION REJECT received */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 210 case GMMCS_AUTHENTICATION_REJECTED: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 211 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 212 /* No MMCS_POWER_OFF */ /* Swiched off */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 213 case GMMCS_POWER_OFF: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 214 return(TRUE); /* yes, it is stoped */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 215 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 216 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 217 return(FALSE); /* no, it isn't stoped */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 218 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 219 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 220 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 221 typedef enum | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 222 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 223 NRS_NOT_REGISTERED, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 224 NRS_SEARCHING, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 225 NRS_REGISTERED | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 226 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 227 } T_NETWORK_REGISTRATION_STATUS; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 228 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 229 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 230 +-----------------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 231 | PROJECT : GSM-PS (6147) MODULE : PSA_GMMF | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 232 | ROUTINE : is_GMM_searching_stoped | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 233 +-----------------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 234 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 235 PURPOSE : Answer the Question: "Is the automatic searching from GMM stoped?" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 236 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 237 LOCAL T_NETWORK_REGISTRATION_STATUS | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 238 GMM_detached ( T_NETWORK_REGISTRATION_STATUS stat, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 239 BOOL suspended, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 240 UBYTE detach_type, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 241 USHORT cause, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 242 ULONG caller ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 243 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 244 if ( detach_type NEQ GMMREG_DT_IMSI ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 245 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 246 /* special causes stops in every state the GMM searching*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 247 if ( is_GMM_searching_stoped(cause) ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 248 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 249 if( stat NEQ NRS_NOT_REGISTERED ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 250 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 251 if ( caller EQ GMMREG_ATTACH_REJ AND | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 252 ( gmmShrdPrm.last_attach_type EQ GMMREG_AT_IMSI OR | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 253 gmmShrdPrm.last_attach_type EQ ATTACH_TYPE_DETACHED ) ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 254 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 255 cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_REG_DEN, P_CGREG_STAT_REG_DEN ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 256 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 257 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 258 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 259 cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_NOT_REG, P_CGREG_STAT_NOT_REG ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 260 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 261 return NRS_NOT_REGISTERED; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 262 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 263 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 264 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 265 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 266 if ( ( stat EQ NRS_REGISTERED AND !suspended ) OR /* in this state always */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 267 ( stat EQ NRS_REGISTERED AND suspended ) AND /* in this state only with special detach_type */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 268 ( detach_type EQ GMMREG_DT_LIMITED_SERVICE OR | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 269 detach_type EQ GMMREG_DT_SIM_REMOVED ) ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 270 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 271 cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_SEARCHING, P_CGREG_STAT_SEARCHING ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 272 return NRS_SEARCHING; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 273 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 274 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 275 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 276 else /* detach_type EQ GMMREG_DT_IMSI -> attach_type EQ GPRS*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 277 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 278 if( stat NEQ NRS_REGISTERED ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 279 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 280 if ( cmhGMM_isPLMN_Home()) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 281 { cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_REG_HOME, P_CGREG_STAT_REG_HOME ); } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 282 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 283 { cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_REG_ROAM, P_CGREG_STAT_REG_ROAM ); } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 284 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 285 return NRS_REGISTERED; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 286 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 287 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 288 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 289 return stat; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 290 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 291 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 292 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 293 +-----------------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 294 | PROJECT : GSM-PS (6147) MODULE : PSA_GMMF | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 295 | ROUTINE : psaGMM_NetworkRegistrationStatus | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 296 +-----------------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 297 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 298 PURPOSE : this function reported the network registration status for GPRS | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 299 (+CGREG, %CGREG). | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 300 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 301 GLOBAL void psaGMM_NetworkRegistrationStatus ( ULONG prim, void* para) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 302 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 303 T_NETWORK_REGISTRATION_STATUS tmp_stat; /* only temporary in use*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 304 static T_NETWORK_REGISTRATION_STATUS stat = NRS_NOT_REGISTERED; /* current GPRS NRS */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 305 static BOOL suspended = FALSE; /* is GPRS suspended */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 306 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 307 TRACE_FUNCTION ("psaGMM_NetworkRegistrationStatus()"); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 308 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 309 switch ( prim ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 310 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 311 case SMREG_PDP_ACTIVATE_REQ: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 312 if ( stat EQ NRS_NOT_REGISTERED ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 313 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 314 stat = NRS_SEARCHING; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 315 cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_SEARCHING, P_CGREG_STAT_SEARCHING ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 316 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 317 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 318 case GMMREG_ATTACH_REQ: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 319 if ( stat EQ NRS_NOT_REGISTERED AND | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 320 ((T_GMMREG_ATTACH_REQ*)para)->attach_type NEQ GMMREG_AT_IMSI ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 321 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 322 stat = NRS_SEARCHING; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 323 cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_SEARCHING, P_CGREG_STAT_SEARCHING ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 324 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 325 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 326 case GMMREG_ATTACH_CNF: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 327 if ((stat EQ NRS_NOT_REGISTERED OR stat EQ NRS_SEARCHING) AND !suspended AND | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 328 ((T_GMMREG_ATTACH_CNF*)para)->attach_type NEQ GMMREG_AT_IMSI ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 329 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 330 stat = NRS_REGISTERED; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 331 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 332 if ( cmhGMM_isPLMN_Home()) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 333 { cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_REG_HOME, P_CGREG_STAT_REG_HOME ); } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 334 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 335 { cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_REG_ROAM, P_CGREG_STAT_REG_ROAM ); } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 336 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 337 else if ( (stat EQ NRS_REGISTERED) AND suspended AND | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 338 ((T_GMMREG_ATTACH_CNF*)para)->attach_type NEQ GMMREG_AT_IMSI AND | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 339 ((T_GMMREG_ATTACH_CNF*)para)->search_running EQ GMMREG_SEARCH_NOT_RUNNING ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 340 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 341 if(((T_GMMREG_ATTACH_CNF*)para)->gprs_indicator NEQ GMM_GPRS_SUPP_YES) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 342 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 343 cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_NOT_REG, P_CGREG_STAT_NOT_REG ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 344 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 345 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 346 suspended = FALSE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 347 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 348 if ( cmhGMM_isPLMN_Home()) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 349 { cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_REG_HOME, P_CGREG_STAT_REG_HOME ); } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 350 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 351 { cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_REG_ROAM, P_CGREG_STAT_REG_ROAM ); } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 352 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 353 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 354 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 355 { /* answer to ATTACH_REQ->attach_type=IMSI */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 356 if ( stat NEQ NRS_NOT_REGISTERED AND | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 357 ((T_GMMREG_ATTACH_CNF*)para)->search_running EQ GMMREG_SEARCH_NOT_RUNNING AND | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 358 ((T_GMMREG_ATTACH_CNF*)para)->attach_type EQ GMMREG_AT_IMSI ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 359 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 360 stat = NRS_NOT_REGISTERED; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 361 suspended = FALSE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 362 cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_NOT_REG, P_CGREG_STAT_NOT_REG ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 363 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 364 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 365 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 366 case GMMREG_ATTACH_REJ: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 367 tmp_stat = GMM_detached(stat, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 368 suspended, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 369 ((T_GMMREG_ATTACH_REJ*)para)->detach_type, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 370 ((T_GMMREG_ATTACH_REJ*)para)->cause, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 371 GMMREG_ATTACH_REJ ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 372 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 373 if( stat NEQ tmp_stat ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 374 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 375 stat = tmp_stat; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 376 suspended = FALSE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 377 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 378 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 379 case GMMREG_DETACH_CNF: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 380 if ( stat NEQ NRS_NOT_REGISTERED AND | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 381 ((T_GMMREG_DETACH_CNF*)para)->detach_type NEQ GMMREG_DT_IMSI ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 382 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 383 stat = NRS_NOT_REGISTERED; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 384 suspended = FALSE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 385 cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_NOT_REG, P_CGREG_STAT_NOT_REG ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 386 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 387 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 388 case GMMREG_DETACH_IND: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 389 tmp_stat = GMM_detached(stat, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 390 suspended, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 391 ((T_GMMREG_DETACH_IND*)para)->detach_type, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 392 ((T_GMMREG_DETACH_IND*)para)->cause, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 393 GMMREG_DETACH_IND ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 394 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 395 if( stat NEQ tmp_stat ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 396 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 397 stat = tmp_stat; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 398 suspended = FALSE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 399 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 400 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 401 case GMMREG_SUSPEND_IND: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 402 if ( ( stat EQ NRS_REGISTERED AND !suspended ) OR stat EQ NRS_SEARCHING) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 403 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 404 suspended = TRUE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 405 switch ( ((T_GMMREG_SUSPEND_IND*)para)->cell_state ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 406 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 407 case GMMREG_FULL_SERVICE: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 408 /* nobody knows why we are not resumed */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 409 suspended = FALSE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 410 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 411 case GMMREG_LIMITED_SERVICE: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 412 cmhGMM_Set_state(AS_DETACHED); // pinghua DCM_OPEN_CLOSE patch 20080429 start | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 413 gmmShrdPrm.current_attach_type = ATTACH_TYPE_DETACHED; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 414 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 415 cmhGMM_send_percentNetworkRegistrationStatus( P_CGREG_STAT_LIMITED ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 416 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 417 case GMMREG_CS_CALL: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 418 cmhGMM_send_percentNetworkRegistrationStatus( P_CGREG_STAT_GSM_CALL ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 419 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 420 case GMMREG_GPRS_NOT_SUPPORTED: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 421 cmhGMM_Set_state(AS_DETACHED); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 422 gmmShrdPrm.current_attach_type = ATTACH_TYPE_DETACHED; //// pinghua DCM_OPEN_CLOSE patch 20080429 end | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 423 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 424 cmhGMM_send_percentNetworkRegistrationStatus( P_CGREG_STAT_NO_CELL ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 425 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 426 case GMMREG_TRY_TO_UPDATE: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 427 cmhGMM_send_percentNetworkRegistrationStatus( P_CGREG_STAT_TRY_TO_UPDATE ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 428 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 429 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 430 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 431 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 432 case GMMREG_RESUME_IND: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 433 if ( suspended ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 434 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 435 suspended = FALSE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 436 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 437 if ( stat NEQ NRS_REGISTERED ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 438 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 439 if ( cmhGMM_isPLMN_Home()) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 440 { cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_REG_HOME, P_CGREG_STAT_REG_HOME ); } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 441 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 442 { cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_REG_ROAM, P_CGREG_STAT_REG_ROAM ); } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 443 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 444 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 445 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 446 if ( cmhGMM_isPLMN_Home()) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 447 { cmhGMM_send_percentNetworkRegistrationStatus( P_CGREG_STAT_REG_HOME ); } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 448 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 449 { cmhGMM_send_percentNetworkRegistrationStatus( P_CGREG_STAT_REG_ROAM ); } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 450 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 451 stat = NRS_REGISTERED; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 452 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 453 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 454 case GMMREG_AHPLMN_IND: /* Enhancement for ActingHPLMN*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 455 if(cmhGMM_isPLMN_Valid()) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 456 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 457 if(cmhGMM_isPLMN_Home()) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 458 { cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_REG_HOME, P_CGREG_STAT_REG_HOME); } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 459 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 460 { cmhGMM_send_NetworkRegistrationStatus( CGREG_STAT_REG_ROAM, P_CGREG_STAT_REG_ROAM ); } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 461 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 462 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 463 case GMMREG_DETACH_REQ: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 464 case GMMREG_NET_REQ: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 465 case GMMREG_PLMN_IND: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 466 case GMMREG_PLMN_RES: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 467 case GMMREG_PLMN_MODE_REQ: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 468 case GMMREG_INFO_IND: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 469 case GMMREG_CONFIG_REQ: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 470 case GMMREG_CIPHERING_IND: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 471 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 472 default: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 473 TRACE_EVENT_P1("UNSUPPORTED PRIMITIVE: %d", prim); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 474 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 475 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 476 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 477 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 478 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 479 #if 0 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 480 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 481 +-------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 482 | PROJECT : GSM-PS (6147) MODULE : PSA_GMMF | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 483 | ROUTINE : psaGMM_shrPrmDump | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 484 +-------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 485 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 486 PURPOSE : this function dumps the shared parameter to the debug | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 487 output. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 488 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 489 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 490 GLOBAL void psaGMM_shrPrmDump ( void ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 491 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 492 #ifdef TRACING | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 493 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 494 char lnBuf [80]; /* holds buffer for output line */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 495 char mccBuf[SIZE_MCC + 1]; /* MCC converted to printable C-string */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 496 char mncBuf[SIZE_MNC + 1]; /* MNC converted to printable C-string */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 497 SHORT chrNr; /* holds number of processed chars */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 498 SHORT cnt; /* holds a counter */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 499 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 500 /* --- PLMN list ------------------------------------------------*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 501 for( cnt = 0; cnt<MAX_PLMN_ID AND | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 502 mmShrdPrm.PLMNLst[cnt].v_plmn NEQ INVLD_PLMN; cnt++ ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 503 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 504 chrNr = sprintf( lnBuf, "%*.*s[%2d]", HDR_WDT, HDR_WDT, " PLMN list",cnt ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 505 utl_BCD2String (mccBuf, mmShrdPrm.PLMNLst[cnt].mcc, SIZE_MCC); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 506 utl_BCD2String (mncBuf, mmShrdPrm.PLMNLst[cnt].mnc, SIZE_MNC); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 507 chrNr += sprintf( lnBuf+chrNr, "%*s %*s", | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 508 ITM_WDT/2, ITM_WDT/2, mccBuf, mncBuf); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 509 TRACE_EVENT( lnBuf ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 510 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 511 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 512 /* --- used PLMN ------------------------------------------------*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 513 chrNr = sprintf( lnBuf, "%*.*s", HDR_WDT, HDR_WDT, " used PLMN" ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 514 if( mmShrdPrm.usedPLMN.v_plmn EQ VLD_PLMN ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 515 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 516 utl_BCD2String (mccBuf, mmShrdPrm.usedPLMN.mcc, SIZE_MCC); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 517 utl_BCD2String (mncBuf, mmShrdPrm.usedPLMN.mnc, SIZE_MNC); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 518 chrNr += sprintf( lnBuf+chrNr, "%*s %*s", | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 519 ITM_WDT/2, ITM_WDT/2, mccBuf, mncBuf); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 520 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 521 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 522 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 523 chrNr += sprintf( lnBuf+chrNr, "%*s", ITM_WDT, "none" ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 524 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 525 TRACE_EVENT( lnBuf ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 526 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 527 /* --- registration mode ----------------------------------------*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 528 chrNr = sprintf( lnBuf, "%*.*s", HDR_WDT, HDR_WDT, "rgstr mode" ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 529 chrNr += sprintf( lnBuf+chrNr, "%*hd", ITM_WDT, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 530 mmShrdPrm.setPrm[0].regMode ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 531 TRACE_EVENT( lnBuf ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 532 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 533 /* --- registration status --------------------------------------*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 534 chrNr = sprintf( lnBuf, "%*.*s", HDR_WDT, HDR_WDT, "rgstr stat" ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 535 chrNr += sprintf( lnBuf+chrNr, "%*hd", ITM_WDT, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 536 mmShrdPrm.regStat ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 537 TRACE_EVENT( lnBuf ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 538 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 539 /* --- search result --------------------------------------------*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 540 chrNr = sprintf( lnBuf, "%*.*s", HDR_WDT, HDR_WDT, " srch rslt" ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 541 chrNr += sprintf( lnBuf+chrNr, "%*hd", ITM_WDT, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 542 mmShrdPrm.srchRslt ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 543 TRACE_EVENT( lnBuf ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 544 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 545 /* --- de-registration cause ------------------------------------*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 546 chrNr = sprintf( lnBuf, "%*.*s", HDR_WDT, HDR_WDT, "dereg caus" ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 547 chrNr += sprintf( lnBuf+chrNr, "%*X", ITM_WDT, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 548 mmShrdPrm.deregCs ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 549 TRACE_EVENT( lnBuf ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 550 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 551 #endif /* of #ifdef TRACING */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 552 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 553 #endif /* #if 0 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 554 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 555 #endif /* GPRS */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 556 /*==== EOF ========================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 557 | 
