struct _rgSchUlAllocCntr
{
- U8 mcs;
- U16 numOfRb;
- U16 rbStart;
+ uint8_t mcs;
+ uint16_t numOfRb;
+ uint16_t rbStart;
Bool testStart;
Bool enaLog;
- U16 logTime;
- U32 crcOk;
- U32 crcErr;
- U32 numUlPackets;
- U32 numPrach;
- U32 taZero;
+ uint16_t logTime;
+ uint32_t crcOk;
+ uint32_t crcErr;
+ uint32_t numUlPackets;
+ uint32_t numPrach;
+ uint32_t taZero;
};
-EXTERN RgSchUlAllocCntr rgSchUlAllocCntr;
+RgSchUlAllocCntr rgSchUlAllocCntr;
#endif
//Chandan
#ifdef DLHQ_STATS
typedef struct rgSchDlHqStats
{
- U16 sfn;
- U8 sf;
- U8 ack;
- U8 cellId;
- U8 ulDai;
- U8 dlDai;
- U8 fdbkIdx;
- U8 ue;
- U8 ack0;
- U8 ack1;
- U8 ack2;
- U8 ack3;
- U8 ack4;
- U8 ack5;
- U8 ack6;
- U8 ack7;
+ uint16_t sfn;
+ uint8_t sf;
+ uint8_t ack;
+ uint8_t cellId;
+ uint8_t ulDai;
+ uint8_t dlDai;
+ uint8_t fdbkIdx;
+ uint8_t ue;
+ uint8_t ack0;
+ uint8_t ack1;
+ uint8_t ack2;
+ uint8_t ack3;
+ uint8_t ack4;
+ uint8_t ack5;
+ uint8_t ack6;
+ uint8_t ack7;
}RgSchDlHqStats;
typedef struct ysMsDlHqStats
{
- U16 sfn;
- U8 sf;
- U8 mode; /*1 = PUCCH 2= PUSCH*/
- U8 M;
- U8 o0; /*For PUCCH n1PUCCH*/
- U8 o1; /*For PUCCH Invalid*/
- U8 o2;
- U8 o3;
- U8 ack0;
- U8 ack1;
- U8 ack2;
- U8 ack3;
- U8 ack4;
- U8 ack5;
- U8 ack6;
- U8 ack7;
+ uint16_t sfn;
+ uint8_t sf;
+ uint8_t mode; /*1 = PUCCH 2= PUSCH*/
+ uint8_t M;
+ uint8_t o0; /*For PUCCH n1PUCCH*/
+ uint8_t o1; /*For PUCCH Invalid*/
+ uint8_t o2;
+ uint8_t o3;
+ uint8_t ack0;
+ uint8_t ack1;
+ uint8_t ack2;
+ uint8_t ack3;
+ uint8_t ack4;
+ uint8_t ack5;
+ uint8_t ack6;
+ uint8_t ack7;
}YsMsDlHqStats;
#define MAX_STATS_CNT
#endif
/* Considers case where RIV is <= 324 for DCI format A1 */
typedef struct tfuRbAssignA1Val324
{
- U8 hqProcId; /*!< HARQ process ID */
- U8 mcs; /*!< 4 bits for MCS */
+ uint8_t hqProcId; /*!< HARQ process ID */
+ uint8_t mcs; /*!< 4 bits for MCS */
Bool ndi; /*!< 1 bit for new data indicator */
} TfuRbAssignA1Val324;
/* Considers case where RIV is <= 324 for DCI format B1 */
typedef struct tfuRbAssignB1Val324
{
- U8 hqProcId; /*!< HARQ process ID */
- U8 mcs; /*!< 4 bits for MCS */
+ uint8_t hqProcId; /*!< HARQ process ID */
+ uint8_t mcs; /*!< 4 bits for MCS */
Bool ndi; /*!< 1 bit for new data indicator */
- U8 RV; /*!< 2 bits Redundancy version */
- U8 bmiHqAckNack; /* BMI: Bit Mapping Index for Harq-Ack
+ uint8_t RV; /*!< 2 bits Redundancy version */
+ uint8_t bmiHqAckNack; /* BMI: Bit Mapping Index for Harq-Ack
Refer sec 8.5 of 213 spec */
} TfuRbAssignB1Val324;
/* Considers case where RIV is == 326 */
typedef struct tfuRbAssignVal326
{
- U8 FreqBandIdx; /* nRACH: Frequency band index Value:0 -> 7 */
+ uint8_t FreqBandIdx; /* nRACH: Frequency band index Value:0 -> 7 */
Bool OCCInd; /* nOCC: OCC indicator Value:0 -> 1 */
- U8 CyclicShiftInd; /* nNcs: Cyclic shift indicator Value:0 -> 3 */
+ uint8_t CyclicShiftInd; /* nNcs: Cyclic shift indicator Value:0 -> 3 */
} TfuRbAssignVal326;
typedef struct tfuDciFormatA1Info
{
Bool formatType; /* Format Descriminator 00: A1, 01:A2 */
- U8 xPUSCHRange; /* 0 : the stopping of xPUSCH is the 12th symbol,
+ uint8_t xPUSCHRange; /* 0 : the stopping of xPUSCH is the 12th symbol,
1 : the stopping of xPUSCH is the 13th symbol,
2 : the stopping of xPUSCH is the final (14th) symbol */
- U8 xPUSCH_TxTiming; /* Transmission timing of xPUSCH Value: 0->7
+ uint8_t xPUSCH_TxTiming; /* Transmission timing of xPUSCH Value: 0->7
l E {0,1,...,7}*/
- U16 RBAssign; /*!< same as phy i/f RBAssign: RIV as defined in V5G.213
+ uint16_t RBAssign; /*!< same as phy i/f RBAssign: RIV as defined in V5G.213
Value <= 324: this field assigns morethan zero RB.
Value ==325: this format assigns zero RB.
Value ==326: this format assigns zero RB and used
for Randon Access procedure initiated by xPDCCH order. */
- U8 beamIndex; /*!< transmit beam index: Value: 0->7 */
- U8 symbIdx; /*!< OFDM symbol index for the xPDCCH: Value: 0->1 */
- U8 rv; /*!< HARQ redundancy version, Value: 0 -> 3 */
+ uint8_t beamIndex; /*!< transmit beam index: Value: 0->7 */
+ uint8_t symbIdx; /*!< OFDM symbol index for the xPDCCH: Value: 0->1 */
+ uint8_t rv; /*!< HARQ redundancy version, Value: 0 -> 3 */
/* Based on RBAssign/RIV value*/
union
TfuRbAssignVal326 rbAssignVal326;
}u;
- U8 CSI_BSI_BRI_Req; /* CSI / BSI / BRI request Value:0 -> 7 */
- U8 CSIRS_BRRS_TxTiming; /* Transmission timing of CSI-RS / BRRS, Value:0 -> 3
+ uint8_t CSI_BSI_BRI_Req; /* CSI / BSI / BRI request Value:0 -> 7 */
+ uint8_t CSIRS_BRRS_TxTiming; /* Transmission timing of CSI-RS / BRRS, Value:0 -> 3
m E {0,1,2,3} */
#ifdef FIVEGTF_PHY_API
- U16 rbgStart;
- U16 rbgSize;
+ uint16_t rbgStart;
+ uint16_t rbgSize;
#endif
/* ToDo: following 4 fields can be made as union with an indicator type*/
- U8 CSIRS_BRRS_SymbIdx; /* Indication of OFDM symbol index for CSI-RS / BRRS allocations
+ uint8_t CSIRS_BRRS_SymbIdx; /* Indication of OFDM symbol index for CSI-RS / BRRS allocations
Value:0 -> 3 */
- U8 CSI_BRRS_Indicator; /* If this DCI format allocates either of
+ uint8_t CSI_BRRS_Indicator; /* If this DCI format allocates either of
CSI-RS or BRRS transmission Value:0 -> 3 */
- U8 CSIRS_BRRS_ProcInd; /* Process indicator : Value:0 -> 3 */
- U8 numBSI_Reports; /* Number of BSI reports Value:0 -> 3 */
+ uint8_t CSIRS_BRRS_ProcInd; /* Process indicator : Value:0 -> 3 */
+ uint8_t numBSI_Reports; /* Number of BSI reports Value:0 -> 3 */
Bool uciOnxPUSCH; /* "UCI on xPUSCH w/o xUL-SCH data" indicator. Value:0 -> 1 */
Bool beamSwitch; /* beam switch indication. Value:0 -> 1 */
- U8 SRS_Config; /* Indication of SRS configurations Value:0 -> 3
+ uint8_t SRS_Config; /* Indication of SRS configurations Value:0 -> 3
00 : {No SRS request}, 01 : {Config. #0},
10 : {Config. #1}, 11 : {Config. #2} */
Bool SRS_Symbol; /* If SRS is requested, 0: SRS transmission on the 13th OFDM symbol
and 1: SRS transmission on the 14th OFDM symbol */
- U8 REMapIdx_DMRS_PCRS_numLayers; /* RE Mapping index, Ki for DMRS/PCRS and number of layers
+ uint8_t REMapIdx_DMRS_PCRS_numLayers; /* RE Mapping index, Ki for DMRS/PCRS and number of layers
Value: 0 -> 7
0: 1 Layer, k0 = 0, 1: 1 Layer, k0 = 1
2: 1 Layer, k0 = 2, 3: 1 Layer, k0 = 3
6,7: Reserved */
Bool SCID; /* nSCID is applied for both DMRS in subframe n and
CSI-RS in subframe n+m Value: 0 -> 1 */
- U8 PMI; /* Precoding matrix indicator Value:0 -> 7 */
+ uint8_t PMI; /* Precoding matrix indicator Value:0 -> 7 */
#ifdef FIVEGTF_PHY_API
- U8 AntPorts_numLayers;
- U8 TransmissionScheme;
+ uint8_t AntPorts_numLayers;
+ uint8_t TransmissionScheme;
#endif
Bool UL_PCRS; /* UL dual PCRS Value: 0 -> 1 */
- U8 tpcCmd; /*!< 2 bits for TPC command for xPUSCH, Values: 0->3 */
+ uint8_t tpcCmd; /*!< 2 bits for TPC command for xPUSCH, Values: 0->3 */
} TfuDciFormatA1Info;
/* DCI format A2: UL xPDCCH */
typedef struct tfuDciFormatB1Info
{
Bool formatType; /* Format Descriminator 2: B1, 3:B2 */
- U8 xPDSCHRange; /* MSB (starting of xPDSCH including DMRS symbol) :
+ uint8_t xPDSCHRange; /* MSB (starting of xPDSCH including DMRS symbol) :
0 is the second symbol, 1 is the third symbol.
LSB (stopping of xPDSCH): 0 is the 12th symbol,
1 is the 14th symbol */
- U16 RBAssign; /*!< same as phy i/f RBAssign: RIV as defined in V5G.213
+ uint16_t RBAssign; /*!< same as phy i/f RBAssign: RIV as defined in V5G.213
Value <= 324: this field assigns morethan zero RB.
Value ==325: this format assigns zero RB.
Value ==326: this format assigns zero RB and used
for Randon Access procedure initiated by xPDCCH order. */
- U8 beamIndex; /*!< transmit beam index: Value: 0->7 */
- U8 symbIdx; /*!< OFDM symbol index for the xPDCCH: Value: 0->1 */
+ uint8_t beamIndex; /*!< transmit beam index: Value: 0->7 */
+ uint8_t symbIdx; /*!< OFDM symbol index for the xPDCCH: Value: 0->1 */
/* Based on RBAssign/RIV value*/
union
{
TfuRbAssignVal326 rbAssignVal326;
}u;
- U8 CSI_BSI_BRI_Req; /* CSI / BSI / BRI request Value:0 -> 7 */
- U8 CSIRS_BRRS_TxTiming; /* Transmission timing of CSI-RS / BRRS, Value:0 -> 3
+ uint8_t CSI_BSI_BRI_Req; /* CSI / BSI / BRI request Value:0 -> 7 */
+ uint8_t CSIRS_BRRS_TxTiming; /* Transmission timing of CSI-RS / BRRS, Value:0 -> 3
m E {0,1,2,3} */
/* ToDo: following 4 fields can be made as union with an indicator type*/
- U8 CSIRS_BRRS_SymbIdx; /* Indication of OFDM symbol index for CSI-RS / BRRS allocations
+ uint8_t CSIRS_BRRS_SymbIdx; /* Indication of OFDM symbol index for CSI-RS / BRRS allocations
Value:0 -> 3 */
- U8 CSI_BRRS_Indicator; /* If this DCI format allocates either of
+ uint8_t CSI_BRRS_Indicator; /* If this DCI format allocates either of
CSI-RS or BRRS transmission Value:0 -> 3 */
- U8 CSIRS_BRRS_ProcInd; /* Process indicator : Value:0 -> 3 */
- U8 numBSI_Reports; /* Number of BSI reports Value:0 -> 3 */
+ uint8_t CSIRS_BRRS_ProcInd; /* Process indicator : Value:0 -> 3 */
+ uint8_t numBSI_Reports; /* Number of BSI reports Value:0 -> 3 */
Bool xPUCCH_TxTiming; /* field indicates transmission time offset value k.{0, 1, ., 7} */
- U8 freqResIdx_xPUCCH; /* Frequency resource index of xPUCCH for UCI report */
+ uint8_t freqResIdx_xPUCCH; /* Frequency resource index of xPUCCH for UCI report */
Bool beamSwitch; /* beam switch indication. Value:0 -> 1 */
- U8 SRS_Config; /* Indication of SRS configurations Value:0 -> 3
+ uint8_t SRS_Config; /* Indication of SRS configurations Value:0 -> 3
00 : {No SRS request}, 01 : {Config. #0},
10 : {Config. #1}, 11 : {Config. #2} */
Bool SRS_Symbol; /* If SRS is requested, 0: SRS transmission on the 13th OFDM symbol
and 1: SRS transmission on the 14th OFDM symbol */
- U8 AntPorts_numLayers;
+ uint8_t AntPorts_numLayers;
Bool SCID; /* nSCID is applied for both DMRS in subframe n and
CSI-RS in subframe n+m Value: 0 -> 1 */
- U8 tpcCmd; /*!< 2 bits for TPC command for xPUCCH, Values: 0->3 */
+ uint8_t tpcCmd; /*!< 2 bits for TPC command for xPUCCH, Values: 0->3 */
Bool DL_PCRS; /* DL PCRS Value: 0 -> 3
00 : {No PCRS }, 01 : {PCRS on AP 60},
10 : {PCRS on AP 61}, 11 : {PCRS on AP 60 and 61}*/
Bool isMsg4PdcchWithCrnti; /* This is to aid rgNumMsg4PdcchWithCrnti counter which counts
num of PDCCH scrambled with CRNTI for CRNTI Based contention resolution */
Bool hoppingEnbld; /*!< TRUE, if hopping is enabled */
- U8 rbStart; /*!< Starting RB */
- U8 numRb; /*!< Number of RBs */
+ uint8_t rbStart; /*!< Starting RB */
+ uint8_t numRb; /*!< Number of RBs */
#ifdef TFU_UPGRADE
- U32 riv; /*!< RIV as defined in 213
+ uint32_t riv; /*!< RIV as defined in 213
section 7.1.6.3 - used only for
SPS release */
#endif
- U8 hoppingBits; /*!< Hopping bits as mentioned in 213 section 8.4 */
- U8 mcs; /*!< 5 bits for MCS and RV */
+ uint8_t hoppingBits; /*!< Hopping bits as mentioned in 213 section 8.4 */
+ uint8_t mcs; /*!< 5 bits for MCS and RV */
Bool ndi; /*!< 1 bit for new data indicator */
- U8 tpcCmd; /*!< 2 bits for TPC command */
+ uint8_t tpcCmd; /*!< 2 bits for TPC command */
/** @name TFU_TDD */
/** @{ */
#ifdef TFU_TDD
- U8 ulIdx; /*!< UL index applicable only for TDD */
- U8 dai; /*!< The downlink assignement index */
+ uint8_t ulIdx; /*!< UL index applicable only for TDD */
+ uint8_t dai; /*!< The downlink assignement index */
#endif
/** @} */
- U8 nDmrs; /*!< 3 bits for DMRS cyclic shift */
- U8 cqiReq; /*!< 1 bit for CQI non-CA while value 00, 01, 10 and 11 for CA */
- U8 numCqiBit; /*!< Number of CsiReq Bit(s) Values : 1 or 2(CA)*/
- U8 txAntenna; /*!< Antenna selection - 213 section 8.7 */
+ uint8_t nDmrs; /*!< 3 bits for DMRS cyclic shift */
+ uint8_t cqiReq; /*!< 1 bit for CQI non-CA while value 00, 01, 10 and 11 for CA */
+ uint8_t numCqiBit; /*!< Number of CsiReq Bit(s) Values : 1 or 2(CA)*/
+ uint8_t txAntenna; /*!< Antenna selection - 213 section 8.7 */
/* tfu_x_001.main_4: Adding hqProcId */
- U8 hqProcId; /*!< HARQ process ID */
+ uint8_t hqProcId; /*!< HARQ process ID */
} TfuDciFormat0Info;
/** @enum TfuAllocType
union
{
- U32 riv; /*!< RIV as defined in 213 section 7.1.6.3. */
+ uint32_t riv; /*!< RIV as defined in 213 section 7.1.6.3. */
/*tfu_x_001.main_8 - ADD - TFU_RESMAP_CHANGE support */
#ifndef TFU_RESMAP_CHANGE
- U8 resAllocMap[TFU_MAX_ALLOC_BYTES]; /*!< Resource
+ uint8_t resAllocMap[TFU_MAX_ALLOC_BYTES]; /*!< Resource
allocation bitmap. LSB aligns with the
LSB of the allocation bits.*/
#else /* TFU_RESMAP_CHANGE */
{
struct
{
- U32 allocMask; /*!< Allocation Mask for RBGs */
+ uint32_t allocMask; /*!< Allocation Mask for RBGs */
} allocType0;
struct
{
- U8 rbgSubset; /*!< RBG Subset number: Value in set
+ uint8_t rbgSubset; /*!< RBG Subset number: Value in set
{0,1,2,3} */
- U8 shift; /*!< Shift value for RBG mask: Value in
+ uint8_t shift; /*!< Shift value for RBG mask: Value in
set {0,1} */
- U32 allocMask; /*!< Allocation bitmask */
+ uint32_t allocMask; /*!< Allocation bitmask */
} allocType1;
} u;
} TfuAllocMap;
typedef struct tfuDciFormat1AllocInfo
{
Bool isAllocType0; /*!< TRUE, if allocation type is 0 */
- U8 resAllocMap[TFU_MAX_ALLOC_BYTES]; /*!< Resource allocation bitmap.
+ uint8_t resAllocMap[TFU_MAX_ALLOC_BYTES]; /*!< Resource allocation bitmap.
LSB aligns with the LSB of the
allocation bits.*/
- U8 harqProcId; /*!< HARQ process ID */
+ uint8_t harqProcId; /*!< HARQ process ID */
Bool ndi; /*!< 1 bit for new data indicator */
- U8 mcs; /*!< 5 bits for MCS */
- U8 rv; /*!< Redundancy version */
+ uint8_t mcs; /*!< 5 bits for MCS */
+ uint8_t rv; /*!< Redundancy version */
} TfuDciFormat1AllocInfo;
/** @brief This structure contains the information needed to convey DCI format 1.
/** @name TFU_TDD */
/** @{ */
#ifdef TFU_TDD
- U8 dai; /*!< The downlink assignement index */
+ uint8_t dai; /*!< The downlink assignement index */
#endif
/** @} */
- U8 tpcCmd; /*!< 2 bits for TPC command */
+ uint8_t tpcCmd; /*!< 2 bits for TPC command */
} TfuDciFormat1Info;
/** @brief This structure contains the TB level DCI signalling
typedef struct tfuDciFormatTbInfo
{
Bool ndi; /*!< New data indicator */
- U8 rv; /*!< Redundancy version Indicator */
- U8 mcs; /*!< 5 bits for MCS */
+ uint8_t rv; /*!< Redundancy version Indicator */
+ uint8_t mcs; /*!< 5 bits for MCS */
}TfuDciFormatTbInfo;
/** @} */
/** @brief This structure contains only the allocation information, that is part
Bool isAllocType0; /*!< TRUE, if allocation type is 0 */
/*tfu_x_001.main_8 - ADD - TFU_RESMAP_CHANGE support */
#ifndef TFU_RESMAP_CHANGE
- U8 resAllocMap[TFU_MAX_ALLOC_BYTES]; /*!< Resource allocation bitmap.
+ uint8_t resAllocMap[TFU_MAX_ALLOC_BYTES]; /*!< Resource allocation bitmap.
LSB aligns with the LSB of the
allocation bits.*/
#else
TfuAllocMap allocMap; /*!< Allocation Map */
#endif /* TFU_RESMAP_CHANGE */
- U8 harqProcId; /*!< HARQ process ID */
+ uint8_t harqProcId; /*!< HARQ process ID */
TfuDciFormatTbInfo tbInfo[2]; /*!< DCI Format 2/2A info per TB */
- U8 precoding; /*!< Precoding information bit */
+ uint8_t precoding; /*!< Precoding information bit */
Bool transSwap; /*!< Transport block to codeword swap flag */
} TfuDciFormat2AAllocInfo;
/** @name TFU_TDD */
/** @{ */
#ifdef TFU_TDD
- U8 dai; /*!< The downlink assignement index */
+ uint8_t dai; /*!< The downlink assignement index */
#endif
/** @} */
- U8 tpcCmd; /*!< 2 bits for TPC command */
+ uint8_t tpcCmd; /*!< 2 bits for TPC command */
} TfuDciFormat2AInfo;
/** @brief This structure contains only the allocation information, that is part
{
Bool isAllocType0; /*!< TRUE, if allocation type is 0 */
#ifndef TFU_RESMAP_CHANGE
- U8 resAllocMap[TFU_MAX_ALLOC_BYTES]; /*!< Resource
+ uint8_t resAllocMap[TFU_MAX_ALLOC_BYTES]; /*!< Resource
allocation bitmap. LSB aligns
with the LSB of the allocation
bits.*/
/** @name TFU_TDD */
/** @{ */
#ifdef TFU_TDD
- U8 dai; /*!< The downlink assignement index */
+ uint8_t dai; /*!< The downlink assignement index */
#endif
/** @} */
Bool transSwap; /*!< Transport block to codeword swap
flag */
- U8 precoding; /*!< Precoding information bit */
- U8 harqProcId; /*!< HARQ process ID */
+ uint8_t precoding; /*!< Precoding information bit */
+ uint8_t harqProcId; /*!< HARQ process ID */
TfuDciFormatTbInfo tbInfo[2]; /*!< DCI Format 2/2A info per TB */
} TfuDciFormat2AllocInfo;
{
TfuDciFormat2AllocInfo allocInfo; /*!< Allocation Information to map
data on PDSCH */
- U8 tpcCmd; /*!< 2 bits for TPC command */
+ uint8_t tpcCmd; /*!< 2 bits for TPC command */
/** @{ */
/** @name TFU_TDD */
/** @{ */
#ifdef TFU_TDD
- U8 dai; /*!< The downlink assignment index */
+ uint8_t dai; /*!< The downlink assignment index */
#endif
/** @} */
/** @} */
*/
typedef struct tfuDciFormat3Info
{
- U8 tpcCmd[TFU_MAX_2BIT_TPC]; /*!< 2 bits for TPC command.
+ uint8_t tpcCmd[TFU_MAX_2BIT_TPC]; /*!< 2 bits for TPC command.
LSB corresponds to the 1st bit of the 1st
byte.*/
- U8 isPucch; /*!< 1 if the TPC meant for PUCCH, 0 if the TPC meant for PUSCH */
+ uint8_t isPucch; /*!< 1 if the TPC meant for PUCCH, 0 if the TPC meant for PUSCH */
} TfuDciFormat3Info;
*/
typedef struct tfuDciFormat3AInfo
{
- U8 tpcCmd[TFU_MAX_1BIT_TPC]; /*!< 1 bit for TPC command.
+ uint8_t tpcCmd[TFU_MAX_1BIT_TPC]; /*!< 1 bit for TPC command.
LSB corresponds to the 1st bit of the
1st byte.*/
- U8 isPucch; /*!< 1 if the TPC meant for PUCCH, 0 if the TPC meant for PUSCH */
+ uint8_t isPucch; /*!< 1 if the TPC meant for PUCCH, 0 if the TPC meant for PUSCH */
} TfuDciFormat3AInfo;
typedef struct tfuDciFormat1dAllocInfo
{
Bool isLocal; /*!< TRUE, if localised VRB */
- TknU8 nGap2; /*!< 1 indicates Ngap=Ngap,1 and 2 indicates Ngap,2 */
+ TknUInt8 nGap2; /*!< 1 indicates Ngap=Ngap,1 and 2 indicates Ngap,2 */
TfuAllocMapOrRiv alloc; /*!< Allocation represented as a bit-map or RIV */
- U8 mcs; /*!< 5 bits for MCS */
- U8 rv; /*!< Redundancy version */
- U8 tPmi; /*!< PMI */
+ uint8_t mcs; /*!< 5 bits for MCS */
+ uint8_t rv; /*!< Redundancy version */
+ uint8_t tPmi; /*!< PMI */
} TfuDciFormat1dAllocInfo;
/** @brief This structure contains the information carried by DCI format 1D.
typedef struct tfuDciFormat1dInfo
{
TfuDciFormat1dAllocInfo allocInfo; /*!< Allocation information */
- U8 harqProcId; /*!< HARQ process ID */
+ uint8_t harqProcId; /*!< HARQ process ID */
Bool ndi; /*!< 1 bit for new data indicator */
- U8 tpcCmd; /*!< 2 bits for TPC command */
+ uint8_t tpcCmd; /*!< 2 bits for TPC command */
/** @name TFU_TDD */
/** @{ */
#ifdef TFU_TDD
- U8 dai; /*!< The downlink assignement index */
+ uint8_t dai; /*!< The downlink assignement index */
#endif
/** @} */
- U8 dlPwrOffset; /*!< Downlink power offset */
+ uint8_t dlPwrOffset; /*!< Downlink power offset */
} TfuDciFormat1dInfo;
*/
typedef struct tfuDciFormat1cInfo
{
- TknU8 nGap2; /*!< 1 indicates Ngap=Ngap,1 and 2 indicates Ngap,2 */
+ TknUInt8 nGap2; /*!< 1 indicates Ngap=Ngap,1 and 2 indicates Ngap,2 */
TfuAllocMapOrRiv alloc; /*!< Allocation represented as a bit-map or RIV */
- U8 iTbs; /*!< 5 bits for I-tbs */
+ uint8_t iTbs; /*!< 5 bits for I-tbs */
} TfuDciFormat1cInfo;
typedef struct tfuDciFormat1bAllocInfo
{
Bool isLocal; /*!< TRUE, if localised VRB */
- TknU8 nGap2; /*!< 1 indicates Ngap=Ngap,1 and 2 indicates Ngap,2 */
+ TknUInt8 nGap2; /*!< 1 indicates Ngap=Ngap,1 and 2 indicates Ngap,2 */
TfuAllocMapOrRiv alloc; /*!< Allocation represented as a bit-map or RIV */
- U8 mcs; /*!< 5 bits for MCS */
- U8 rv; /*!< Redundancy version */
- U8 harqProcId; /*!< HARQ process ID */
+ uint8_t mcs; /*!< 5 bits for MCS */
+ uint8_t rv; /*!< Redundancy version */
+ uint8_t harqProcId; /*!< HARQ process ID */
Bool ndi; /*!< 1 bit for new data indicator */
- U8 tPmi; /*!< PMI */
+ uint8_t tPmi; /*!< PMI */
Bool pmiCfm; /*!< PMI confirmation bit */
} TfuDciFormat1bAllocInfo;
*/
typedef struct tfuPdcchOrderInfo
{
- U8 preambleIdx; /*!< Dedicated preamble index */
- U8 prachMaskIdx; /*!< PRACH Mask index used to determine the
+ uint8_t preambleIdx; /*!< Dedicated preamble index */
+ uint8_t prachMaskIdx; /*!< PRACH Mask index used to determine the
subframe to be used for RACH */
} TfuPdcchOrderInfo;
typedef struct tfuDciFormat1aAllocInfo
{
Bool isLocal; /*!< TRUE, if localised VRB */
- TknU8 nGap2; /*!< 1 indicates Ngap=Ngap,1 and 2 indicates Ngap,2 */
+ TknUInt8 nGap2; /*!< 1 indicates Ngap=Ngap,1 and 2 indicates Ngap,2 */
TfuAllocMapOrRiv alloc; /*!< Allocation carries RIV or a bitmap */
- U8 mcs; /*!< 5 bits for MCS */
- U8 rv; /*!< Redundancy version */
- TknU8 harqProcId; /*!< HARQ process ID. Reserved
+ uint8_t mcs; /*!< 5 bits for MCS */
+ uint8_t rv; /*!< Redundancy version */
+ TknUInt8 harqProcId; /*!< HARQ process ID. Reserved
if RA-RNTI, P-RNTI, SI-RNTI is used */
Bool ndi; /*!< 1 bit for new data indicator */
} TfuDciFormat1aAllocInfo;
/** @name TFU_TDD */
/** @{ */
#ifdef TFU_TDD
- TknU8 dai; /*!< The downlink assignement index. Reserved
+ TknUInt8 dai; /*!< The downlink assignement index. Reserved
if RA-RNTI, P-RNTI, SI-RNTI is used. */
#endif
/** @} */
- U8 tpcCmd; /*!< 2 bits for TPC command. */
+ uint8_t tpcCmd; /*!< 2 bits for TPC command. */
Bool isTBMsg4; /*!< This field is added to help counting num of Msg4 Tx failures */
} Tfudciformat1aPdsch;
/*tfu_x_001.main_6 - Added for SPS support*/
/** @name TFU_TDD */
/** @{ */
#ifdef TFU_TDD
- U8 dai; /*!< The downlink assignement index */
+ uint8_t dai; /*!< The downlink assignement index */
#endif
/** @} */
- U8 tpcCmd; /*!< 2 bits for TPC command */
+ uint8_t tpcCmd; /*!< 2 bits for TPC command */
} TfuDciFormat1bInfo;
#ifdef EMTC_ENABLE
/** @brief This structure contains the information needed to convey DCI format 6-0A.
typedef struct tfuDciFormat60aInfo
{
Bool hoppingEnbld; /*!< TRUE, if hopping is enabled */
- U32 riv; /*!<9 bits, type2 allocation, RIV as defined in 213 section 7.1.6.3. */
- U8 mcs; /*!< 4 bits for MCS and RV */
- U8 rep; /*!< 2 bits, repetion number */
- U8 hqProcId; /*!< HARQ process ID */
+ uint32_t riv; /*!<9 bits, type2 allocation, RIV as defined in 213 section 7.1.6.3. */
+ uint8_t mcs; /*!< 4 bits for MCS and RV */
+ uint8_t rep; /*!< 2 bits, repetion number */
+ uint8_t hqProcId; /*!< HARQ process ID */
Bool ndi; /*!< 1 bit for new data indicator */
- U8 rv; /*!< 2 bits - Redundancy version */
- U8 tpcCmd; /*!< 2 bits for TPC command */
+ uint8_t rv; /*!< 2 bits - Redundancy version */
+ uint8_t tpcCmd; /*!< 2 bits for TPC command */
#ifdef TFU_TDD
/* TODO_Mavericks: Check if DAI is required for FDD also */
- U8 ulIdx; /*!< UL index applicable only for TDD */
- U8 dai; /*!< The downlink assignement index */
+ uint8_t ulIdx; /*!< UL index applicable only for TDD */
+ uint8_t dai; /*!< The downlink assignement index */
#endif
Bool cqiReq; /*!< 1 bit for CQI */
Bool isSrs; /*!< 1 bit for SRS */
- U8 dciRep; /*!< 2 bits for DCI Subframe repetition */
+ uint8_t dciRep; /*!< 2 bits for DCI Subframe repetition */
} TfuDciFormat60aInfo;
/** @brief This structure contains only the allocation information, that is part
* of DCI format 6-1A.
*/
typedef struct tfuDciFormat61AllocInfo
{
- U32 riv; /*!<9 bits, type2 allocation, RIV as defined in 213 section 7.1.6.3. */
+ uint32_t riv; /*!<9 bits, type2 allocation, RIV as defined in 213 section 7.1.6.3. */
/* TODO_EMTC: Add start RB, number of RB, Narrow band if required */
- U8 harqProcId; /*!< HARQ process ID */
+ uint8_t harqProcId; /*!< HARQ process ID */
Bool ndi; /*!< 1 bit for new data indicator */
- U8 mcs; /*!< 4 bits for MCS and RV */
- U8 rv; /*!< 2 bits - Redundancy version */
- U32 scramblerInitValue; /*!< Scrambler init(Cinit) value as per 36.211 */
+ uint8_t mcs; /*!< 4 bits for MCS and RV */
+ uint8_t rv; /*!< 2 bits - Redundancy version */
+ uint32_t scramblerInitValue; /*!< Scrambler init(Cinit) value as per 36.211 */
} TfuDciFormat61AllocInfo;
/** @brief This structure contains the information carried in DCI format 6-1A
{
TfuDciFormat61AllocInfo allocInfo; /* Allocation info for 6-1A */
Bool hoppingEnbld; /*!< TRUE, if hopping is enabled */
- U8 rep; /*!< 2 bits, repetion number */
- U8 tpcCmd; /*!< 2 bits for TPC command */
+ uint8_t rep; /*!< 2 bits, repetion number */
+ uint8_t tpcCmd; /*!< 2 bits for TPC command */
#ifdef TFU_TDD
/* TODO_Maveri: Check if DAI is required for FDD also */
- U8 dai; /*!< The downlink assignement index */
+ uint8_t dai; /*!< The downlink assignement index */
#endif
- U8 antPortAndScrId; /*!< 2 bits - Antenna port(s) and scrambling identity */
+ uint8_t antPortAndScrId; /*!< 2 bits - Antenna port(s) and scrambling identity */
Bool isSrs; /*!< 1 bit for SRS */
- U8 tPmi; /*!< 2 0r 4 bits: TPMI information for precoding */
- U8 pmiCfm; /*!< 1 bit, PMI confirmation for precoding */
- U8 harqAckOffst; /*!< 2 bits, HARQ-ACK resource offset */
- U8 dciRep; /*!< 2 bits for DCI Subframe repetition */
+ uint8_t tPmi; /*!< 2 0r 4 bits: TPMI information for precoding */
+ uint8_t pmiCfm; /*!< 1 bit, PMI confirmation for precoding */
+ uint8_t harqAckOffst; /*!< 2 bits, HARQ-ACK resource offset */
+ uint8_t dciRep; /*!< 2 bits for DCI Subframe repetition */
Bool isTBMsg4; /*!< This field is added to help counting num of Msg4 Tx failures */
} Tfudciformat61aPdsch;
typedef struct tfuPdcchOrderInfoEmtc
{
- U32 riv; /*!<9 bits, type2 allocation, RIV as defined in 213 section 7.1.6.3. */
- U8 preambleIdx; /*!< Dedicated preamble index */
- U8 prachMaskIdx; /*!< PRACH Mask index used to determine the
+ uint32_t riv; /*!<9 bits, type2 allocation, RIV as defined in 213 section 7.1.6.3. */
+ uint8_t preambleIdx; /*!< Dedicated preamble index */
+ uint8_t prachMaskIdx; /*!< PRACH Mask index used to determine the
subframe to be used for RACH */
- U8 ceLevel; /*!< 2 bits, Starting CE level */
+ uint8_t ceLevel; /*!< 2 bits, Starting CE level */
} TfuPdcchOrderInfoEmtc;
/** @brief This structure contains the information needed to convey DCI format 6-1A.
typedef struct tfuDciFormatForEmtcBcch
{
- U8 mcs;
- U16 numOfRb;
- U16 rbStart;
+ uint8_t mcs;
+ uint16_t numOfRb;
+ uint16_t rbStart;
}TfuDciFormatForEmtcBcch;
typedef struct tfuDirectIndication
{
- U8 directInd; /*!< 8 bit direct Indication Information*/
+ uint8_t directInd; /*!< 8 bit direct Indication Information*/
}TfuDirectIndication;
typedef struct tfuDciFormat62AllocInfo
{
- U8 riv; /*!< Narrow Band Index*/
- U8 mcs; /*!<MCS */
- U32 scramblerInitValue; /*!< Scrambler init(Cinit) value as per 36.211 */
- U8 rv; /*!<Redundancy version */
+ uint8_t riv; /*!< Narrow Band Index*/
+ uint8_t mcs; /*!<MCS */
+ uint32_t scramblerInitValue; /*!< Scrambler init(Cinit) value as per 36.211 */
+ uint8_t rv; /*!<Redundancy version */
}TfuDciFormat62AllocInfo;
typedef struct tfudciformat62Pdsch
{
TfuDciFormat62AllocInfo format62AllocInfo;
- U8 repNum; /*!< 3 bits, repetion number */
- U8 dciSubRepNum; /*!< 2 bits for DCI Subframe repetition */
+ uint8_t repNum; /*!< 3 bits, repetion number */
+ uint8_t dciSubRepNum; /*!< 2 bits for DCI Subframe repetition */
}Tfudciformat62Pdsch;
*/
typedef struct tfuSubbandInfo
{
- U8 rbStart; /*!< Starting RB */
- U8 numRb; /*!< Number of RBs */
+ uint8_t rbStart; /*!< Starting RB */
+ uint8_t numRb; /*!< Number of RBs */
} TfuSubbandInfo;
/** @brief This structure is used to convey the sub-band CQI reported.
typedef struct tfuSubbandDlCqiInfo
{
TfuSubbandInfo subband; /*!< Sub-band information */
- U8 cqiIdx[TFU_MAX_TB]; /*!< Sub-band CQI index per CW */
+ uint8_t cqiIdx[TFU_MAX_TB]; /*!< Sub-band CQI index per CW */
} TfuSubbandDlCqiInfo;
/** @} */
typedef struct tfuSubbandCqiInfo
{
TfuSubbandInfo subband; /*!< Sub-band information */
- U8 cqiIdx; /*!< CQI index */
+ uint8_t cqiIdx; /*!< CQI index */
} TfuSubbandCqiInfo;
/** @brief This structure conveys the CCE information.
*/
typedef struct tfuPdcchCceInfo
{
- U8 cceIdx; /*!< CCE index */
+ uint8_t cceIdx; /*!< CCE index */
CmLteAggrLvl aggrLvl; /*!< Aggregation level */
} TfuPdcchCceInfo;
TfuRptType type; /*!< Either RI or CQI reported */
union
{
- U8 ri; /*!< One RI assuming transmission on S sub-bands */
- U8 cqi; /*!< Wide-band CQI assuming transmission on S sub-bands */
+ uint8_t ri; /*!< One RI assuming transmission on S sub-bands */
+ uint8_t cqi; /*!< Wide-band CQI assuming transmission on S sub-bands */
}u;
} TfuCqiPucchMode10;
*/
typedef struct tfuCqiMode11Cqi
{
- U8 cqi; /*!< Wide-band CQI */
- U8 pmi; /*!< PMI */
- TknU8 wideDiffCqi; /*!< Wide-band differential CQI */
+ uint8_t cqi; /*!< Wide-band CQI */
+ uint8_t pmi; /*!< PMI */
+ TknUInt8 wideDiffCqi; /*!< Wide-band differential CQI */
} TfuCqiMode11Cqi;
/** @brief This structure maps to the CQI mode 11. The report can either
TfuRptType type; /*!< Either RI or CQI reported */
union
{
- U8 ri; /*!< One RI assuming transmission on S sub-bands */
+ uint8_t ri; /*!< One RI assuming transmission on S sub-bands */
TfuCqiMode11Cqi cqi; /*!< CQI assuming transmission on S sub-bands */
}u;
} TfuCqiPucchMode11;
*/
typedef struct tfuCqiMode20SubCqi
{
- U8 cqi; /*!< CQI value */
- U8 l; /*!< L bit sub-band label */
+ uint8_t cqi; /*!< CQI value */
+ uint8_t l; /*!< L bit sub-band label */
} TfuCqiMode20SubCqi;
/** @brief This structure contains Mode 20 CQI report. It can either be a
Bool isWideband; /*!< TRUE, if wide-band CQI is reported */
union
{
- U8 wideCqi; /*!< Single Wide-band CQI */
+ uint8_t wideCqi; /*!< Single Wide-band CQI */
TfuCqiMode20SubCqi subCqi; /*!< Sub-band CQI */
}u;
} TfuCqiMode20Cqi;
TfuRptType type; /*!< Either RI or CQI reported */
union
{
- U8 ri; /*!< One RI assuming transmission on S sub-bands */
+ uint8_t ri; /*!< One RI assuming transmission on S sub-bands */
TfuCqiMode20Cqi cqi; /*!< CQI assuming transmission on S sub-bands */
}u;
} TfuCqiPucchMode20;
*/
typedef struct tfuCqiMode21SubCqi
{
- U8 cqi; /*!< CQI */
- U8 l; /*!< L bit sub-band label */
- TknU8 diffCqi; /*!< Optional Differential CQI */
+ uint8_t cqi; /*!< CQI */
+ uint8_t l; /*!< L bit sub-band label */
+ TknUInt8 diffCqi; /*!< Optional Differential CQI */
} TfuCqiMode21SubCqi;
*/
typedef struct tfuCqiMode21WideCqi
{
- U8 cqi; /*!< CQI */
- U8 pmi; /*!< PMI */
- TknU8 diffCqi; /*!< Optional Differential CQI */
+ uint8_t cqi; /*!< CQI */
+ uint8_t pmi; /*!< PMI */
+ TknUInt8 diffCqi; /*!< Optional Differential CQI */
} TfuCqiMode21WideCqi;
TfuRptType type; /*!< Either RI or CQI reported */
union
{
- U8 ri; /*!< One RI assuming transmission on S sub-bands */
+ uint8_t ri; /*!< One RI assuming transmission on S sub-bands */
TfuCqiMode21Cqi cqi; /*!< CQI assuming transmission on S sub-bands */
}u;
} TfuCqiPucchMode21;
*/
typedef struct tfuDlCqiPucch
{
- U8 cellIdx;
+ uint8_t cellIdx;
TfuDlCqiPucchMode mode; /*!< PUSCH CQI mode */
union
{
*/
typedef struct tfuSubbandMode12
{
- U8 pmi; /*!< PMI for this sub-band */
+ uint8_t pmi; /*!< PMI for this sub-band */
TfuSubbandInfo subBand; /*!< Sub-band information start and length */
} TfuSubbandMode12;
*/
typedef struct tfuCqiPuschMode12
{
- U8 numSubband; /*!< Number of sub-bands */
- U8 cqiIdx[TFU_MAX_TB]; /*!< Single Wide-band CQI per
+ uint8_t numSubband; /*!< Number of sub-bands */
+ uint8_t cqiIdx[TFU_MAX_TB]; /*!< Single Wide-band CQI per
codeword */
TfuSubbandMode12 subbandArr[TFU_MAX_DL_SUBBAND]; /*!< Sub-band information array */
} TfuCqiPuschMode12;
*/
typedef struct tfuCqiPuschMode20
{
- U8 cqiIdx; /*!< CQI index transmission
+ uint8_t cqiIdx; /*!< CQI index transmission
over M sub-bands */
- U8 wideBandCqi; /*!< Wide-band CQI index, that is,
+ uint8_t wideBandCqi; /*!< Wide-band CQI index, that is,
transmission over S sub-bands */
- U8 numSubband; /*!< Number of sub-bands */
+ uint8_t numSubband; /*!< Number of sub-bands */
TfuSubbandInfo subbandArr[TFU_MAX_DL_SUBBAND]; /*!< Sub-band information array */
} TfuCqiPuschMode20;
*/
typedef struct tfuCqiPuschMode22
{
- U8 cqi[TFU_MAX_TB]; /*!< CQI index over M preferred
+ uint8_t cqi[TFU_MAX_TB]; /*!< CQI index over M preferred
Sub-bands */
- U8 pmi; /*!< PMI preferred PMI over M
+ uint8_t pmi; /*!< PMI preferred PMI over M
sub-bands */
- U8 wideBandCqi[TFU_MAX_TB]; /*!< Wide-band CQI */
- U8 wideBandPmi; /*!< PMI */
- U8 numSubband; /*!< Number of sub-bands, that is, M mentioned in 213, each of size k */
+ uint8_t wideBandCqi[TFU_MAX_TB]; /*!< Wide-band CQI */
+ uint8_t wideBandPmi; /*!< PMI */
+ uint8_t numSubband; /*!< Number of sub-bands, that is, M mentioned in 213, each of size k */
TfuSubbandInfo subbandArr[TFU_MAX_DL_SUBBAND]; /*!< Sub-band information array */
} TfuCqiPuschMode22;
*/
typedef struct tfuSubbandMode30
{
- U8 cqi; /*!< CQI for this sub-band */
+ uint8_t cqi; /*!< CQI for this sub-band */
TfuSubbandInfo subBand; /*!< Sub-band information start and length. */
} TfuSubbandMode30;
*/
typedef struct tfuCqiPuschMode30
{
- U8 wideBandCqi; /*!< Wide-band CQI */
- U8 numSubband; /*!< Number of sub-bands */
+ uint8_t wideBandCqi; /*!< Wide-band CQI */
+ uint8_t numSubband; /*!< Number of sub-bands */
TfuSubbandMode30 subbandArr[TFU_MAX_DL_SUBBAND]; /*!< Sub-band information array */
} TfuCqiPuschMode30;
*/
typedef struct tfuSubbandMode31
{
- U8 cqi[TFU_MAX_TB]; /*!< CQI for this sub-band */
+ uint8_t cqi[TFU_MAX_TB]; /*!< CQI for this sub-band */
TfuSubbandInfo subBand; /*!< Sub-band information start and length */
} TfuSubbandMode31;
*/
typedef struct tfuCqiPuschMode31
{
- U8 pmi; /*!< PMI */
- U8 wideBandCqi[TFU_MAX_TB]; /*!< Wide-band CQI per CW */
- U8 numSubband; /*!< Number of sub-bands */
+ uint8_t pmi; /*!< PMI */
+ uint8_t wideBandCqi[TFU_MAX_TB]; /*!< Wide-band CQI per CW */
+ uint8_t numSubband; /*!< Number of sub-bands */
TfuSubbandDlCqiInfo subbandCqiArr[TFU_MAX_DL_SUBBAND]; /*!< Array of
sub-bands and CQI for
each of them */
*/
typedef struct tfuDlCqiPusch
{
- U8 cellIdx;
+ uint8_t cellIdx;
TfuDlCqiPuschMode mode; /*!< PUSCH CQI mode */
- TknU8 ri; /*!< Rank Indicator for TM 3,4 */
+ TknUInt8 ri; /*!< Rank Indicator for TM 3,4 */
union
{
TfuCqiPuschMode12 mode12Info; /*!< Mode 1-2 information */
{
CmLList lnk; /*!< Link to the list of rerports */
CmLteRnti ueId; /*!< CRNTI */
- U16 dopEst; /*!< Doppler estimation [0-255] */
- U16 ta; /*!< Timing advance for the UE */
- U8 numRbs; /*!< Number of RBs to be reported for this UE */
- U8 rbStart; /*!< Starting RB to be reported */
- U8 snr[TFU_MAX_UL_RB]; /*!< snr for each RB */
+ uint16_t dopEst; /*!< Doppler estimation [0-255] */
+ uint16_t ta; /*!< Timing advance for the UE */
+ uint8_t numRbs; /*!< Number of RBs to be reported for this UE */
+ uint8_t rbStart; /*!< Starting RB to be reported */
+ uint8_t snr[TFU_MAX_UL_RB]; /*!< snr for each RB */
Bool wideCqiPres; /*!< Flag to indicate Wide-band CQI */
- U8 wideCqi; /*!< Wide-band CQI for an UL channel */
+ uint8_t wideCqi; /*!< Wide-band CQI for an UL channel */
} TfuSrsRpt;
{
CmLList lnk; /*!< Link to the list of reports */
CmLteRnti crnti; /*!< CRNTI of the UE */
- U8 numBits; /*!< Number of valid CQI bits */
+ uint8_t numBits; /*!< Number of valid CQI bits */
#ifdef TFU_5GTF
- U32 uciPayload; /*!< Raw UCI bit payload */
+ uint32_t uciPayload; /*!< Raw UCI bit payload */
#else
- U8 cqiConfBitMask;
- U8 cqiBits[TFU_MAX_CQI_BYTES]; /*!< An array of bits
+ uint8_t cqiConfBitMask;
+ uint8_t cqiBits[TFU_MAX_CQI_BYTES]; /*!< An array of bits
corresponding to the Raw CQI report */
- U8 ri[CM_LTE_MAX_CELLS]; /*!< Array of bits comprising of a Rank */
+ uint8_t ri[CM_LTE_MAX_CELLS]; /*!< Array of bits comprising of a Rank */
#endif
} TfuRawCqiRpt;
typedef struct tfuUePucchHqRecpInfo
{
TfuAckNackMode hqFdbkMode; /*!< Feedback mode in TDD */
- U8 hqSz; /*!< Size of feedback in bits */
- U8 pucchResCnt; /*!< Number of ACK/NACK responses
+ uint8_t hqSz; /*!< Size of feedback in bits */
+ uint8_t pucchResCnt; /*!< Number of ACK/NACK responses
received in this subframe [0-4] */
- U16 hqRes[TFU_MAX_HQ_RES]; /*!< (n^1PUCCH(0-3))
+ uint16_t hqRes[TFU_MAX_HQ_RES]; /*!< (n^1PUCCH(0-3))
values [0-2047] */
- U8 a; /*!< A value to interpret Hq feedback */
+ uint8_t a; /*!< A value to interpret Hq feedback */
} TfuUePucchHqRecpInfo;
/** @brief This structure is sent from scheduler to PHY in order to request the
*/
typedef struct tfuUePucchSrRecpInfo
{
- U16 n1PucchIdx; /*!< (n^1PUCCH) value [0-2047] */
+ uint16_t n1PucchIdx; /*!< (n^1PUCCH) value [0-2047] */
} TfuUePucchSrRecpInfo;
/** @brief This structure is sent from scheduler to PHY in order to request the
*/
typedef struct tfuUePucchCqiRecpInfo
{
- U16 n2PucchIdx; /*!< (n^2PUCCH) value[0-1185] */
- U8 cqiPmiSz; /*!< DL CQI/PMI size in bits [0-255] */
+ uint16_t n2PucchIdx; /*!< (n^2PUCCH) value[0-1185] */
+ uint8_t cqiPmiSz; /*!< DL CQI/PMI size in bits [0-255] */
} TfuUePucchCqiRecpInfo;
/** Different values for UL SRS BW information */
{
TfuUlSrsBwInfo srsBw; /*!< UE specific SRS Bandwidth (B,srs)
parameter. Given by RRC[0-3] */
- U8 nRrc; /*!< Frequency Domain position given by
+ uint8_t nRrc; /*!< Frequency Domain position given by
RRC per UE.[0-23]*/
TfuUlSrsHoBwInfo srsHopBw; /*!< SRS Hopping BW given by RRC per
UE (b,Hop)[0-3] */
- U8 transComb; /*!< Frequency location given by RRC
+ uint8_t transComb; /*!< Frequency location given by RRC
per UE (k,TC) [0-1] */
- U16 srsCfgIdx; /*!< (Isrs) - defines SRS periodicity
+ uint16_t srsCfgIdx; /*!< (Isrs) - defines SRS periodicity
and subframe offset,given by RRC
[0-1023] */
TfuUlSrsCycShiftInfo srsCyclicShft; /*!< (n^cs,srs) given by RRC [0-7] */
- /*Need to add U8 AntPort for Rel10 when SRS is supported */
+ /*Need to add uint8_t AntPort for Rel10 when SRS is supported */
} TfuUePucchSrsRecpInfo;
#ifdef TFU_5GTF
*/
typedef struct tfuUePucchBsiBriRecpInfo
{
- U8 puschFlag; /*!< UCI is carried in xPUSCH or not
+ uint8_t puschFlag; /*!< UCI is carried in xPUSCH or not
0 -> UCI is in xPUCCH,
1 -> UCI is in xPUSCH */
- U8 pucchIndex; /*!< Frequency resource index of xPUCCH
+ uint8_t pucchIndex; /*!< Frequency resource index of xPUCCH
for UCI report. [0-15] */
- U8 SCID; /*!< SCID : 0 or 1 */
- U8 bsiRpt; /*!< total num of BSI report[0,1,2,4] */
- U8 briRpt; /*!< total num of BRI report[0,1,2,4] */
+ uint8_t SCID; /*!< SCID : 0 or 1 */
+ uint8_t bsiRpt; /*!< total num of BSI report[0,1,2,4] */
+ uint8_t briRpt; /*!< total num of BRI report[0,1,2,4] */
} TfuUePucchBsiBriRecpInfo;
/** @brief This structure is sent from scheduler to PHY in order to request the
*/
typedef struct tfuUePucchUciRecpInfo
{
- U8 numBits; /*!< 1-22, 1-Only HQ, 5-Only CQI/RI, 6- both HQ CQI/RI */
- U8 pucchIndex; /*!< 0-15, PUCCH Freq Res Idx */
- U8 SCID; /*!< SCID : 0 or 1 */
+ uint8_t numBits; /*!< 1-22, 1-Only HQ, 5-Only CQI/RI, 6- both HQ CQI/RI */
+ uint8_t pucchIndex; /*!< 0-15, PUCCH Freq Res Idx */
+ uint8_t SCID; /*!< SCID : 0 or 1 */
} TfuUePucchUciRecpInfo;
#endif
TfuUePucchUciRecpInfo uciPduInfo; /*!< Info needed to receive HQ/CQI/RI.*/
#endif
#ifdef EMTC_ENABLE
- U16 format1aRepNumber;
- U16 format2aRepNumber;
- U32 catMScramblerInitVal;
+ uint16_t format1aRepNumber;
+ uint16_t format2aRepNumber;
+ uint32_t catMScramblerInitVal;
#endif
} TfuUePucchRecpReq;
*/
typedef struct tfuUeUlSchRecpInfo
{
- U16 size; /*!< Length of the Data in bytes*/
+ uint16_t size; /*!< Length of the Data in bytes*/
/* ToDo : rbStart and numRb is kept for legacy, need to remove later */
- U8 rbStart; /*!< Start of Resource Block of
+ uint8_t rbStart; /*!< Start of Resource Block of
allocation */
- U8 numRb; /*!< Number of RBs allocated */
+ uint8_t numRb; /*!< Number of RBs allocated */
TfuModScheme modType; /*!< Modulation order */
- U8 nDmrs; /*!< 3 bits for DMRS cyclic shift */
+ uint8_t nDmrs; /*!< 3 bits for DMRS cyclic shift */
Bool hoppingEnbld; /*!< TRUE, if hopping is enabled */
- U8 hoppingBits; /*!< Hopping bits as mentioned in
+ uint8_t hoppingBits; /*!< Hopping bits as mentioned in
213 8.4 */
Bool isRtx; /*!< TRUE, if this is a retx */
Bool ndi; /*!< New Data Indication */
- U8 rv; /*!< Redundancy version */
- U8 harqProcId; /*!< HARQ process ID */
- U8 txMode; /*!< UE's UL transmission mode:
+ uint8_t rv; /*!< Redundancy version */
+ uint8_t harqProcId; /*!< HARQ process ID */
+ uint8_t txMode; /*!< UE's UL transmission mode:
0 = SISO/SIMO, 1 = MIMO */
- U8 crntTxNb; /*!< Current Harq Tx Cntr of this TB.
+ uint8_t crntTxNb; /*!< Current Harq Tx Cntr of this TB.
Valid if frequency hopping is
enabled */
Bool nSrs; /*!< Indicates if RBs for this TB
overlap with SRS configuration.
FALSE = No overlap,TRUE=overlap */
- U8 mcs; /*!< MCS */
+ uint8_t mcs; /*!< MCS */
#ifdef EMTC_ENABLE
- U32 repetitionNumber;
- U32 scramblerInitValue;
+ uint32_t repetitionNumber;
+ uint32_t scramblerInitValue;
#endif
#ifdef TFU_5GTF
- U8 rbgStart; /* The starting resource block group for
+ uint8_t rbgStart; /* The starting resource block group for
this xPUSCH allocation.*/
- U8 numRbg; /* The number of resource block groups
+ uint8_t numRbg; /* The number of resource block groups
allocated to this ULSCH grant.*/
- U8 xPUSCHRange; /* 0 : the stopping of xPUSCH is the 12th symbol,
+ uint8_t xPUSCHRange; /* 0 : the stopping of xPUSCH is the 12th symbol,
1 : the stopping of xPUSCH is the 13th symbol
2 : the stopping of xPUSCH is the final (14th) symbol */
- U8 nAntPortLayer;/* 0:1 Layer, port 40 1:1 Layer, port 41 2:1 Layer, port 42
+ uint8_t nAntPortLayer;/* 0:1 Layer, port 40 1:1 Layer, port 41 2:1 Layer, port 42
3:1 Layer, port 43 4:2 Layers, ports {40, 41}
5:2 Layers, ports {42, 43} */
- U8 SCID; /*SCID : 0 or 1 */
- U8 PMI; /* Precoding matrix indicator, see V5G.211 section Table 5.3.3A.2-1 */
+ uint8_t SCID; /*SCID : 0 or 1 */
+ uint8_t PMI; /* Precoding matrix indicator, see V5G.211 section Table 5.3.3A.2-1 */
Bool uciWoTBFlag; /* 0: UCI without transmit block
1: with transmit block */
- U8 beamIndex; /* Receiving beam index Value: 0->7 */
+ uint8_t beamIndex; /* Receiving beam index Value: 0->7 */
#endif
} TfuUeUlSchRecpInfo;
*/
typedef struct tfuUePuschCqiRecpInfo
{
- U8 reportType; /*! Type of CSI report.
+ uint8_t reportType; /*! Type of CSI report.
0 = periodic report.
1 = aperiodic report */
- U8 cCNum; /*! The number of CC in the aperiodic report.
+ uint8_t cCNum; /*! The number of CC in the aperiodic report.
Value: 1->5 */
- U8 cqiPmiSzR1[CM_LTE_MAX_CELLS]; /*!< Size of DL CQI/PMI in bits for
+ uint8_t cqiPmiSzR1[CM_LTE_MAX_CELLS]; /*!< Size of DL CQI/PMI in bits for
rank 1 report[0-255] */
- U8 cqiPmiSzRn1[CM_LTE_MAX_CELLS]; /*!< Size of DL CQI/PMI in bits for
+ uint8_t cqiPmiSzRn1[CM_LTE_MAX_CELLS]; /*!< Size of DL CQI/PMI in bits for
rank > 1 report[0-255] */
- TknU8 riSz[CM_LTE_MAX_CELLS]; /*!< Size of RI in bits[1-2]. Value will
+ TknUInt8 riSz[CM_LTE_MAX_CELLS]; /*!< Size of RI in bits[1-2]. Value will
be 0 (present flag-false) in frames
with no RI Occasion*/
- U8 cqiBetaOff; /*!< Beta offset for CQI[0-15]. Given
+ uint8_t cqiBetaOff; /*!< Beta offset for CQI[0-15]. Given
by RRC */
- U8 riBetaOff; /*!< Beta offset for RI[0-15]. Given
+ uint8_t riBetaOff; /*!< Beta offset for RI[0-15]. Given
by RRC */
} TfuUePuschCqiRecpInfo;
*/
typedef struct tfuUePuschHqRecpInfo
{
- U8 hqSz; /*!< Number of feedback bits:
+ uint8_t hqSz; /*!< Number of feedback bits:
FDD- 1 or 2 TDD- 1 to 4*/
- U8 hqBetaOff; /*!< Beta offset for Harq[0-15]. Given
+ uint8_t hqBetaOff; /*!< Beta offset for Harq[0-15]. Given
by RRC */
#ifdef TFU_TDD
TfuAckNackMode hqFdbkMode; /*!< Feedback mode in TDD */
- U8 nBundled; /*!< nBundled value intended for PHY */
- U8 ulDai; /*!< Ul Dai */
+ uint8_t nBundled; /*!< nBundled value intended for PHY */
+ uint8_t ulDai; /*!< Ul Dai */
#endif
} TfuUePuschHqRecpInfo;
in rcpInfo */
TfuUePuschSrsRecpInfo srsInfo; /*!< Info needed to receive SRS. Valid
if SRS is included in rcpInfo */
- TknU8 initialNSrs; /*!< Not present in case of only data
+ TknUInt8 initialNSrs; /*!< Not present in case of only data
[0/1]. 0 = last OFDM symbol is
not punctured. 1 = last OFDM
symbol is punctured */
- TknU8 initialNumRbs; /*!< Number of RBs for initial
+ TknUInt8 initialNumRbs; /*!< Number of RBs for initial
transmission of this TB. Not
present in case of only data */
} TfuUePuschRecpReq;
CmLList lnk; /*!< Link of Linked List */
CmLteRnti rnti; /*!< RNTI of the scheduled UE */
#ifdef TFU_5GTF
- U8 groupId; /*!< UE Group ID */
+ uint8_t groupId; /*!< UE Group ID */
#endif
TfuRecpReqType type; /*!< Type indicating PUCCH or PUSCH */
union
/** @name TFU_TDD */
/** @{ */
#ifndef TFU_TDD
- U16 nCce; /*!< Number of first CCE used for transmission of
+ uint16_t nCce; /*!< Number of first CCE used for transmission of
the corresponding DCI assignment. Used to decode
HARQ-ACK. */
#else
- U16 nCce[TFU_MAX_M]; /*!< nCCE is an array in the case of TDD
+ uint16_t nCce[TFU_MAX_M]; /*!< nCCE is an array in the case of TDD
HARQ ACK multiplexing. This value is
needed for the calculation of
(n^1 PUCCH,i) for i = {0,1,2,3} */
#endif
/** @} */
- U16 n1Pucch; /*!< n1 PUCCH for ACK NACK repetition.
+ uint16_t n1Pucch; /*!< n1 PUCCH for ACK NACK repetition.
This is the resource that UE must
transmit the HARQ Feedback except
the first one. */
/** @name TFU_TDD */
/** @{ */
#ifdef TFU_TDD
- U8 multCnt; /*!< Number of ACK/NACK resources present */
- U8 M; /*!< Number of elements in the set K - tb.
+ uint8_t multCnt; /*!< Number of ACK/NACK resources present */
+ uint8_t M; /*!< Number of elements in the set K - tb.
10.1-1 213 */
- U8 m[TFU_MAX_M]; /*!< Values utilized for TDD HARQ-ACK bundling
+ uint8_t m[TFU_MAX_M]; /*!< Values utilized for TDD HARQ-ACK bundling
mode */
- U8 p[TFU_MAX_M]; /*!< "p" from 10.1 in 213 */
+ uint8_t p[TFU_MAX_M]; /*!< "p" from 10.1 in 213 */
#endif
/** @} */
} TfuUePucchRecpReq;
typedef struct tfuUeMsg3RecpReq
{
Bool hoppingEnbld; /*!< TRUE, if hopping is enabled */
- U8 rbStart; /*!< Start of Resource Block of allocation */
- U8 numRb; /*!< Number of RBs allocated */
- U8 mcs; /*!< 3 bits for MCS */
+ uint8_t rbStart; /*!< Start of Resource Block of allocation */
+ uint8_t numRb; /*!< Number of RBs allocated */
+ uint8_t mcs; /*!< 3 bits for MCS */
Bool expCqi; /*!< TRUE, if CQI report along
with PUSCH data is expected */
Bool ulDelay; /*!< UL Delay bit 6.2 of 213 */
* Non-adaptive retransmission is implemented */
Bool isRtx; /*!< TRUE, if this is a Msg3 retransmission */
/*ccpu00128993 - ADD - fix for msg3 softcombining bug*/
- U8 harqProcId; /*!< HARQ process ID */
+ uint8_t harqProcId; /*!< HARQ process ID */
Bool ndi; /*!< 1 bit for new data indicator */
- U8 rv; /*!< Redundancy version */
- U8 nDmrs; /*!< 3 bits for DMRS cyclic shift */
+ uint8_t rv; /*!< Redundancy version */
+ uint8_t nDmrs; /*!< 3 bits for DMRS cyclic shift */
/* tfu_x_001.main_2:107387:To include the size and ModOrder in DataRecp Request */
- U16 size; /*!< Length of the Data in bytes */
+ uint16_t size; /*!< Length of the Data in bytes */
TfuModScheme modType; /*!< Modulation order */
} TfuUeMsg3RecpReq;
typedef struct tfuUePuschRecpReq
{
Bool hoppingEnbld; /*!< TRUE, if hopping is enabled */
- U8 hoppingBits; /*!< Hopping bits as mentioned in 213 8.4 */
- U8 rbStart; /*!< Start of Resource Block of allocation */
- U8 numRb; /*!< Number of RBs allocated */
- U8 mcs; /*!< 5 bits for MCS and RV */
- U8 harqProcId; /*!< HARQ process ID */
+ uint8_t hoppingBits; /*!< Hopping bits as mentioned in 213 8.4 */
+ uint8_t rbStart; /*!< Start of Resource Block of allocation */
+ uint8_t numRb; /*!< Number of RBs allocated */
+ uint8_t mcs; /*!< 5 bits for MCS and RV */
+ uint8_t harqProcId; /*!< HARQ process ID */
Bool ndi; /*!< 1 bit for new data indicator */
Bool isRtx; /*!< TRUE, if this is a retransmission */
- U8 rv; /*!< Redundancy version */
- U8 nDmrs; /*!< 3 bits for DMRS cyclic shift */
+ uint8_t rv; /*!< Redundancy version */
+ uint8_t nDmrs; /*!< 3 bits for DMRS cyclic shift */
Bool expCqi; /*!< TRUE, if CQI report along
with PUSCH data is expected */
Bool expHarq; /*!< TRUE, if HARQ feedback along
this value is valid, only if expCqi is
TRUE. */
/* tfu_x_001.main_2:107387:To include the size and ModOrder in DataRecp Req.*/
- U16 size; /*!< Length of the Data in bytes*/
+ uint16_t size; /*!< Length of the Data in bytes*/
TfuModScheme modType; /*!< Modulation order */
} TfuUePuschRecpReq;
{
TfuDlCqiPucch pucchCqi; /*!< PUCCH CQI information */
struct {
- U8 numOfCells;
+ uint8_t numOfCells;
TfuDlCqiPusch puschCqi[CM_LTE_MAX_CELLS]; /*!< PUSCH CQI information */
}pusch;
} TfuDlCqiInfo;
Bool isSpsRnti; /*!< TRUE if rnti is SPS RNTI */
CmLteRnti crnti; /*!< crnti in case rnti is SPS RNTI */
#endif
- U16 nCce; /*!< CCE index */
+ uint16_t nCce; /*!< CCE index */
CmLteAggrLvl aggrLvl; /*!< Aggregation level possible values are
{1, 2, ...,8}. */
- U8 dciNumOfBits; /*!< The size of DCI in bits */
+ uint8_t dciNumOfBits; /*!< The size of DCI in bits */
TfuDciInfo dci; /*!< PDCCH DCI format */
#ifdef EMTC_ENABLE
- U8 distributedAlloc;
- U8 localizedAntPortIndex;
- U16 dmrs_txpowerControl;
- U8 nRBxm;
- U8 startRB;
- U32 scramblerInit;
- U32 demodRSInitValue;
+ uint8_t distributedAlloc;
+ uint8_t localizedAntPortIndex;
+ uint16_t dmrs_txpowerControl;
+ uint8_t nRBxm;
+ uint8_t startRB;
+ uint32_t scramblerInit;
+ uint32_t demodRSInitValue;
#endif
#ifdef TFU_5GTF
- U8 sectorId; /* Sector index of the 5GNB. Value: 0->2 */
- U8 sccIdx; /* Serving Cell index in the given sector. Value: 0->7 */
- U8 grpId; /* Ue group Id */
+ uint8_t sectorId; /* Sector index of the 5GNB. Value: 0->2 */
+ uint8_t sccIdx; /* Serving Cell index in the given sector. Value: 0->7 */
+ uint8_t grpId; /* Ue group Id */
#endif
} TfuPdcchInfo;
typedef struct tfuPhichInfo
{
CmLList lnk; /*!< Link of Linked List */
- U8 rbStart; /*!< Starting RB */
- U8 nDmrs; /*!< DMRS offset index */
+ uint8_t rbStart; /*!< Starting RB */
+ uint8_t nDmrs; /*!< DMRS offset index */
Bool isAck; /*!< TRUE, if ACK, else NACK */
Bool isForMsg3;
#ifdef TFU_TDD
- U8 iPhich; /*!< Needed to Calculate PHICH
+ uint8_t iPhich; /*!< Needed to Calculate PHICH
location. For TDD only */
#endif
/* tfu_x_001.main_8. Added changes of TFU_UPGRADE */
#ifdef TFU_UPGRADE
- U16 txPower; /*!< Offset to the ref. signal power */
+ uint16_t txPower; /*!< Offset to the ref. signal power */
#endif
} TfuPhichInfo;
CmLteCellId cellId; /*!< Cell ID */
CmLteTimingInfo ulTiming; /*!< Timing information for UL PDCCHs and PHICH */
CmLteTimingInfo dlTiming; /*!< Timing information for DL PDCCHs and CFI */
- U8 cfi; /*!< CFI value that goes on the PCFICH control channel */
- U32 numDlActvUes; /*!< Active Ues reqrd for rgu dyna delta*/
+ uint8_t cfi; /*!< CFI value that goes on the PCFICH control channel */
+ uint32_t numDlActvUes; /*!< Active Ues reqrd for rgu dyna delta*/
CmLListCp ulPdcchLst; /*!< List of Uplink PDCCHs (DCI format 0) for the TfuPdcchInfo subframe */
CmLListCp dlPdcchLst; /*!< List of Downlink PDCCHs for the TfuPdcchInfo subframe */
CmLListCp phichLst; /*!< List of PHICHs for the TfuPhichInfo subframe */
*/
typedef struct tfuBfVectorInfo
{
- U8 sbIndex; /** Subband Index */
- U8 numPhyAnt; /** Number of Physical Antennas */
- U16 bfValue[TFU_MAX_PHY_ANTENNA]; /** Beam forming vector element for
+ uint8_t sbIndex; /** Subband Index */
+ uint8_t numPhyAnt; /** Number of Physical Antennas */
+ uint16_t bfValue[TFU_MAX_PHY_ANTENNA]; /** Beam forming vector element for
physical antenna #i real 8 bits followed by imaginary 8 bits */
}TfuBfVectorInfo;
#endif
typedef struct tfuDatReqLchInfo
{
Bool freeBuff; /* !< If TRUE, the buffer is to be freed by MAC */
- U32 numPdu; /*!< No of PDUs */
+ uint32_t numPdu; /*!< No of PDUs */
Buffer *mBuf[TFU_MAX_PDU]; /*!<SIncMsgRef in MAC.
Freed by CL as well*/
}TfuDatReqLchInfo;
MsgLen tbSize;
Buffer *macHdr; /*!< Pre allocated. CL shall not free this*/
Buffer *macCes; /*!< Pre-allocated. CL shall not free this */
- U32 padSize;
- U32 numLch; /*!< No of logical channels associated to TB*/
+ uint32_t padSize;
+ uint32_t numLch; /*!< No of logical channels associated to TB*/
TfuDatReqLchInfo lchInfo[TFU_MAX_LC]; /*!< Array of logical channels */
}TfuDatReqTbInfo;
#endif
CmLteRnti rnti; /*!< RNTI of the UE */
TfuPdschDciInfo dciInfo; /*!< Carries the control data
needed for processing PDSCH data */
- U8 nmbOfTBs; /*!< Number of TBs, in cases where
+ uint8_t nmbOfTBs; /*!< Number of TBs, in cases where
one TB is disabled */
#ifdef FIVEGTF_PHY_API
- U16 crcResult;
+ uint16_t crcResult;
#endif
#ifndef L2_OPTMZ
Buffer *mBuf[TFU_MAX_TB]; /*!< MAC PDUs buffer */
PMI details for the entire
DL BW */
TfuTxMode transMode; /*!< Transmission Mode of this UE */
- TknU32 doa; /*!< DOA indicator for this UE */
+ TknUInt32 doa; /*!< DOA indicator for this UE */
Bool isTApres;
#ifdef TFU_UPGRADE
/*tfu_x_001.main_8 - ADD - Detailed comments for fields */
- U8 numLayers; /*!< Number of Layers. Note: Field
+ uint8_t numLayers; /*!< Number of Layers. Note: Field
specified at Interface. Value
not set from LTE MAC */
- U8 deltaPowOffIdx; /*!< Delta power offset. Note:
+ uint8_t deltaPowOffIdx; /*!< Delta power offset. Note:
Field specified at Interface. Value
not set from LTE MAC */
- U8 numBfPrbPerSb; /*!< Number of PRBs that are
+ uint8_t numBfPrbPerSb; /*!< Number of PRBs that are
treated as one Subband. Note:
Field specified at interface.
Value not set from LTE MAC */
- U8 numBfVectors; /*!< Number of Beam Forming
+ uint8_t numBfVectors; /*!< Number of Beam Forming
vectors. Note: Field specified at
Interface. Value not set from LTE
MAC */
specified at Interface.
Value not set from LTE
MAC */
- U16 txPwrOffset; /*!< Offset to the reference
+ uint16_t txPwrOffset; /*!< Offset to the reference
signal power. Value 0->10000,
representing -6 dB to 4 dB in
0.001 dB steps */
/* LTE_ADV_FLAG_REMOVED_START */
- U8 pa; /*!< ratio of PDSCH EPRE to cell-specific RS
+ uint8_t pa; /*!< ratio of PDSCH EPRE to cell-specific RS
EPRE among PDSCH REs */
#endif
- U8 isEnbSFR; /*to tell if SFR is enabled*/
+ uint8_t isEnbSFR; /*to tell if SFR is enabled*/
} TfuDatReqPduInfo;
CmLteTimingInfo timingInfo; /*!< Timing information */
CmLListCp datIndLst; /*!< List of data PDUs - TfuDatInfo */
#ifdef TFU_5GTF
- U8 sectorId; /* Sector index of the 5GNB. Value: 0->2 */
- U8 sccIdx; /* Serving Cell index in the given sector. Value: 0->7 */
+ uint8_t sectorId; /* Sector index of the 5GNB. Value: 0->2 */
+ uint8_t sccIdx; /* Serving Cell index in the given sector. Value: 0->7 */
#endif
} TfuDatIndInfo;
CmLList lnk; /*!< Link of Linked List */
CmLteRnti rnti; /*!< RNTI of the UE */
TfuAckNackMode hqFdbkMode; /*!< Feedback mode */
- U8 noOfTbs; /*!< Number of TBs */
+ uint8_t noOfTbs; /*!< Number of TBs */
#ifdef TFU_TDD
- U8 M; /*!< Number of feedbacks multiplexed */
+ uint8_t M; /*!< Number of feedbacks multiplexed */
#endif /* TFU_TDD */
TfuHqFdbk isAck[TFU_MAX_HARQ_FDBKS]; /*!< Harq feedbacks */
Bool isPusch; /*!< Indicates if this HARQ feedback is
CmLteRnti rnti; /*!< RNTI */
Bool isTxPort0; /*!< TRUE, if TX port is
0, else TX port is 1 */
- U8 wideCqi; /*!< Wide-band CQI*/
- U8 numSubband; /*!< Number of sub-bands */
+ uint8_t wideCqi; /*!< Wide-band CQI*/
+ uint8_t numSubband; /*!< Number of sub-bands */
TfuUlCqiInfo ulCqiInfoArr[TFU_MAX_UL_SUBBAND]; /*!< UL CQI information array */
} TfuUlCqiRpt;
{
CmLList lnk; /*!< Link of Linked List */
CmLteRnti rnti; /*!< RNTI */
- U32 doa; /*!< DOA for rnti */
+ uint32_t doa; /*!< DOA for rnti */
} TfuDoaRpt;
/** @brief This structure conveys the DOA (Direction Of Arrival) indicator.
CmLList lnk; /*!< Link of Linked List */
CmLteRnti rnti; /*!< RNTI of the UE */
Bool isFailure; /*!< TRUE, if CRC check fails */
- TknU8 rv; /*!< Redundancy version provided by PHY */
+ TknUInt8 rv; /*!< Redundancy version provided by PHY */
Bool isDtx; /*! If SNR < 0 , set to TRUE */
} TfuCrcInfo;
CmLteTimingInfo timingInfo; /*!< Timing information */
CmLListCp crcLst; /*!< List of CRC indications - TfuCrcInfo */
#ifdef TFU_5GTF
- U8 sectorId; /* Sector index of the 5GNB. Value: 0->2 */
- U8 sccIdx; /* Serving Cell index in the given sector. Value: 0->7 */
+ uint8_t sectorId; /* Sector index of the 5GNB. Value: 0->2 */
+ uint8_t sccIdx; /* Serving Cell index in the given sector. Value: 0->7 */
#endif
} TfuCrcIndInfo;
{
CmLList lnk; /*!< Link of Linked List */
CmLteRnti rnti; /*!< RNTI */
- U8 timingAdv; /*!< Value of the Timing advance */
+ uint8_t timingAdv; /*!< Value of the Timing advance */
} TfuTimingAdvInfo;
CmLteTimingInfo timingInfo; /*!< SFN, SF for each cell */
Bool isDummyTti; /*!< Flag to indicate dummy TTI */
/* 4UE_TTI_DELTA */
- U8 schTickDelta; /*!< Dynamic Delta for SCH. Value will vary
+ uint8_t schTickDelta; /*!< Dynamic Delta for SCH. Value will vary
according to num of active UEs */
- U8 dlBlankSf; /*!< TODO */
- U8 ulBlankSf; /*!< TODO */
+ uint8_t dlBlankSf; /*!< TODO */
+ uint8_t ulBlankSf; /*!< TODO */
} TfuTtiCellInfo;
*/
typedef struct tfuTtiIndInfo
{
- U8 numCells; /*!< Num of Cells */
+ uint8_t numCells; /*!< Num of Cells */
TfuTtiCellInfo cells[CM_LTE_MAX_CELLS]; /*!< Array of Cell timing info */
} TfuTtiIndInfo;
*/
typedef struct tfuRaReqInfo
{
- U8 rapId; /*!< ID of the preamble choosen by the UE for Random Acess.*/
- U16 ta; /*!< Amount of Timing advance needed by the UE for it
+ uint8_t rapId; /*!< ID of the preamble choosen by the UE for Random Acess.*/
+ uint16_t ta; /*!< Amount of Timing advance needed by the UE for it
to be uplink synchronized, this is calculated by Physical layer. */
- U8 tpc; /*!< Transmit power control command that the physical
+ uint8_t tpc; /*!< Transmit power control command that the physical
layer calculates from the RA request received.*/
Bool cqiPres; /*!< TRUE, if CQI present. */
- U8 cqiIdx; /*!< This is the Channel Quality Index of the UL channel estimated by the
+ uint8_t cqiIdx; /*!< This is the Channel Quality Index of the UL channel estimated by the
physical layer. This aids MAC in the scheduling of this UE. */
} TfuRaReqInfo;
typedef struct tfuRachInfo
{
CmLteRnti raRnti; /*!< RA-RNTI */
- U8 numRaReqInfo; /*!< Number of RA requests */
+ uint8_t numRaReqInfo; /*!< Number of RA requests */
#ifdef PRACH_5GTF
- U8 nPreambleFormat;
- U8 nPRACHConfiguration;
- U8 nRootSeq;
- U8 nCyclicShift;
- U8 nf1Value;
- U8 nPRACHSymbIndex;
- U16 nPwrFactor;
+ uint8_t nPreambleFormat;
+ uint8_t nPRACHConfiguration;
+ uint8_t nRootSeq;
+ uint8_t nCyclicShift;
+ uint8_t nf1Value;
+ uint8_t nPRACHSymbIndex;
+ uint16_t nPwrFactor;
#endif
TfuRaReqInfo *raReqInfoArr; /*!< RA requests */
} TfuRachInfo;
CmMemListCp memCp; /*!< Memory control point */
CmLteCellId cellId; /*!< Cell ID */
CmLteTimingInfo timingInfo; /*!< Timing information */
- U8 nmbOfRaRnti; /*!< Number of RA-RNTIs present for FDD this
+ uint8_t nmbOfRaRnti; /*!< Number of RA-RNTIs present for FDD this
must be 1 for TDD, it can be a max of 6. */
TfuRachInfo *rachInfoArr; /*!< Array of
RACH information per
} TfuDelDatReqInfo;
#endif
-typedef struct slotIndInfo
-{
- U16 sfn;
- U16 slot;
-}SlotIndInfo;
-
-typedef struct rachPreamInfo
-{
- uint8_t preamIdx;
- uint16_t timingAdv;
-}RachPreamInfo;
-
-typedef struct rachPduInfo
-{
- uint16_t pci;
- uint8_t symbolIdx;
- uint8_t slotIdx;
- uint8_t freqIdx;
- uint8_t numPream;
- RachPreamInfo preamInfo[MAX_PREAM_PER_SLOT];
-}RachPduInfo;
-
-typedef struct rachInd
-{
- SlotIndInfo timingInfo;
- uint8_t numPdu;
- RachPduInfo rachPdu[MAX_RACH_PDU_PER_SLOT];
-}RachInd;
-
-typedef struct crcInfo
-{
- uint32_t handle;
- uint16_t rnti;
- uint8_t harqId;
- uint8_t tbCrcStatus;
- uint16_t numCb;
- uint8_t cbCrcStatus[MAX_CB_PER_TTI_IN_BYTES];
- uint8_t ul_cqi;
- uint16_t timingAdvance;
- uint16_t rssi;
-}CrcInfo;
-
-typedef struct crcInd
-{
- SlotIndInfo timingInfo;
- uint16_t numCrc;
- CrcInfo crcInfo[MAX_CRCS_PER_SLOT];
-}CrcInd;
-
-typedef struct
-{
- uint32_t handle;
- uint16_t rnti;
- uint8_t harqId;
- uint16_t pduLength;
- uint8_t ul_cqi;
- uint16_t timingAdvance;
- uint16_t rssi;
- uint8_t *pduData;
-}RxDataIndPdu;
-
-typedef struct
-{
- SlotIndInfo timingInfo;
- uint16_t numPdus;
- RxDataIndPdu pdus[MAX_ULSCH_PDUS_PER_TTI];
-}RxDataInd;
-
-
-typedef S16 (*TfuBndReq) ARGS((
- Pst* pst,
- SuId suId,
- SpId spId));
-typedef S16 (*TfuBndCfm) ARGS((
- Pst* pst,
- SuId suId,
- U8 status));
-typedef S16 (*TfuUbndReq) ARGS((
- Pst* pst,
- SpId spId,
- Reason reason));
-
-typedef S16 (*TfuSchBndReq) ARGS((
- Pst* pst,
- SuId suId,
- SpId spId));
-typedef S16 (*TfuSchBndCfm) ARGS((
- Pst* pst,
- SuId suId,
- U8 status));
-typedef S16 (*TfuSchUbndReq) ARGS((
- Pst* pst,
- SpId spId,
- Reason reason));
-
-typedef S16 (*TfuRaReqInd) ARGS((
- Pst * pst,
- SuId suId,
- TfuRaReqIndInfo *raReqInd));
-
-typedef S16 (*TfuRecpReq) ARGS((
- Pst * pst,
- SpId spId,
- TfuRecpReqInfo *recpReq));
-
-typedef S16 (*TfuUlCqiInd) ARGS((
- Pst * pst,
- SuId suId,
- TfuUlCqiIndInfo * ulCqiInd));
-
-typedef S16 (*TfuDoaInd) ARGS((
- Pst * pst,
- SuId suId,
- TfuDoaIndInfo * doaInd));
-typedef S16 (*TfuHqInd) ARGS((
- Pst * pst,
- SuId suId,
- TfuHqIndInfo * hqInd));
-
-typedef S16 (*TfuSrInd) ARGS((
- Pst * pst,
- SuId suId,
- TfuSrIndInfo * srInd));
-
-typedef S16 (*TfuDlCqiInd) ARGS((
- Pst * pst,
- SuId suId,
- TfuDlCqiIndInfo * dlCqiInd));
-/* tfu_x_001.main_8. Added changes of TFU_UPGRADE */
-#ifdef TFU_UPGRADE
-typedef S16 (*TfuRawCqiInd) ARGS((
- Pst *pst,
- SuId suId,
- TfuRawCqiIndInfo *rawCqiInd));
-
-typedef S16 (*TfuSrsInd) ARGS((
- Pst *pst,
- SuId suId,
- TfuSrsIndInfo *srsInd));
-#endif /* TFU_UPGRADE */
-
-typedef S16 (*TfuDatInd) ARGS((
- Pst * pst,
- SuId suId,
- TfuDatIndInfo * datInd));
-
-typedef S16 (*TfuCrcInd) ARGS((
- Pst * pst,
- SuId suId,
- TfuCrcIndInfo * crcInd));
-
-typedef S16 (*TfuTimingAdvInd) ARGS((
- Pst * pst,
- SuId suId,
- TfuTimingAdvIndInfo * timingAdvInd));
-
-typedef S16 (*TfuDatReq) ARGS((
- Pst * pst,
- SpId spId,
- TfuDatReqInfo * datReq));
-
-#ifdef L2_OPTMZ
-typedef S16 (*TfuDelDatReq) ARGS((
- Pst * pst,
- SpId spId,
- TfuDelDatReqInfo * datReq));
-#endif
-
-typedef S16 (*TfuCntrlReq) ARGS((
- Pst *pst,
- SpId spId,
- TfuCntrlReqInfo *cntrlReq));
-/* CA dev Start */
-typedef S16 (*TfuTtiCell) ARGS((
- Pst * pst,
- SuId suId,
- TfuTtiCellInfo * ttiInd));
-/* CA dev End */
-typedef S16 (*TfuTtiInd) ARGS((
- Pst * pst,
- SlotIndInfo * slotInd));
-
-#if defined(TENB_T2K3K_SPECIFIC_CHANGES) && defined(LTE_TDD)
-typedef S16 (*TfuNonRtInd) ARGS((
- Pst * pst,
- SuId suId));
-#endif
-
-typedef S16 (*TfuSchTtiInd) ARGS((
- Pst * pst,
-// SuId suId,
- SlotIndInfo* slotInd));
-
-typedef S16 (*TfuPucchDeltaPwrInd) ARGS((
- Pst * pst,
- SuId suId,
- TfuPucchDeltaPwrIndInfo * pucchDeltaPwr));
-
-/*LAA: Error Indication on LAA SCell*/
-typedef S16 (*TfuErrInd) ARGS((
- Pst * pst,
- SuId suId,
- TfuErrIndInfo * errInd));
-
-/** @brief This API is used to send a Bind Request from MAC to PHY.
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param spId SAP ID of the service provider.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuBndReq ARGS((Pst *pst, SuId suId, SpId spId));
-
-/** @brief This API is used to send a Bind Request from Scheduler to PHY.
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param spId SAP ID of the service provider.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuSchBndReq ARGS((Pst *pst, SuId suId, SpId spId));
-
-
-/** @brief This API is used to receive a Bind Confirm from PHY to MAC.
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param status Status of the bind request.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuBndCfm ARGS((Pst *pst, SuId suId, U8 status));
-
-/** @brief This API is used to receive a Bind Confirm from PHY to Scheduler.
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param status Status of the bind request.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuSchBndCfm ARGS((Pst *pst, SuId suId, U8 status));
-
-
-/** @brief This API is used to send an Unbind Request from MAC to PHY.
- * @param pst Pointer to the post structure.
- * @param spId SAP ID of the service provider.
- * @param reason Reason for Unbind request.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuUbndReq ARGS((Pst *pst, SpId spId, Reason reason));
-
-/** @brief This API is used to send an Unbind Request from Scheduler to PHY.
- * @param pst Pointer to the post structure.
- * @param spId SAP ID of the service provider.
- * @param reason Reason for Unbind request.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuSchUbndReq ARGS((Pst *pst, SpId spId, Reason reason));
-
-
-/** @brief This API is used to indication Random Access Request reception from
- * PHY to Scheduler.
- * @details This primitive is used by physical layer to indicate the reception
- * of a Random Access Request from a set of UEs. The information passed consists
- * of the RA-RNTI and the list of preambles received.
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param raReqInd Pointer to the TfuRaReqIndInfo structure.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuRaReqInd ARGS((Pst *pst, SuId suId, TfuRaReqIndInfo
- *raReqInd));
-
-
-/** @brief This primitive is sent from Scheduler to PHY.
- * @details This primitive provides PHY with all the information required by
- * PHY to decode transmissions from the UE on either PUCCH or PUSCH.
- * -# On PUCCH, UE can transmit the following:
- * -# SR
- * -# HARQ feedback
- * -# CQI report
- * -# HARQ + CQI
- * -# HARQ + SR
- * -# On PUSCH, UE can transmit the following:
- * -# Data
- * -# Data + CQI
- * -# Data + HARQ Feedback
- * This primitive carries all the information for the expected subframe for all
- * the UEs that are scheduled to transmit.
- * @param pst Pointer to the post structure.
- * @param spId SAP ID of the service provider.
- * @param recpReq Pointer to the TfuRecpReqInfo structure.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuRecpReq ARGS((Pst *pst, SpId spId, TfuRecpReqInfo *recpReq));
-
- /** @brief This primitive is sent from Scheduler to PHY. It provides PHY with
- * all the control information.
- * @details This primitive carries the information sent on the following
- * channels:
- * -# PDCCH
- * -# PHICH
- * -# PCFICH
- *
- * @param pst
- * @param spId
- * @param cntrlReq pointer to TfuCntrlReqInfo
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuCntrlReq ARGS((Pst *pst, SpId spId, TfuCntrlReqInfo *cntrlReq));
-
- /** @brief This primitive carries the Data PDUs from MAC to PHY for transmission.
- * @details The data being sent in this primitive is meant to be transmitted on
- * the downlink channel PDSCH and PBCH (if present). To facilitate physical
- * layer processing, requisite control information is also sent along with the
- * data.
- * @sa TfUiTfuCntrlReq
- * @param pst
- * @param spId
- * @param datReq pointer to TfuDatReqInfo
- * @return
- */
-EXTERN S16 TfUiTfuDatReq ARGS((Pst *pst, SpId spId, TfuDatReqInfo *datReq));
-
-#ifdef L2_OPTMZ
-/** @brief This primitive carries the cellId and UeId for which datReq need to
- * deleted in CL.
- * @details This primitive is used to delete datReq PDUs present in CL for
- * which got changed or similar other scenarios. These scenarios are possible
- * only when L2_OPTMZ flag is enabled.
- * @sa TfUiTfuDelDatReq
- * @param pst
- * @param spId
- * @param datReq pointer to TfuDelDatReqInfo
- * @return
- */
-
-EXTERN S16 TfUiTfuDelDatReq ARGS((Pst *pst, SpId spId, TfuDelDatReqInfo *datReq));
-#endif
-
-/** @brief This Primitive carries the Data PDUs from PHY to MAC.
- * @details The Uplink Data, that is, the data transmitted by the UEs received by the
- * physical layer at the eNodeB in the subframe (indicated by the timingInfo),
- * is relayed to MAC using this primitive.
- * @param pst
- * @param suId
- * @param datInd pointer to TfuDatIndInfo
- * @return
- */
-EXTERN S16 TfUiTfuDatInd ARGS((Pst *pst, SuId suId, TfuDatIndInfo *datInd));
-
-/** @brief This primitive carries the HARQ Feedback from PHY to Scheduler.
- * @details HARQ feedback is sent by the UE to the eNodeB, an ACK is sent if UE
- * can successfully recieve the data transmitted by the eNodeB, else a NACK is
- * sent. This feedback is utilized by MAC for further scheduling, for instance
- * it can schedule an adaptive retransmission of the same data.
- * @param pst
- * @param suId
- * @param hqInd pointer to TfuHqIndInfo
- * @return
- */
-EXTERN S16 TfUiTfuHqInd ARGS((Pst *pst, SuId suId, TfuHqIndInfo *hqInd));
-
-/** @brief This primitive carries the SR Indication from PHY to Scheduler.
- * @details Scheduling Request (SR) is sent by the UE to the eNodeB to request
- * for Uplink (UL) grant. This primitive carries a list of SRs for a number of
- * UEs received in the indicated subframe.
- * @param pst
- * @param suId
- * @param srInd pointer to TfuSrIndInfo
- * @return
- */
-EXTERN S16 TfUiTfuSrInd ARGS((Pst *pst, SuId suId, TfuSrIndInfo *srInd));
-
-/** @brief This API is used to indicate CQI reporting from PHY to Scheduler.
- * @details This primitive carries an estimate of the Uplink Channel Quality
- * Index (CQI) for a list of UEs. This is an estimate of the uplink channel
- * quality, that is, the transmission from UE as calculated at the Physical layer at
- * the eNodeB.
- * It carries a list of sub-band CQIs for each UE.
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param ulCqiInd Pointer to the TfuUlCqiIndInfo structure.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuUlCqiInd ARGS((Pst *pst, SuId suId,
- TfuUlCqiIndInfo *ulCqiInd));
-
-/** @brief This API is used by the Physical layer to indicate if the CRC Check
- * on the PUSCH Data is successful or not.
- * @details This primitive carries CRC indication for a list of UEs. This
- * is utilized in the scenario where MAC requested the reception of Uplink data
- * for a particular UE. On reception of the PUSCH data, the CRC check on it
- * failed. This CRC failure is indicated to MAC, which utillizes this
- * information for further scheduling.
- * Physical layer indicates failure or success for each PUSCH transmission.
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param crcIndInfo Pointer to the TfuCrcIndInfo.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuCrcInd ARGS((Pst *pst, SuId suId,
- TfuCrcIndInfo *crcIndInfo));
-
-/** @brief This API is used to indicate a Timing Advance from PHY to Scheduler.
- * @details This primitive carries timing advance information for a number of
- * UEs that may need timing advance. Timing advance information is an estimate
- * of the timing adjustment that an UE needs to apply in order to be
- * synchronized in Uplink. This estimate is to be calculated by physical layer.
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param timingAdvInd Pointer to the TfuTimingAdvIndInfo structure.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuTimingAdvInd ARGS((Pst *pst, SuId suId,
- TfuTimingAdvIndInfo *timingAdvInd));
-
-/* CA dev Start */
-/** @brief This API is the TTI indication from CL to MAC and SCH
- * @details This primitive provides the timing information (SFN and subframe)
- * which is currently running on the physical layer.
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param ttiInd Pointer to the TfuTtiCellInfo structure.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuTtiCell ARGS((Pst *pst, SuId suId,
- TfuTtiCellInfo *ttiInd));
-/* CA dev End */
-
-/** @brief This API is the TTI indication from CL to MAC and SCH
- * @details This primitive provides the timing information (SFN and subframe)
- * which is currently running on the physical layer.
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param ttiInd Pointer to the TfuTtiIndInfo structure.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuTtiInd ARGS((Pst *pst, SuId suId,
- TfuTtiIndInfo *ttiInd));
-
-/** @brief This API is the TTI indication from PHY to Scheduler.
- * @details This primitive provides the timing information (SFN and subframe)
- * which is currently running on the physical layer.
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param ttiInd Pointer to the TfuTtiIndInfo structure.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuSchTtiInd ARGS((Pst *pst, SuId suId,
- TfuTtiIndInfo *ttiInd));
-
-
-/** @brief This API is used to indicate the reception of CQI report from PHY to
- * Scheduler and also carries the Rank Index information.
- * @details This primitive carries the CQI (Channel Quality Index) report
- * for the downlink channel, sent by the UE. It is also used to report RI and
- * PMI.
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param dlCqiInd Pointer to the TfuDlCqiIndInfo structure.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuDlCqiInd ARGS((Pst *pst, SuId suId,
- TfuDlCqiIndInfo *dlCqiInd));
-/** @brief This API is used to indicate the calculated DOA value report from PHY to
- * Scheduler.
- * @details This primitive carries the DOA(Direction of arrival) report
- * calculated at PHYSICAL LAYER, for an UE.
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param doaInd Pointer to the TfuDoaIndInfo structure.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuDoaInd ARGS((Pst *pst, SuId suId,
- TfuDoaIndInfo *doaInd));
-
-
-/** @brief This primitive is used to convey PUCCH Delta Power calculated by the
- * Physical layer.
- * @details This primitive is used to convey PUCCH Delta Power calculated by the
- * Physical layer. This information is utilized by the scheduler to perform
- * power control for the UEs.
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param pucchDeltaPwr Pointer to the TfuPucchDeltaPwrIndInfo structure.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuPucchDeltaPwrInd ARGS((Pst *pst, SuId suId,
- TfuPucchDeltaPwrIndInfo *pucchDeltaPwr));
-
-/** @brief LAA:This primitive carries the Error Indication from PHY to Scheduler.
- * This primitive is invoked when the transmission on the unlicensed Scell
- * fails.
- * @param pst
- * @param suId
- * @param errInd pointer to TfuErrIndInfo
- * @return
- */
-
-EXTERN S16 TfUiTfuErrInd ARGS((Pst *pst, SuId suId,
- TfuErrIndInfo *errInd));
-/* tfu_x_001.main_8. Added changes of TFU_UPGRADE */
-#ifdef TFU_UPGRADE
-
-/** @brief This primitive is used to convey the information derived by the
- * physical layer from the SRS transmission from the UE.
- * @details This primitive carries information derived from the SRS transmission
- * from the UE.
- *
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param srsInd Pointer to the TfuSrIndInfo structure.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuSrsInd ARGS((Pst *pst, SuId suId,
- TfuSrsIndInfo *srsInd));
-
-
-/** @brief This primitive is used to convey the Raw CQI information
- * transmitted by the UE.
- * @details Raw CQI report is the actual bits transmitted by the UE when
- * reporting CQI/PMI/RI. The interpretation of these bits to CQI/sub-band CQI
- * and so on, are done by MAC.
- *
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param cqiInd Pointer to the TfuRawCqiIndInfo structure.
- * @return ROK/RFAILED
- */
-EXTERN S16 TfUiTfuRawCqiInd ARGS((Pst *pst, SuId suId,
- TfuRawCqiIndInfo *cqiInd));
-
-#endif /* TFU_UPGRADE */
-
-#ifdef RG
-EXTERN S16 RgLiTfuBndReq ARGS((
- Pst* pst,
- SuId suId,
- SpId spId
-));
-EXTERN S16 RgLiTfuBndCfm ARGS((
- Pst* pst,
- SuId suId,
- U8 status
-));
-EXTERN S16 RgLiTfuUbndReq ARGS((
- Pst* pst,
- SpId spId,
- Reason reason
-));
-
-EXTERN S16 RgLiTfuSchBndReq ARGS((
- Pst* pst,
- SuId suId,
- SpId spId
-));
-EXTERN S16 RgLiTfuSchBndCfm ARGS((
- Pst* pst,
- SuId suId,
- U8 status
-));
-EXTERN S16 RgLiTfuSchUbndReq ARGS((
- Pst* pst,
- SpId spId,
- Reason reason
-));
-
-EXTERN S16 RgLiTfuRaReqInd ARGS((
- Pst * pst,
- SpId spId,
- TfuRaReqIndInfo * raReq
-));
-
-
-EXTERN S16 RgLiTfuRecpReq ARGS((
- Pst * pst,
- SpId spId,
- TfuRecpReqInfo * recpReq
-));
-
-EXTERN S16 RgLiTfuUlCqiInd ARGS((
- Pst * pst,
- SuId suId,
- TfuUlCqiIndInfo * ulCqiInd
-));
-
-EXTERN S16 RgLiTfuDoaInd ARGS((
- Pst * pst,
- SuId suId,
- TfuDoaIndInfo * doaInd
-));
-
-EXTERN S16 RgLiTfuHqInd ARGS((
- Pst * pst,
- SuId suId,
- TfuHqIndInfo * hqInd
-));
-
-EXTERN S16 RgLiTfuSrInd ARGS((
- Pst * pst,
- SuId suId,
- TfuSrIndInfo * srInd
-));
-
-EXTERN S16 RgLiTfuDlCqiInd ARGS((
- Pst * pst,
- SuId suId,
- TfuDlCqiIndInfo * dlCqiInd
-));
-
-/* tfu_x_001.main_8. Added changes of TFU_UPGRADE */
-#ifdef TFU_UPGRADE
-EXTERN S16 RgLiTfuRawCqiInd ARGS((
- Pst *pst,
- SuId suId,
- TfuRawCqiIndInfo *rawCqiInd
- ));
-EXTERN S16 RgLiTfuSrsInd ARGS((
- Pst *pst,
- SuId suId,
- TfuSrsIndInfo *srsIndInfo
- ));
-#endif
-EXTERN S16 RgLiTfuDatInd ARGS((
- Pst * pst,
- SuId suId,
- TfuDatIndInfo * datInd
-));
-
-EXTERN S16 fapiMacSlotInd
-(
-Pst *pst,
-SlotIndInfo *slotInd
-);
-
-EXTERN S16 RgLiTfuCrcInd ARGS((
- Pst * pst,
- SuId suId,
- TfuCrcIndInfo * crcInd
-));
-
-EXTERN S16 RgLiTfuTimingAdvInd ARGS((
- Pst * pst,
- SuId suId,
- TfuTimingAdvIndInfo * timingAdvInd
-));
-
-EXTERN S16 RgLiTfuDatReq ARGS((
- Pst * pst,
- SpId spId,
- TfuDatReqInfo * datReq
-));
-
-EXTERN S16 RgLiTfuCntrlReq ARGS((
- Pst * pst,
- SpId spId,
- TfuCntrlReqInfo * cntrlReq
-));
-
-EXTERN S16 RgLiTfuTtiInd ARGS((
- Pst * pst,
- SuId suId,
- TfuTtiIndInfo * ttiInd
-));
-
-EXTERN int macSchSlotInd ARGS((
- Pst * pst,
- SlotIndInfo * slotInd
-));
-
-#if defined(TENB_T2K3K_SPECIFIC_CHANGES) && defined(LTE_TDD)
-EXTERN S16 RgLiTfuNonRtInd ARGS((
- Pst * pst,
- SuId suId
-));
-#endif
-
-EXTERN S16 RgLiTfuPucchDeltaPwrInd ARGS((
- Pst * pst,
- SuId suId,
- TfuPucchDeltaPwrIndInfo *pucchDeltaPwr
- ));
-#endif
-
-/** @brief LAA:This primitive carries the Error Indication from PHY to Scheduler.
- * This primitive is invoked when the transmission on the unlicensed Scell
- * fails.
- * @param pst
- * @param suId
- * @param errInd pointer to TfuErrIndInfo
- * @return
- */
-EXTERN S16 RgLiTfuErrInd ARGS((Pst *pst, SuId suId, TfuErrIndInfo *errInd));
-
-#ifdef L2_OPTMZ
-/** @brief This primitive carries the cellId and UeId for which datReq need to
- * deleted in CL.
- * @details This primitive is used to delete datReq PDUs present in CL for
- * which got changed or similar other scenarios. These scenarios are possible
- * only when L2_OPTMZ flag is enabled.
- * @sa TfUiTfuDelDatReq
- * @param pst
- * @param spId
- * @param datReq pointer to TfuDelDatReqInfo
- * @return
- */
-EXTERN S16 RgLiTfuDelDatReq ARGS((Pst *pst, SuId suId, TfuDelDatReqInfo *delDatReq));
-#endif
-
-#if (defined(LCTFU))
-/** @brief This API is used to send a Bind Request from MAC to PHY.
- */
-#ifdef TFU_5GTF
-EXTERN S16 cmPkTfuRbAssignA1Val324 ARGS((
-TfuRbAssignA1Val324 *param,
-Buffer *mBuf
-));
-EXTERN S16 cmPkTfuRbAssignB1Val324 ARGS((
-TfuRbAssignB1Val324 *param,
-Buffer *mBuf
-));
-EXTERN S16 cmPkTfuRbAssignVal326 ARGS((
-TfuRbAssignVal326 *param,
-Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuRbAssignA1Val324 ARGS((
-TfuRbAssignA1Val324 *param,
-Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuRbAssignB1Val324 ARGS((
-TfuRbAssignB1Val324 *param,
-Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuRbAssignVal326 ARGS((
-TfuRbAssignVal326 *param,
-Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDciFormatA1A2Info ARGS((
-TfuDciFormatA1Info *param,
-Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDciFormatB1B2Info ARGS((
-TfuDciFormatB1Info *param,
-Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormatA1A2Info ARGS((
-TfuDciFormatA1Info *param,
-Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormatB1B2Info ARGS((
-TfuDciFormatB1Info *param,
-Buffer *mBuf
-));
-#endif /* TFU_5GTF */
-
-EXTERN S16 cmPkTfuBndReq ARGS((
- Pst* pst,
- SuId suId,
- SpId spId
-));
-/** @brief This API is used to send a Bind Request from MAC to PHY.
- */
-EXTERN S16 cmUnpkTfuBndReq ARGS((
- TfuBndReq func,
- Pst* pst,
- Buffer *mBuf
-));
-/** @brief This API is used to receive a Bind Confirm from PHY to MAC.
- */
-EXTERN S16 cmPkTfuBndCfm ARGS((
- Pst* pst,
- SuId suId,
- U8 status
-));
-/** @brief This API is used to receive a Bind Confirm from PHY to MAC.
- */
-EXTERN S16 cmUnpkTfuBndCfm ARGS((
- TfuBndCfm func,
- Pst* pst,
- Buffer *mBuf
-));
-/** @brief This API is used to send an Unbind Request from MAC to PHY.
- */
-EXTERN S16 cmPkTfuUbndReq ARGS((
- Pst* pst,
- SpId spId,
- Reason reason
-));
-/** @brief This API is used to send an Unbind Request from MAC to PHY.
- */
-EXTERN S16 cmUnpkTfuUbndReq ARGS((
- TfuUbndReq func,
- Pst* pst,
- Buffer *mBuf
-));
-/** @brief This API is used to send a Bind Request from SCH to PHY.
- */
-EXTERN S16 cmPkTfuSchBndReq ARGS((
- Pst* pst,
- SuId suId,
- SpId spId
-));
-/** @brief This API is used to send a Bind Request from SCH to PHY.
- */
-EXTERN S16 cmUnpkTfuSchBndReq ARGS((
- TfuSchBndReq func,
- Pst* pst,
- Buffer *mBuf
-));
-/** @brief This API is used to receive a Bind Confirm from PHY to SCH.
- */
-EXTERN S16 cmPkTfuSchBndCfm ARGS((
- Pst* pst,
- SuId suId,
- U8 status
-));
-/** @brief This API is used to receive a Bind Confirm from PHY to SCH.
- */
-EXTERN S16 cmUnpkTfuSchBndCfm ARGS((
- TfuSchBndCfm func,
- Pst* pst,
- Buffer *mBuf
-));
-/** @brief This API is used to send an Unbind Request from SCH to PHY.
- */
-EXTERN S16 cmPkTfuSchUbndReq ARGS((
- Pst* pst,
- SpId spId,
- Reason reason
-));
-/** @brief This API is used to send an Unbind Request from SCH to PHY.
- */
-EXTERN S16 cmUnpkTfuSchUbndReq ARGS((
- TfuSchUbndReq func,
- Pst* pst,
- Buffer *mBuf
-));
-/** @brief This API is used to indication Random Access Request reception from
- * PHY to MAC.
- */
-EXTERN S16 cmPkTfuRaReqInd ARGS((
- Pst * pst,
- SuId suId,
- TfuRaReqIndInfo * raReqInd
-));
-/** @brief This API is used to indication Random Access Request reception from
- * PHY to MAC.
- */
-EXTERN S16 cmUnpkTfuRaReqInd ARGS((
- TfuRaReqInd func,
- Pst * pst,
- Buffer *mBuf
-));
-/** @brief This API is used to indication Random Access Request reception from
- * PHY to MAC.
- */
-EXTERN S16 cmPkTfuRecpReq ARGS((
- Pst * pst,
- SpId spId,
- TfuRecpReqInfo * recpReq
-));
-/** @brief This API is used to indication Random Access Request reception from
- * PHY to MAC.
- */
-EXTERN S16 cmUnpkTfuRecpReq ARGS((
- TfuRecpReq func,
- Pst * pst,
- Buffer *mBuf
-));
-/** @brief This API is used to indicate CQI reporting from PHY to MAC.
- */
-EXTERN S16 cmPkTfuUlCqiInd ARGS((
- Pst * pst,
- SuId suId,
- TfuUlCqiIndInfo * ulCqiInd
-));
-/** @brief This API is used to indicate CQI reporting from PHY to MAC.
- */
-EXTERN S16 cmUnpkTfuUlCqiInd ARGS((
- TfuUlCqiInd func,
- Pst * pst,
- Buffer *mBuf
-));
-
-EXTERN S16 cmPkTfuHqInd ARGS((
- Pst * pst,
- SuId suId,
- TfuHqIndInfo * hqInd
-));
-
-EXTERN S16 cmUnpkTfuHqInd ARGS((
- TfuHqInd func,
- Pst * pst,
- Buffer *mBuf
-));
-/** @brief This API is used to indicate a SR reception from PHY to MAC.
- */
-EXTERN S16 cmPkTfuSrInd ARGS((
- Pst * pst,
- SuId suId,
- TfuSrIndInfo * srInd
-));
-/** @brief This API is used to indicate a SR reception from PHY to MAC.
- */
-EXTERN S16 cmUnpkTfuSrInd ARGS((
- TfuSrInd func,
- Pst * pst,
- Buffer *mBuf
-));
-/** @brief This API is used to indicate the reception of CQI report from PHY to
- * MAC.
- */
-EXTERN S16 cmPkTfuDlCqiInd ARGS((
- Pst * pst,
- SuId suId,
- TfuDlCqiIndInfo * dlCqiInd
-));
-/** @brief This API is used to indicate the reception of CQI report from PHY to
- * MAC.
- */
-EXTERN S16 cmUnpkTfuDlCqiInd ARGS((
- TfuDlCqiInd func,
- Pst * pst,
- Buffer *mBuf
-));
-
-/** @brief This API is used to indicate the Calculated DOA value report from PHY to
- * MAC.*/
-EXTERN S16 cmUnpkTfuDoaInd ARGS((
- TfuDoaInd func,
- Pst * pst,
- Buffer *mBuf
-));
-/** @brief This API is used to indicate the calculated DOA Value report from PHY to
- * MAC.
- */
-EXTERN S16 cmPkTfuDoaInd ARGS((
- Pst * pst,
- SuId suId,
- TfuDoaIndInfo * doaInd
- ));
-
-/** @brief This API is used to indicate Data Reception from PHY to MAC.
- */
-EXTERN S16 cmPkTfuDatInd ARGS((
- Pst * pst,
- SuId suId,
- TfuDatIndInfo * datInd
-));
-/** @brief This API is used to indicate Data Reception from PHY to MAC.
- */
-EXTERN S16 cmUnpkTfuDatInd ARGS((
- TfuDatInd func,
- Pst * pst,
- Buffer *mBuf
-));
-/** @brief This API is used to indicate Decode failure from PHY to MAC.
- */
-EXTERN S16 cmPkTfuCrcInd ARGS((
- Pst * pst,
- SuId suId,
- TfuCrcIndInfo * crcInd
-));
-/** @brief This API is used to indicate Decode failure from PHY to MAC.
- */
-EXTERN S16 cmUnpkTfuCrcInd ARGS((
- TfuCrcInd func,
- Pst * pst,
- Buffer *mBuf
-));
-
-EXTERN S16 cmPkTfuCntrlReq ARGS((
- Pst * pst,
- SpId spId,
- TfuCntrlReqInfo * cntrlReq
-));
-
-EXTERN S16 cmUnpkTfuCntrlReq ARGS((
- TfuCntrlReq func,
- Pst * pst,
- Buffer *mBuf
-));
-/** @brief This API is used to indicate a Timing Advance from PHY to MAC.
- */
-EXTERN S16 cmPkTfuTimingAdvInd ARGS((
- Pst * pst,
- SuId suId,
- TfuTimingAdvIndInfo * timingAdvInd
-));
-/** @brief This API is used to indicate a Timing Advance from PHY to MAC.
- */
-EXTERN S16 cmUnpkTfuTimingAdvInd ARGS((
- TfuTimingAdvInd func,
- Pst * pst,
- Buffer *mBuf
-));
-/** @brief This API is used to send Data Request from MAC to PHY.
- */
-EXTERN S16 cmPkTfuDatReq ARGS((
- Pst * pst,
- SpId spId,
- TfuDatReqInfo * datReq
-));
-/** @brief This API is used to send Data Request from MAC to PHY.
- */
-EXTERN S16 cmUnpkTfuDatReq ARGS((
- TfuDatReq func,
- Pst * pst,
- Buffer *mBuf
-));
-/* CA dev Start */
-/** @brief This API is the TTI indication from CL to MAC and SCH.
- */
-EXTERN S16 cmPkTfuTtiCell ARGS((
- Pst * pst,
- SuId suId,
- TfuTtiCellInfo * ttiInd
-));
-/** @brief This API is the TTI indication from CL to MAC and SCH.
- */
-EXTERN S16 cmUnpkTfuTtiCell ARGS((
- TfuTtiCell func,
- Pst * pst,
- Buffer *mBuf
-));
-/* CA dev End */
-
-/** @brief This API is the TTI indication from PHY to MAC.
- */
-EXTERN S16 cmPkTfuTtiInd ARGS((
- Pst * pst,
- SuId suId,
- TfuTtiIndInfo * ttiInd
-));
-/** @brief This API is the TTI indication from PHY to MAC.
- */
-EXTERN S16 cmUnpackSlotInd ARGS((
- TfuTtiInd func,
- Pst * pst,
- Buffer *mBuf
-));
-
-typedef int (*MacSchSlotIndFunc) ARGS((
- Pst *pst, /* Post Structure */
- SlotIndInfo *slotInd /* slot ind Info */
-));
-
-#if defined(TENB_T2K3K_SPECIFIC_CHANGES) && defined(LTE_TDD)
-/** @brief This API is the non-rt indication from PHY to MAC.
- */
-EXTERN S16 cmPkTfuNonRtInd ARGS((
- Pst * pst,
- SuId suId
-));
-
-/** @brief This API is the non-rt indication from PHY to MAC.
- */
-EXTERN S16 cmUnpkTfuNonRtInd ARGS((
- TfuNonRtInd func,
- Pst * pst,
- Buffer *mBuf
-));
-#endif
-
-/** @brief This API is the TTI indication from PHY to SCH.
- */
-EXTERN S16 cmPkTfuSchTtiInd ARGS((
- Pst * pst,
- SuId suId,
- TfuTtiIndInfo * ttiInd
-));
-/** @brief This API is the TTI indication from PHY to SCH.
- */
-EXTERN S16 cmUnpackMacSchSlotInd ARGS((
- MacSchSlotIndFunc func,
- Pst * pst,
- Buffer *mBuf
-));
-
-/** @brief This API is used to convey the PUCCH delta power from PHY to SCH.
- */
-EXTERN S16 cmPkTfuPucchDeltaPwrInd ARGS((
- Pst * pst,
- SuId suId,
- TfuPucchDeltaPwrIndInfo * pucchDeltaPwr
-));
-/** @brief This API is used to indicate Decode failure from PHY to MAC.
- */
-EXTERN S16 cmUnpkTfuPucchDeltaPwrInd ARGS((
- TfuPucchDeltaPwrInd func,
- Pst * pst,
- Buffer *mBuf
-));
-
-
-#ifdef TFU_PHASE_2
-/** @brief This API is used to send Group Power Control Request from MAC to PHY.
- */
-EXTERN S16 cmPkTfuGrpPwrCntrlReq ARGS((
- Pst * pst,
- SpId spId,
- TfuGrpPwrCntrlReqInfo * grpPwrCntrlReq
-));
-/** @brief This API is used to send Group Power Control Request from MAC to PHY.
- */
-EXTERN S16 cmUnpkTfuGrpPwrCntrlReq ARGS((
- TfuGrpPwrCntrlReq func,
- Pst * pst,
- Buffer *mBuf
-));
-#endif
-EXTERN S16 cmPkTfuDciFormat0Info ARGS((
- TfuDciFormat0Info *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormat0Info ARGS((
- TfuDciFormat0Info *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuAllocMapOrRiv ARGS((
- TfuAllocMapOrRiv *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuAllocMapOrRiv ARGS((
- TfuAllocMapOrRiv *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDciFormat1AllocInfo ARGS((
- TfuDciFormat1AllocInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormat1AllocInfo ARGS((
- TfuDciFormat1AllocInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDciFormat1Info ARGS((
- TfuDciFormat1Info *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormat1Info ARGS((
- TfuDciFormat1Info *param,
- Buffer *mBuf
-));
-
-EXTERN S16 cmPkTfuDciFormatTbInfo ARGS((
- TfuDciFormatTbInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormatTbInfo ARGS((
- TfuDciFormatTbInfo *param,
- Buffer *mBuf
-));
-/** @} */
-EXTERN S16 cmPkTfuDciFormat2AAllocInfo ARGS((
- TfuDciFormat2AAllocInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormat2AAllocInfo ARGS((
- TfuDciFormat2AAllocInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDciFormat2AInfo ARGS((
- TfuDciFormat2AInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormat2AInfo ARGS((
- TfuDciFormat2AInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDciFormat2AllocInfo ARGS((
- TfuDciFormat2AllocInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormat2AllocInfo ARGS((
- TfuDciFormat2AllocInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDciFormat2Info ARGS((
- TfuDciFormat2Info *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormat2Info ARGS((
- TfuDciFormat2Info *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDciFormat3Info ARGS((
- TfuDciFormat3Info *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormat3Info ARGS((
- TfuDciFormat3Info *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDciFormat3AInfo ARGS((
- TfuDciFormat3AInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormat3AInfo ARGS((
- TfuDciFormat3AInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDciFormat1dAllocInfo ARGS((
- TfuDciFormat1dAllocInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormat1dAllocInfo ARGS((
- TfuDciFormat1dAllocInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDciFormat1dInfo ARGS((
- TfuDciFormat1dInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormat1dInfo ARGS((
- TfuDciFormat1dInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDciFormat1cInfo ARGS((
- TfuDciFormat1cInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormat1cInfo ARGS((
- TfuDciFormat1cInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDciFormat1bAllocInfo ARGS((
- TfuDciFormat1bAllocInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormat1bAllocInfo ARGS((
- TfuDciFormat1bAllocInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuPdcchOrderInfo ARGS((
- TfuPdcchOrderInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuPdcchOrderInfo ARGS((
- TfuPdcchOrderInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDciFormat1aAllocInfo ARGS((
- TfuDciFormat1aAllocInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormat1aAllocInfo ARGS((
- TfuDciFormat1aAllocInfo *param,
- Buffer *mBuf
-));
-/*tfu_x_001.main_6 - Added for SPS support*/
-EXTERN S16 cmPkTfudciformat1aPdsch ARGS((
- Tfudciformat1aPdsch *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfudciformat1aPdsch ARGS((
- Tfudciformat1aPdsch *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDciFormat1aInfo ARGS((
- TfuDciFormat1aInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormat1aInfo ARGS((
- TfuDciFormat1aInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDciFormat1bInfo ARGS((
- TfuDciFormat1bInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciFormat1bInfo ARGS((
- TfuDciFormat1bInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDciInfo ARGS((
- TfuDciInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDciInfo ARGS((
- TfuDciInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuSubbandInfo ARGS((
- TfuSubbandInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuSubbandInfo ARGS((
- TfuSubbandInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuSubbandDlCqiInfo ARGS((
- TfuSubbandDlCqiInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuSubbandDlCqiInfo ARGS((
- TfuSubbandDlCqiInfo *param,
- Buffer *mBuf
-));
-/** @} */
-EXTERN S16 cmPkTfuSubbandCqiInfo ARGS((
- TfuSubbandCqiInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuSubbandCqiInfo ARGS((
- TfuSubbandCqiInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuPdcchCceInfo ARGS((
- TfuPdcchCceInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuPdcchCceInfo ARGS((
- TfuPdcchCceInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuCqiPucchMode10 ARGS((
- TfuCqiPucchMode10 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCqiPucchMode10 ARGS((
- TfuCqiPucchMode10 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuCqiMode11Cqi ARGS((
- TfuCqiMode11Cqi *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCqiMode11Cqi ARGS((
- TfuCqiMode11Cqi *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuCqiPucchMode11 ARGS((
- TfuCqiPucchMode11 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCqiPucchMode11 ARGS((
- TfuCqiPucchMode11 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuCqiMode20SubCqi ARGS((
- TfuCqiMode20SubCqi *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCqiMode20SubCqi ARGS((
- TfuCqiMode20SubCqi *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuCqiMode20Cqi ARGS((
- TfuCqiMode20Cqi *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCqiMode20Cqi ARGS((
- TfuCqiMode20Cqi *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuCqiPucchMode20 ARGS((
- TfuCqiPucchMode20 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCqiPucchMode20 ARGS((
- TfuCqiPucchMode20 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuCqiMode21SubCqi ARGS((
- TfuCqiMode21SubCqi *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCqiMode21SubCqi ARGS((
- TfuCqiMode21SubCqi *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuCqiMode21WideCqi ARGS((
- TfuCqiMode21WideCqi *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCqiMode21WideCqi ARGS((
- TfuCqiMode21WideCqi *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuCqiMode21Cqi ARGS((
- TfuCqiMode21Cqi *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCqiMode21Cqi ARGS((
- TfuCqiMode21Cqi *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuCqiPucchMode21 ARGS((
- TfuCqiPucchMode21 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCqiPucchMode21 ARGS((
- TfuCqiPucchMode21 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDlCqiPucch ARGS((
- TfuDlCqiPucch *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDlCqiPucch ARGS((
- TfuDlCqiPucch *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuSubbandMode12 ARGS((
- TfuSubbandMode12 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuSubbandMode12 ARGS((
- TfuSubbandMode12 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuCqiPuschMode12 ARGS((
- TfuCqiPuschMode12 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCqiPuschMode12 ARGS((
- TfuCqiPuschMode12 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuCqiPuschMode20 ARGS((
- TfuCqiPuschMode20 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCqiPuschMode20 ARGS((
- TfuCqiPuschMode20 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuCqiPuschMode22 ARGS((
- TfuCqiPuschMode22 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCqiPuschMode22 ARGS((
- TfuCqiPuschMode22 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuSubbandMode30 ARGS((
- TfuSubbandMode30 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuSubbandMode30 ARGS((
- TfuSubbandMode30 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuCqiPuschMode30 ARGS((
- TfuCqiPuschMode30 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCqiPuschMode30 ARGS((
- TfuCqiPuschMode30 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuSubbandMode31 ARGS((
- TfuSubbandMode31 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuSubbandMode31 ARGS((
- TfuSubbandMode31 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuCqiPuschMode31 ARGS((
- TfuCqiPuschMode31 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCqiPuschMode31 ARGS((
- TfuCqiPuschMode31 *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDlCqiPusch ARGS((
- TfuDlCqiPusch *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDlCqiPusch ARGS((
- TfuDlCqiPusch *param,
- Buffer *mBuf
-));
-
-EXTERN S16 cmPkTfuDlCqiPuschInfo ARGS((
- TfuDlCqiPuschInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDlCqiPuschInfo ARGS((
- TfuDlCqiPuschInfo *param,
- Buffer *mBuf
-));
-
-EXTERN S16 cmPkTfuDoaRpt ARGS((
- TfuDoaRpt *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDoaRpt ARGS((
- TfuDoaRpt *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDoaIndInfo ARGS((
- TfuDoaIndInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDoaIndInfo ARGS((
- TfuDoaIndInfo *param,
- Ptr memCp,
- Buffer *mBuf
-));
-
-EXTERN S16 cmPkTfuDlCqiInfo ARGS((
- U8 selector,
- TfuDlCqiInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDlCqiInfo ARGS((
- U8 selector,
- TfuDlCqiInfo *param,
- Buffer *mBuf
-));
-
-
-/* tfu_x_001.main_8. Added changes of TFU_UPGRADE */
-#ifndef TFU_UPGRADE
-EXTERN S16 cmPkTfuUeMsg3RecpReq ARGS((
- TfuUeMsg3RecpReq *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuUeMsg3RecpReq ARGS((
- TfuUeMsg3RecpReq *param,
- Buffer *mBuf
-));
-#endif
-
-
-/*tfu_x_001.main_8 - ADD - Prototype for TfuUePuschRecpReq Pk/Unpk functions */
-EXTERN S16 cmPkTfuUePuschRecpReq ARGS((
- TfuUePuschRecpReq *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuUePuschRecpReq ARGS((
- TfuUePuschRecpReq *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuUePucchRecpReq ARGS((
- TfuUePucchRecpReq *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuUePucchRecpReq ARGS((
- TfuUePucchRecpReq *param,
- Buffer *mBuf
-));
-
-EXTERN S16 cmPkTfuRecpReqInfo ARGS((
- TfuRecpReqInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuRecpReqInfo ARGS((
- TfuRecpReqInfo *param,
- Ptr memCp,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuPdcchInfo ARGS((
- TfuPdcchInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuPdcchInfo ARGS((
- TfuPdcchInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuPhichInfo ARGS((
- TfuPhichInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuPhichInfo ARGS((
- TfuPhichInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuCntrlReqInfo ARGS((
- TfuCntrlReqInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCntrlReqInfo ARGS((
- TfuCntrlReqInfo *param,
- Ptr memCp,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuPdschDciInfo ARGS((
- TfuPdschDciInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuPdschDciInfo ARGS((
- TfuPdschDciInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDatReqPduInfo ARGS((
- TfuDatReqPduInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDatReqPduInfo ARGS((
- TfuDatReqPduInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDatReqInfo ARGS((
- TfuDatReqInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDatReqInfo ARGS((
- TfuDatReqInfo *param,
- Ptr memCp,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDatInfo ARGS((
- TfuDatInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDatInfo ARGS((
- TfuDatInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDatIndInfo ARGS((
- TfuDatIndInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDatIndInfo ARGS((
- TfuDatIndInfo *param,
- Ptr memCp,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuSrInfo ARGS((
- TfuSrInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuSrInfo ARGS((
- TfuSrInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuSrIndInfo ARGS((
- TfuSrIndInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuSrIndInfo ARGS((
- TfuSrIndInfo *param,
- Ptr memCp,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuHqInfo ARGS((
- TfuHqInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuHqInfo ARGS((
- TfuHqInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuHqIndInfo ARGS((
- TfuHqIndInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuHqIndInfo ARGS((
- TfuHqIndInfo *param,
- Ptr memCpm,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuUlCqiInfo ARGS((
- TfuUlCqiInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuUlCqiInfo ARGS((
- TfuUlCqiInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuUlCqiRpt ARGS((
- TfuUlCqiRpt *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuUlCqiRpt ARGS((
- TfuUlCqiRpt *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuUlCqiIndInfo ARGS((
- TfuUlCqiIndInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuUlCqiIndInfo ARGS((
- TfuUlCqiIndInfo *param,
- Ptr memCp,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDlCqiRpt ARGS((
- TfuDlCqiRpt *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDlCqiRpt ARGS((
- TfuDlCqiRpt *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuDlCqiIndInfo ARGS((
- TfuDlCqiIndInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuDlCqiIndInfo ARGS((
- TfuDlCqiIndInfo *param,
- Ptr memCp,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuPucchDeltaPwr ARGS((
- Pst * pst,
- SuId suId,
- TfuPucchDeltaPwrIndInfo * pucchDeltaPwr));
-
-EXTERN S16 cmPkTfuPucchDeltaPwrInfo ARGS((
- TfuPucchDeltaPwr *param,
- Buffer *mBuf
-));
-
-EXTERN S16 cmUnpkTfuPucchDeltaPwr ARGS((
- TfuPucchDeltaPwrInd func,
- Pst * pst,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuPucchDeltaPwrInfo ARGS((
- TfuPucchDeltaPwr *param,
- Buffer *mBuf
-));
-
-EXTERN S16 cmPkTfuCrcInfo ARGS((
- TfuCrcInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCrcInfo ARGS((
- TfuCrcInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuCrcIndInfo ARGS((
- TfuCrcIndInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuCrcIndInfo ARGS((
- TfuCrcIndInfo *param,
- Ptr memCp,
- Buffer *mBuf
-));
-
-EXTERN S16 cmPkTfuPucchDeltaPwrIndInfo ARGS((
- TfuPucchDeltaPwrIndInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuPucchDeltaPwrIndInfo ARGS((
- TfuPucchDeltaPwrIndInfo *param,
- Ptr memCp,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuTimingAdvInfo ARGS((
- TfuTimingAdvInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuTimingAdvInfo ARGS((
- TfuTimingAdvInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuTimingAdvIndInfo ARGS((
- TfuTimingAdvIndInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuTimingAdvIndInfo ARGS((
- TfuTimingAdvIndInfo *param,
- Ptr memCp,
- Buffer *mBuf
-));
-/* CA dev Start */
-EXTERN S16 cmPkTfuTtiCellInfo ARGS((
- TfuTtiCellInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuTtiCellInfo ARGS((
- TfuTtiCellInfo *param,
- Buffer *mBuf
-));
-/* CA dev End */
-EXTERN S16 cmPkTfuTtiIndInfo ARGS((
- TfuTtiIndInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpackSlotIndInfo ARGS((
- SlotIndInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuRaReqInfo ARGS((
- TfuRaReqInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuRaReqInfo ARGS((
- TfuRaReqInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuRachInfo ARGS((
- CmMemListCp memCp,
- TfuRachInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuRachInfo ARGS((
- CmMemListCp memCp,
- TfuRachInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuRaReqIndInfo ARGS((
- TfuRaReqIndInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuRaReqIndInfo ARGS((
- TfuRaReqIndInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkBuffer ARGS((
- Buffer **param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkBuffer ARGS((
- Buffer **param,
- Buffer *mBuf
-));
-
-/* tfu_x_001.main_8. Added changes of TFU_UPGRADE */
-#ifdef TFU_UPGRADE
-EXTERN S16 cmPkTfuSrsRpt ARGS((
- TfuSrsRpt *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuSrsRpt ARGS((
- TfuSrsRpt *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuSrsIndInfo ARGS((
- TfuSrsIndInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuSrsIndInfo ARGS((
- TfuSrsIndInfo *param,
- Ptr memCp,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuRawCqiRpt ARGS((
- TfuRawCqiRpt *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuRawCqiRpt ARGS((
- TfuRawCqiRpt *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuRawCqiIndInfo ARGS((
- TfuRawCqiIndInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuRawCqiIndInfo ARGS((
- TfuRawCqiIndInfo *param,
- Ptr memCp,
- Buffer *mBuf
-));
-
-#ifdef TFU_TDD
-
-EXTERN S16 cmPkTfuUePucchHqRecpInfo ARGS((
- TfuUePucchHqRecpInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuUePucchHqRecpInfo ARGS((
- TfuUePucchHqRecpInfo *param,
- Buffer *mBuf
-));
-
-#endif
-
-#ifndef TFU_TDD /* else of TFU_TDD */
-
-EXTERN S16 cmPkTfuUePucchHqRecpInfo ARGS((
- TfuUePucchHqRecpInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuUePucchHqRecpInfo ARGS((
- TfuUePucchHqRecpInfo *param,
- Buffer *mBuf
-));
-
-
-#endif
-EXTERN S16 cmPkTfuUePucchSrRecpInfo ARGS((
- TfuUePucchSrRecpInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuUePucchSrRecpInfo ARGS((
- TfuUePucchSrRecpInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuUePucchCqiRecpInfo ARGS((
- TfuUePucchCqiRecpInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuUePucchCqiRecpInfo ARGS((
- TfuUePucchCqiRecpInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuUePucchSrsRecpInfo ARGS((
- TfuUePucchSrsRecpInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuUePucchSrsRecpInfo ARGS((
- TfuUePucchSrsRecpInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuUeUlSchRecpInfo ARGS((
- TfuUeUlSchRecpInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuUeUlSchRecpInfo ARGS((
- TfuUeUlSchRecpInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuUePuschCqiRecpInfo ARGS((
- TfuUePuschCqiRecpInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuUePuschCqiRecpInfo ARGS((
- TfuUePuschCqiRecpInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmPkTfuUePuschHqRecpInfo ARGS((
- TfuUePuschHqRecpInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuUePuschHqRecpInfo ARGS((
- TfuUePuschHqRecpInfo *param,
- Buffer *mBuf
-));
-
-EXTERN S16 cmPkTfuBfVectorInfo ARGS ((
-TfuBfVectorInfo *param,
-Buffer *mBuf
-));
-
-EXTERN S16 cmUnpkTfuBfVectorInfo ARGS ((
- TfuBfVectorInfo *param,
- Buffer *mBuf
-));
-#endif /* TFU_UPGRADE */
-/* tfu_x_001.main_8. Added changes of TFU_UPGRADE */
-EXTERN S16 cmPkTfuUeRecpReqInfo ARGS((
- TfuUeRecpReqInfo *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuUeRecpReqInfo ARGS((
- TfuUeRecpReqInfo *param,
- Buffer *mBuf
-));
-
-/* tfu_x_001.main_8. Added changes of TFU_UPGRADE */
-#ifdef TFU_UPGRADE
-/** @brief This primitive is used to convey the Raw CQI information
- * transmitted by the UE.
- * @details Raw CQI report is the actual bits transmitted by the UE when
- * reporting CQI/PMI/RI. The interpretation of these bits to CQI/sub-band CQI
- * and so on, are done by MAC.
- *
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param cqiInd Pointer to the TfuRawCqiIndInfo structure.
- * @return ROK/RFAILED
- */
-EXTERN S16 cmPkTfuRawCqiInd ARGS((
- Pst * pst,
- SuId suId,
- TfuRawCqiIndInfo * rawCqiInd
-));
-/** @brief This primitive is used to convey the Raw CQI information
- * transmitted by the UE.
- * @details Raw CQI report is the actual bits transmitted by the UE when
- * reporting CQI/PMI/RI. The interpretation of these bits to CQI/sub-band CQI
- * an so on, are done by MAC.
- *
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param cqiInd Pointer to the TfuRawCqiIndInfo structure.
- * @return ROK/RFAILED
- */
-EXTERN S16 cmUnpkTfuRawCqiInd ARGS((
- TfuRawCqiInd func,
- Pst * pst,
- Buffer *mBuf
-));
-/** @brief This primitive is used to convey the information derived by the
- * physical layer from the SRS transmission from the UE.
- * @details This primitive carries information derived from the SRS transmission
- * from the UE.
- *
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param srsInd Pointer to the TfuSrIndInfo structure.
- * @return ROK/RFAILED
- */
-EXTERN S16 cmPkTfuSrsInd ARGS((
- Pst * pst,
- SuId suId,
- TfuSrsIndInfo * srsInd
-));
-/** @brief This primitive is used to convey the information derived by the
- * physical layer from the SRS transmission from the UE.
- * @details This primitive carries information derived from the SRS transmission
- * from the UE.
- *
- * @param pst Pointer to the post structure.
- * @param suId SAP ID of the service user.
- * @param srsInd Pointer to the TfuSrIndInfo structure.
- * @return ROK/RFAILED
- */
-EXTERN S16 cmUnpkTfuSrsInd ARGS((
- TfuSrsInd func,
- Pst * pst,
- Buffer *mBuf
-));
-#endif
-
-/*tfu_x_001.main_6 - Added for SPS support*/
-#ifdef LTEMAC_SPS
-EXTERN S16 cmPkTfuAllocMap ARGS((
- TfuAllocMap *param,
- Buffer *mBuf
-));
-EXTERN S16 cmUnpkTfuAllocMap ARGS((
- TfuAllocMap *param,
- Buffer *mBuf
- ));
-#ifdef EMTC_ENABLE
-EXTERN S16 cmPkTfuDciFormat6AAllocInfo ARGS((
- TfuDciFormat61AllocInfo *param,
- Buffer *mBuf
- ));
-EXTERN S16 cmUnpkTfuDciFormat6AAllocInfo ARGS((
- TfuDciFormat61AllocInfo *param,
- Buffer *mBuf
- ));
-EXTERN S16 cmUnpkTfuDciFormat61aInfo ARGS((
- TfuDciFormat61aInfo *param,
- Buffer *mBuf
- ));
-EXTERN S16 cmUnpkTfuDciFormat62Info ARGS((
- TfuDciFormat62Info *param,
- Buffer *mBuf
- ));
-
-EXTERN S16 cmUnpkTfudciformat61aPdsch ARGS((
- Tfudciformat61aPdsch *param,
- Buffer *mBuf
- ));
-EXTERN S16 cmPkTfuDciFormat61aInfo ARGS((
- TfuDciFormat61aInfo *param,
- Buffer *mBuf
- ));
-
-#endif
-
-#endif
-
-/* LTE_UNLICENSED */
-EXTERN S16 cmPkTfuErrInd ARGS((
- Pst * pst,
- SuId suId,
- TfuErrIndInfo * errInd
-));
-
-EXTERN S16 cmUnpkTfuErrInd ARGS((
- TfuErrInd func,
- Pst * pst,
- Buffer *mBuf
-));
-#endif /*LCTFU*/
-
-
#ifdef __cplusplus
}
#endif