+/* SAP IDs */
+#define DU_MAC_SUID 0
+#define DU_MAC_SPID 0
+
+/* Instance */
+#define RLC_UL_INST 0
+#define RLC_DL_INST 1
+
+/* SAP state */
+#define DU_SAP_UNBOUND 1
+#define DU_SAP_BINDING 2
+#define DU_SAP_BOUND 3
+
+#define DU_ZERO_VAL 0
+
+/* Macros */
+#define DEFAULT_CELLS 1
+#define NR_RANAC 150
+
+#define ADD 0
+#define DEL 1
+
+#define RLC_GEN_CFG 1
+#define RLC_MAC_SAP_CFG 2
+#define RLC_UDX_SAP_CFG 4
+
+#define MAC_GEN_CFG 1
+#define MAC_SAP_CFG 2
+#define MAX_MAC_SAP 2
+
+#define DU_RLC_UL_CONFIGURED (RLC_GEN_CFG | \
+ RLC_MAC_SAP_CFG | RLC_UDX_SAP_CFG)
+#define DU_RLC_DL_CONFIGURED DU_RLC_UL_CONFIGURED
+
+#define MAC_CONFIGURED (MAC_GEN_CFG | MAC_SAP_CFG)
+
+#define DU_SET_ZERO(_buf, _size) \
+ cmMemset((U8 *)(_buf), 0, _size);
+
+/* allocate and zero out a static buffer */
+#define DU_ALLOC(_datPtr, _size) \
+{ \
+ S16 _ret; \
+ _ret = SGetSBuf(DU_APP_MEM_REGION, DU_POOL, \
+ (Data **)&_datPtr, _size); \
+ if(_ret == ROK) \
+ cmMemset((U8*)_datPtr, 0, _size); \
+ else \
+ _datPtr = NULLP; \
+}
+
+/* free a static buffer */
+#define DU_FREE(_datPtr, _size) \
+ if(_datPtr) \
+ SPutSBuf(DU_APP_MEM_REGION, DU_POOL, \
+ (Data *)_datPtr, _size);
+
+typedef enum
+{
+ OOS,
+ ACTIVATION_IN_PROGRESS,
+ ACTIVATED,
+ DELETION_IN_PROGRESS
+}CellStatus;
+
+#if 0
+typedef struct duCellCb
+{
+ U32 cellId; /* Internal cell Id */
+ CellCfgParams cellInfo; /* Cell info */
+ CellStatus cellStatus; /*Cell status */
+}DuCellCb;
+#endif
+
+typedef struct duLSapCb
+{
+ Pst pst;
+ SuId suId;
+ SpId spId;
+ State sapState;
+ Mem mem;
+ CmTimer timer;
+ U8 bndRetryCnt;
+ U8 maxBndRetry;
+ TmrCfg bndTmr;
+}DuLSapCb;
+