/********************************************************************20**
- Name: LTE RLC file
+ Name: NR RLC file
Type: C include file
Desc: This file contains all the data structures and
- prototypes for LTE RLC.
+ prototypes for RLC.
File: kw_dl.x
*/
typedef struct rlcBoRep
{
- S32 bo; /*!< Buffer occupancy */
+ int32_t bo; /*!< Buffer occupancy */
uint16_t estHdrSz; /*!< Estimated header size for the bo */
- Bool staPduPrsnt; /*!< Indicate control bo present or not */
+ bool staPduPrsnt; /*!< Indicate control bo present or not */
uint32_t staPduBo; /*!< Indicate bo for control PDU */
uint32_t oldestSduArrTime;
} RlcBoRep;
* as 1 for 5 bit sequence numbers and
* 2 for 10 bit sequence numbers
* - bo : Current buffer occupancy for this RB
- * - estHdrSz : Estimated size of headers required to send
- * all the SDUs in the queue
- * - vtUs : VT(US)
+ * - TX_Next : SN to be allocated to next SDU
* - modBitMask : Bitmask used to do modulus operations to wrap around
- * state variables, value is 0x1f or
- * 0x3ff for 5-bit and 10-bit sequence numbers respectively
- * - numLi : Number of length indicators to be sent in the next pdu
- * - li : Values of the lenght indicators
+ * state variables, value is 0x3f or
+ * 0xfff for 6-bit and 12-bit sequence numbers respectively
*/
typedef struct rlcUmDl
{
CmLListCp sduQ; /*!< SDU queue for UM */
uint8_t snLen; /*!< Sequence number length */
- S32 bo; /*!< Buffer occupancy */
- S32 estHdrSz; /*!< Estimated header size for BO */
- RlcSn vtUs; /*!< VT(US) */
+ int32_t bo; /*!< Buffer occupancy */
+ RlcSn txNext; /*!< TX_Next */
uint16_t modBitMask; /*!< Bitmask for modulus to wrap around vars*/
- uint16_t numLi; /*!< Number of LIs */
- uint16_t li[RLC_MAX_LI]; /*!< Length Indicator array */
}RlcUmDl;
/**
RlcSdu *nxtTx; /*!< Next SDU to be transmitted */
CmTimer pollRetxTmr; /*!< T_poll_retransmit Timer */
uint16_t pollRetxTmrInt; /*!< Timer Interval */
- S16 pollPdu; /*!< Poll_PDU */
- S32 pollByte; /*!< Poll_Byte */
+ int16_t pollPdu; /*!< Poll_PDU */
+ int32_t pollByte; /*!< Poll_Byte */
uint8_t maxRetx; /*!< Max_Retx_Threshold */
- S32 cntrlBo; /*!< BO of control pdu */
- S32 retxBo; /*!< BO of Retransmission PDUs */
+ int32_t cntrlBo; /*!< BO of control pdu */
+ int32_t retxBo; /*!< BO of Retransmission PDUs */
uint32_t estHdrSz; /*!< Estimated header size for the BO */
- S32 bo; /*!< BO of new PDUs */
+ int32_t bo; /*!< BO of new PDUs */
#ifndef LTE_TDD
CmLListCp *txBufLst; /*!< Transmission buffer list of type RlcTx */
#else
RlcRetx *nxtRetx; /*!< Next node to be retransmitted */
RlcSn txNext; /*!< 5GNR: TX_Next, in LTE VT(S) */
RlcSn txNextAck; /*!< 5GNR: TX_Next_Ack, in LTE VT(A)*/
- S16 pduWoPoll; /*!< PDU without poll bit counter */
- S32 byteWoPoll; /*!< Byte without poll bit counter */
+ int16_t pduWoPoll; /*!< PDU without poll bit counter */
+ int32_t byteWoPoll; /*!< Byte without poll bit counter */
RlcSn pollSn; /*!< Poll SN */
Buffer *mBuf; /*!< this can be removed later
Stores the Control Pdu */
};
/****************************************************************************
- * EXTERN Declarations
+ * Declarations
***************************************************************************/
/****************************************************************************
* Configuration Functions
***************************************************************************/
Void rlcTmmQSdu ARGS ((RlcCb *gCb,
RlcDlRbCb *rbCb,
- KwuDatReqInfo *datReqInfo,
+ RlcDatReqInfo *datReqInfo,
Buffer *mBuf));
Void rlcTmmSendToMac ARGS ((RlcCb *gCb,
SuId suId,
***************************************************************************/
Void rlcUmmQSdu ARGS ((RlcCb *gCb,
RlcDlRbCb *rbCb,
- KwuDatReqInfo *datReq,
+ RlcDatReqInfo *datReq,
Buffer *mBuf));
Void rlcUmmDiscSdu ARGS ((RlcCb *gCb, RlcDlRbCb *rbCb, uint32_t sduId));
Void rlcAmmQSdu ARGS((RlcCb *gCb,
RlcDlRbCb *rbCb,
Buffer *mBuf,
- KwuDatReqInfo *datReq));
+ RlcDatReqInfo *datReq));
void rlcAmmProcessSdus ARGS((RlcCb *gCb,
RlcDlRbCb *rbCb,
uint8_t rlcUtlSendDedLcBoStatus ARGS ((RlcCb *gCb,
RlcDlRbCb *rbCb,
int32_t bo,
- int32_t estHdrSz,
+ int32_t estHdrSz,
bool staPduPrsnt,
uint32_t staPduBo));
Void rlcUtlEmptySduQ ARGS ((RlcCb *gCb,CmLListCp *sduQ));
#endif /* LTE_L2_MEAS */
-Void rlcUtlCalcLiForSdu ARGS ((RlcCb *gCb,
- uint16_t numLi,
- MsgLen msgLen,
- S16 *pduSz));
-
uint8_t rlcUtlSendToMac ARGS ((RlcCb *gCb, SuId suId, KwDStaIndInfo *staIndInfo));
Void rlcUtlIncrementKwuStsSduTx ARGS((RlcKwuSapCb *rlckwuSap));
CmLteLcId *lChId, uint8_t *numLCh));
#endif
-uint8_t rlcProcDlData(Pst *pst, KwuDatReqInfo* datReq, Buffer *buf);
+uint8_t rlcProcDlData(Pst *pst, RlcDatReqInfo* datReq, Buffer *buf);
uint8_t rlcProcCommLcSchedRpt(Pst *pst, SuId suId, RguCStaIndInfo *staInd);
uint8_t rlcProcDedLcSchedRpt(Pst *pst, SuId suId, RguDStaIndInfo *staInd);