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