comparison src/cs/layer1/tm_include/l1tm_defty.h @ 0:4e78acac3d88

src/{condat,cs,gpf,nucleus}: import from Selenite
author Mychaela Falconia <falcon@freecalypso.org>
date Fri, 16 Oct 2020 06:23:26 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:4e78acac3d88
1 /************* Revision Controle System Header *************
2 * GSM Layer 1 software
3 * L1TM_DEFTY.H
4 *
5 * Filename l1tm_defty.h
6 * Copyright 2003 (C) Texas Instruments
7 *
8 ************* Revision Controle System Header *************/
9
10
11 // Max size of data portion of a testmode packet
12 #define TM_PAYLOAD_UPLINK_SIZE_MAX 128
13
14 // CID, STATUS and CHECKSUM
15 #define TM_UPLINK_PACKET_OVERHEAD 3
16
17 typedef struct
18 {
19 UWORD32 toa_sum;
20 UWORD32 toa_sq_sum;
21 UWORD32 toa_recent;
22 UWORD32 pm_sum;
23 UWORD32 pm_sq_sum;
24 UWORD16 pm_recent;
25 WORD16 angle_sum;
26 UWORD32 angle_sq_sum;
27 WORD16 angle_min;
28 WORD16 angle_max;
29 WORD16 angle_recent;
30 UWORD32 snr_sum;
31 UWORD32 snr_sq_sum;
32 UWORD32 snr_recent;
33 UWORD8 rssi_fifo[4];
34 UWORD8 rssi_recent;
35 WORD32 loop_count; //Must be signed for divide operation in statistics!!!
36 WORD32 flag_count; //Must be signed for divide operation in statistics!!!
37 UWORD32 flag_recent;
38 UWORD8 bsic;
39 UWORD32 fn;
40 UWORD32 qual_acc_full; // Fullset: accu. rxqual meas.
41 UWORD32 qual_nbr_meas_full; // Fullset: nbr meas. of rxqual.
42 #if L1_GPRS
43 UWORD8 nb_dl_pdtch_slots;
44 #endif
45 }
46 T_TM_STATS;
47
48 typedef struct
49 {
50 UWORD8 dedicated_active;
51 UWORD32 rx_counter;
52 UWORD16 num_bcchs;
53 #if L1_GPRS
54 BOOL packet_transfer_active;
55 #endif
56 }
57 T_TM_STATE;
58
59 typedef struct
60 {
61 UWORD16 prbs1_seed;
62 // UWORD16 prbs2_seed; //for future use
63 }
64 T_TM_PRBS;
65
66 // Global TM variable
67 typedef struct
68 {
69 BOOL tm_msg_received;
70 T_TM_STATS tmode_stats;
71 T_TM_STATE tmode_state;
72 T_TM_PRBS tmode_prbs;
73 }
74 T_L1TM_GLOBAL;
75
76 typedef struct
77 {
78 UWORD16 bcch_arfcn;
79 UWORD16 tch_arfcn;
80 UWORD16 mon_arfcn;
81 #if L1_GPRS
82 UWORD16 pdtch_arfcn;
83 UWORD8 multislot_class;
84 #endif
85 UWORD8 down_up;
86 UWORD8 channel_type;
87 UWORD8 subchannel;
88 UWORD8 tmode_continuous;
89 UWORD8 reload_ramps_flag;
90 BOOL mon_report; //Used to determine wether RX stats are done in Monitor channel or TCH channel
91 BOOL mon_tasks; //Used to enable tasks associated with Monitor Channel
92 }
93 T_TM_RF_PARAMS;
94
95 typedef struct
96 {
97 UWORD8 slot_num;
98 WORD8 agc;
99 WORD8 lna_off;
100 UWORD8 number_of_measurements;
101 UWORD8 place_of_measurement;
102 BOOL pm_enable;
103 UWORD8 rssi_band;
104 #if L1_GPRS
105 UWORD8 timeslot_alloc;
106 UWORD8 coding_scheme;
107 #endif
108 }
109 T_TM_RX_PARAMS;
110
111 typedef struct
112 {
113 UWORD8 tsc;
114 UWORD8 txpwr;
115 UWORD8 txpwr_skip;
116 UWORD8 timing_advance;
117 UWORD8 burst_type;
118 UWORD8 burst_data;
119 #if L1_GPRS
120 UWORD8 timeslot_alloc;
121 UWORD8 txpwr_gprs[8];
122 UWORD8 coding_scheme;
123 UWORD8 rlc_buffer_size;
124 UWORD16 rlc_buffer[27];
125 #endif
126 }
127 T_TM_TX_PARAMS;
128
129 typedef struct
130 {
131 UWORD32 num_loops;
132 UWORD32 auto_result_loops;
133 UWORD32 auto_reset_loops;
134 UWORD8 stat_type;
135 UWORD16 stat_bitmask;
136 #if L1_GPRS
137 UWORD8 stat_gprs_slots;
138 #endif
139 }
140 T_TM_STATS_CONFIG;
141
142 typedef struct
143 {
144 T_TM_RF_PARAMS rf_params;
145 T_TM_RX_PARAMS rx_params;
146 T_TM_TX_PARAMS tx_params;
147 T_TM_STATS_CONFIG stats_config;
148 }
149 T_TM_PARAMS;
150
151 typedef struct
152 {
153 UWORD8 cid;
154 UWORD8 index;
155 UWORD8 status;
156 UWORD16 size; // size of result[] array
157 UWORD8 result[TM_PAYLOAD_UPLINK_SIZE_MAX];
158 }
159 T_TM_RETURN;
160
161 typedef struct
162 {
163 UWORD8 cid;
164 UWORD8 index;
165 UWORD8 status;
166 UWORD16 size; // size of result[] array
167 UWORD8 result[5];
168 }
169 T_TM_RETURN_ABBREV;