/********************************************************************20**
- Name: LTE RLC file
-
+ Name: NR RLC file
+
Type: C include file
Desc: This file contain the hash definations for RLC
#ifndef __KWH__
#define __KWH__
-#include "rl_interface.h"
-#include "rl_common.h"
#include "du_log.h"
\f
-#define RLCLAYERNAME "LTE RLC" /* Layer Name */
#define EKWxxx 1
#define EMG099 1
#define RLC_TRANS_ID_LST_BKT_SIZE 10
#define RLC_MAX_RB 32
+/* RLC Mode defines */
+#define RLC_MODE_TM 1
+#define RLC_MODE_UM 2
+#define RLC_MODE_AM 3
+
/* Direction defines */
#define RLC_DIR_UL 1 /*!< Unlink direction */
#define RLC_DIR_DL 2 /*!< Downlink direction */
#define RLC_TMR_LEN 10
#define RLC_MAX_UM_TMR 1
#define RLC_MAX_AM_TMR 3
-#define RLC_EVT_UMUL_REORD_TMR 1
-#define RLC_EVT_AMUL_REORD_TMR 2
-#define RLC_EVT_AMUL_STA_PROH_TMR 3
-#define RLC_EVT_AMDL_POLL_RETX_TMR 4
-#define RLC_EVT_WAIT_BNDCFM 5
+#define RLC_MAX_THPT_TMR 1
+
+/* Timer events */
+#define EVENT_RLC_UMUL_REASSEMBLE_TMR 1
+#define EVENT_RLC_AMUL_REASSEMBLE_TMR 2
+#define EVENT_RLC_AMUL_STA_PROH_TMR 3
+#define EVENT_RLC_AMDL_POLL_RETX_TMR 4
+#define EVENT_RLC_WAIT_BNDCFM 5
/* kw005.201 added support for L2 Measurement */
#ifdef LTE_L2_MEAS
-#define RLC_EVT_L2_TMR 6
+#define EVENT_RLC_L2_TMR 6
#endif /* LTE_L2_MEAS */
+#define EVENT_RLC_THROUGHPUT_TMR 7
/*******************************************************************************
* DBM Defines
#define RLC_UMUL rbCb->m.umUl
/* Sequence Number length defines */
-#define RLC_UM_CFG_5BIT_SN_LEN 1 /**< UM 5-bit Sequence number length
+#define RLC_UM_CFG_6BIT_SN_LEN 1 /**< UM 6-bit Sequence number length
in bytes*/
-#define RLC_UM_CFG_10BIT_SN_LEN 2 /**< UM 10-bit Sequence number length
+#define RLC_UM_CFG_12BIT_SN_LEN 2 /**< UM 12-bit Sequence number length
in bytes*/
/* 5GNR */
/* Sequence Number length defines */
#define RLC_POLL_SET 0x40 /* 01000000 */
#define RLC_POLL_UNSET 0xbf /* 10111111 */
-#define RLC_AM_WIN_SZ 512
#define RLC_MAX_NACK_CNT 100
/*RLC_MAX_CNTRL_FIELDS (Maximum size of Status Pdu)
* = MAX_NACK_CNT * sizeof(NACK_SN,E1,E2,E3,soStart,soEnd, nackRange)
/* Each LI(Length Indicator) holds approx 1+1/2 byte and some other fields thus keeping Header Size equal to twice of MAX LI */
/* 5GNR_RLC: Need to change value of HDRSZ as per number of PDUs going in one datReq */
+#define RLC_MIN_HDRSZ 1
#define RLC_MAX_HDRSZ 5
#define RLC_AM_PDU_FIXED_HDRSZ 2
#define RLC_AM_PDU_12BIT_SN_HDRSZ 2
cmLListInsCrnt(&lstCp, nodeToIns); \
}
-#define RLC_LLIST_DEL_RECBUF(_recBuf) \
+#define RLC_LLIST_DEL_RECBUF(_recBuf) \
{ \
- RlcSeg *_seg = NULLP; \
- RLC_LLIST_FIRST_SEG(_recBuf->segLst, _seg); \
+ RlcSeg *_seg = NULLP; \
+ RLC_LLIST_FIRST_SEG(_recBuf->segLst, _seg); \
while (_seg) \
{ \
cmLListDelFrm(&_recBuf->segLst, &_seg->lstEnt); \
- RLC_FREE(_seg, sizeof(RlcSeg)); \
- RLC_LLIST_NEXT_SEG(_recBuf->segLst, _seg); \
+ RLC_FREE(_seg, sizeof(RlcSeg)); \
+ RLC_LLIST_NEXT_SEG(_recBuf->segLst, _seg); \
} \
}
-#ifdef NR_RLC_UL
#define RLC_UMM_LLIST_FIRST_SEG(lstCp, nod) \
{ \
CmLList *tmpNode; \
nod = NULLP; \
}/*!< next segment in um mode linked list*/
-#endif
-
#define MODAMT(x, y, z,_snModMask) \
{ \
y = (x - z) & _snModMask; \