19#include "ws_symbol_export.h"
21#include "packet-mac-3gpp-common.h"
29#define DIRECTION_UPLINK 0
30#define DIRECTION_DOWNLINK 1
45typedef enum mac_lte_oob_event {
51typedef enum mac_lte_dl_retx {
59typedef enum mac_lte_crc_status {
62 crc_high_code_rate = 2,
64 crc_duplicate_nonzero_rv = 4,
69typedef enum mac_lte_carrier_id {
71 carrier_id_secondary_1,
72 carrier_id_secondary_2,
73 carrier_id_secondary_3,
74 carrier_id_secondary_4,
75 carrier_id_secondary_5,
76 carrier_id_secondary_6,
77 carrier_id_secondary_7
80typedef enum mac_lte_ce_mode {
86typedef enum mac_lte_nb_mode {
104 uint16_t sysframeNumber;
105 uint16_t subframeNumber;
106 bool sfnSfInfoPresent;
109 bool subframeNumberOfGrantPresent;
110 uint16_t subframeNumberOfGrant;
114 bool isPredefinedData;
124 bool isExtendedBSRSizes;
127 bool isSimultPUCCHPUSCHPCell;
130 bool isSimultPUCCHPUSCHPSCell;
135 mac_lte_crc_status crcStatus;
138 mac_lte_carrier_id carrierId;
141 mac_lte_dl_retx dl_retx;
144 mac_lte_ce_mode ceMode;
147 mac_lte_nb_mode nbMode;
154 struct mac_lte_ul_phy_info
157 uint8_t modulation_type;
159 uint8_t resource_block_length;
160 uint8_t resource_block_start;
164 struct mac_lte_dl_phy_info
168 uint8_t resource_allocation_type;
169 uint8_t aggregation_level;
171 uint8_t redundancy_version_index;
172 uint8_t resource_block_length;
175 uint8_t transport_block;
181 mac_lte_oob_event oob_event;
183 uint8_t rach_attempt_number;
185 uint16_t number_of_srs;
186 uint16_t oob_ueid[MAX_SRs];
187 uint16_t oob_rnti[MAX_SRs];
192bool is_mac_lte_frame_retx(
packet_info *pinfo, uint8_t direction);
212#define MAC_LTE_START_STRING "mac-lte"
226#define MAC_LTE_RNTI_TAG 0x02
229#define MAC_LTE_UEID_TAG 0x03
232#define MAC_LTE_FRAME_SUBFRAME_TAG 0x04
235#define MAC_LTE_PREDEFINED_DATA_TAG 0x05
238#define MAC_LTE_RETX_TAG 0x06
241#define MAC_LTE_CRC_STATUS_TAG 0x07
244#define MAC_LTE_EXT_BSR_SIZES_TAG 0x08
247#define MAC_LTE_SEND_PREAMBLE_TAG 0x09
250#define MAC_LTE_CARRIER_ID_TAG 0x0A
253#define MAC_LTE_PHY_TAG 0x0B
261#define MAC_LTE_SIMULT_PUCCH_PUSCH_PCELL_TAG 0x0C
264#define MAC_LTE_SIMULT_PUCCH_PUSCH_PSCELL_TAG 0x0D
267#define MAC_LTE_CE_MODE_TAG 0x0E
270#define MAC_LTE_NB_MODE_TAG 0x0F
273#define MAC_LTE_N_UL_RB_TAG 0x10
276#define MAC_LTE_SR_TAG 0x11
282#define MAC_LTE_PAYLOAD_TAG 0x01
293 bool rlcMode_present;
295 bool rlc_ul_ext_li_field;
296 bool rlc_dl_ext_li_field;
297 bool rlc_ul_ext_am_sn;
298 bool rlc_dl_ext_am_sn;
299 bool um_sn_length_present;
300 uint8_t um_sn_length;
301 bool ul_priority_present;
303 bool pdcp_sn_size_present;
304 uint8_t pdcp_sn_size;
313uint8_t get_mac_lte_channel_mode(uint16_t ueid, uint8_t drbid);
321 uint32_t previousFrameNum;
323 uint32_t onDurationTimer;
324 uint32_t inactivityTimer;
325 uint32_t retransmissionTimer;
327 uint32_t cycleOffset;
329 bool shortCycleConfigured;
331 uint32_t shortCycleTimer;
336void set_mac_lte_drx_config_release(uint16_t ueid,
packet_info *pinfo);
339void set_mac_lte_rapid_ranges(
unsigned groupA,
unsigned all_RA);
342void set_mac_lte_extended_bsr_sizes(uint16_t ueid,
bool use_ext_bsr_sizes,
packet_info *pinfo);
346 SIMULT_PUCCH_PUSCH_PCELL = 0,
347 SIMULT_PUCCH_PUSCH_PSCELL
348} simult_pucch_pusch_cell_type;
349void set_mac_lte_simult_pucch_pusch(uint16_t ueid, simult_pucch_pusch_cell_type cell_type,
bool use_simult_pucch_pusch,
packet_info *pinfo);
Definition packet_info.h:43
Definition packet-mac-lte.h:288
Definition packet-mac-lte.h:318
Definition packet-mac-lte.h:93
Definition tvbuff-int.h:35