FreeCalypso > hg > fc-magnetite
annotate src/g23m-fad/l2r/tra_upp.c @ 524:4a242cfb9bc5
configs/classic: re-enable the bootloader now that we know what it does
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Sat, 22 Sep 2018 03:15:21 +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 : CSD (8411) | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
4 | Modul : tra_upp.c | 
| 
 
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 processing | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
18 | of incomming primitives for the component TRA | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
19 +----------------------------------------------------------------------------- | 
| 
 
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 #ifndef TRA_UPP_C | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
23 #define TRA_UPP_C | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
24 #endif | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
25 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
26 #define ENTITY_L2R | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
27 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
28 /*==== INCLUDES ===================================================*/ | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
29 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
30 #include "typedefs.h" | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
31 #include "pconst.cdg" | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
32 #include "vsi.h" | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
33 #include "macdef.h" | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
34 #include "custom.h" | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
35 #include "gsm.h" | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
36 #include "prim.h" | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
37 #include "pei.h" | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
38 #include "tok.h" | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
39 #include "dti.h" | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
40 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
41 #include "cl_ribu.h" | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
42 #include "tra_pei.h" | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
43 #include "tra.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 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
47 /*==== TYPES =======================================================*/ | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
48 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
49 /*==== VAR EXPORT ==================================================*/ | 
| 
 
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 /*==== VAR LOCAL ===================================================*/ | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
52 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
53 /*==== FUNCTIONS ===================================================*/ | 
| 
 
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 +------------------------------------------------------------------------------ | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
57 | Function : rcv_ra_ready_ind | 
| 
 
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 | Description : Process primitive RA_READY_IND received from RA. | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
60 | This function is called if the RA_READY_IND primtive | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
61 | is received | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
62 | | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
63 | Parameters : ra_ready_ind - | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
64 | | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
65 | | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
66 | Return : - | 
| 
 
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 GLOBAL void rcv_ra_ready_ind(T_RA_READY_IND *ra_ready_ind) | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
71 { | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
72 T_TRA_UP *dul = &tra_data->up; | 
| 
 
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 #ifdef _SIMULATION_ | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
75 TRACE_EVENT_P1 ("rcv_ra_ready_ind(), req_frames: 0x%x", ra_ready_ind->req_frames); | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
76 PACCESS (ra_ready_ind); | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
77 #endif | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
78 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
79 dul->req_frames = ra_ready_ind->req_frames; | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
80 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
81 switch (GET_STATE (UP)) | 
| 
 
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 case UP_IDLE: | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
84 SET_STATE (UP, UP_WAIT); | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
85 break; | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
86 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
87 case UP_SEND: | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
88 snd_data_to_RA(); | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
89 if (dul->Prim->desc_list2.first EQ 0) | 
| 
 
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 if (dul->Prim NEQ NULL) | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
92 { | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
93 PFREE(dul->Prim); | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
94 dul->Prim = NULL; | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
95 } | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
96 up_start_dti_flow(); | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
97 SET_STATE (UP, UP_IDLE); | 
| 
 
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 break; | 
| 
 
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 _SIMULATION_ | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
102 PFREE (ra_ready_ind); | 
| 
 
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 | 
| 
 
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 +------------------------------------------------------------------------------ | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
108 | Function : sig_dti_tra_up_data_received_ind | 
| 
 
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 | Description : Process primitive DTI2_DATA_REQ received from CSDIWF. | 
| 
 
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 | Parameters : dti_data_req | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
113 | | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
114 | | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
115 | Return : - | 
| 
 
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 */ | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
118 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
119 GLOBAL void sig_dti_tra_up_data_received_ind(T_DTI2_DATA_REQ *dti_data_req) | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
120 { | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
121 T_TRA_UP *dul = &tra_data->up; | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
122 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
123 TRACE_FUNCTION ("sig_dti_tra_up_data_received_ind()"); | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
124 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
125 PACCESS (dti_data_req); | 
| 
 
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 dul->Prim = dti_data_req; | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
128 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
129 dul->sa = dti_data_req->parameters.st_lines.st_line_sa; | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
130 dul->sb = dti_data_req->parameters.st_lines.st_line_sb; | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
131 dul->x = dti_data_req->parameters.st_lines.st_flow; | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
132 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
133 /* | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
134 TRACE_EVENT_P1("new data: %02X", dti_data_req->desc_list2.list_len); | 
| 
 
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 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
137 if (GET_STATE(DTI) NEQ DTI_CLOSED) | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
138 { | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
139 /* | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
140 * do not send flow control primitives automatically | 
| 
 
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 dti_stop(l2r_hDTI, TRA_DTI_UP_INSTANCE, TRA_DTI_UP_INTERFACE, TRA_DTI_UP_CHANNEL); | 
| 
 
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 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
145 /* Detect break request */ | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
146 if (dti_data_req->parameters.st_lines.st_break_len NEQ DTI_BREAK_OFF) | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
147 { | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
148 USHORT break_len = dti_data_req->parameters.st_lines.st_break_len; | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
149 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
150 PFREE(dti_data_req); /* no more used */ | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
151 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
152 switch (GET_STATE (UP)) | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
153 { | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
154 case UP_SEND: | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
155 /* | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
156 * No more data to send | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
157 */ | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
158 SET_STATE (UP, UP_IDLE); | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
159 /* Fall through */ | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
160 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
161 case UP_IDLE: | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
162 case UP_WAIT: | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
163 sig_up_tra_mgt_break_ind(break_len); | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
164 up_start_dti_flow(); | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
165 break; | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
166 } | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
167 return; /* xxxxx - send data or do not send it??! */ | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
168 } | 
| 
 
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 switch (GET_STATE (UP)) | 
| 
 
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 case UP_SEND: | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
173 TRACE_EVENT("still in UP_SEND!"); | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
174 break; | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
175 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
176 case UP_IDLE: | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
177 SET_STATE (UP, UP_SEND); | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
178 break; | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
179 | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
180 case UP_WAIT: | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
181 snd_data_to_RA(); | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
182 if (dti_data_req->desc_list2.list_len EQ 0) /* data is copied completely */ | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
183 { | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
184 up_start_dti_flow(); | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
185 SET_STATE (UP, UP_IDLE); | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
186 PFREE(dti_data_req); | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
187 dul->Prim = NULL; | 
| 
 
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 else | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
190 { | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
191 SET_STATE (UP, UP_SEND); | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
192 } | 
| 
 
90eb61ecd093
src/g23m-fad: initial import from TCS3.2/LoCosto
 
Mychaela Falconia <falcon@freecalypso.org> 
parents:  
diff
changeset
 | 
193 break; | 
| 
 
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 | 
