0
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /************* Revision Control System Header *************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 * GSM Layer 1 software
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 * MACS_DEF.H
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 * Filename macs_def.h
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 * Copyright 2003 (C) Texas Instruments
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 *
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 ************* Revision Control System Header *************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 /*********************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 /* Type definition for MAC-S static variables */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 /*********************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 /*---------------------------------------------------*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 /* MAC-S static parameters */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 /*---------------------------------------------------*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 typedef struct {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 /* General TBF parameters processed by MAC-S */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 /*********************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 UWORD8 old_synchro_ts; // Synchro timeslot when data was received on the slots indicated in last_rx_allocation
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 // Dynamic allocation mode parameters
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 UWORD8 first_monitored_ts; // First Tx slot allocated by the network
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 UWORD8 last_monitored_ts; // Last Tx slot allocated by the network
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 // Fixed allocation mode parameters
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 UWORD8 dl_ctrl_ts_mask; // Mask used to verify if conditions are met to map the downlink control timeslot
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 UWORD32 sti_block_id; // Block ID of the starting time
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 /* Ressources allocated by MAC-S */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 /*********************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 UWORD8 rx_allocation; // Slots allocated for downlink blocks reception
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 UWORD8 tx_allocation; // Slots allocated for uplink blocks transmission
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 UWORD8 tx_data; // Slots allocated for uplink data block transfer only
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 UWORD8 tx_prach_allocation; // Slots allocated for poll response in PRACH burst format
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 UWORD8 pwr_allocation; // Slots allocated for power measurements
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 UWORD8 last_rx_alloc; // Downlink resources allocated during the last block period
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 /* MAC-S global parameters */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 /***************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 UWORD32 rx_blk_period; // Set to BLOCK_ID if DL blocks were received, FFFFFFFF if no DL blocks
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 UWORD8 rlc_blocks_sent; // Last sent uplink RLC/MAC block ID
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 UWORD8 rx_no; // Number of received blocks to report to RLC
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 UWORD8 last_poll_response; // Status of the poll responses requested by RLC the block period before
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 UWORD8 ul_buffer_index[8]; // UL buffer index table loaded after RLC UL allocation check
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 // Dynamic allocation mode parameters
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 UWORD8 usf_vote_enable; // This bitmap is used to set on which timeslot the DSP USF vote must be enabled
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 UWORD8 usf_good; // Bit set to 1 corresponds to invalid or valid and good USF values
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 UWORD32 next_usf_mon_block[2]; // For each uplink block, memorize the next block_id when the USF will be monitored
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 // Note: for type 1 MS, max. 2 Tx can be done !!!
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55 // Fixed allocation mode parameters
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 UWORD8 tra_gap; // Number of free Tx slots at the end of the frame
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57 BOOL fix_alloc_exhaust; // Set to 1 if the fixed allocation bitmap has exhausted
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 #if MACS_STATUS
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60 BOOL bcch_monitoring; // When MAC-S calls RLC, set to TRUE if BCCH monitoring was done during the frame before
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
61 #endif
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
62
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
63 } T_MACS_STATIC;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
64
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
65 /*---------------------------------------------------*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
66 /* MS Class parameters */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
67 /*---------------------------------------------------*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
68
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
69 typedef struct {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70 UWORD8 rx;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71 UWORD8 tx;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72 UWORD8 sum;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 UWORD8 tta;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 UWORD8 ttb;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
75 UWORD8 tra;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
76 UWORD8 trb;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 } T_MSCLASS_PARAMETERS;
|