FreeCalypso > hg > fc-magnetite
annotate src/g23m-fad/ra/ra_rlp.c @ 586:64fba3fc09c6
scripts/config-c1xx.sh: helper script added
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Mon, 11 Mar 2019 02:13:04 +0000 | 
| parents | 90eb61ecd093 | 
| children | 
| rev | line source | 
|---|---|
| 174 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 +----------------------------------------------------------------------------- | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 | Project : GSM-F&D (8411) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 4 | Modul : RA_RLP | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 +----------------------------------------------------------------------------- | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 6 | Copyright 2002 Texas Instruments Berlin, AG | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 7 | All rights reserved. | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 8 | | 
| 
90eb61ecd093
src/g23m-fad: 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 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 10 | Instruments Berlin, AG | 
| 
90eb61ecd093
src/g23m-fad: 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 | 
| 
90eb61ecd093
src/g23m-fad: 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 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 | manufacture, use, or sell anything it may describe, in | 
| 
90eb61ecd093
src/g23m-fad: 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 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 | Texas Instruments Berlin, AG. | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 +----------------------------------------------------------------------------- | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 | Purpose : This Modul defines the functions for the non-transparent | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 18 | data model (RLP) for the component RA of the mobile | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 | station | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 +----------------------------------------------------------------------------- | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 21 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 22 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 23 #ifndef RA_RLP_C | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 24 #define RA_RLP_C | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 25 #endif | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 26 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 27 #define ENTITY_RA | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 28 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 29 /*==== INCLUDES ===================================================*/ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 30 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 31 #include <string.h> | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 32 #include "typedefs.h" | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 33 #include "vsi.h" | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 34 #include "macdef.h" | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 35 #include "pconst.cdg" | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 36 #include "custom.h" | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 37 #include "gsm.h" | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 38 #include "cnf_ra.h" | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 39 #include "prim.h" | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 40 #include "pei.h" | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 41 #include "tok.h" | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 42 #include "ccdapi.h" | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 43 #include "ra.h" | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 44 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 45 /*==== CONST ======================================================*/ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 46 /*==== TYPES ======================================================*/ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 47 /*==== VARIABLES ==================================================*/ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 48 /*==== FUNCTIONS ==================================================*/ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 49 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 50 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 51 +--------------------------------------------------------------------+ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 52 | PROJECT : GSM-F&D (8411) MODULE : RA_RLP | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 53 | STATE : code ROUTINE : rlp_init | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 54 +--------------------------------------------------------------------+ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 55 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 56 PURPOSE : | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 57 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 58 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 59 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 60 GLOBAL void rlp_init(void) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 61 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 62 TRACE_FUNCTION("rlp_init()"); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 63 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 64 memset(ra_data->rlp, 0, sizeof(T_RLP)); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 65 hCommRLP = vsi_c_open ( VSI_CALLER RLP_NAME ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 66 hCommMMI = vsi_c_open ( VSI_CALLER ACI_NAME ); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 67 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 68 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 69 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 70 +--------------------------------------------------------------------+ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 71 | PROJECT : GSM-F&D (8411) MODULE : RA_RLP | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 72 | STATE : code ROUTINE : rlp_idle | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 73 +--------------------------------------------------------------------+ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 74 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 75 PURPOSE : IDLE processing fpr uplink and downlink non-transparent mode | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 76 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 77 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 78 GLOBAL void rlp_idle(void) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 79 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 80 TRACE_FUNCTION("rlp_idle()"); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 81 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 82 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 83 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 84 +--------------------------------------------------------------------+ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 85 | PROJECT : GSM-F&D (8411) MODULE : RA_RLP | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 86 | STATE : code ROUTINE : rlp_ul_null | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 87 +--------------------------------------------------------------------+ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 88 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 89 PURPOSE : | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 90 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 91 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 92 GLOBAL void rlp_ul_null(void) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 93 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 94 T_RLP *drlp = ra_data->rlp; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 95 UBYTE i; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 96 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 97 TRACE_FUNCTION("rlp_ul_null()"); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 98 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 99 if (ra_data->activated) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 100 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 101 #ifdef TRACE_RA_RLP | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 102 drlp->fcs_error = 0L; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 103 #endif | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 104 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 105 * setup the communication parameters | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 106 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 107 shm_set_dsp_value (conf_b_itc, V_ITC_DATA); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 108 shm_set_dsp_value (conf_b_ce, V_CE_NON_TRANSP); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 109 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 110 switch (ra_data->tra_rate) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 111 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 112 case TRA_FULLRATE_14400: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 113 shm_set_dsp_value (conf_b_ur, V_UR_14400); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 114 shm_set_dsp_value (conf_b_ct, V_CT_FR); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 115 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 116 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 117 case TRA_FULLRATE_9600: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 118 shm_set_dsp_value (conf_b_ur, V_UR_9600); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 119 shm_set_dsp_value (conf_b_ct, V_CT_FR); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 120 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 121 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 122 case TRA_FULLRATE_4800: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 123 shm_set_dsp_value (conf_b_ur, V_UR_4800); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 124 shm_set_dsp_value (conf_b_ct, V_CT_FR); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 125 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 126 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 127 case TRA_HALFRATE_4800: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 128 shm_set_dsp_value (conf_b_ur, V_UR_4800); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 129 shm_set_dsp_value (conf_b_ct, V_CT_HR); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 130 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 131 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 132 default: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 133 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 134 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 135 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 136 shm_set_dsp_value (ntu_M1, 0); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 137 shm_set_dsp_value (ntu_M2, 0); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 138 shm_set_dsp_value (ntu_empty, 1); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 139 shm_set_dsp_value (ntu_byte_cnt, 2); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 140 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 141 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 142 * initialize the non-transparent mode data | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 143 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 144 drlp->ul_data_pending = FALSE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 145 drlp->m1 = 0; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 146 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 147 ra_data->ra_data_ind.fr_type = FR_RLP; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 148 ra_data->ra_data_ind.sdu.o_buf = 0; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 149 ra_data->ra_data_ind.sdu.l_buf = 0; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 150 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 151 ra_data->ra_ready_ind[0].req_frames = 1; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 152 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 153 cl_ribu_init(&drlp->ulq, RLP_UL_QSIZE); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 154 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 155 for (i = 0; i < drlp->ulq.depth; i++) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 156 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 157 cl_set_frame_desc_0(&drlp->ul_frame_desc[i], NULL, 0); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 158 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 159 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 160 cl_set_frame_desc_0(&ra_data->rlp->dl_frame_desc, NULL, 0); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 161 shm_set_dsp_value (act_b_init, 1); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 162 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 163 INIT_STATE (KER, RLP_INIT_L1); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 164 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 165 #ifdef HO_WORKAROUND /* rlp_ul_null */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 166 _act_d_ra_conf = *ra_data->shm.shm_addr[d_ra_conf]; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 167 TRACE_EVENT("d_ra_conf saved"); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 168 #endif | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 169 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 170 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 171 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 172 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 173 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 174 +--------------------------------------------------------------------+ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 175 | PROJECT : GSM-F&D (8411) MODULE : RA_RLP | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 176 | STATE : code ROUTINE : rlp_ul_init_l1 | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 177 +--------------------------------------------------------------------+ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 178 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 179 PURPOSE : | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 180 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 181 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 182 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 183 GLOBAL void rlp_ul_init_l1(void) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 184 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 185 TRACE_FUNCTION("rlp_ul_init_l1()"); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 186 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 187 if (shm_get_dsp_value (act_b_init) EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 188 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 189 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 190 * initialisation finished -> enter the data transmission state | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 191 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 192 l1i_ra_activate_cnf(); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 193 SET_STATE (KER, RLP_DATA_TRANS); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 194 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 195 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 196 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 197 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 198 +--------------------------------------------------------------------+ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 199 | PROJECT : GSM-F&D (8411) MODULE : RA_RLP | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 200 | STATE : code ROUTINE : rlp_ul_data_trans | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 201 +--------------------------------------------------------------------+ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 202 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 203 PURPOSE : | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 204 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 205 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 206 GLOBAL void rlp_ul_data_trans(void) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 207 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 208 T_RLP *drlp = ra_data->rlp; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 209 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 210 TRACE_FUNCTION("rlp_ul_data_trans()"); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 211 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 212 if (drlp->ul_data_pending) /* a frame is ready to be sent */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 213 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 214 USHORT len = 0; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 215 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 216 switch (ra_data->tra_rate) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 217 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 218 case TRA_FULLRATE_9600: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 219 case TRA_HALFRATE_4800: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 220 len = NT_DATA_SIZE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 221 drlp->ul_data_pending = FALSE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 222 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 223 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 224 case TRA_FULLRATE_4800: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 225 /* S844: 1=1st half, 0=2nd half */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 226 if (shm_get_dsp_value (act_b_f48blk_ul) EQ 1) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 227 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 228 TRACE_FUNCTION("send 4800 first half"); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 229 len = NT_DATA_SIZE_4800_FR_A; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 230 drlp->ul_48_first_half_sent = TRUE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 231 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 232 else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 233 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 234 if (drlp->ul_48_first_half_sent) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 235 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 236 TRACE_FUNCTION("send 4800 second half"); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 237 len = NT_DATA_SIZE_4800_FR_B; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 238 drlp->ul_data_pending = FALSE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 239 drlp->ul_frame_desc[drlp->ulq.ri].Adr[0] += NT_DATA_SIZE_4800_FR_A; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 240 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 241 else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 242 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 243 TRACE_FUNCTION("wait for 4800 first half"); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 244 len = 0; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 245 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 246 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 247 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 248 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 249 case TRA_FULLRATE_14400: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 250 shm_set_dsp_value (ntu_M1, drlp->m1); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 251 /* S844: 0 = first half, 1 = second half */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 252 if (drlp->m1 EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 253 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 254 len = NT_DATA_SIZE_14400_A; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 255 drlp->m1 = 1; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 256 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 257 else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 258 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 259 len = NT_DATA_SIZE_14400_B; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 260 drlp->ul_data_pending = FALSE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 261 drlp->ul_frame_desc[drlp->ulq.ri].Adr[0] += NT_DATA_SIZE_14400_A; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 262 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 263 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 264 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 265 if (len > 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 266 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 267 shm_set_dsp_buffer(&drlp->ul_frame_desc[drlp->ulq.ri], | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 268 ra_data->shm.shm_addr[adr_ntu_data]+wof_ntu_data, 0, len); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 269 shm_set_dsp_value (ntu_empty, 0); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 270 shm_set_dsp_value (ntu_byte_cnt, (len+2)); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 271 if (!drlp->ul_data_pending) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 272 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 273 cl_ribu_read_index(&drlp->ulq); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 274 /* PZ 22.7.99 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 275 drlp->ul_data_pending = (drlp->ulq.ri NEQ drlp->ulq.wi); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 276 /* PZ 22.7.99 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 277 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 278 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 279 else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 280 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 281 shm_set_dsp_value (ntu_M1, 0); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 282 shm_set_dsp_value (ntu_empty, 1); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 283 shm_set_dsp_value (ntu_byte_cnt, 2); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 284 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 285 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 286 else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 287 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 288 /* no frame is ready to be sent */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 289 shm_set_dsp_value (ntu_M1, 0); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 290 shm_set_dsp_value (ntu_empty, 1); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 291 shm_set_dsp_value (ntu_byte_cnt, 2); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 292 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 293 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 294 if (!drlp->ul_data_pending) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 295 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 296 l1i_ra_ready_ind(hCommRLP, 0); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 297 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 298 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 299 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 300 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 301 +--------------------------------------------------------------------+ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 302 | PROJECT : GSM-F&D (8411) MODULE : RA_RLP | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 303 | STATE : code ROUTINE : rlp_dl_data_trans | | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 304 +--------------------------------------------------------------------+ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 305 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 306 PURPOSE : | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 307 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 308 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 309 GLOBAL void rlp_dl_data_trans(void) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 310 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 311 BOOL frame_complete = FALSE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 312 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 313 TRACE_FUNCTION("rlp_dl_data_trans()"); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 314 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 315 #ifdef HO_WORKAROUND /* rlp_dl_data_trans */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 316 if (*ra_data->shm.shm_addr[d_ra_conf] NEQ _act_d_ra_conf) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 317 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 318 *ra_data->shm.shm_addr[d_ra_conf] = _act_d_ra_conf; /* rlp_dl_data_trans */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 319 TRACE_EVENT("HO_REFRESH rlp_dl_data_trans"); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 320 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 321 #endif | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 322 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 323 /* | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 324 * read out the received downlink data | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 325 */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 326 if (shm_get_dsp_value (ntd_byte_cnt) > 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 327 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 328 USHORT len = 0; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 329 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 330 switch (ra_data->tra_rate) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 331 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 332 case TRA_FULLRATE_9600: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 333 case TRA_HALFRATE_4800: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 334 if (shm_get_dsp_value (ntd_fcs_ok) EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 335 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 336 frame_complete = TRUE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 337 len = NT_DATA_SIZE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 338 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 339 #ifdef _SIMULATION_ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 340 cl_set_frame_desc_0(&ra_data->rlp->dl_frame_desc, ra_data->rlp->dl_buf, NT_DATA_SIZE); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 341 ra_data->ra_data_ind.sdu.l_buf = NT_DATA_SIZE << 3; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 342 #else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 343 rlp_rbm_get_next_buffer(&ra_data->rlp->dl_frame_desc); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 344 #endif | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 345 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 346 else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 347 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 348 #ifdef TRACE_RA_RLP | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 349 TRACE_EVENT("FCS-Error"); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 350 ra_data->rlp->fcs_error++; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 351 #endif | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 352 frame_complete = FALSE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 353 len = 0; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 354 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 355 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 356 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 357 case TRA_FULLRATE_4800: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 358 /* S844: 0=1st half, 1=2nd half */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 359 if (shm_get_dsp_value (act_b_f48blk_dl) EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 360 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 361 len = NT_DATA_SIZE_4800_FR_A; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 362 frame_complete = FALSE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 363 #ifdef _SIMULATION_ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 364 cl_set_frame_desc_0(&ra_data->rlp->dl_frame_desc, ra_data->rlp->dl_buf, NT_DATA_SIZE_4800_FR_A+NT_DATA_SIZE_4800_FR_B); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 365 ra_data->ra_data_ind.sdu.l_buf = (NT_DATA_SIZE_4800_FR_A+NT_DATA_SIZE_4800_FR_B) << 3; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 366 #else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 367 rlp_rbm_get_next_buffer(&ra_data->rlp->dl_frame_desc); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 368 #endif | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 369 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 370 else if (shm_get_dsp_value (ntd_fcs_ok) EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 371 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 372 frame_complete = TRUE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 373 len = NT_DATA_SIZE_4800_FR_B; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 374 ra_data->rlp->dl_frame_desc.Adr[0] += NT_DATA_SIZE_4800_FR_A; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 375 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 376 else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 377 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 378 #ifdef TRACE_RA_RLP | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 379 TRACE_EVENT("FCS-Error"); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 380 ra_data->rlp->fcs_error++; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 381 #endif | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 382 frame_complete = FALSE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 383 len = 0; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 384 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 385 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 386 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 387 case TRA_FULLRATE_14400: | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 388 /* S844: 0 = first half, 1 = second half */ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 389 if (shm_get_dsp_value (ntd_M1) EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 390 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 391 frame_complete = FALSE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 392 len = NT_DATA_SIZE_14400_A; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 393 #ifdef _SIMULATION_ | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 394 cl_set_frame_desc_0(&ra_data->rlp->dl_frame_desc, ra_data->rlp->dl_buf, NT_DATA_SIZE_14400_A + NT_DATA_SIZE_14400_B); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 395 ra_data->ra_data_ind.sdu.l_buf = (NT_DATA_SIZE_14400_A + NT_DATA_SIZE_14400_B) << 3; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 396 #else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 397 rlp_rbm_get_next_buffer(&ra_data->rlp->dl_frame_desc); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 398 #endif | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 399 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 400 else if (shm_get_dsp_value (ntd_fcs_ok) EQ 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 401 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 402 frame_complete = TRUE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 403 len = NT_DATA_SIZE_14400_B; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 404 ra_data->rlp->dl_frame_desc.Adr[0] += NT_DATA_SIZE_14400_A; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 405 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 406 else | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 407 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 408 #ifdef TRACE_RA_RLP | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 409 TRACE_EVENT("FCS-Error"); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 410 ra_data->rlp->fcs_error++; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 411 #endif | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 412 frame_complete = FALSE; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 413 len = 0; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 414 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 415 break; | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 416 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 417 if (len > 0) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 418 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 419 shm_get_dsp_buffer(&ra_data->rlp->dl_frame_desc, ra_data->shm.shm_addr[adr_ntd_data]+wof_ntd_data, len); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 420 shm_set_dsp_value (ntd_byte_cnt, 0); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 421 | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 422 if (frame_complete) | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 423 { | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 424 l1i_ra_data_ind(hCommRLP); | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 425 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 426 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 427 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 428 } | 
| 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 429 | 
