J-Release Documentation
[o-du/l2.git] / src / cm / rgr.c
index b176d64..f08477f 100755 (executable)
 \f
 /***********************************************************
 *
-*     Func : cmPkRgrBndReq
+*     Func : cmUnpkRgrCfgReq
 *
 *
-*     Desc : Request from RRM to MAC to bind the interface saps
+*     Desc : Configuration Request from RRM to MAC for 
+ * configuring Cell/Ue/Lc
 *
 *
 *     Ret  : S16
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrBndReq
+S16 cmUnpkRgrCfgReq
 (
-Pst* pst,
-SuId suId,
-SpId spId
+RgrCfgReq func,
+Pst *pst,
+Buffer *mBuf
 )
 {
-   Buffer *mBuf = NULLP;
-
-   if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
+   RgrCfgTransId transId;
+   RgrCfgReqInfo *cfgReqInfo;
+   
+#if 0
+   if (SUnpkS16(&spId, mBuf) != ROK) {
+      SPutMsg(mBuf);
 #if (ERRCLASS & ERRCLS_ADD_RES)
       SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
          __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR001, (ErrVal)0, "Packing failed");
+         (ErrVal)ERGR021, (ErrVal)0, "Packing failed");
 #endif
       return RFAILED;
    }
-   if (SPkS16(spId, mBuf) != ROK) {
+#endif
+
+   if (cmUnpkRgrCfgTransId(&transId, mBuf) != ROK) {
+      SPutMsg(mBuf);
 #if (ERRCLASS & ERRCLS_ADD_RES)
       SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
          __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR002, (ErrVal)0, "Packing failed");
+         (ErrVal)ERGR022, (ErrVal)0, "Packing failed");
 #endif
-      SPutMsg(mBuf);
       return RFAILED;
    }
-   if (SPkS16(suId, mBuf) != ROK) {
+   if ((SGetSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data **)&cfgReqInfo,sizeof(RgrCfgReqInfo))) != ROK) {
 #if (ERRCLASS & ERRCLS_ADD_RES)
       SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR003, (ErrVal)0, "Packing failed");
+            __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
+            (ErrVal)ERGR023, (ErrVal)0, "Packing failed");
 #endif
       SPutMsg(mBuf);
       return RFAILED;
    }
-   pst->event = (Event) EVTRGRBNDREQ;
-   return (SPstTsk(pst,mBuf));
+   memset(cfgReqInfo, 0, sizeof(RgrCfgReqInfo));
+   if (pst->selector == ODU_SELECTOR_LC) 
+      if (cmUnpkRgrCfgReqInfo(cfgReqInfo, mBuf) != ROK) {
+         SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)cfgReqInfo, sizeof(RgrCfgReqInfo));
+         SPutMsg(mBuf);
+#if (ERRCLASS & ERRCLS_ADD_RES)
+         SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
+               __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
+               (ErrVal)ERGR024, (ErrVal)0, "Packing failed");
+#endif
+         return RFAILED;
+      }
+   SPutMsg(mBuf);
+   return ((*func)(pst, transId, cfgReqInfo));
 }
 
+/* rgr_c_001.main_3: Added TTI indication from MAC to RGR user */
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrBndReq
+*     Func : cmPkRgrTtiIndInfo
 *
 *
-*     Desc : Request from RRM to MAC to bind the interface saps
+*     Desc : Packs the TTI indication information.
 *
 *
 *     Ret  : S16
@@ -112,47 +131,50 @@ SpId spId
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrBndReq
+S16 cmPkRgrTtiIndInfo
 (
-RgrBndReq func,
-Pst *pst,
+RgrTtiIndInfo *param,
+Buffer        *mBuf
+)
+{
+   CMCHKPK(oduPackUInt16, param->sfn, mBuf);
+   CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
+   return ROK;
+}
+\f
+/***********************************************************
+*
+*     Func : cmUnpkRgrTtiIndInfo
+*
+*
+*     Desc : Unpacking for RgrTtiIndInfo
+*
+*     Ret  : S16
+*
+*     Notes:
+*
+*     File  : 
+*
+**********************************************************/
+S16 cmUnpkRgrTtiIndInfo
+(
+RgrTtiIndInfo *param,
 Buffer *mBuf
 )
 {
-   SuId suId;
-   SpId spId;
-   
 
-   if (SUnpkS16(&suId, mBuf) != ROK) {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR004, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-   if (SUnpkS16(&spId, mBuf) != ROK) {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR005, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-   SPutMsg(mBuf);
-   return ((*func)(pst, suId, spId));
+   CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->sfn, mBuf);
+   return ROK;
 }
 
 \f
 /***********************************************************
 *
-*     Func : cmPkRgrBndCfm
+*     Func : cmPkRgrTtiInd
 *
 *
-*     Desc : Confirmation from MAC to RRM for the bind/Unbind 
- * request for the interface saps
+*     Desc : TTI indication  from MAC to RRM
 *
 *
 *     Ret  : S16
@@ -162,11 +184,11 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrBndCfm
+S16 cmPkRgrTtiInd
 (
 Pst* pst,
 SuId suId,
-uint8_t status
+RgrTtiIndInfo *ttiInd
 )
 {
    Buffer *mBuf = NULLP;
@@ -175,16 +197,17 @@ uint8_t status
 #if (ERRCLASS & ERRCLS_ADD_RES)
       SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
          __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR006, (ErrVal)0, "Packing failed");
+         (ErrVal)ERGR025, (ErrVal)0, "Packing failed");
 #endif
       return RFAILED;
    }
-   if (oduUnpackUInt8(status, mBuf) != ROK) {
+   if (cmPkRgrTtiIndInfo(ttiInd, mBuf) != ROK) {
 #if (ERRCLASS & ERRCLS_ADD_RES)
       SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
          __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR007, (ErrVal)0, "Packing failed");
+         (ErrVal)ERGR026, (ErrVal)0, "Packing failed");
 #endif
+      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)ttiInd, sizeof(RgrTtiIndInfo));
       SPutMsg(mBuf);
       return RFAILED;
    }
@@ -192,23 +215,24 @@ uint8_t status
 #if (ERRCLASS & ERRCLS_ADD_RES)
       SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
          __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR008, (ErrVal)0, "Packing failed");
+         (ErrVal)ERGR027, (ErrVal)0, "Packing failed");
 #endif
+      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)ttiInd, sizeof(RgrTtiIndInfo));
       SPutMsg(mBuf);
       return RFAILED;
    }
-   pst->event = (Event) EVTRGRBNDCFM;
+   SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)ttiInd, sizeof(RgrTtiIndInfo));
+   pst->event = (Event) EVTRGRTTIIND;
    return (SPstTsk(pst,mBuf));
 }
 
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrBndCfm
+*     Func : cmUnpkRgrTtiInd
 *
 *
-*     Desc : Confirmation from MAC to RRM for the bind/Unbind 
- * request for the interface saps
+*     Desc : TTI indication from MAC to RRM
 *
 *
 *     Ret  : S16
@@ -218,15 +242,15 @@ uint8_t status
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrBndCfm
+S16 cmUnpkRgrTtiInd
 (
-RgrBndCfm func,
+RgrTtiInd func,
 Pst *pst,
 Buffer *mBuf
 )
 {
    SuId suId;
-   uint8_t status;
+   RgrTtiIndInfo *ttiInd;
    
 
    if (SUnpkS16(&suId, mBuf) != ROK) {
@@ -234,30 +258,45 @@ Buffer *mBuf
 #if (ERRCLASS & ERRCLS_ADD_RES)
       SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
          __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR009, (ErrVal)0, "Packing failed");
+         (ErrVal)ERGR028, (ErrVal)0, "Packing failed");
 #endif
       return RFAILED;
    }
-   if (oduPackUInt8(&status, mBuf) != ROK) {
+   if ((SGetSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data **)&ttiInd, sizeof(RgrTtiIndInfo))) != ROK) 
+   {
+#if (ERRCLASS & ERRCLS_ADD_RES)      
+      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
+          __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
+          (ErrVal)ERGR029, (ErrVal)0, "UnPacking failed");
+#endif      
+      SPutMsg(mBuf);
+      return RFAILED;
+   }
+   if (cmUnpkRgrTtiIndInfo(ttiInd, mBuf) != ROK) {
+      /*ccpu00114888- Memory Leak issue- Start*/
+      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)ttiInd, 
+            sizeof(RgrTtiIndInfo));
+      /*ccpu00114888- Memory Leak issue- End*/
       SPutMsg(mBuf);
 #if (ERRCLASS & ERRCLS_ADD_RES)
       SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
          __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR010, (ErrVal)0, "Packing failed");
+         (ErrVal)ERGR030, (ErrVal)0, "Packing failed");
 #endif
       return RFAILED;
    }
    SPutMsg(mBuf);
-   return ((*func)(pst, suId, status));
+   return ((*func)(pst, suId, ttiInd));
 }
 
 \f
 /***********************************************************
 *
-*     Func : cmPkRgrUbndReq
+*     Func : cmPkRgrCfgCfm
 *
 *
-*     Desc : Request from RRM to MAC to Unbind the interface saps
+*     Desc : Configuration Confirm from MAC to RRM
 *
 *
 *     Ret  : S16
@@ -267,11 +306,11 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrUbndReq
+S16 cmPkRgrCfgCfm
 (
 Pst* pst,
-SpId spId,
-Reason reason
+RgrCfgTransId transId,
+uint8_t status
 )
 {
    Buffer *mBuf = NULLP;
@@ -280,39 +319,39 @@ Reason reason
 #if (ERRCLASS & ERRCLS_ADD_RES)
       SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
          __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR011, (ErrVal)0, "Packing failed");
+         (ErrVal)ERGR031, (ErrVal)0, "Packing failed");
 #endif
       return RFAILED;
    }
-   if (SPkS16(reason, mBuf) != ROK) {
+   if (oduPackUInt8(status, mBuf) != ROK) {
 #if (ERRCLASS & ERRCLS_ADD_RES)
       SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
          __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR012, (ErrVal)0, "Packing failed");
+         (ErrVal)ERGR032, (ErrVal)0, "Packing failed");
 #endif
       SPutMsg(mBuf);
       return RFAILED;
    }
-   if (SPkS16(spId, mBuf) != ROK) {
+   if (cmPkRgrCfgTransId(&transId, mBuf) != ROK) {
 #if (ERRCLASS & ERRCLS_ADD_RES)
       SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
          __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR013, (ErrVal)0, "Packing failed");
+         (ErrVal)ERGR033, (ErrVal)0, "Packing failed");
 #endif
       SPutMsg(mBuf);
       return RFAILED;
    }
-   pst->event = (Event) EVTRGRUBNDREQ;
+   pst->event = (Event) EVTMACSCHCFGCFM;
    return (SPstTsk(pst,mBuf));
 }
 
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrUbndReq
+*     Func : cmUnpkRgrCfgCfm
 *
 *
-*     Desc : Request from RRM to MAC to Unbind the interface saps
+*     Desc : Configuration Confirm from MAC to RRM
 *
 *
 *     Ret  : S16
@@ -322,47 +361,46 @@ Reason reason
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrUbndReq
+S16 cmUnpkRgrCfgCfm
 (
-RgrUbndReq func,
+RgrCfgCfm func,
 Pst *pst,
 Buffer *mBuf
 )
 {
-   SpId spId;
-   Reason reason;
+   RgrCfgTransId transId;
+   uint8_t status;
    
 
-   if (SUnpkS16(&spId, mBuf) != ROK) {
+   if (cmUnpkRgrCfgTransId(&transId, mBuf) != ROK) {
       SPutMsg(mBuf);
 #if (ERRCLASS & ERRCLS_ADD_RES)
       SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
          __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR014, (ErrVal)0, "Packing failed");
+         (ErrVal)ERGR036, (ErrVal)0, "Packing failed");
 #endif
       return RFAILED;
    }
-   if (SUnpkS16(&reason, mBuf) != ROK) {
+   if (oduUnpackUInt8(&status, mBuf) != ROK) {
       SPutMsg(mBuf);
 #if (ERRCLASS & ERRCLS_ADD_RES)
       SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
          __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR015, (ErrVal)0, "Packing failed");
+         (ErrVal)ERGR037, (ErrVal)0, "Packing failed");
 #endif
       return RFAILED;
    }
    SPutMsg(mBuf);
-   return ((*func)(pst, spId, reason));
+   return ((*func)(pst, transId, status));
 }
 
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrCfgReq
+*     Func : cmPkRgrCfgTransId
 *
 *
-*     Desc : Configuration Request from RRM to MAC for 
- * configuring Cell/Ue/Lc
+*     Desc : Transaction ID between MAC and RRM
 *
 *
 *     Ret  : S16
@@ -372,70 +410,29 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrCfgReq
+S16 cmPkRgrCfgTransId
 (
-RgrCfgReq func,
-Pst *pst,
+RgrCfgTransId *param,
 Buffer *mBuf
 )
 {
-   RgrCfgTransId transId;
-   RgrCfgReqInfo *cfgReqInfo;
-   
-#if 0
-   if (SUnpkS16(&spId, mBuf) != ROK) {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR021, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-#endif
 
-   if (cmUnpkRgrCfgTransId(&transId, mBuf) != ROK) {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR022, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-   if ((SGetSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data **)&cfgReqInfo,sizeof(RgrCfgReqInfo))) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-            __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-            (ErrVal)ERGR023, (ErrVal)0, "Packing failed");
-#endif
-      SPutMsg(mBuf);
-      return RFAILED;
+   S32 i;
+
+   for (i=RGR_CFG_TRANSID_SIZE-1; i >= 0; i--) {
+      CMCHKPK(oduPackUInt8, param->trans[i], mBuf);
    }
-   memset(cfgReqInfo, 0, sizeof(RgrCfgReqInfo));
-   if (pst->selector == ODU_SELECTOR_LC) 
-      if (cmUnpkRgrCfgReqInfo(cfgReqInfo, mBuf) != ROK) {
-         SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)cfgReqInfo, sizeof(RgrCfgReqInfo));
-         SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-         SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-               __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-               (ErrVal)ERGR024, (ErrVal)0, "Packing failed");
-#endif
-         return RFAILED;
-      }
-   SPutMsg(mBuf);
-   return ((*func)(pst, transId, cfgReqInfo));
+   return ROK;
 }
 
-/* rgr_c_001.main_3: Added TTI indication from MAC to RGR user */
+
 \f
 /***********************************************************
 *
-*     Func : cmPkRgrTtiIndInfo
+*     Func : cmUnpkRgrCfgTransId
 *
 *
-*     Desc : Packs the TTI indication information.
+*     Desc : Transaction ID between MAC and RRM
 *
 *
 *     Ret  : S16
@@ -445,23 +442,30 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrTtiIndInfo
+S16 cmUnpkRgrCfgTransId
 (
-RgrTtiIndInfo *param,
-Buffer        *mBuf
+RgrCfgTransId *param,
+Buffer *mBuf
 )
 {
-   CMCHKPK(oduUnpackUInt16, param->sfn, mBuf);
-   CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
+
+   S32 i;
+
+   for (i=0; i<RGR_CFG_TRANSID_SIZE; i++) {
+      CMCHKUNPK(oduUnpackUInt8, &param->trans[i], mBuf);
+   }
    return ROK;
 }
+
+
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrTtiIndInfo
+*     Func : cmPkRgrDlHqCfg
 *
 *
-*     Desc : Unpacking for RgrTtiIndInfo
+*     Desc :  Downlink HARQ configuration per Cell
+*
 *
 *     Ret  : S16
 *
@@ -470,25 +474,27 @@ Buffer        *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrTtiIndInfo
+S16 cmPkRgrDlHqCfg
 (
-RgrTtiIndInfo *param,
+RgrDlHqCfg *param,
 Buffer *mBuf
 )
 {
 
-   CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->sfn, mBuf);
+
+   CMCHKPK(oduPackUInt8, param->maxMsg4HqTx, mBuf);
+   CMCHKPK(oduPackUInt8, param->maxDlHqTx, mBuf);
    return ROK;
 }
 
+
 \f
 /***********************************************************
 *
-*     Func : cmPkRgrTtiInd
+*     Func : cmUnpkRgrDlHqCfg
 *
 *
-*     Desc : TTI indication  from MAC to RRM
+*     Desc :  Downlink HARQ configuration per Cell
 *
 *
 *     Ret  : S16
@@ -498,55 +504,27 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrTtiInd
+S16 cmUnpkRgrDlHqCfg
 (
-Pst* pst,
-SuId suId,
-RgrTtiIndInfo *ttiInd
-)
+RgrDlHqCfg *param,
+Buffer *mBuf
+)
 {
-   Buffer *mBuf = NULLP;
 
-   if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR025, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-   if (cmPkRgrTtiIndInfo(ttiInd, mBuf) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR026, (ErrVal)0, "Packing failed");
-#endif
-      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)ttiInd, sizeof(RgrTtiIndInfo));
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
-   if (SPkS16(suId, mBuf) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR027, (ErrVal)0, "Packing failed");
-#endif
-      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)ttiInd, sizeof(RgrTtiIndInfo));
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
-   SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)ttiInd, sizeof(RgrTtiIndInfo));
-   pst->event = (Event) EVTRGRTTIIND;
-   return (SPstTsk(pst,mBuf));
+
+   CMCHKUNPK(oduUnpackUInt8, &param->maxDlHqTx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->maxMsg4HqTx, mBuf);
+   return ROK;
 }
 
+
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrTtiInd
+*     Func : cmPkRgrRntiCfg
 *
 *
-*     Desc : TTI indication from MAC to RRM
+*     Desc : Range of RNTIs managed by MAC
 *
 *
 *     Ret  : S16
@@ -556,61 +534,26 @@ RgrTtiIndInfo *ttiInd
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrTtiInd
+S16 cmPkRgrRntiCfg
 (
-RgrTtiInd func,
-Pst *pst,
+RgrRntiCfg *param,
 Buffer *mBuf
 )
 {
-   SuId suId;
-   RgrTtiIndInfo *ttiInd;
-   
 
-   if (SUnpkS16(&suId, mBuf) != ROK) {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR028, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-   if ((SGetSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data **)&ttiInd, sizeof(RgrTtiIndInfo))) != ROK) 
-   {
-#if (ERRCLASS & ERRCLS_ADD_RES)      
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-          __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-          (ErrVal)ERGR029, (ErrVal)0, "UnPacking failed");
-#endif      
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
-   if (cmUnpkRgrTtiIndInfo(ttiInd, mBuf) != ROK) {
-      /*ccpu00114888- Memory Leak issue- Start*/
-      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)ttiInd, 
-            sizeof(RgrTtiIndInfo));
-      /*ccpu00114888- Memory Leak issue- End*/
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR030, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-   SPutMsg(mBuf);
-   return ((*func)(pst, suId, ttiInd));
+   CMCHKPK(oduPackUInt16, param->size, mBuf);
+   CMCHKPK(cmPkLteRnti, param->startRnti, mBuf);
+   return ROK;
 }
 
+
 \f
 /***********************************************************
 *
-*     Func : cmPkRgrCfgCfm
+*     Func : cmUnpkRgrRntiCfg
 *
 *
-*     Desc : Configuration Confirm from MAC to RRM
+*     Desc : Range of RNTIs managed by MAC
 *
 *
 *     Ret  : S16
@@ -620,52 +563,26 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrCfgCfm
+S16 cmUnpkRgrRntiCfg
 (
-Pst* pst,
-RgrCfgTransId transId,
-uint8_t status
+RgrRntiCfg *param,
+Buffer *mBuf
 )
 {
-   Buffer *mBuf = NULLP;
 
-   if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR031, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-   if (oduUnpackUInt8(status, mBuf) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR032, (ErrVal)0, "Packing failed");
-#endif
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
-   if (cmPkRgrCfgTransId(&transId, mBuf) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR033, (ErrVal)0, "Packing failed");
-#endif
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
-   pst->event = (Event) EVTMACSCHCFGCFM;
-   return (SPstTsk(pst,mBuf));
+
+   CMCHKUNPK(cmUnpkLteRnti, &param->startRnti, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->size, mBuf);
+   return ROK;
 }
 
-\f
+#ifdef EMTC_ENABLE
 /***********************************************************
 *
-*     Func : cmUnpkRgrCfgCfm
+*     Func : cmPkRgrEmtcRntiCfg
 *
 *
-*     Desc : Configuration Confirm from MAC to RRM
+*     Desc : Range of Emtc RNTIs managed by MAC
 *
 *
 *     Ret  : S16
@@ -675,47 +592,30 @@ uint8_t status
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrCfgCfm
+S16 cmPkRgrEmtcRntiCfg
 (
-RgrCfgCfm func,
-Pst *pst,
+RgrEmtcRntiCfg *param,
 Buffer *mBuf
 )
 {
-   RgrCfgTransId transId;
-   uint8_t status;
-   
 
-   if (cmUnpkRgrCfgTransId(&transId, mBuf) != ROK) {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR036, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-   if (oduPackUInt8(&status, mBuf) != ROK) {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR037, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-   SPutMsg(mBuf);
-   return ((*func)(pst, transId, status));
+
+   CMCHKPK(oduPackUInt16, param->size, mBuf);
+   CMCHKPK(cmPkLteRnti, param->rntiCeModeBRange, mBuf);
+   CMCHKPK(cmPkLteRnti, param->rntiCeModeBStart, mBuf);
+   CMCHKPK(cmPkLteRnti, param->rntiCeModeARange, mBuf);
+   CMCHKPK(cmPkLteRnti, param->rntiCeModeAStart, mBuf);
+   return ROK;
 }
 
-/* rgr_c_001.main_4: ADD-Added for SI Enhancement. */
-#ifdef RGR_SI_SCH
+
+\f
 /***********************************************************
 *
-*     Func : cmPkRgrSiCfgCfm
+*     Func : cmUnpkRgrEmtcRntiCfg
 *
 *
-*     Desc : SI Configuration Confirm from MAC to RRM
+*     Desc : Range of Emtc RNTIs managed by MAC
 *
 *
 *     Ret  : S16
@@ -725,64 +625,31 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrSiCfgCfm
+S16 cmUnpkRgrEmtcRntiCfg
 (
-Pst* pst,
-SuId suId,
-RgrCfgTransId transId,
-uint8_t status
+RgrEmtcRntiCfg *param,
+Buffer *mBuf
 )
 {
-   Buffer *mBuf = NULLP;
 
 
-   if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR038, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-   if (oduUnpackUInt8(status, mBuf) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR039, (ErrVal)0, "Packing failed");
-#endif
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
-   if (cmPkRgrCfgTransId(&transId, mBuf) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR040, (ErrVal)0, "Packing failed");
-#endif
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
-   if (SPkS16(suId, mBuf) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR041, (ErrVal)0, "Packing failed");
-#endif
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
+   CMCHKUNPK(cmUnpkLteRnti, &param->rntiCeModeAStart, mBuf);
+   CMCHKUNPK(cmUnpkLteRnti, &param->rntiCeModeARange, mBuf);
+   CMCHKUNPK(cmUnpkLteRnti, &param->rntiCeModeBStart, mBuf);
+   CMCHKUNPK(cmUnpkLteRnti, &param->rntiCeModeBRange, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->size, mBuf);
 
-   pst->event = (Event) EVTRGRSICFGCFM;
-   return (SPstTsk(pst,mBuf));
+   return ROK;
 }
+#endif
 
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrSiCfgCfm
+*     Func : cmPkRgrDlCmnCodeRateCfg
 *
 *
-*     Desc : Configuration Confirm from MAC to RRM
+*     Desc : Downlink common channel code rate configuration per cell
 *
 *
 *     Ret  : S16
@@ -792,57 +659,27 @@ uint8_t status
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrSiCfgCfm
+S16 cmPkRgrDlCmnCodeRateCfg
 (
-RgrSiCfgCfm func,
-Pst *pst,
+RgrDlCmnCodeRateCfg *param,
 Buffer *mBuf
 )
 {
-   SuId suId;
-   RgrCfgTransId transId;
-   uint8_t status;
-   
 
-   if (SUnpkS16(&suId, mBuf) != ROK) {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR042, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-   if (cmUnpkRgrCfgTransId(&transId, mBuf) != ROK) {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR043, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-   if (oduPackUInt8(&status, mBuf) != ROK) {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR044, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-   SPutMsg(mBuf);
-   return ((*func)(pst, suId, transId, status));
+   CMCHKPK(oduPackUInt8, param->ccchCqi, mBuf);
+   CMCHKPK(oduPackUInt16, param->pdcchCodeRate, mBuf);
+   CMCHKPK(oduPackUInt16, param->bcchPchRaCodeRate, mBuf);
+   return ROK;
 }
-#endif/*RGR_SI_SCH*/
+
 
 \f
 /***********************************************************
 *
-*     Func : cmPkRgrCfgTransId
+*     Func : cmUnpkRgrDlCmnCodeRateCfg
 *
 *
-*     Desc : Transaction ID between MAC and RRM
+*     Desc : Downlink common channel code rate configuration per cell
 *
 *
 *     Ret  : S16
@@ -852,18 +689,16 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrCfgTransId
+S16 cmUnpkRgrDlCmnCodeRateCfg
 (
-RgrCfgTransId *param,
+RgrDlCmnCodeRateCfg *param,
 Buffer *mBuf
 )
 {
 
-   S32 i;
-
-   for (i=RGR_CFG_TRANSID_SIZE-1; i >= 0; i--) {
-      CMCHKPK(oduUnpackUInt8, param->trans[i], mBuf);
-   }
+   CMCHKUNPK(oduUnpackUInt16, &param->bcchPchRaCodeRate, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->pdcchCodeRate, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->ccchCqi, mBuf);
    return ROK;
 }
 
@@ -871,10 +706,10 @@ Buffer *mBuf
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrCfgTransId
+*     Func : cmPkRgrCfiCfg
 *
 *
-*     Desc : Transaction ID between MAC and RRM
+*     Desc : Control Format Indicator (CFI) configuration per cell
 *
 *
 *     Ret  : S16
@@ -884,18 +719,13 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrCfgTransId
+S16 cmPkRgrCfiCfg
 (
-RgrCfgTransId *param,
+RgrCfiCfg *param,
 Buffer *mBuf
 )
 {
-
-   S32 i;
-
-   for (i=0; i<RGR_CFG_TRANSID_SIZE; i++) {
-      CMCHKUNPK(oduPackUInt8, &param->trans[i], mBuf);
-   }
+   CMCHKPK(oduPackUInt8, param->cfi, mBuf);
    return ROK;
 }
 
@@ -903,10 +733,10 @@ Buffer *mBuf
 \f
 /***********************************************************
 *
-*     Func : cmPkRgrDlHqCfg
+*     Func : cmUnpkRgrCfiCfg
 *
 *
-*     Desc :  Downlink HARQ configuration per Cell
+*     Desc : Control Format Indicator (CFI) configuration per cell
 *
 *
 *     Ret  : S16
@@ -916,16 +746,14 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrDlHqCfg
+S16 cmUnpkRgrCfiCfg
 (
-RgrDlHqCfg *param,
+RgrCfiCfg *param,
 Buffer *mBuf
 )
 {
 
-
-   CMCHKPK(oduUnpackUInt8, param->maxMsg4HqTx, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->maxDlHqTx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->cfi, mBuf);
    return ROK;
 }
 
@@ -933,10 +761,10 @@ Buffer *mBuf
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrDlHqCfg
+*     Func : cmPkRgrPuschSubBandCfg
 *
 *
-*     Desc :  Downlink HARQ configuration per Cell
+*     Desc : PUSCH sub-band configuration per cell
 *
 *
 *     Ret  : S16
@@ -946,16 +774,21 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrDlHqCfg
+S16 cmPkRgrPuschSubBandCfg
 (
-RgrDlHqCfg *param,
+RgrPuschSubBandCfg *param,
 Buffer *mBuf
 )
 {
 
+   S32 i;
 
-   CMCHKUNPK(oduPackUInt8, &param->maxDlHqTx, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->maxMsg4HqTx, mBuf);
+   for (i=param->numSubbands-1; i >= 0; i--) {
+      CMCHKPK(oduPackUInt8, param->dmrs[i], mBuf);
+   }
+   CMCHKPK(oduPackUInt8, param->size, mBuf);
+   CMCHKPK(oduPackUInt8, param->numSubbands, mBuf);
+   CMCHKPK(oduPackUInt8, param->subbandStart, mBuf);
    return ROK;
 }
 
@@ -963,10 +796,10 @@ Buffer *mBuf
 \f
 /***********************************************************
 *
-*     Func : cmPkRgrRntiCfg
+*     Func : cmUnpkRgrPuschSubBandCfg
 *
 *
-*     Desc : Range of RNTIs managed by MAC
+*     Desc : PUSCH sub-band configuration per cell
 *
 *
 *     Ret  : S16
@@ -976,15 +809,20 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrRntiCfg
+S16 cmUnpkRgrPuschSubBandCfg
 (
-RgrRntiCfg *param,
+RgrPuschSubBandCfg *param,
 Buffer *mBuf
 )
 {
 
-   CMCHKPK(oduUnpackUInt16, param->size, mBuf);
-   CMCHKPK(cmPkLteRnti, param->startRnti, mBuf);
+   S32 i;
+   CMCHKUNPK(oduUnpackUInt8, &param->subbandStart, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numSubbands, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->size, mBuf);
+   for (i=0; i<param->numSubbands; i++) {
+      CMCHKUNPK(oduUnpackUInt8, &param->dmrs[i], mBuf);
+   }
    return ROK;
 }
 
@@ -992,10 +830,10 @@ Buffer *mBuf
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrRntiCfg
+*     Func : cmPkRgrUlCmnCodeRateCfg
 *
 *
-*     Desc : Range of RNTIs managed by MAC
+*     Desc : Uplink common channel code rate configuration per cell
 *
 *
 *     Ret  : S16
@@ -1005,26 +843,24 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrRntiCfg
+S16 cmPkRgrUlCmnCodeRateCfg
 (
-RgrRntiCfg *param,
+RgrUlCmnCodeRateCfg *param,
 Buffer *mBuf
 )
 {
-
-
-   CMCHKUNPK(cmUnpkLteRnti, &param->startRnti, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->size, mBuf);
+   CMCHKPK(oduPackUInt8, param->ccchCqi, mBuf);
    return ROK;
 }
 
-#ifdef EMTC_ENABLE
+
+\f
 /***********************************************************
 *
-*     Func : cmPkRgrEmtcRntiCfg
+*     Func : cmUnpkRgrUlCmnCodeRateCfg
 *
 *
-*     Desc : Range of Emtc RNTIs managed by MAC
+*     Desc : Uplink common channel code rate configuration per cell
 *
 *
 *     Ret  : S16
@@ -1034,19 +870,14 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrEmtcRntiCfg
+S16 cmUnpkRgrUlCmnCodeRateCfg
 (
-RgrEmtcRntiCfg *param,
+RgrUlCmnCodeRateCfg *param,
 Buffer *mBuf
 )
 {
 
-
-   CMCHKPK(oduUnpackUInt16, param->size, mBuf);
-   CMCHKPK(cmPkLteRnti, param->rntiCeModeBRange, mBuf);
-   CMCHKPK(cmPkLteRnti, param->rntiCeModeBStart, mBuf);
-   CMCHKPK(cmPkLteRnti, param->rntiCeModeARange, mBuf);
-   CMCHKPK(cmPkLteRnti, param->rntiCeModeAStart, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->ccchCqi, mBuf);
    return ROK;
 }
 
@@ -1054,10 +885,10 @@ Buffer *mBuf
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrEmtcRntiCfg
+*     Func : cmPkRgrUlTrgCqiCfg
 *
 *
-*     Desc : Range of Emtc RNTIs managed by MAC
+*     Desc : Target Uplink CQI to achieve through group power control configured per cell
 *
 *
 *     Ret  : S16
@@ -1067,31 +898,24 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrEmtcRntiCfg
+S16 cmPkRgrUlTrgCqiCfg
 (
-RgrEmtcRntiCfg *param,
+RgrUlTrgCqiCfg *param,
 Buffer *mBuf
 )
 {
-
-
-   CMCHKUNPK(cmUnpkLteRnti, &param->rntiCeModeAStart, mBuf);
-   CMCHKUNPK(cmUnpkLteRnti, &param->rntiCeModeARange, mBuf);
-   CMCHKUNPK(cmUnpkLteRnti, &param->rntiCeModeBStart, mBuf);
-   CMCHKUNPK(cmUnpkLteRnti, &param->rntiCeModeBRange, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->size, mBuf);
-
+   CMCHKPK(oduPackUInt8, param->trgCqi, mBuf);
    return ROK;
 }
-#endif
+
 
 \f
 /***********************************************************
 *
-*     Func : cmPkRgrDlCmnCodeRateCfg
+*     Func : cmUnpkRgrUlTrgCqiCfg
 *
 *
-*     Desc : Downlink common channel code rate configuration per cell
+*     Desc : Target Uplink CQI to achieve through group power control configured per cell
 *
 *
 *     Ret  : S16
@@ -1101,16 +925,14 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrDlCmnCodeRateCfg
+S16 cmUnpkRgrUlTrgCqiCfg
 (
-RgrDlCmnCodeRateCfg *param,
+RgrUlTrgCqiCfg *param,
 Buffer *mBuf
 )
 {
 
-   CMCHKPK(oduUnpackUInt8, param->ccchCqi, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->pdcchCodeRate, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->bcchPchRaCodeRate, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->trgCqi, mBuf);
    return ROK;
 }
 
@@ -1118,10 +940,10 @@ Buffer *mBuf
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrDlCmnCodeRateCfg
+*     Func : cmPkRgrBwCfg
 *
 *
-*     Desc : Downlink common channel code rate configuration per cell
+*     Desc : Bandwidth configuration per cell
 *
 *
 *     Ret  : S16
@@ -1131,406 +953,142 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrDlCmnCodeRateCfg
+S16 cmPkRgrBwCfg
 (
-RgrDlCmnCodeRateCfg *param,
+RgrBwCfg *param,
 Buffer *mBuf
 )
 {
 
-   CMCHKUNPK(oduPackUInt16, &param->bcchPchRaCodeRate, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->pdcchCodeRate, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->ccchCqi, mBuf);
+   CMCHKPK(oduPackUInt8, param->ulTotalBw, mBuf);
+   CMCHKPK(oduPackUInt8, param->dlTotalBw, mBuf);
    return ROK;
 }
 
 
-\f
-/***********************************************************
-*
-*     Func : cmPkRgrCfiCfg
-*
-*
-*     Desc : Control Format Indicator (CFI) configuration per cell
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmPkRgrCfiCfg
+#ifdef EMTC_ENABLE 
+/* EMTC related pack changes start*/
+
+S16 cmPkRgrEmtcSiCfg
 (
-RgrCfiCfg *param,
+RgrEmtcSiCfg *param,
 Buffer *mBuf
 )
 {
-   CMCHKPK(oduUnpackUInt8, param->cfi, mBuf);
-   return ROK;
+
+   S32 i;
+       
+   CMCHKPK(oduPackUInt8, param->siHoppingEnable, mBuf);
+   CMCHKPK(oduPackUInt32, param->modPrd, mBuf);
+   CMCHKPK(oduPackUInt8, param->siWinSizeBr, mBuf);
+   CMCHKPK(oduPackUInt8, param->sib1Repetition, mBuf);
+   CMCHKPK(oduPackUInt8, param->siRepetition, mBuf);
+   
+   CMCHKPK(oduPackUInt16, param->startSymbolLc, mBuf);
+   //CMCHKPK(oduPackUInt8, param->fddDLOrTddSfBitmapLC.sfnPtnChoice, mBuf);
+   /*Changes by SIMRAN*/
+    if(!(param->fddDLOrTddSfBitmapLC.sfnPtnChoice))
+    {
+      CMCHKPK(oduPackUInt16, param->fddDLOrTddSfBitmapLC.u.ptn10, mBuf);
+    }
+    else
+   {
+      //CMCHKPK(SPkU64,param->fddDLOrTddSfBitmapLC.u.ptn40, mBuf);
+      for (i=0; i<2; i++) {
+         CMCHKPK(oduPackUInt32, param->fddDLOrTddSfBitmapLC.u.ptn40[i], mBuf);
+      }
+
+   }
+   CMCHKPK(oduPackUInt8, param->fddDLOrTddSfBitmapLC.sfnPtnChoice, mBuf);
+   //CMCHKPK(oduPackUInt16, param->fddDlOrTddSfBitmapBR, mBuf);
+   
+     for (i= (param->numSi-1); i >= 0; i--) {
+                CMCHKPK(oduPackUInt8, param->schdInfo[i].emtcSiNarrowBand, mBuf);
+                CMCHKPK(oduPackUInt16, param->schdInfo[i].emtcSiTbs, mBuf);
+     }
+
+     for (i= (param->numSi-1); i >= 0; i--) {
+         CMCHKPK(oduPackUInt32, param->siPeriodicity[i], mBuf);
+       }
+   
+     CMCHKPK(oduPackUInt8, param->numSi, mBuf);  
+
+ return ROK;
 }
 
 
-\f
-/***********************************************************
-*
-*     Func : cmUnpkRgrCfiCfg
-*
-*
-*     Desc : Control Format Indicator (CFI) configuration per cell
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmUnpkRgrCfiCfg
+
+
+S16 cmPkRgrEmtcRachCfg
 (
-RgrCfiCfg *param,
+RgrEmtcRachCfg *param,
 Buffer *mBuf
 )
 {
 
-   CMCHKUNPK(oduPackUInt8, &param->cfi, mBuf);
-   return ROK;
+   S32 i;
+       
+   CMCHKPK(oduPackUInt8, param->emtcCeLvlSupported, mBuf);
+
+   for (i=RGR_MAX_CE_LEVEL-1; i >= 0; i--) {
+         CMCHKPK(oduPackUInt8, param->ceLevelInfo[i].emtcRarHopping, mBuf);
+         CMCHKPK(oduPackUInt16, param->ceLevelInfo[i].raEmtcWinSize, mBuf);
+         CMCHKPK(oduPackUInt16, param->ceLevelInfo[i].raEmtcContResTmr, mBuf);
+         CMCHKPK(oduPackUInt16, param->ceLevelInfo[i].emtcPreambleTransMax, mBuf);
+         CMCHKPK(oduPackUInt8, param->ceLevelInfo[i].emtcPreambleMap.firstPreamble, mBuf);
+         CMCHKPK(oduPackUInt8, param->ceLevelInfo[i].emtcPreambleMap.lastPreamble, mBuf);
+       }
+   
+ return ROK;
 }
 
 
-\f
-/***********************************************************
-*
-*     Func : cmPkRgrPuschSubBandCfg
-*
-*
-*     Desc : PUSCH sub-band configuration per cell
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmPkRgrPuschSubBandCfg
+S16 cmPkRgrEmtcPdschCfg
 (
-RgrPuschSubBandCfg *param,
+RgrEmtcPdschCfg*param,
 Buffer *mBuf
 )
 {
 
-   S32 i;
+   CMCHKPK(oduPackUInt16, param->emtcMaxRepCeModeA, mBuf);
+   CMCHKPK(oduPackUInt16, param->emtcMaxRepCeModeB, mBuf);
+   
+ return ROK;
+}
 
-   for (i=param->numSubbands-1; i >= 0; i--) {
-      CMCHKPK(oduUnpackUInt8, param->dmrs[i], mBuf);
-   }
-   CMCHKPK(oduUnpackUInt8, param->size, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->numSubbands, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->subbandStart, mBuf);
+S16 cmPkRgrEmtcPuschCfg
+(
+RgrEmtcPuschCfg*param,
+Buffer *mBuf
+)
+{
+   CMCHKPK(oduPackUInt16, param->emtcMaxRepCeModeA, mBuf);
+   CMCHKPK(oduPackUInt16, param->emtcMaxRepCeModeB, mBuf);
+   CMCHKPK(oduPackUInt8,  param->emtcHoppingOffset, mBuf);
    return ROK;
 }
 
 
-\f
-/***********************************************************
-*
-*     Func : cmUnpkRgrPuschSubBandCfg
-*
-*
-*     Desc : PUSCH sub-band configuration per cell
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmUnpkRgrPuschSubBandCfg
+
+S16 cmPkRgrEmtcPucchCfg
 (
-RgrPuschSubBandCfg *param,
+RgrEmtcPucchCfg *param,
 Buffer *mBuf
 )
 {
 
    S32 i;
-   CMCHKUNPK(oduPackUInt8, &param->subbandStart, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->numSubbands, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->size, mBuf);
-   for (i=0; i<param->numSubbands; i++) {
-      CMCHKUNPK(oduPackUInt8, &param->dmrs[i], mBuf);
+   for (i=RGR_MAX_CE_LEVEL-1; i >= 0; i--) 
+   {
+         CMCHKPK(oduPackUInt16, param->emtcN1pucchAnInfoLst[i], mBuf);
    }
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmPkRgrUlCmnCodeRateCfg
-*
-*
-*     Desc : Uplink common channel code rate configuration per cell
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmPkRgrUlCmnCodeRateCfg
-(
-RgrUlCmnCodeRateCfg *param,
-Buffer *mBuf
-)
-{
-   CMCHKPK(oduUnpackUInt8, param->ccchCqi, mBuf);
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmUnpkRgrUlCmnCodeRateCfg
-*
-*
-*     Desc : Uplink common channel code rate configuration per cell
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmUnpkRgrUlCmnCodeRateCfg
-(
-RgrUlCmnCodeRateCfg *param,
-Buffer *mBuf
-)
-{
-
-   CMCHKUNPK(oduPackUInt8, &param->ccchCqi, mBuf);
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmPkRgrUlTrgCqiCfg
-*
-*
-*     Desc : Target Uplink CQI to achieve through group power control configured per cell
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmPkRgrUlTrgCqiCfg
-(
-RgrUlTrgCqiCfg *param,
-Buffer *mBuf
-)
-{
-   CMCHKPK(oduUnpackUInt8, param->trgCqi, mBuf);
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmUnpkRgrUlTrgCqiCfg
-*
-*
-*     Desc : Target Uplink CQI to achieve through group power control configured per cell
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmUnpkRgrUlTrgCqiCfg
-(
-RgrUlTrgCqiCfg *param,
-Buffer *mBuf
-)
-{
-
-   CMCHKUNPK(oduPackUInt8, &param->trgCqi, mBuf);
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmPkRgrBwCfg
-*
-*
-*     Desc : Bandwidth configuration per cell
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmPkRgrBwCfg
-(
-RgrBwCfg *param,
-Buffer *mBuf
-)
-{
-
-   CMCHKPK(oduUnpackUInt8, param->ulTotalBw, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->dlTotalBw, mBuf);
-   return ROK;
-}
-
-
-#ifdef EMTC_ENABLE 
-/* EMTC related pack changes start*/
-
-S16 cmPkRgrEmtcSiCfg
-(
-RgrEmtcSiCfg *param,
-Buffer *mBuf
-)
-{
-
-   S32 i;
-       
-   CMCHKPK(oduUnpackUInt8, param->siHoppingEnable, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->modPrd, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->siWinSizeBr, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->sib1Repetition, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->siRepetition, mBuf);
-   
-   CMCHKPK(oduUnpackUInt16, param->startSymbolLc, mBuf);
-   //CMCHKPK(oduUnpackUInt8, param->fddDLOrTddSfBitmapLC.sfnPtnChoice, mBuf);
-   /*Changes by SIMRAN*/
-    if(!(param->fddDLOrTddSfBitmapLC.sfnPtnChoice))
-    {
-      CMCHKPK(oduUnpackUInt16, param->fddDLOrTddSfBitmapLC.u.ptn10, mBuf);
-    }
-    else
-   {
-      //CMCHKPK(SPkU64,param->fddDLOrTddSfBitmapLC.u.ptn40, mBuf);
-      for (i=0; i<2; i++) {
-         CMCHKPK(oduUnpackUInt32, param->fddDLOrTddSfBitmapLC.u.ptn40[i], mBuf);
-      }
-
-   }
-   CMCHKPK(oduUnpackUInt8, param->fddDLOrTddSfBitmapLC.sfnPtnChoice, mBuf);
-   //CMCHKPK(oduUnpackUInt16, param->fddDlOrTddSfBitmapBR, mBuf);
-   
-     for (i= (param->numSi-1); i >= 0; i--) {
-                CMCHKPK(oduUnpackUInt8, param->schdInfo[i].emtcSiNarrowBand, mBuf);
-                CMCHKPK(oduUnpackUInt16, param->schdInfo[i].emtcSiTbs, mBuf);
-     }
-
-     for (i= (param->numSi-1); i >= 0; i--) {
-         CMCHKPK(oduUnpackUInt32, param->siPeriodicity[i], mBuf);
-       }
-   
-     CMCHKPK(oduUnpackUInt8, param->numSi, mBuf);  
-
- return ROK;
-}
-
-
-
-
-S16 cmPkRgrEmtcRachCfg
-(
-RgrEmtcRachCfg *param,
-Buffer *mBuf
-)
-{
-
-   S32 i;
-       
-   CMCHKPK(oduUnpackUInt8, param->emtcCeLvlSupported, mBuf);
-
-   for (i=RGR_MAX_CE_LEVEL-1; i >= 0; i--) {
-         CMCHKPK(oduUnpackUInt8, param->ceLevelInfo[i].emtcRarHopping, mBuf);
-         CMCHKPK(oduUnpackUInt16, param->ceLevelInfo[i].raEmtcWinSize, mBuf);
-         CMCHKPK(oduUnpackUInt16, param->ceLevelInfo[i].raEmtcContResTmr, mBuf);
-         CMCHKPK(oduUnpackUInt16, param->ceLevelInfo[i].emtcPreambleTransMax, mBuf);
-         CMCHKPK(oduUnpackUInt8, param->ceLevelInfo[i].emtcPreambleMap.firstPreamble, mBuf);
-         CMCHKPK(oduUnpackUInt8, param->ceLevelInfo[i].emtcPreambleMap.lastPreamble, mBuf);
-       }
-   
- return ROK;
-}
-
-
-S16 cmPkRgrEmtcPdschCfg
-(
-RgrEmtcPdschCfg*param,
-Buffer *mBuf
-)
-{
-
-   CMCHKPK(oduUnpackUInt16, param->emtcMaxRepCeModeA, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->emtcMaxRepCeModeB, mBuf);
-   
- return ROK;
-}
-
-S16 cmPkRgrEmtcPuschCfg
-(
-RgrEmtcPuschCfg*param,
-Buffer *mBuf
-)
-{
-   CMCHKPK(oduUnpackUInt16, param->emtcMaxRepCeModeA, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->emtcMaxRepCeModeB, mBuf);
-   CMCHKPK(oduUnpackUInt8,  param->emtcHoppingOffset, mBuf);
-   return ROK;
-}
-
-
-
-S16 cmPkRgrEmtcPucchCfg
-(
-RgrEmtcPucchCfg *param,
-Buffer *mBuf
-)
-{
-
-   S32 i;
-   for (i=RGR_MAX_CE_LEVEL-1; i >= 0; i--) 
-   {
-         CMCHKPK(oduUnpackUInt16, param->emtcN1pucchAnInfoLst[i], mBuf);
-   }
-
-       CMCHKPK(oduUnpackUInt8, param->emtcPucchNumRepCEMsg4Lvl0, mBuf);
-       CMCHKPK(oduUnpackUInt8, param->emtcPucchNumRepCEMsg4Lvl1, mBuf);
-       CMCHKPK(oduUnpackUInt8, param->emtcPucchNumRepCEMsg4Lvl2, mBuf);
-       CMCHKPK(oduUnpackUInt8, param->emtcPucchNumRepCEMsg4Lvl3, mBuf);        
-   
- return ROK;
+
+       CMCHKPK(oduPackUInt8, param->emtcPucchNumRepCEMsg4Lvl0, mBuf);
+       CMCHKPK(oduPackUInt8, param->emtcPucchNumRepCEMsg4Lvl1, mBuf);
+       CMCHKPK(oduPackUInt8, param->emtcPucchNumRepCEMsg4Lvl2, mBuf);
+       CMCHKPK(oduPackUInt8, param->emtcPucchNumRepCEMsg4Lvl3, mBuf);  
+   
+ return ROK;
 }
 
 
@@ -1540,16 +1098,16 @@ RgrEmtcPrachCEParamLst *param,
 Buffer *mBuf
 )
 {
-   CMCHKPK(oduUnpackUInt8, param->emtcPrachCfgIdx, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->emtcPrachFreqOffset, mBuf);
-   CMCHKPK(oduUnpackUInt16,  param->emtcPrachStartSubFrame, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->emtcMaxPremAttemptCE, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->emtcNumRepPerPreambleAtt, mBuf);
-   CMCHKPK(oduUnpackUInt8,  param->emtcNumMpdcchNBtoMonitor, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->emtcMpdcchNBtoMonitor[0], mBuf);
-   CMCHKPK(oduUnpackUInt8,  param->emtcMpdcchNBtoMonitor[1], mBuf);
-   CMCHKPK(oduUnpackUInt16, param->emtcMpdcchNumRep, mBuf);
-   CMCHKPK(oduUnpackUInt8,  param->emtcPrachHoppingCfg, mBuf);   
+   CMCHKPK(oduPackUInt8, param->emtcPrachCfgIdx, mBuf);
+   CMCHKPK(oduPackUInt8, param->emtcPrachFreqOffset, mBuf);
+   CMCHKPK(oduPackUInt16,  param->emtcPrachStartSubFrame, mBuf);
+   CMCHKPK(oduPackUInt8, param->emtcMaxPremAttemptCE, mBuf);
+   CMCHKPK(oduPackUInt8, param->emtcNumRepPerPreambleAtt, mBuf);
+   CMCHKPK(oduPackUInt8,  param->emtcNumMpdcchNBtoMonitor, mBuf);
+   CMCHKPK(oduPackUInt8, param->emtcMpdcchNBtoMonitor[0], mBuf);
+   CMCHKPK(oduPackUInt8,  param->emtcMpdcchNBtoMonitor[1], mBuf);
+   CMCHKPK(oduPackUInt16, param->emtcMpdcchNumRep, mBuf);
+   CMCHKPK(oduPackUInt8,  param->emtcPrachHoppingCfg, mBuf);   
    return ROK;
 }
 
@@ -1563,9 +1121,9 @@ Buffer *mBuf
 {
 
    S32 i;
-       CMCHKPK(oduUnpackUInt8, param->emtcMpdcchStartSFCssRaFdd, mBuf);
-       CMCHKPK(oduUnpackUInt8, param->emtcPrachHopingOffset, mBuf);
-       CMCHKPK(oduUnpackUInt8, param->emtcInitialCElevel, mBuf);
+       CMCHKPK(oduPackUInt8, param->emtcMpdcchStartSFCssRaFdd, mBuf);
+       CMCHKPK(oduPackUInt8, param->emtcPrachHopingOffset, mBuf);
+       CMCHKPK(oduPackUInt8, param->emtcInitialCElevel, mBuf);
    for (i=RGR_MAX_CE_LEVEL-1; i >= 0; i--) {           
        CMCHKPK(cmPkRgrEmtcPrachCeParamCfg, &param->emtcPrachCEparmLst[i], mBuf);
        }
@@ -1582,9 +1140,9 @@ RgrEmtcCellCfg *param,
 Buffer *mBuf
 )
 {
-   CMCHKPK(oduUnpackUInt16, param->pci, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->emtcT300Tmr, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->emtcT301Tmr, mBuf);
+   CMCHKPK(oduPackUInt16, param->pci, mBuf);
+   CMCHKPK(oduPackUInt32, param->emtcT300Tmr, mBuf);
+   CMCHKPK(oduPackUInt32, param->emtcT301Tmr, mBuf);
    CMCHKPK(cmPkRgrEmtcSiCfg, &param->emtcSiCfg, mBuf);
    CMCHKPK(cmPkRgrEmtcRachCfg, &param->emtcRachCfg, mBuf);
    CMCHKPK(cmPkRgrEmtcPdschCfg, &param->emtcPdschCfg, mBuf);
@@ -1592,9 +1150,9 @@ Buffer *mBuf
    CMCHKPK(cmPkRgrEmtcPrachCfg, &param->emtcPrachCfg, mBuf);
    CMCHKPK(cmPkRgrEmtcPucchCfg, &param->emtcPucchCfg, mBuf);
    CMCHKPK(cmPkRgrEmtcRntiCfg, &param->emtcMacRnti, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->emtcPdschNbIdx, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->emtcMpdcchNbIdx, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->emtcPuschNbIdx, mBuf);
+   CMCHKPK(oduPackUInt8, param->emtcPdschNbIdx, mBuf);
+   CMCHKPK(oduPackUInt8, param->emtcMpdcchNbIdx, mBuf);
+   CMCHKPK(oduPackUInt8, param->emtcPuschNbIdx, mBuf);
    
    return ROK;
 }
@@ -1612,40 +1170,40 @@ Buffer *mBuf
 
      S32 i;
      uint32_t tmpEnum; 
-     CMCHKUNPK(oduPackUInt8, &param->numSi, mBuf); 
+     CMCHKUNPK(oduUnpackUInt8, &param->numSi, mBuf); 
 
      for (i=0; i < param->numSi ; i++) 
      {
-        CMCHKUNPK(oduPackUInt32,(uint32_t*)&tmpEnum,mBuf);
+        CMCHKUNPK(oduUnpackUInt32,(uint32_t*)&tmpEnum,mBuf);
         param->siPeriodicity[i] = (RgrSiPeriodicity) tmpEnum;
      }   
 
      for (i=0; i < param->numSi ; i++)
      {
-        CMCHKUNPK(oduPackUInt16, &param->schdInfo[i].emtcSiTbs, mBuf);
-        CMCHKUNPK(oduPackUInt8, &param->schdInfo[i].emtcSiNarrowBand, mBuf);
+        CMCHKUNPK(oduUnpackUInt16, &param->schdInfo[i].emtcSiTbs, mBuf);
+        CMCHKUNPK(oduUnpackUInt8, &param->schdInfo[i].emtcSiNarrowBand, mBuf);
      }
-     //CMCHKUNPK(oduPackUInt16, &param->fddDlOrTddSfBitmapBR, mBuf);
-     CMCHKUNPK(oduPackUInt8, &param->fddDLOrTddSfBitmapLC.sfnPtnChoice, mBuf);
+     //CMCHKUNPK(oduUnpackUInt16, &param->fddDlOrTddSfBitmapBR, mBuf);
+     CMCHKUNPK(oduUnpackUInt8, &param->fddDLOrTddSfBitmapLC.sfnPtnChoice, mBuf);
      /*Changes by SIMRAN*/
        if(!(param->fddDLOrTddSfBitmapLC.sfnPtnChoice))
        {
-        CMCHKUNPK(oduPackUInt16, &param->fddDLOrTddSfBitmapLC.u.ptn10, mBuf);
+        CMCHKUNPK(oduUnpackUInt16, &param->fddDLOrTddSfBitmapLC.u.ptn10, mBuf);
        }
        else
        {
           for (i=1; i>=0; i--) {
-            CMCHKUNPK(oduPackUInt32, &param->fddDLOrTddSfBitmapLC.u.ptn40[i], mBuf);
+            CMCHKUNPK(oduUnpackUInt32, &param->fddDLOrTddSfBitmapLC.u.ptn40[i], mBuf);
             }
      }
 
-     CMCHKUNPK(oduPackUInt16, &param->startSymbolLc, mBuf);
-     CMCHKUNPK(oduPackUInt8, &param->siRepetition, mBuf);
-     CMCHKUNPK(oduPackUInt8, &param->sib1Repetition, mBuf);
-     CMCHKUNPK(oduPackUInt8, &param->siWinSizeBr, mBuf);
-     CMCHKUNPK(oduPackUInt32, (uint32_t*)&tmpEnum, mBuf);
+     CMCHKUNPK(oduUnpackUInt16, &param->startSymbolLc, mBuf);
+     CMCHKUNPK(oduUnpackUInt8, &param->siRepetition, mBuf);
+     CMCHKUNPK(oduUnpackUInt8, &param->sib1Repetition, mBuf);
+     CMCHKUNPK(oduUnpackUInt8, &param->siWinSizeBr, mBuf);
+     CMCHKUNPK(oduUnpackUInt32, (uint32_t*)&tmpEnum, mBuf);
      param->modPrd = (RgrModPeriodicity) tmpEnum;
-     CMCHKUNPK(oduPackUInt8, &param->siHoppingEnable, mBuf);
+     CMCHKUNPK(oduUnpackUInt8, &param->siHoppingEnable, mBuf);
 
          return ROK;
 }
@@ -1662,14 +1220,14 @@ Buffer *mBuf
 
    S32 i;
    for (i=0; i < RGR_MAX_CE_LEVEL; i++) {
-         CMCHKUNPK(oduPackUInt8, &(param->ceLevelInfo[i].emtcPreambleMap.lastPreamble), mBuf);
-         CMCHKUNPK(oduPackUInt8, &(param->ceLevelInfo[i].emtcPreambleMap.firstPreamble), mBuf);
-         CMCHKUNPK(oduPackUInt16, &(param->ceLevelInfo[i].emtcPreambleTransMax), mBuf);
-         CMCHKUNPK(oduPackUInt16, &(param->ceLevelInfo[i].raEmtcContResTmr), mBuf);
-         CMCHKUNPK(oduPackUInt16, &(param->ceLevelInfo[i].raEmtcWinSize), mBuf);
-         CMCHKUNPK(oduPackUInt8,&(param->ceLevelInfo[i].emtcRarHopping), mBuf);
+         CMCHKUNPK(oduUnpackUInt8, &(param->ceLevelInfo[i].emtcPreambleMap.lastPreamble), mBuf);
+         CMCHKUNPK(oduUnpackUInt8, &(param->ceLevelInfo[i].emtcPreambleMap.firstPreamble), mBuf);
+         CMCHKUNPK(oduUnpackUInt16, &(param->ceLevelInfo[i].emtcPreambleTransMax), mBuf);
+         CMCHKUNPK(oduUnpackUInt16, &(param->ceLevelInfo[i].raEmtcContResTmr), mBuf);
+         CMCHKUNPK(oduUnpackUInt16, &(param->ceLevelInfo[i].raEmtcWinSize), mBuf);
+         CMCHKUNPK(oduUnpackUInt8,&(param->ceLevelInfo[i].emtcRarHopping), mBuf);
        }
-    CMCHKUNPK(oduPackUInt8, &param->emtcCeLvlSupported, mBuf);   
+    CMCHKUNPK(oduUnpackUInt8, &param->emtcCeLvlSupported, mBuf);   
  return ROK;
 }
 
@@ -1681,8 +1239,8 @@ Buffer *mBuf
 )
 {
 
-   CMCHKUNPK(oduPackUInt16, &param->emtcMaxRepCeModeB, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->emtcMaxRepCeModeA, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->emtcMaxRepCeModeB, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->emtcMaxRepCeModeA, mBuf);
  return ROK;
 }
 
@@ -1692,9 +1250,9 @@ RgrEmtcPuschCfg*param,
 Buffer *mBuf
 )
 {
-   CMCHKUNPK(oduPackUInt8,  &param->emtcHoppingOffset, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->emtcMaxRepCeModeB, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->emtcMaxRepCeModeA, mBuf);
+   CMCHKUNPK(oduUnpackUInt8,  &param->emtcHoppingOffset, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->emtcMaxRepCeModeB, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->emtcMaxRepCeModeA, mBuf);
    return ROK;
 }
 
@@ -1710,13 +1268,13 @@ Buffer *mBuf
    S32 i;
 
 
-       CMCHKUNPK(oduPackUInt8, &param->emtcPucchNumRepCEMsg4Lvl3, mBuf);
-       CMCHKUNPK(oduPackUInt8, &param->emtcPucchNumRepCEMsg4Lvl2, mBuf);
-       CMCHKUNPK(oduPackUInt8, &param->emtcPucchNumRepCEMsg4Lvl1, mBuf);
-       CMCHKUNPK(oduPackUInt8, &param->emtcPucchNumRepCEMsg4Lvl0, mBuf);       
+       CMCHKUNPK(oduUnpackUInt8, &param->emtcPucchNumRepCEMsg4Lvl3, mBuf);
+       CMCHKUNPK(oduUnpackUInt8, &param->emtcPucchNumRepCEMsg4Lvl2, mBuf);
+       CMCHKUNPK(oduUnpackUInt8, &param->emtcPucchNumRepCEMsg4Lvl1, mBuf);
+       CMCHKUNPK(oduUnpackUInt8, &param->emtcPucchNumRepCEMsg4Lvl0, mBuf);     
  
    for (i=0; i <  RGR_MAX_CE_LEVEL ; i++) {
-         CMCHKUNPK(oduPackUInt16, &param->emtcN1pucchAnInfoLst[i], mBuf);
+         CMCHKUNPK(oduUnpackUInt16, &param->emtcN1pucchAnInfoLst[i], mBuf);
        }   
  return ROK;
 }
@@ -1728,16 +1286,16 @@ RgrEmtcPrachCEParamLst *param,
 Buffer *mBuf
 )
 {
-   CMCHKUNPK(oduPackUInt8,  &param->emtcPrachHoppingCfg, mBuf);  
-   CMCHKUNPK(oduPackUInt16, &param->emtcMpdcchNumRep, mBuf);
-   CMCHKUNPK(oduPackUInt8,  &param->emtcMpdcchNBtoMonitor[1], mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->emtcMpdcchNBtoMonitor[0], mBuf);
-   CMCHKUNPK(oduPackUInt8,  &param->emtcNumMpdcchNBtoMonitor, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->emtcNumRepPerPreambleAtt, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->emtcMaxPremAttemptCE, mBuf);
-   CMCHKUNPK(oduPackUInt16,  &param->emtcPrachStartSubFrame, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->emtcPrachFreqOffset, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->emtcPrachCfgIdx, mBuf); 
+   CMCHKUNPK(oduUnpackUInt8,  &param->emtcPrachHoppingCfg, mBuf);  
+   CMCHKUNPK(oduUnpackUInt16, &param->emtcMpdcchNumRep, mBuf);
+   CMCHKUNPK(oduUnpackUInt8,  &param->emtcMpdcchNBtoMonitor[1], mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->emtcMpdcchNBtoMonitor[0], mBuf);
+   CMCHKUNPK(oduUnpackUInt8,  &param->emtcNumMpdcchNBtoMonitor, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->emtcNumRepPerPreambleAtt, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->emtcMaxPremAttemptCE, mBuf);
+   CMCHKUNPK(oduUnpackUInt16,  &param->emtcPrachStartSubFrame, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->emtcPrachFreqOffset, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->emtcPrachCfgIdx, mBuf); 
    return ROK;
 }
 
@@ -1754,9 +1312,9 @@ Buffer *mBuf
    for (i=0; i < RGR_MAX_CE_LEVEL; i++) {      
        CMCHKUNPK(cmUnpkRgrEmtcPrachCeParamCfg, &param->emtcPrachCEparmLst[i], mBuf);
        }
-       CMCHKUNPK(oduPackUInt8, &param->emtcInitialCElevel, mBuf);
-       CMCHKUNPK(oduPackUInt8, &param->emtcPrachHopingOffset, mBuf);
-       CMCHKUNPK(oduPackUInt8, &param->emtcMpdcchStartSFCssRaFdd, mBuf);
+       CMCHKUNPK(oduUnpackUInt8, &param->emtcInitialCElevel, mBuf);
+       CMCHKUNPK(oduUnpackUInt8, &param->emtcPrachHopingOffset, mBuf);
+       CMCHKUNPK(oduUnpackUInt8, &param->emtcMpdcchStartSFCssRaFdd, mBuf);
 
  return ROK;
 }
@@ -1768,9 +1326,9 @@ Buffer *mBuf
 )
 {
 
-   CMCHKUNPK(oduPackUInt8, &param->emtcPuschNbIdx, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->emtcMpdcchNbIdx, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->emtcPdschNbIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->emtcPuschNbIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->emtcMpdcchNbIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->emtcPdschNbIdx, mBuf);
    CMCHKUNPK(cmUnpkRgrEmtcRntiCfg, &param->emtcMacRnti, mBuf);
    CMCHKUNPK(cmUnpkRgrEmtcPucchCfg, &param->emtcPucchCfg, mBuf);
    CMCHKUNPK(cmUnpkRgrEmtcPrachCfg, &param->emtcPrachCfg, mBuf);
@@ -1778,9 +1336,9 @@ Buffer *mBuf
    CMCHKUNPK(cmUnpkRgrEmtcPdschCfg, &param->emtcPdschCfg, mBuf);
    CMCHKUNPK(cmUnpkRgrEmtcRachCfg, &param->emtcRachCfg, mBuf);
    CMCHKUNPK(cmUnpkRgrEmtcSiCfg, &param->emtcSiCfg, mBuf);
-   CMCHKUNPK(oduPackUInt32,&param->emtcT301Tmr, mBuf);
-   CMCHKUNPK(oduPackUInt32, &param->emtcT300Tmr, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->pci, mBuf);
+   CMCHKUNPK(oduUnpackUInt32,&param->emtcT301Tmr, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, &param->emtcT300Tmr, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->pci, mBuf);
 
 
 
@@ -1817,8 +1375,8 @@ Buffer *mBuf
 )
 {
 
-   CMCHKUNPK(oduPackUInt8, &param->dlTotalBw, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->ulTotalBw, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->dlTotalBw, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->ulTotalBw, mBuf);
    return ROK;
 }
 
@@ -1846,8 +1404,8 @@ Buffer *mBuf
 )
 {
 
-   CMCHKPK(oduUnpackUInt8, param->isDurExtend, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->ngEnum, mBuf);
+   CMCHKPK(oduPackUInt8, param->isDurExtend, mBuf);
+   CMCHKPK(oduPackUInt32, param->ngEnum, mBuf);
    return ROK;
 }
 
@@ -1877,9 +1435,9 @@ Buffer *mBuf
    uint32_t tmpEnum;
 
 
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->ngEnum = (RgrPhichNg) tmpEnum;
-   CMCHKUNPK(oduPackUInt8, &param->isDurExtend, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isDurExtend, mBuf);
    return ROK;
 }
 
@@ -1907,11 +1465,11 @@ Buffer *mBuf
 )
 {
 
-   CMCHKPK(oduUnpackUInt8, param->maxPucchRb, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->cyclicShift, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->deltaShift, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->n1PucchAn, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->resourceSize, mBuf);
+   CMCHKPK(oduPackUInt8, param->maxPucchRb, mBuf);
+   CMCHKPK(oduPackUInt8, param->cyclicShift, mBuf);
+   CMCHKPK(oduPackUInt8, param->deltaShift, mBuf);
+   CMCHKPK(oduPackUInt16, param->n1PucchAn, mBuf);
+   CMCHKPK(oduPackUInt8, param->resourceSize, mBuf);
 
    return ROK;
 }
@@ -1940,11 +1498,11 @@ Buffer *mBuf
 )
 {
 
-   CMCHKUNPK(oduPackUInt8, &param->resourceSize, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->n1PucchAn, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->deltaShift, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->cyclicShift, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->maxPucchRb, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->resourceSize, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->n1PucchAn, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->deltaShift, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->cyclicShift, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->maxPucchRb, mBuf);
 
    return ROK;
 }
@@ -1974,10 +1532,10 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt8, param->srsSubFrameCfg, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->srsBwEnum, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->srsCfgPrdEnum, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isSrsCfgSetup, mBuf);
+   CMCHKPK(oduPackUInt8, param->srsSubFrameCfg, mBuf);
+   CMCHKPK(oduPackUInt32, param->srsBwEnum, mBuf);
+   CMCHKPK(oduPackUInt32, param->srsCfgPrdEnum, mBuf);
+   CMCHKPK(oduPackUInt8, param->isSrsCfgSetup, mBuf);
    return ROK;
 }
 
@@ -2006,12 +1564,12 @@ Buffer *mBuf
 {
    uint32_t tmpEnum;
 
-   CMCHKUNPK(oduPackUInt8, &param->isSrsCfgSetup, mBuf);
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isSrsCfgSetup, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->srsCfgPrdEnum = (RgrSrsCfgPrd) tmpEnum;
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->srsBwEnum = (RgrSrsBwCfg) tmpEnum;
-   CMCHKUNPK(oduPackUInt8, &param->srsSubFrameCfg, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->srsSubFrameCfg, mBuf);
    return ROK;
 }
 
@@ -2041,22 +1599,22 @@ Buffer *mBuf
 
    S32 i;
 
-   CMCHKPK(oduUnpackUInt8, param->prachResource, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->msgSizeGrpA, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->sizeRaPreambleGrpA, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->numRaPreamble, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->maxMsg3Tx, mBuf);
+   CMCHKPK(oduPackUInt8, param->prachResource, mBuf);
+   CMCHKPK(oduPackUInt16, param->msgSizeGrpA, mBuf);
+   CMCHKPK(oduPackUInt8, param->sizeRaPreambleGrpA, mBuf);
+   CMCHKPK(oduPackUInt8, param->numRaPreamble, mBuf);
+   CMCHKPK(oduPackUInt8, param->maxMsg3Tx, mBuf);
       for (i=param->raOccasion.size-1; i >= 0; i--) {
-         CMCHKPK(oduUnpackUInt8, param->raOccasion.subFrameNum[i], mBuf);
+         CMCHKPK(oduPackUInt8, param->raOccasion.subFrameNum[i], mBuf);
       }
-      CMCHKPK(oduUnpackUInt32, param->raOccasion.sfnEnum, mBuf);
-      CMCHKPK(oduUnpackUInt8, param->raOccasion.size, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->raWinSize, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->preambleFormat, mBuf);
+      CMCHKPK(oduPackUInt32, param->raOccasion.sfnEnum, mBuf);
+      CMCHKPK(oduPackUInt8, param->raOccasion.size, mBuf);
+   CMCHKPK(oduPackUInt8, param->raWinSize, mBuf);
+   CMCHKPK(oduPackUInt8, param->preambleFormat, mBuf);
 #ifdef RGR_V1
    /* rgr_c_001.main_5: cccpu00112372: Added contention resolution 
     * timer configuration */
-   CMCHKPK(oduUnpackUInt8, param->contResTmr, mBuf);
+   CMCHKPK(oduPackUInt8, param->contResTmr, mBuf);
 #endif
    return ROK;
 }
@@ -2090,21 +1648,21 @@ Buffer *mBuf
 #ifdef RGR_V1 
    /* rgr_c_001.main_5: cccpu00112372: Added contention resolution 
     * timer configuration */
-   CMCHKUNPK(oduPackUInt8, &param->contResTmr, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->contResTmr, mBuf);
 #endif
-   CMCHKUNPK(oduPackUInt8, &param->preambleFormat, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->raWinSize, mBuf);
-      CMCHKUNPK(oduPackUInt8, &param->raOccasion.size, mBuf);
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->preambleFormat, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->raWinSize, mBuf);
+      CMCHKUNPK(oduUnpackUInt8, &param->raOccasion.size, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->raOccasion.sfnEnum = (RgrRaSfn) tmpEnum;
       for (i=0; i<param->raOccasion.size; i++) {
-         CMCHKUNPK(oduPackUInt8, &param->raOccasion.subFrameNum[i], mBuf);
+         CMCHKUNPK(oduUnpackUInt8, &param->raOccasion.subFrameNum[i], mBuf);
       }
-   CMCHKUNPK(oduPackUInt8, &param->maxMsg3Tx, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->numRaPreamble, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->sizeRaPreambleGrpA, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->msgSizeGrpA, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->prachResource, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->maxMsg3Tx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numRaPreamble, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->sizeRaPreambleGrpA, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->msgSizeGrpA, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->prachResource, mBuf);
    return ROK;
 }
 
@@ -2145,14 +1703,14 @@ Buffer *mBuf
 
    for (idx=param->numSi-1; idx >= 0; idx--) {
    /* Enum to be packed/unpacked as uint32_t instead of S32 */
-      CMCHKPK(oduUnpackUInt32, param->siPeriodicity[idx], mBuf);
+      CMCHKPK(oduPackUInt32, param->siPeriodicity[idx], mBuf);
    }
-   CMCHKPK(oduUnpackUInt8, param->numSi, mBuf);
+   CMCHKPK(oduPackUInt8, param->numSi, mBuf);
    /*rgr_c_001.main_9 ccpu00115364 MOD changed modPrd to enum*/
-   CMCHKPK(oduUnpackUInt32, (uint32_t)param->modPrd, mBuf);
+   CMCHKPK(oduPackUInt32, (uint32_t)param->modPrd, mBuf);
 #endif/*RGR_SI_SCH*/
-   CMCHKPK(oduUnpackUInt8, param->retxCnt, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->siWinSize, mBuf);
+   CMCHKPK(oduPackUInt8, param->retxCnt, mBuf);
+   CMCHKPK(oduPackUInt8, param->siWinSize, mBuf);
    return ROK;
 }
 
@@ -2186,13 +1744,13 @@ Buffer *mBuf
 #endif/*RGR_SI_SCH*/
 
 
-   CMCHKUNPK(oduPackUInt8, &param->siWinSize, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->retxCnt, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->siWinSize, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->retxCnt, mBuf);
 #ifdef RGR_SI_SCH
    /*rgr_c_001.main_9 ccpu00115364 MOD changed modPrd to enum*/
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->modPrd = (RgrModPeriodicity) tmpEnum;
-   CMCHKUNPK(oduPackUInt8, &param->numSi, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numSi, mBuf);
 
    if(param->numSi > sizeof(param->siPeriodicity)/
                        sizeof(param->siPeriodicity[0]))
@@ -2201,7 +1759,7 @@ Buffer *mBuf
 
    /* Enum to be packed/unpacked as uint32_t instead of S32 */
    for (idx=0; idx < param->numSi; idx++) {
-      CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+      CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
       param->siPeriodicity[idx] = (RgrSiPeriodicity) tmpEnum;
    }
 #endif/*RGR_SI_SCH*/
@@ -2234,7 +1792,7 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt16, param->size, mBuf);
+   CMCHKPK(oduPackUInt16, param->size, mBuf);
    CMCHKPK(cmPkLteRnti, param->startTpcRnti, mBuf);
    return ROK;
 }
@@ -2265,7 +1823,7 @@ Buffer *mBuf
 
 
    CMCHKUNPK(cmUnpkLteRnti, &param->startTpcRnti, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->size, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->size, mBuf);
    return ROK;
 }
 
@@ -2299,7 +1857,7 @@ Buffer *mBuf
    CMCHKPK(cmPkRgrTpcRntiCfg, &param->pucchPwrFmt3, mBuf);
    CMCHKPK(SPkS8, param->deltaPreambleMsg3, mBuf);
    CMCHKPK(SPkS8, param->p0NominalPucch, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->alpha, mBuf);
+   CMCHKPK(oduPackUInt32, param->alpha, mBuf);
    CMCHKPK(SPkS8, param->p0NominalPusch, mBuf);
    return ROK;
 }
@@ -2331,7 +1889,7 @@ Buffer *mBuf
 
 
    CMCHKUNPK(SUnpkS8, &param->p0NominalPusch, mBuf);
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->alpha = (RgrPwrAlpha) tmpEnum;
    CMCHKUNPK(SUnpkS8, &param->p0NominalPucch, mBuf);
    CMCHKUNPK(SUnpkS8, &param->deltaPreambleMsg3, mBuf);
@@ -2367,9 +1925,9 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt8, param->hopOffst, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isIntraHop, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->numSubBands, mBuf);
+   CMCHKPK(oduPackUInt8, param->hopOffst, mBuf);
+   CMCHKPK(oduPackUInt8, param->isIntraHop, mBuf);
+   CMCHKPK(oduPackUInt8, param->numSubBands, mBuf);
    return ROK;
 }
 
@@ -2398,9 +1956,9 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->numSubBands, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->isIntraHop, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->hopOffst, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numSubBands, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isIntraHop, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->hopOffst, mBuf);
    return ROK;
 }
 
@@ -2431,9 +1989,9 @@ Buffer *mBuf
    S32 i;
 
    for (i=1-1; i >= 0; i--) {
-      CMCHKPK(oduUnpackUInt32, param->pmiBitMap[i], mBuf);
+      CMCHKPK(oduPackUInt32, param->pmiBitMap[i], mBuf);
    }
-   CMCHKPK(oduUnpackUInt8, param->pres, mBuf);
+   CMCHKPK(oduPackUInt8, param->pres, mBuf);
    return ROK;
 }
 
@@ -2463,9 +2021,9 @@ Buffer *mBuf
 
    S32 i;
 
-   CMCHKUNPK(oduPackUInt8, &param->pres, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->pres, mBuf);
    for (i=0; i<1; i++) {
-      CMCHKUNPK(oduPackUInt32, &param->pmiBitMap[i], mBuf);
+      CMCHKUNPK(oduUnpackUInt32, &param->pmiBitMap[i], mBuf);
    }
    return ROK;
 }
@@ -2495,9 +2053,9 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt8, param->size, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->start, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->pres, mBuf);
+   CMCHKPK(oduPackUInt8, param->size, mBuf);
+   CMCHKPK(oduPackUInt8, param->start, mBuf);
+   CMCHKPK(oduPackUInt8, param->pres, mBuf);
    return ROK;
 }
 
@@ -2526,9 +2084,9 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->pres, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->start, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->size, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->pres, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->start, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->size, mBuf);
    return ROK;
 }
 
@@ -2556,9 +2114,9 @@ Buffer *mBuf
 )
 {
 
-   CMCHKPK(oduUnpackUInt8, param->ulTrchType, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->dlTrchType, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->dir, mBuf);
+   CMCHKPK(oduPackUInt8, param->ulTrchType, mBuf);
+   CMCHKPK(oduPackUInt8, param->dlTrchType, mBuf);
+   CMCHKPK(oduPackUInt8, param->dir, mBuf);
    CMCHKPK(cmPkLteLcType, param->lcType, mBuf);
    CMCHKPK(cmPkLteLcId, param->lcId, mBuf);
    return ROK;
@@ -2591,9 +2149,9 @@ Buffer *mBuf
 
    CMCHKUNPK(cmUnpkLteLcId, &param->lcId, mBuf);
    CMCHKUNPK(cmUnpkLteLcType, &param->lcType, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->dir, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->dlTrchType, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->ulTrchType, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->dir, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->dlTrchType, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->ulTrchType, mBuf);
    return ROK;
 }
 
@@ -2622,8 +2180,8 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt8, param->thresholdCqi, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isDlFreqSel, mBuf);
+   CMCHKPK(oduPackUInt8, param->thresholdCqi, mBuf);
+   CMCHKPK(oduPackUInt8, param->isDlFreqSel, mBuf);
    return ROK;
 }
 
@@ -2652,8 +2210,8 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->isDlFreqSel, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->thresholdCqi, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isDlFreqSel, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->thresholdCqi, mBuf);
    return ROK;
 }
 
@@ -2686,10 +2244,10 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt8, param->ulStartSfIdx, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->halfFrm, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->sfn, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->freqIdx, mBuf);
+   CMCHKPK(oduPackUInt8, param->ulStartSfIdx, mBuf);
+   CMCHKPK(oduPackUInt8, param->halfFrm, mBuf);
+   CMCHKPK(oduPackUInt32, param->sfn, mBuf);
+   CMCHKPK(oduPackUInt8, param->freqIdx, mBuf);
    return ROK;
 }
 
@@ -2719,11 +2277,11 @@ Buffer *mBuf
    uint32_t tmpEnum;
 
 
-   CMCHKUNPK(oduPackUInt8, &param->freqIdx, mBuf);
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->freqIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->sfn = tmpEnum;
-   CMCHKUNPK(oduPackUInt8, &param->halfFrm, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->ulStartSfIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->halfFrm, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->ulStartSfIdx, mBuf);
    return ROK;
 }
 
@@ -2756,7 +2314,7 @@ Buffer *mBuf
    for (i=param->numRsc-1; i >= 0; i--) {
       CMCHKPK(cmPkRgrTddPrachInfo, &param->prachInfo[i], mBuf);
    }
-   CMCHKPK(oduUnpackUInt8, param->numRsc, mBuf);
+   CMCHKPK(oduPackUInt8, param->numRsc, mBuf);
    return ROK;
 }
 
@@ -2786,7 +2344,7 @@ Buffer *mBuf
 
    S32 i;
 
-   CMCHKUNPK(oduPackUInt8, &param->numRsc, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numRsc, mBuf);
    for (i=0; i<param->numRsc; i++) {
       CMCHKUNPK(cmUnpkRgrTddPrachInfo, &param->prachInfo[i], mBuf);
    }
@@ -2823,10 +2381,10 @@ Buffer    *mBuf
    S32 idx;
    for(idx = RGR_MAX_NUM_QCI-1; idx >= 0; idx--)
    {
-      CMCHKPK(oduUnpackUInt32, param->qciWgt[idx], mBuf);
+      CMCHKPK(oduPackUInt32, param->qciWgt[idx], mBuf);
    }   
-   CMCHKPK(oduUnpackUInt8, param->fairCoeffi, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->tptCoeffi, mBuf);
+   CMCHKPK(oduPackUInt8, param->fairCoeffi, mBuf);
+   CMCHKPK(oduPackUInt8, param->tptCoeffi, mBuf);
 
    return ROK;
 }
@@ -2856,11 +2414,11 @@ Buffer   *mBuf
 {
    S32 idx;
 
-   CMCHKUNPK(oduPackUInt8, &param->tptCoeffi, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->fairCoeffi, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->tptCoeffi, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->fairCoeffi, mBuf);
    for(idx = 0; idx < RGR_MAX_NUM_QCI; idx++)
    {
-      CMCHKUNPK(oduPackUInt32, &param->qciWgt[idx], mBuf);
+      CMCHKUNPK(oduUnpackUInt32, &param->qciWgt[idx], mBuf);
    }   
    return ROK;
 }
@@ -2890,9 +2448,9 @@ Buffer *mBuf
 )
 {
 
-   CMCHKPK(oduUnpackUInt16, param->maxSpsUePerUlSf, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->maxSpsUePerDlSf, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->maxSpsDlBw, mBuf);
+   CMCHKPK(oduPackUInt16, param->maxSpsUePerUlSf, mBuf);
+   CMCHKPK(oduPackUInt16, param->maxSpsUePerDlSf, mBuf);
+   CMCHKPK(oduPackUInt8, param->maxSpsDlBw, mBuf);
 
    return ROK;
 }
@@ -2923,9 +2481,9 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->maxSpsDlBw, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->maxSpsUePerDlSf, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->maxSpsUePerUlSf, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->maxSpsDlBw, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->maxSpsUePerDlSf, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->maxSpsUePerUlSf, mBuf);
    
    return ROK;
 }
@@ -2941,14 +2499,14 @@ Buffer           *mBuf
    for (idx = MAX_5GTF_SUBFRAME_INFO - 1; idx >= 0 ;--idx)
    {
 
-      CMCHKPK(oduUnpackUInt32, param->dynConfig[(uint8_t)idx], mBuf);
+      CMCHKPK(oduPackUInt32, param->dynConfig[(uint8_t)idx], mBuf);
    }
-   CMCHKPK(oduUnpackUInt8, param->uePerGrp, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->ueGrpPerTti, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->numUes, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->numOfCC, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->bwPerCC, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->cfi, mBuf);
+   CMCHKPK(oduPackUInt8, param->uePerGrp, mBuf);
+   CMCHKPK(oduPackUInt8, param->ueGrpPerTti, mBuf);
+   CMCHKPK(oduPackUInt8, param->numUes, mBuf);
+   CMCHKPK(oduPackUInt8, param->numOfCC, mBuf);
+   CMCHKPK(oduPackUInt8, param->bwPerCC, mBuf);
+   CMCHKPK(oduPackUInt8, param->cfi, mBuf);
    return ROK;
 }
 
@@ -2960,16 +2518,16 @@ Buffer           *mBuf
 {
    S8 idx = 0;      
    
-   CMCHKUNPK(oduPackUInt8, &param->cfi, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->bwPerCC, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->numOfCC, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->numUes, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->ueGrpPerTti, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->uePerGrp, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->cfi, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->bwPerCC, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numOfCC, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numUes, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->ueGrpPerTti, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->uePerGrp, mBuf);
    for (idx = 0; idx < MAX_5GTF_SUBFRAME_INFO ; ++idx)
    {
 
-      CMCHKUNPK(oduPackUInt32, &param->dynConfig[(uint8_t)idx], mBuf);
+      CMCHKUNPK(oduUnpackUInt32, &param->dynConfig[(uint8_t)idx], mBuf);
    }
    return ROK;
 }
@@ -2999,7 +2557,7 @@ Buffer *mBuf
 )
 {
 
-   CMCHKPK(oduUnpackUInt8, param->isLaaCell, mBuf);
+   CMCHKPK(oduPackUInt8, param->isLaaCell, mBuf);
 
    return ROK;
 }
@@ -3027,7 +2585,7 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->isLaaCell, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isLaaCell, mBuf);
    
    return ROK;
 }
@@ -3055,9 +2613,9 @@ Buffer *mBuf
 )
 {
 
-   CMCHKPK(oduUnpackUInt8, param->isUeCellEdge, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isAbsUe, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->pres, mBuf);
+   CMCHKPK(oduPackUInt8, param->isUeCellEdge, mBuf);
+   CMCHKPK(oduPackUInt8, param->isAbsUe, mBuf);
+   CMCHKPK(oduPackUInt32, param->pres, mBuf);
    return ROK;
 }
 
@@ -3083,9 +2641,9 @@ Buffer *mBuf
 )
 {
 
-   CMCHKUNPK(oduPackUInt32, &param->pres, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->isAbsUe, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->isUeCellEdge, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, &param->pres, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isAbsUe, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isUeCellEdge, mBuf);
    return ROK;
 }
 
@@ -3112,14 +2670,14 @@ Buffer *mBuf
 {
    S8   indx = 0;
 
-   CMCHKPK(oduUnpackUInt32, (uint32_t)param->status, mBuf);
+   CMCHKPK(oduPackUInt32, (uint32_t)param->status, mBuf);
    for (indx = RGR_ABS_PATTERN_LEN-1; indx >= 0; indx--) 
    {
-      CMCHKPK(oduUnpackUInt8, param->absPattern[(uint8_t)indx], mBuf);
+      CMCHKPK(oduPackUInt8, param->absPattern[(uint8_t)indx], mBuf);
    }
 
-   CMCHKPK(oduUnpackUInt32, param->absPatternType, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->absLoadPeriodicity, mBuf);
+   CMCHKPK(oduPackUInt32, param->absPatternType, mBuf);
+   CMCHKPK(oduPackUInt32, param->absLoadPeriodicity, mBuf);
 
    return ROK;
 
@@ -3146,13 +2704,13 @@ Buffer *mBuf
 )
 {
 
-   CMCHKPK(oduUnpackUInt32, (uint32_t)param->status, mBuf);
+   CMCHKPK(oduPackUInt32, (uint32_t)param->status, mBuf);
 #ifdef TFU_UPGRADE   
-   CMCHKPK(oduUnpackUInt32, param->pwrThreshold.pHigh, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->pwrThreshold.pLow, mBuf);
+   CMCHKPK(oduPackUInt32, param->pwrThreshold.pHigh, mBuf);
+   CMCHKPK(oduPackUInt32, param->pwrThreshold.pLow, mBuf);
 #endif   
-   CMCHKPK(oduUnpackUInt8, param->cellEdgeRbRange.endRb, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->cellEdgeRbRange.startRb, mBuf);
+   CMCHKPK(oduPackUInt8, param->cellEdgeRbRange.endRb, mBuf);
+   CMCHKPK(oduPackUInt8, param->cellEdgeRbRange.startRb, mBuf);
 
    return ROK;
 
@@ -3181,7 +2739,7 @@ Buffer *mBuf
 )
 {
 
-   CMCHKPK(oduUnpackUInt32, (uint32_t)param->status, mBuf);
+   CMCHKPK(oduPackUInt32, (uint32_t)param->status, mBuf);
 
    return ROK;
 
@@ -3210,7 +2768,7 @@ Buffer *mBuf
 )
 {
 
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&param->status, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&param->status, mBuf);
    return ROK;
 
 }
@@ -3239,7 +2797,7 @@ Buffer *mBuf
 )
 {
 
-   CMCHKPK(oduUnpackUInt32, param->pres, mBuf);
+   CMCHKPK(oduPackUInt32, param->pres, mBuf);
    CMCHKPK(cmPkRgrDsfrConfig, &param->dsfrCfg, mBuf); /*AIRSPAN_LTE_ADV_DSFR*/
    CMCHKPK(cmPkRgrSfrConfig,  &param->sfrCfg, mBuf);
    CMCHKPK(cmPkRgrAbsConfig,  &param->absCfg, mBuf);
@@ -3273,13 +2831,13 @@ Buffer *mBuf
 
    S8 indx = 0;
 
-   CMCHKUNPK(oduPackUInt32, &param->absLoadPeriodicity, mBuf);
-   CMCHKUNPK(oduPackUInt32, &param->absPatternType, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, &param->absLoadPeriodicity, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, &param->absPatternType, mBuf);
    for (indx = 0; indx <RGR_ABS_PATTERN_LEN; indx++) 
    {
-      CMCHKUNPK(oduPackUInt8, &param->absPattern[(uint8_t)indx], mBuf);
+      CMCHKUNPK(oduUnpackUInt8, &param->absPattern[(uint8_t)indx], mBuf);
    }
-   CMCHKUNPK(oduPackUInt32, (uint32_t*)&param->status, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t*)&param->status, mBuf);
 
    return ROK;
 
@@ -3308,13 +2866,13 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->cellEdgeRbRange.startRb, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->cellEdgeRbRange.endRb, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->cellEdgeRbRange.startRb, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->cellEdgeRbRange.endRb, mBuf);
 #ifdef TFU_UPGRADE   
-   CMCHKUNPK(oduPackUInt32, (uint32_t*)&param->pwrThreshold.pLow, mBuf);
-   CMCHKUNPK(oduPackUInt32, (uint32_t*)&param->pwrThreshold.pHigh, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t*)&param->pwrThreshold.pLow, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t*)&param->pwrThreshold.pHigh, mBuf);
 #endif   
-   CMCHKUNPK(oduPackUInt32, (uint32_t*)&param->status, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t*)&param->status, mBuf);
 
    return ROK;
 }
@@ -3344,7 +2902,7 @@ Buffer *mBuf
    CMCHKUNPK(cmUnpkRgrAbsConfig, &param->absCfg, mBuf);
    CMCHKUNPK(cmUnpkRgrSfrConfig, &param->sfrCfg, mBuf);   
    CMCHKUNPK(cmUnpkRgrDsfrConfig, &param->dsfrCfg, mBuf); /*AIRSPAN_LTE_ADV_DSFR*/
-   CMCHKUNPK(oduPackUInt32, &param->pres, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, &param->pres, mBuf);
 
    return ROK;
 }
@@ -3371,12 +2929,12 @@ Buffer         *mBuf
 )
 {
 
-   CMCHKPK(oduUnpackUInt8, param->maxDlUePerTti, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->maxUlUePerTti, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->numCells, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->dlSchdType, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->ulSchdType, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->numTxAntPorts, mBuf);
+   CMCHKPK(oduPackUInt8, param->maxDlUePerTti, mBuf);
+   CMCHKPK(oduPackUInt8, param->maxUlUePerTti, mBuf);
+   CMCHKPK(oduPackUInt8, param->numCells, mBuf);
+   CMCHKPK(oduPackUInt8, param->dlSchdType, mBuf);
+   CMCHKPK(oduPackUInt8, param->ulSchdType, mBuf);
+   CMCHKPK(oduPackUInt8, param->numTxAntPorts, mBuf);
    return ROK;
 } /* cmPkRgrSchedEnbCfg */
 
@@ -3403,12 +2961,12 @@ Buffer         *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->numTxAntPorts, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->ulSchdType, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->dlSchdType, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->numCells, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->maxUlUePerTti, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->maxDlUePerTti, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numTxAntPorts, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->ulSchdType, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->dlSchdType, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numCells, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->maxUlUePerTti, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->maxDlUePerTti, mBuf);
    return ROK;
 } /* cmUnpkMacSchedGnbCfg */
 
@@ -3448,35 +3006,35 @@ Buffer *mBuf
    CMCHKPK(cmPkRgr5gtfCellCfg, &param->Cell5gtfCfg, mBuf);
 #endif
 #ifdef LTE_ADV
-   CMCHKPK(oduUnpackUInt8, param->isPucchFormat3Sptd, mBuf);
+   CMCHKPK(oduPackUInt8, param->isPucchFormat3Sptd, mBuf);
 #endif
 /*LAA: Pack LAA params*/
    CMCHKPK(cmPkRgrLteUCellCfg, &param->lteUCfg, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->msg4pAVal, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isAutoCfgModeEnb, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isDynCfiEnb, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->phichTxPwrOffset, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->rarTxPwrOffset, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->pcchTxPwrOffset, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->bcchTxPwrOffset, mBuf);
-
-   CMCHKPK(oduUnpackUInt16, param->t300TmrVal, mBuf);
+   CMCHKPK(oduPackUInt32, param->msg4pAVal, mBuf);
+   CMCHKPK(oduPackUInt8, param->isAutoCfgModeEnb, mBuf);
+   CMCHKPK(oduPackUInt8, param->isDynCfiEnb, mBuf);
+   CMCHKPK(oduPackUInt16, param->phichTxPwrOffset, mBuf);
+   CMCHKPK(oduPackUInt16, param->rarTxPwrOffset, mBuf);
+   CMCHKPK(oduPackUInt16, param->pcchTxPwrOffset, mBuf);
+   CMCHKPK(oduPackUInt16, param->bcchTxPwrOffset, mBuf);
+
+   CMCHKPK(oduPackUInt16, param->t300TmrVal, mBuf);
 /*rgr_c_001.main_7 - Added support for SPS*/
    CMCHKPK(cmPkRgrSpsCellCfg, &param->spsCfg, mBuf);
 
 /* rgr_c_001.main_3: Added TTI indication from MAC to RGR user */
-   CMCHKPK(oduUnpackUInt8, param->rrmTtiIndPrd, mBuf);
+   CMCHKPK(oduPackUInt8, param->rrmTtiIndPrd, mBuf);
 #ifdef LTE_TDD
    CMCHKPK(cmPkRgrTddPrachRscInfo, &param->prachRscInfo, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->spclSfCfgIdx, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->ulDlCfgIdx, mBuf);
+   CMCHKPK(oduPackUInt8, param->spclSfCfgIdx, mBuf);
+   CMCHKPK(oduPackUInt8, param->ulDlCfgIdx, mBuf);
 
 #endif
    CMCHKPK(cmPkRgrCellCsgParamCfg, &param->csgParamCfg, mBuf);
    for (i=param->numCmnLcs-1; i >= 0; i--) {
       CMCHKPK(cmPkRgrCmnLchCfg, &param->cmnLcCfg[i], mBuf);
    }
-   CMCHKPK(oduUnpackUInt8, param->numCmnLcs, mBuf);
+   CMCHKPK(oduPackUInt8, param->numCmnLcs, mBuf);
    CMCHKPK(cmPkRgrPreambleSetCfg, &param->macPreambleSet, mBuf);
    CMCHKPK(cmPkRgrPuschCfg, &param->puschCfg, mBuf);
    CMCHKPK(cmPkRgrUlPwrCfg, &param->pwrCfg, mBuf);
@@ -3497,31 +3055,31 @@ Buffer *mBuf
    CMCHKPK(cmPkRgrCfiCfg, &param->cfiCfg, mBuf);
    CMCHKPK(cmPkRgrRntiCfg, &param->macRnti, mBuf);
    CMCHKPK(cmPkRgrDlHqCfg, &param->dlHqCfg, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->dlfsSchdType, mBuf);
+   CMCHKPK(oduPackUInt8, param->dlfsSchdType, mBuf);
 
    CMCHKPK(SPkS8, param->pMax, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->cellModSchm, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isCpDlExtend, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isCpUlExtend, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->maxUlUeNewTxPerTti, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->maxDlUeNewTxPerTti, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->maxDlRetxBw, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->maxDlBwPerUe, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->maxUlBwPerUe, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->maxCcchPerDlSf, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->maxUePerDlSf, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->maxUePerUlSf, mBuf);
+   CMCHKPK(oduPackUInt8, param->cellModSchm, mBuf);
+   CMCHKPK(oduPackUInt8, param->isCpDlExtend, mBuf);
+   CMCHKPK(oduPackUInt8, param->isCpUlExtend, mBuf);
+   CMCHKPK(oduPackUInt8, param->maxUlUeNewTxPerTti, mBuf);
+   CMCHKPK(oduPackUInt8, param->maxDlUeNewTxPerTti, mBuf);
+   CMCHKPK(oduPackUInt8, param->maxDlRetxBw, mBuf);
+   CMCHKPK(oduPackUInt8, param->maxDlBwPerUe, mBuf);
+   CMCHKPK(oduPackUInt8, param->maxUlBwPerUe, mBuf);
+   CMCHKPK(oduPackUInt8, param->maxCcchPerDlSf, mBuf);
+   CMCHKPK(oduPackUInt8, param->maxUePerDlSf, mBuf);
+   CMCHKPK(oduPackUInt8, param->maxUePerUlSf, mBuf);
 #ifdef RGR_V1
    /* rgr_x_001.main_7: [ccpu00112789] Added configuration for maximum number
       of  MSG3s */
-   CMCHKPK(oduUnpackUInt8, param->maxMsg3PerUlSf, mBuf);
+   CMCHKPK(oduPackUInt8, param->maxMsg3PerUlSf, mBuf);
 #endif
-   CMCHKPK(oduUnpackUInt8, param->macInst, mBuf);
+   CMCHKPK(oduPackUInt8, param->macInst, mBuf);
    CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
 
 #ifdef EMTC_ENABLE 
 /* EMTC related changes start*/
-   CMCHKPK(oduUnpackUInt8, param->emtcEnable, mBuf);
+   CMCHKPK(oduPackUInt8, param->emtcEnable, mBuf);
    CMCHKPK(cmPkRgrEmtcCfg, &param->emtcCellCfg, mBuf);
 /* EMTC related changes ends*/
 #endif
@@ -3558,30 +3116,30 @@ Buffer *mBuf
 #ifdef EMTC_ENABLE     
 /* EMTC related changes start*/
    CMCHKUNPK(cmUnpkRgrEmtcCfg, &param->emtcCellCfg, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->emtcEnable, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->emtcEnable, mBuf);
 /* EMTC related changes ends*/
 #endif
 
    CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->macInst, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->macInst, mBuf);
 #ifdef RGR_V1
    /* rgr_x_001.main_7: [ccpu00112789] Added configuration for maximum number
       of  MSG3s */
-   CMCHKUNPK(oduPackUInt8, &param->maxMsg3PerUlSf, mBuf);
-#endif
-   CMCHKUNPK(oduPackUInt8, &param->maxUePerUlSf, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->maxUePerDlSf, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->maxCcchPerDlSf, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->maxUlBwPerUe, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->maxDlBwPerUe, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->maxDlRetxBw, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->maxDlUeNewTxPerTti, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->maxUlUeNewTxPerTti, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->isCpUlExtend, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->isCpDlExtend, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->cellModSchm, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->maxMsg3PerUlSf, mBuf);
+#endif
+   CMCHKUNPK(oduUnpackUInt8, &param->maxUePerUlSf, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->maxUePerDlSf, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->maxCcchPerDlSf, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->maxUlBwPerUe, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->maxDlBwPerUe, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->maxDlRetxBw, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->maxDlUeNewTxPerTti, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->maxUlUeNewTxPerTti, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isCpUlExtend, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isCpDlExtend, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->cellModSchm, mBuf);
    CMCHKUNPK(SUnpkS8, &param->pMax, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->dlfsSchdType, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->dlfsSchdType, mBuf);
    CMCHKUNPK(cmUnpkRgrDlHqCfg, &param->dlHqCfg, mBuf);
    CMCHKUNPK(cmUnpkRgrRntiCfg, &param->macRnti, mBuf);
    CMCHKUNPK(cmUnpkRgrCfiCfg, &param->cfiCfg, mBuf);
@@ -3602,35 +3160,35 @@ Buffer *mBuf
    CMCHKUNPK(cmUnpkRgrUlPwrCfg, &param->pwrCfg, mBuf);
    CMCHKUNPK(cmUnpkRgrPuschCfg, &param->puschCfg, mBuf);
    CMCHKUNPK(cmUnpkRgrPreambleSetCfg, &param->macPreambleSet, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->numCmnLcs, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numCmnLcs, mBuf);
    for (i=0; i<param->numCmnLcs; i++) {
       CMCHKUNPK(cmUnpkRgrCmnLchCfg, &param->cmnLcCfg[i], mBuf);
    }
    CMCHKUNPK(cmUnpkRgrCellCsgParamCfg, &param->csgParamCfg, mBuf);
 
 #ifdef LTE_TDD
-   CMCHKUNPK(oduPackUInt8, &param->ulDlCfgIdx, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->spclSfCfgIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->ulDlCfgIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->spclSfCfgIdx, mBuf);
    CMCHKUNPK(cmUnpkRgrTddPrachRscInfo, &param->prachRscInfo, mBuf);
 
 #endif
 /* rgr_c_001.main_3: Added TTI indication from MAC to RGR user */
-   CMCHKUNPK(oduPackUInt8, &param->rrmTtiIndPrd, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->rrmTtiIndPrd, mBuf);
    /*rgr_c_001.main_7 - Added support for SPS*/
    CMCHKUNPK(cmUnpkRgrSpsDlCellCfg, &param->spsCfg, mBuf);
 
-   CMCHKUNPK(oduPackUInt16, &param->t300TmrVal, mBuf);
-   CMCHKPK(oduPackUInt16, &param->bcchTxPwrOffset, mBuf);
-   CMCHKPK(oduPackUInt16, &param->pcchTxPwrOffset, mBuf);
-   CMCHKPK(oduPackUInt16, &param->rarTxPwrOffset, mBuf);
-   CMCHKPK(oduPackUInt16, &param->phichTxPwrOffset, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->isDynCfiEnb, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->isAutoCfgModeEnb, mBuf);
-   CMCHKPK(oduPackUInt32, (uint32_t*)&param->msg4pAVal, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->t300TmrVal, mBuf);
+   CMCHKPK(oduUnpackUInt16, &param->bcchTxPwrOffset, mBuf);
+   CMCHKPK(oduUnpackUInt16, &param->pcchTxPwrOffset, mBuf);
+   CMCHKPK(oduUnpackUInt16, &param->rarTxPwrOffset, mBuf);
+   CMCHKPK(oduUnpackUInt16, &param->phichTxPwrOffset, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isDynCfiEnb, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isAutoCfgModeEnb, mBuf);
+   CMCHKPK(oduUnpackUInt32, (uint32_t*)&param->msg4pAVal, mBuf);
    /*LAA: Unpack LAA Cell params*/
    CMCHKUNPK(cmUnpkRgrLteUCellCfg, &param->lteUCfg, mBuf);
    #ifdef LTE_ADV
-   CMCHKUNPK(oduPackUInt8, &param->isPucchFormat3Sptd, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isPucchFormat3Sptd, mBuf);
 #endif
 #ifdef RG_5GTF
    CMCHKUNPK(cmUnPkRgr5gtfCellCfg, &param->Cell5gtfCfg, mBuf);
@@ -3664,12 +3222,12 @@ Buffer *mBuf
 
    /*Pack Aperiodic Trigger List only for Pcell */
 #ifdef LTE_ADV
-   CMCHKPK(oduUnpackUInt8, param->triggerSet2, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->triggerSet1, mBuf);
+   CMCHKPK(oduPackUInt8, param->triggerSet2, mBuf);
+   CMCHKPK(oduPackUInt8, param->triggerSet1, mBuf);
 #endif
 
-   CMCHKPK(oduUnpackUInt32, param->aprdModeEnum, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->pres, mBuf);
+   CMCHKPK(oduPackUInt32, param->aprdModeEnum, mBuf);
+   CMCHKPK(oduPackUInt8, param->pres, mBuf);
    return ROK;
 }
 
@@ -3699,13 +3257,13 @@ Buffer *mBuf
    uint32_t tmpEnum;
 
 
-   CMCHKUNPK(oduPackUInt8, &param->pres, mBuf);
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->pres, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->aprdModeEnum = (RgrAprdCqiMode) tmpEnum;
 
 #ifdef LTE_ADV
-   CMCHKUNPK(oduPackUInt8, &param->triggerSet1, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->triggerSet2, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->triggerSet1, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->triggerSet2, mBuf);
 #endif
 
    return ROK;
@@ -3739,13 +3297,13 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt16, param->cqiPmiCfgIdx, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->k, mBuf);
+   CMCHKPK(oduPackUInt16, param->cqiPmiCfgIdx, mBuf);
+   CMCHKPK(oduPackUInt8, param->k, mBuf);
    CMCHKPK(SPkS8, param->cqiOffst, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->subframeOffst, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->prdicityEnum, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->prdModeEnum, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->pres, mBuf);
+   CMCHKPK(oduPackUInt8, param->subframeOffst, mBuf);
+   CMCHKPK(oduPackUInt32, param->prdicityEnum, mBuf);
+   CMCHKPK(oduPackUInt32, param->prdModeEnum, mBuf);
+   CMCHKPK(oduPackUInt8, param->pres, mBuf);
    return ROK;
 }
 
@@ -3775,15 +3333,15 @@ Buffer *mBuf
    uint32_t tmpEnum;
 
 
-   CMCHKUNPK(oduPackUInt8, &param->pres, mBuf);
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->pres, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->prdModeEnum = tmpEnum;
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->prdicityEnum = tmpEnum;
-   CMCHKUNPK(oduPackUInt8, &param->subframeOffst, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->subframeOffst, mBuf);
    CMCHKUNPK(SUnpkS8, &param->cqiOffst, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->k, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->cqiPmiCfgIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->k, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->cqiPmiCfgIdx, mBuf);
    return ROK;
 }
 
@@ -3815,15 +3373,15 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt32, param->prdModeEnum, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->sANCQI, mBuf);
+   CMCHKPK(oduPackUInt32, param->prdModeEnum, mBuf);
+   CMCHKPK(oduPackUInt8, param->sANCQI, mBuf);
    /*rgr_c_001.main_9 DEL removed unwanted comments*/
-   CMCHKPK(oduUnpackUInt16, param->riCfgIdx, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->riEna, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->k, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->cqiRepType, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->cqiPCfgIdx, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->cqiPResIdx, mBuf);
+   CMCHKPK(oduPackUInt16, param->riCfgIdx, mBuf);
+   CMCHKPK(oduPackUInt8, param->riEna, mBuf);
+   CMCHKPK(oduPackUInt8, param->k, mBuf);
+   CMCHKPK(oduPackUInt8, param->cqiRepType, mBuf);
+   CMCHKPK(oduPackUInt16, param->cqiPCfgIdx, mBuf);
+   CMCHKPK(oduPackUInt16, param->cqiPResIdx, mBuf);
    return ROK;
 }
 
@@ -3853,15 +3411,15 @@ Buffer *mBuf
    uint32_t tmpEnum;
 
 
-   CMCHKUNPK(oduPackUInt16, &param->cqiPResIdx, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->cqiPCfgIdx, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->cqiRepType, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->k, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->riEna, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->cqiPResIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->cqiPCfgIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->cqiRepType, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->k, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->riEna, mBuf);
    /*rgr_c_001.main_9 DEL removed unwanted comments*/
-   CMCHKUNPK(oduPackUInt16, &param->riCfgIdx, mBuf); 
-   CMCHKUNPK(oduPackUInt8, &param->sANCQI, mBuf);
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->riCfgIdx, mBuf); 
+   CMCHKUNPK(oduUnpackUInt8, &param->sANCQI, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->prdModeEnum = (RgrPrdCqiMode) tmpEnum;
    return ROK;
 }
@@ -3892,7 +3450,7 @@ Buffer *mBuf
 
 
    CMCHKPK(cmPkRgrUeDlPCqiSetup, &param->cqiSetup, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->type, mBuf);
+   CMCHKPK(oduPackUInt8, param->type, mBuf);
    return ROK;
 }
 
@@ -3921,7 +3479,7 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->type, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->type, mBuf);
    CMCHKUNPK(cmUnpkRgrUeDlPCqiSetup, &param->cqiSetup, mBuf);
    return ROK;
 }
@@ -3952,15 +3510,15 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt8, param->fDomPosi, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->txComb, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->sANSrs, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->duration, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->cycShift, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->srsHopBw, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->srsBw, mBuf);
+   CMCHKPK(oduPackUInt8, param->fDomPosi, mBuf);
+   CMCHKPK(oduPackUInt8, param->txComb, mBuf);
+   CMCHKPK(oduPackUInt8, param->sANSrs, mBuf);
+   CMCHKPK(oduPackUInt8, param->duration, mBuf);
+   CMCHKPK(oduPackUInt32, param->cycShift, mBuf);
+   CMCHKPK(oduPackUInt32, param->srsHopBw, mBuf);
+   CMCHKPK(oduPackUInt32, param->srsBw, mBuf);
    /*rgr_c_001.main_9 DEL removed unwanted comments*/
-   CMCHKPK(oduUnpackUInt16, param->srsCfgIdx, mBuf);
+   CMCHKPK(oduPackUInt16, param->srsCfgIdx, mBuf);
    return ROK;
 }
 
@@ -3992,17 +3550,17 @@ Buffer *mBuf
 
 
    /*rgr_c_001.main_9 DEL removed unwanted comments*/
-   CMCHKUNPK(oduPackUInt16, &param->srsCfgIdx, mBuf); 
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->srsCfgIdx, mBuf); 
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->srsBw = (RgrUlSrsBwInfo) tmpEnum;
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->srsHopBw = (RgrUlSrsHoBwInfo) tmpEnum;
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->cycShift = (RgrUlSrsCycShiftInfo) tmpEnum;
-   CMCHKUNPK(oduPackUInt8, &param->duration, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->sANSrs, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->txComb, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->fDomPosi, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->duration, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->sANSrs, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->txComb, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->fDomPosi, mBuf);
    return ROK;
 }
 
@@ -4033,8 +3591,8 @@ Buffer *mBuf
 
    /* ccpu00131601:DEL - dTMax Packing removed since this param will not 
     * be required by Scheduler*/
-   CMCHKPK(oduUnpackUInt8, param->srCfgIdx, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->srResIdx, mBuf);
+   CMCHKPK(oduPackUInt8, param->srCfgIdx, mBuf);
+   CMCHKPK(oduPackUInt16, param->srResIdx, mBuf);
    return ROK;
 }
 
@@ -4062,8 +3620,8 @@ Buffer *mBuf
 )
 {
 
-   CMCHKUNPK(oduPackUInt16, &param->srResIdx, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->srCfgIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->srResIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->srCfgIdx, mBuf);
    /* ccpu00131601:DEL - dTMax UnPacking removed since this param will not 
     * be required by Scheduler*/
    return ROK;
@@ -4095,7 +3653,7 @@ Buffer *mBuf
 
 
    CMCHKPK(cmPkRgrUeSrSetupCfg, &param->srSetup, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->type, mBuf);
+   CMCHKPK(oduPackUInt8, param->type, mBuf);
    return ROK;
 }
 
@@ -4124,7 +3682,7 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->type, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->type, mBuf);
    CMCHKUNPK(cmUnpkRgrUeSrSetupCfg, &param->srSetup, mBuf);
    return ROK;
 }
@@ -4157,7 +3715,7 @@ Buffer *mBuf
 
    /*rgr_c_001.main_9 DEL removed unwanted comments*/
    CMCHKPK(cmPkRgrUeUlSrsSetupCfg, &param->srsSetup, mBuf);  
-   CMCHKPK(oduUnpackUInt8, param->type, mBuf);
+   CMCHKPK(oduPackUInt8, param->type, mBuf);
    return ROK;
 }
 
@@ -4187,7 +3745,7 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->type, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->type, mBuf);
    /*rgr_c_001.main_9 DEL removed unwanted comments*/
    CMCHKUNPK(cmUnpkRgrUeUlSrsSetupCfg, &param->srsSetup, mBuf);  
    return ROK;
@@ -4289,9 +3847,9 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt8, param->gapOffst, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->gapPrd, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isMesGapEnabled, mBuf);
+   CMCHKPK(oduPackUInt8, param->gapOffst, mBuf);
+   CMCHKPK(oduPackUInt8, param->gapPrd, mBuf);
+   CMCHKPK(oduPackUInt8, param->isMesGapEnabled, mBuf);
    return ROK;
 }
 
@@ -4320,9 +3878,9 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->isMesGapEnabled, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->gapPrd, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->gapOffst, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isMesGapEnabled, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->gapPrd, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->gapOffst, mBuf);
    return ROK;
 }
 
@@ -4351,8 +3909,8 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt16, param->drxStartOffst, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->longDrxCycle, mBuf);
+   CMCHKPK(oduPackUInt16, param->drxStartOffst, mBuf);
+   CMCHKPK(oduPackUInt16, param->longDrxCycle, mBuf);
    return ROK;
 }
 
@@ -4381,8 +3939,8 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt16, &param->longDrxCycle, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->drxStartOffst, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->longDrxCycle, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->drxStartOffst, mBuf);
    return ROK;
 }
 
@@ -4411,9 +3969,9 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt8, param->drxShortCycleTmr, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->shortDrxCycle, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->pres, mBuf);
+   CMCHKPK(oduPackUInt8, param->drxShortCycleTmr, mBuf);
+   CMCHKPK(oduPackUInt16, param->shortDrxCycle, mBuf);
+   CMCHKPK(oduPackUInt8, param->pres, mBuf);
    return ROK;
 }
 
@@ -4442,9 +4000,9 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->pres, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->shortDrxCycle, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->drxShortCycleTmr, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->pres, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->shortDrxCycle, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->drxShortCycleTmr, mBuf);
    return ROK;
 }
 \f
@@ -4473,15 +4031,15 @@ Buffer *mBuf
 
    CMCHKPK(cmPkRgrDrxShortDrx, &param->drxShortDrx, mBuf);
    CMCHKPK(cmPkRgrDrxLongCycleOffst, &param->drxLongCycleOffst, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->drxRetxTmr, mBuf);
+   CMCHKPK(oduPackUInt16, param->drxRetxTmr, mBuf);
 #ifdef EMTC_ENABLE
-   CMCHKPK(oduUnpackUInt8,  param->drxRetxTmrR13Pres, mBuf);
-   CMCHKPK(oduUnpackUInt8,  param->drxOnDurTmrR13Pres, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->emtcDrxUlRetxTmr, mBuf);
-   CMCHKPK(oduUnpackUInt8,  param->isEmtcUe, mBuf); 
+   CMCHKPK(oduPackUInt8,  param->drxRetxTmrR13Pres, mBuf);
+   CMCHKPK(oduPackUInt8,  param->drxOnDurTmrR13Pres, mBuf);
+   CMCHKPK(oduPackUInt16, param->emtcDrxUlRetxTmr, mBuf);
+   CMCHKPK(oduPackUInt8,  param->isEmtcUe, mBuf); 
 #endif
-   CMCHKPK(oduUnpackUInt16, param->drxInactvTmr, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->drxOnDurTmr, mBuf);
+   CMCHKPK(oduPackUInt16, param->drxInactvTmr, mBuf);
+   CMCHKPK(oduPackUInt16, param->drxOnDurTmr, mBuf);
 /*rgr_c_001.main_9 ADD added changes for R9*/
 #ifdef LTEMAC_R9
    CMCHKPK(cmPkTknS32, &param->cqiMask, mBuf);
@@ -4518,15 +4076,15 @@ Buffer *mBuf
 #ifdef LTEMAC_R9
    CMCHKUNPK(cmUnpkTknS32, &param->cqiMask, mBuf);
 #endif
-   CMCHKUNPK(oduPackUInt16, &param->drxOnDurTmr, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->drxInactvTmr, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->drxOnDurTmr, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->drxInactvTmr, mBuf);
 #ifdef EMTC_ENABLE
-   CMCHKUNPK(oduPackUInt8, &param->isEmtcUe, mBuf); 
-   CMCHKUNPK(oduPackUInt16,&param->emtcDrxUlRetxTmr, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->drxOnDurTmrR13Pres, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->drxRetxTmrR13Pres, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isEmtcUe, mBuf); 
+   CMCHKUNPK(oduUnpackUInt16,&param->emtcDrxUlRetxTmr, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->drxOnDurTmrR13Pres, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->drxRetxTmrR13Pres, mBuf);
 #endif
-   CMCHKUNPK(oduPackUInt16, &param->drxRetxTmr, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->drxRetxTmr, mBuf);
    CMCHKUNPK(cmUnpkRgrDrxLongCycleOffst, &param->drxLongCycleOffst, mBuf);
    CMCHKUNPK(cmUnpkRgrDrxShortDrx, &param->drxShortDrx, mBuf);
    return ROK;
@@ -4557,11 +4115,11 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt8, param->txAntSel, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->simCqiAckNack, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->resAloocType1, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->intraSfFeqHop, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->pwrClass, mBuf);
+   CMCHKPK(oduPackUInt8, param->txAntSel, mBuf);
+   CMCHKPK(oduPackUInt8, param->simCqiAckNack, mBuf);
+   CMCHKPK(oduPackUInt8, param->resAloocType1, mBuf);
+   CMCHKPK(oduPackUInt8, param->intraSfFeqHop, mBuf);
+   CMCHKPK(oduPackUInt8, param->pwrClass, mBuf);
    return ROK;
 }
 
@@ -4590,11 +4148,11 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->pwrClass, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->intraSfFeqHop, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->resAloocType1, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->simCqiAckNack, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->txAntSel, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->pwrClass, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->intraSfFeqHop, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->resAloocType1, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->simCqiAckNack, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->txAntSel, mBuf);
    
    return ROK;
 }
@@ -4623,9 +4181,9 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt32, param->ackNackRepFactor, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->pucchAckNackRep, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isAckNackEnabled, mBuf);
+   CMCHKPK(oduPackUInt32, param->ackNackRepFactor, mBuf);
+   CMCHKPK(oduPackUInt16, param->pucchAckNackRep, mBuf);
+   CMCHKPK(oduPackUInt8, param->isAckNackEnabled, mBuf);
    return ROK;
 }
 
@@ -4655,9 +4213,9 @@ Buffer *mBuf
    uint32_t tmpEnum;
 
 
-   CMCHKUNPK(oduPackUInt8, &param->isAckNackEnabled, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->pucchAckNackRep, mBuf);
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isAckNackEnabled, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->pucchAckNackRep, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->ackNackRepFactor = (RgrAckNackRepFactor) tmpEnum;
    return ROK;
 }
@@ -4687,9 +4245,9 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt32, param->txModeEnum, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->tmTrnstnState, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->pres, mBuf);
+   CMCHKPK(oduPackUInt32, param->txModeEnum, mBuf);
+   CMCHKPK(oduPackUInt32, param->tmTrnstnState, mBuf);
+   CMCHKPK(oduPackUInt8, param->pres, mBuf);
    
    return ROK;
 }
@@ -4720,11 +4278,11 @@ Buffer *mBuf
    uint32_t tmpEnum;
 
 
-   CMCHKUNPK(oduPackUInt8, &param->pres, mBuf);
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->pres, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->tmTrnstnState = (RgrTxModeTrnstn) tmpEnum;
 
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->txModeEnum = (RgrTxMode) tmpEnum;
    return ROK;
 }
@@ -4754,8 +4312,8 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt8, param->deltaHqOffst, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->maxUlHqTx, mBuf);
+   CMCHKPK(oduPackUInt8, param->deltaHqOffst, mBuf);
+   CMCHKPK(oduPackUInt8, param->maxUlHqTx, mBuf);
    return ROK;
 }
 
@@ -4784,8 +4342,8 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->maxUlHqTx, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->deltaHqOffst, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->maxUlHqTx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->deltaHqOffst, mBuf);
    return ROK;
 }
 
@@ -4814,9 +4372,9 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt8, param->idx, mBuf);
+   CMCHKPK(oduPackUInt8, param->idx, mBuf);
    CMCHKPK(cmPkLteRnti, param->tpcRnti, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->pres, mBuf);
+   CMCHKPK(oduPackUInt8, param->pres, mBuf);
    return ROK;
 }
 
@@ -4845,9 +4403,9 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->pres, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->pres, mBuf);
    CMCHKUNPK(cmUnpkLteRnti, &param->tpcRnti, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->idx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->idx, mBuf);
    return ROK;
 }
 
@@ -4877,14 +4435,14 @@ Buffer *mBuf
 {
 
    S32 i;
-   CMCHKPK(oduUnpackUInt16, param->explicitRelCnt, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->dlSpsPrdctyEnum, mBuf);
+   CMCHKPK(oduPackUInt16, param->explicitRelCnt, mBuf);
+   CMCHKPK(oduPackUInt32, param->dlSpsPrdctyEnum, mBuf);
    for (i=param->numPucchVal-1; i >= 0; i--) {
-      CMCHKPK(oduUnpackUInt32, param->n1PucchVal[i], mBuf);
+      CMCHKPK(oduPackUInt32, param->n1PucchVal[i], mBuf);
    }
-   CMCHKPK(oduUnpackUInt8, param->numPucchVal, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->numSpsHqProc, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isDlSpsEnabled, mBuf);
+   CMCHKPK(oduPackUInt8, param->numPucchVal, mBuf);
+   CMCHKPK(oduPackUInt8, param->numSpsHqProc, mBuf);
+   CMCHKPK(oduPackUInt8, param->isDlSpsEnabled, mBuf);
    return ROK;
 }
 
@@ -4915,15 +4473,15 @@ Buffer *mBuf
 
    S32 i;
 
-   CMCHKUNPK(oduPackUInt8, &param->isDlSpsEnabled, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->numSpsHqProc, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->numPucchVal, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isDlSpsEnabled, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numSpsHqProc, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numPucchVal, mBuf);
    for (i=0; i<param->numPucchVal; i++) {
-      CMCHKUNPK(oduPackUInt32, &param->n1PucchVal[i], mBuf);
+      CMCHKUNPK(oduUnpackUInt32, &param->n1PucchVal[i], mBuf);
    }
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->dlSpsPrdctyEnum = tmpEnum;
-   CMCHKUNPK(oduPackUInt16, &param->explicitRelCnt, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->explicitRelCnt, mBuf);
    return ROK;
 }
 
@@ -4953,25 +4511,25 @@ Buffer *mBuf
 
    S32 i;
 
-   CMCHKPK(oduUnpackUInt8, param->isLcSRMaskEnab, mBuf);
+   CMCHKPK(oduPackUInt8, param->isLcSRMaskEnab, mBuf);
    for (i=param->lcCnt-1; i >= 0; i--) {
       /* SPS Changes starts */
-      CMCHKPK(oduUnpackUInt8, param->spsLcInfo[i].isSpsEnabled, mBuf);
-      CMCHKPK(oduUnpackUInt8, param->spsLcInfo[i].lcId, mBuf);
+      CMCHKPK(oduPackUInt8, param->spsLcInfo[i].isSpsEnabled, mBuf);
+      CMCHKPK(oduPackUInt8, param->spsLcInfo[i].lcId, mBuf);
       /* SPS Changes ends */
    }
-   CMCHKPK(oduUnpackUInt8, param->lcCnt, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->ulSpsPrdctyEnum, mBuf);
+   CMCHKPK(oduPackUInt8, param->lcCnt, mBuf);
+   CMCHKPK(oduPackUInt32, param->ulSpsPrdctyEnum, mBuf);
       CMCHKPK(SPkS8, param->pwrCfg.p0UePuschVal, mBuf);
       CMCHKPK(SPkS8, param->pwrCfg.p0NominalPuschVal, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->pwrCfgPres, mBuf);
+   CMCHKPK(oduPackUInt8, param->pwrCfgPres, mBuf);
 
 #ifdef LTE_TDD
-   CMCHKPK(oduUnpackUInt8, param->twoIntervalCfg, mBuf);
+   CMCHKPK(oduPackUInt8, param->twoIntervalCfg, mBuf);
 
 #endif
-   CMCHKPK(oduUnpackUInt32, param->implicitRelCnt, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isUlSpsEnabled, mBuf);
+   CMCHKPK(oduPackUInt32, param->implicitRelCnt, mBuf);
+   CMCHKPK(oduPackUInt8, param->isUlSpsEnabled, mBuf);
    return ROK;
 }
 
@@ -5002,25 +4560,25 @@ Buffer *mBuf
 
    S32 i;
 
-   CMCHKUNPK(oduPackUInt8, &param->isUlSpsEnabled, mBuf);
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isUlSpsEnabled, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->implicitRelCnt = tmpEnum;
 
 #ifdef LTE_TDD
-   CMCHKUNPK(oduPackUInt8, &param->twoIntervalCfg, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->twoIntervalCfg, mBuf);
 
 #endif
-   CMCHKUNPK(oduPackUInt8, &param->pwrCfgPres, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->pwrCfgPres, mBuf);
       CMCHKUNPK(SUnpkS8, &param->pwrCfg.p0NominalPuschVal, mBuf);
       CMCHKUNPK(SUnpkS8, &param->pwrCfg.p0UePuschVal, mBuf);
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->ulSpsPrdctyEnum = tmpEnum;
-   CMCHKUNPK(oduPackUInt8, &param->lcCnt, mBuf); 
+   CMCHKUNPK(oduUnpackUInt8, &param->lcCnt, mBuf); 
    for (i=0; i<param->lcCnt; i++) {
-      CMCHKUNPK(oduPackUInt8, &param->spsLcInfo[i].lcId, mBuf);
-      CMCHKUNPK(oduPackUInt8, &param->spsLcInfo[i].isSpsEnabled, mBuf);
+      CMCHKUNPK(oduUnpackUInt8, &param->spsLcInfo[i].lcId, mBuf);
+      CMCHKUNPK(oduUnpackUInt8, &param->spsLcInfo[i].isSpsEnabled, mBuf);
    }
-   CMCHKUNPK(oduPackUInt8, &param->isLcSRMaskEnab, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isLcSRMaskEnab, mBuf);
    return ROK;
 }
 
@@ -5110,12 +4668,12 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt8, param->trgCqi, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->pSRSOffset, mBuf);
+   CMCHKPK(oduPackUInt8, param->trgCqi, mBuf);
+   CMCHKPK(oduPackUInt8, param->pSRSOffset, mBuf);
    CMCHKPK(SPkS8, param->p0UePucch, mBuf);
    CMCHKPK(SPkS8, param->p0UePusch, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isDeltaMCSEnabled, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isAccumulated, mBuf);
+   CMCHKPK(oduPackUInt8, param->isDeltaMCSEnabled, mBuf);
+   CMCHKPK(oduPackUInt8, param->isAccumulated, mBuf);
    CMCHKPK(cmPkRgrUeGrpPwrCfg, &param->uePucchPwr, mBuf);
    CMCHKPK(cmPkRgrUeGrpPwrCfg, &param->uePuschPwr, mBuf);
    return ROK;
@@ -5148,12 +4706,12 @@ Buffer *mBuf
 
    CMCHKUNPK(cmUnpkRgrUeGrpPwrCfg, &param->uePuschPwr, mBuf);
    CMCHKUNPK(cmUnpkRgrUeGrpPwrCfg, &param->uePucchPwr, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->isAccumulated, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->isDeltaMCSEnabled, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isAccumulated, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isDeltaMCSEnabled, mBuf);
    CMCHKUNPK(SUnpkS8, &param->p0UePusch, mBuf);
    CMCHKUNPK(SUnpkS8, &param->p0UePucch, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->pSRSOffset, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->trgCqi, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->pSRSOffset, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->trgCqi, mBuf);
    return ROK;
 }
 
@@ -5182,9 +4740,9 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt32, param->ueBr, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->dlAmbr, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->ambrPres, mBuf);
+   CMCHKPK(oduPackUInt32, param->ueBr, mBuf);
+   CMCHKPK(oduPackUInt32, param->dlAmbr, mBuf);
+   CMCHKPK(oduPackUInt8, param->ambrPres, mBuf);
    return ROK;
 }
 
@@ -5213,9 +4771,9 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->ambrPres, mBuf);
-   CMCHKUNPK(oduPackUInt32, &param->dlAmbr, mBuf);
-   CMCHKUNPK(oduPackUInt32, &param->ueBr, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->ambrPres, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, &param->dlAmbr, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, &param->ueBr, mBuf);
    return ROK;
 }
 
@@ -5242,10 +4800,10 @@ Buffer *mBuf
 { 
  
  
-   CMCHKPK(oduUnpackUInt8, param->bCQIIdx, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->bRIIdx, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->bACKIdx, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->pres, mBuf);
+   CMCHKPK(oduPackUInt8, param->bCQIIdx, mBuf);
+   CMCHKPK(oduPackUInt8, param->bRIIdx, mBuf);
+   CMCHKPK(oduPackUInt8, param->bACKIdx, mBuf);
+   CMCHKPK(oduPackUInt8, param->pres, mBuf);
    return ROK;
 }
 
@@ -5274,10 +4832,10 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->pres, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->bACKIdx, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->bRIIdx, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->bCQIIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->pres, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->bACKIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->bRIIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->bCQIIdx, mBuf);
    return ROK;
 }
 
@@ -5304,8 +4862,8 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt32, param->selType, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->pres, mBuf);
+   CMCHKPK(oduPackUInt32, param->selType, mBuf);
+   CMCHKPK(oduPackUInt8, param->pres, mBuf);
    return ROK;
 }
 
@@ -5335,8 +4893,8 @@ Buffer *mBuf
    uint32_t tmpEnum;
 
 
-   CMCHKUNPK(oduPackUInt8, &param->pres, mBuf);
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->pres, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
    param->selType = (RgrUeTxAntSelType) tmpEnum;
    return ROK;
 }
@@ -5365,8 +4923,8 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt16, param->taTmr, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->pres, mBuf);
+   CMCHKPK(oduPackUInt16, param->taTmr, mBuf);
+   CMCHKPK(oduPackUInt8, param->pres, mBuf);
    return ROK;
 }
 
@@ -5395,8 +4953,8 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->pres, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->taTmr, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->pres, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->taTmr, mBuf);
    return ROK;
 }
 
@@ -5414,45 +4972,45 @@ Buffer *mBuf
    RgrPucchRepCfgRel13 *emtcPucchRepCfg = &(param->emtcPucchRepCfg);
    RgrEpdcchAddModLst *epdcchAddModLst;
 
-   CMCHKUNPK(oduPackUInt8,&param->pdschReptLevModeA,mBuf);
+   CMCHKUNPK(oduUnpackUInt8,&param->pdschReptLevModeA,mBuf);
    /*UnPacking PUCCH Rep */
-   CMCHKUNPK(oduPackUInt8,&(emtcPucchRepCfg->modeANumPucchRepFormat2),mBuf);
-   CMCHKUNPK(oduPackUInt8,&(emtcPucchRepCfg->modeANumPucchRepFormat1),mBuf);
-   CMCHKUNPK(oduPackUInt8,&(emtcPucchRepCfg->isPucchRepPres),mBuf);
+   CMCHKUNPK(oduUnpackUInt8,&(emtcPucchRepCfg->modeANumPucchRepFormat2),mBuf);
+   CMCHKUNPK(oduUnpackUInt8,&(emtcPucchRepCfg->modeANumPucchRepFormat1),mBuf);
+   CMCHKUNPK(oduUnpackUInt8,&(emtcPucchRepCfg->isPucchRepPres),mBuf);
    
    
    
    for(indx = 0; indx < RGR_MAX_EPDCCH_SET; indx++)
    {
       epdcchAddModLst =  &(emtcEpdcchCfg->epdcchAddModLst[indx]);
-      CMCHKUNPK(oduPackUInt32,&(epdcchAddModLst->extaddgrp2.mpddchNB),mBuf);
-      CMCHKUNPK(oduPackUInt16,&(epdcchAddModLst->extaddgrp2.mpdcchNumRep),mBuf);
-      CMCHKUNPK(oduPackUInt8,&(epdcchAddModLst->extaddgrp2.mpdcchStartUESSFDD),mBuf);
-      CMCHKUNPK(oduPackUInt8,&(epdcchAddModLst->extaddgrp2.mpddchPdschHop),mBuf);
-      CMCHKUNPK(oduPackUInt8,&(epdcchAddModLst->extaddgrp2.csiNumRep),mBuf);
-      CMCHKUNPK(oduPackUInt8,&(epdcchAddModLst->extaddgrp2.pres),mBuf);
+      CMCHKUNPK(oduUnpackUInt32,&(epdcchAddModLst->extaddgrp2.mpddchNB),mBuf);
+      CMCHKUNPK(oduUnpackUInt16,&(epdcchAddModLst->extaddgrp2.mpdcchNumRep),mBuf);
+      CMCHKUNPK(oduUnpackUInt8,&(epdcchAddModLst->extaddgrp2.mpdcchStartUESSFDD),mBuf);
+      CMCHKUNPK(oduUnpackUInt8,&(epdcchAddModLst->extaddgrp2.mpddchPdschHop),mBuf);
+      CMCHKUNPK(oduUnpackUInt8,&(epdcchAddModLst->extaddgrp2.csiNumRep),mBuf);
+      CMCHKUNPK(oduUnpackUInt8,&(epdcchAddModLst->extaddgrp2.pres),mBuf);
       CMCHKUNPK(cmUnpkTknUInt8,&(epdcchAddModLst->mpdcchNumPRBpair),mBuf);
       CMCHKUNPK(cmUnpkTknUInt32,&(epdcchAddModLst->pdschRemapQLcfgId),mBuf);
-      CMCHKUNPK(oduPackUInt32,&(epdcchAddModLst->pucchResStartoffset),mBuf);
-      CMCHKUNPK(oduPackUInt32,&(epdcchAddModLst->dmrsScrambSeq),mBuf);
+      CMCHKUNPK(oduUnpackUInt32,&(epdcchAddModLst->pucchResStartoffset),mBuf);
+      CMCHKUNPK(oduUnpackUInt32,&(epdcchAddModLst->dmrsScrambSeq),mBuf);
       for(idx = 0; idx < 5; idx++)
       {
-         CMCHKUNPK(oduPackUInt8,&(epdcchAddModLst->resBlkAssignment.rbAssignment[idx]),mBuf);
+         CMCHKUNPK(oduUnpackUInt8,&(epdcchAddModLst->resBlkAssignment.rbAssignment[idx]),mBuf);
       }
 
-      CMCHKUNPK(oduPackUInt8,&(epdcchAddModLst->resBlkAssignment.numPRBpairs),mBuf);
-      CMCHKUNPK(oduPackUInt8,&(epdcchAddModLst->transmissionType),mBuf);
-      CMCHKUNPK(oduPackUInt8,&(epdcchAddModLst->setConfigId),mBuf);
+      CMCHKUNPK(oduUnpackUInt8,&(epdcchAddModLst->resBlkAssignment.numPRBpairs),mBuf);
+      CMCHKUNPK(oduUnpackUInt8,&(epdcchAddModLst->transmissionType),mBuf);
+      CMCHKUNPK(oduUnpackUInt8,&(epdcchAddModLst->setConfigId),mBuf);
 
    }
    CMCHKUNPK(cmUnpkTknUInt32,&(emtcEpdcchCfg->startSymbolr11),mBuf);
    for(indx = 0; indx < 5; indx++)
    {
-      CMCHKUNPK(oduPackUInt8,&(emtcEpdcchCfg->sfPtn.measSfPatFDD[indx]),mBuf);
+      CMCHKUNPK(oduUnpackUInt8,&(emtcEpdcchCfg->sfPtn.measSfPatFDD[indx]),mBuf);
    }
-   CMCHKUNPK(oduPackUInt8, &(emtcEpdcchCfg->sfPtn.pres), mBuf);
-   CMCHKUNPK(oduPackUInt8, &(param->pres), mBuf);
-   CMCHKUNPK(oduPackUInt8, &(param->isHdFddEnbld), mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &(emtcEpdcchCfg->sfPtn.pres), mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &(param->pres), mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &(param->isHdFddEnbld), mBuf);
 
 #ifdef EMTC_DEBUG_CONSOLE_PRINTS 
    printf("\n EMTC RGR UE unpack\n");
@@ -5510,42 +5068,42 @@ S16 cmPkRgrEmtcUeCfg
    RgrPucchRepCfgRel13 *emtcPucchRepCfg = &(param->emtcPucchRepCfg);
    RgrEpdcchAddModLst *epdcchAddModLst;
 
-   CMCHKPK(oduUnpackUInt8, param->isHdFddEnbld, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->pres, mBuf);
-   CMCHKPK(oduUnpackUInt8, emtcEpdcchCfg->sfPtn.pres, mBuf);
+   CMCHKPK(oduPackUInt8, param->isHdFddEnbld, mBuf);
+   CMCHKPK(oduPackUInt8, param->pres, mBuf);
+   CMCHKPK(oduPackUInt8, emtcEpdcchCfg->sfPtn.pres, mBuf);
    for(indx = 4; indx >=0; indx--)
    {
-      CMCHKPK(oduUnpackUInt8,emtcEpdcchCfg->sfPtn.measSfPatFDD[indx],mBuf);
+      CMCHKPK(oduPackUInt8,emtcEpdcchCfg->sfPtn.measSfPatFDD[indx],mBuf);
    }
    CMCHKPK(cmPkTknUInt32,&emtcEpdcchCfg->startSymbolr11,mBuf);
    for(indx = RGR_MAX_EPDCCH_SET-1 ; indx >= 0; indx--)
    {
       epdcchAddModLst =  &(emtcEpdcchCfg->epdcchAddModLst[indx]);
 
-      CMCHKPK(oduUnpackUInt8,epdcchAddModLst->setConfigId,mBuf);
-      CMCHKPK(oduUnpackUInt8,epdcchAddModLst->transmissionType,mBuf);
-      CMCHKPK(oduUnpackUInt8,epdcchAddModLst->resBlkAssignment.numPRBpairs,mBuf);
+      CMCHKPK(oduPackUInt8,epdcchAddModLst->setConfigId,mBuf);
+      CMCHKPK(oduPackUInt8,epdcchAddModLst->transmissionType,mBuf);
+      CMCHKPK(oduPackUInt8,epdcchAddModLst->resBlkAssignment.numPRBpairs,mBuf);
       for(idx = 4; idx >= 0; idx--)
       {
-         CMCHKPK(oduUnpackUInt8,epdcchAddModLst->resBlkAssignment.rbAssignment[idx],mBuf);
+         CMCHKPK(oduPackUInt8,epdcchAddModLst->resBlkAssignment.rbAssignment[idx],mBuf);
       }
-      CMCHKPK(oduUnpackUInt32,epdcchAddModLst->dmrsScrambSeq,mBuf);
-      CMCHKPK(oduUnpackUInt32,epdcchAddModLst->pucchResStartoffset,mBuf);
+      CMCHKPK(oduPackUInt32,epdcchAddModLst->dmrsScrambSeq,mBuf);
+      CMCHKPK(oduPackUInt32,epdcchAddModLst->pucchResStartoffset,mBuf);
       CMCHKPK(cmPkTknUInt32,&(epdcchAddModLst->pdschRemapQLcfgId),mBuf);
       CMCHKPK(cmPkTknUInt8,&(epdcchAddModLst->mpdcchNumPRBpair),mBuf);
-      CMCHKPK(oduUnpackUInt8,epdcchAddModLst->extaddgrp2.pres,mBuf);
-      CMCHKPK(oduUnpackUInt8,epdcchAddModLst->extaddgrp2.csiNumRep,mBuf);
-      CMCHKPK(oduUnpackUInt8,epdcchAddModLst->extaddgrp2.mpddchPdschHop,mBuf);
-      CMCHKPK(oduUnpackUInt8,epdcchAddModLst->extaddgrp2.mpdcchStartUESSFDD,mBuf);
-      CMCHKPK(oduUnpackUInt16,epdcchAddModLst->extaddgrp2.mpdcchNumRep,mBuf);
-      CMCHKPK(oduUnpackUInt32,epdcchAddModLst->extaddgrp2.mpddchNB,mBuf);
+      CMCHKPK(oduPackUInt8,epdcchAddModLst->extaddgrp2.pres,mBuf);
+      CMCHKPK(oduPackUInt8,epdcchAddModLst->extaddgrp2.csiNumRep,mBuf);
+      CMCHKPK(oduPackUInt8,epdcchAddModLst->extaddgrp2.mpddchPdschHop,mBuf);
+      CMCHKPK(oduPackUInt8,epdcchAddModLst->extaddgrp2.mpdcchStartUESSFDD,mBuf);
+      CMCHKPK(oduPackUInt16,epdcchAddModLst->extaddgrp2.mpdcchNumRep,mBuf);
+      CMCHKPK(oduPackUInt32,epdcchAddModLst->extaddgrp2.mpddchNB,mBuf);
    }
    
 /*Packing PUCCH Rep */
-   CMCHKPK(oduUnpackUInt8,emtcPucchRepCfg->isPucchRepPres, mBuf);
-   CMCHKPK(oduUnpackUInt8,emtcPucchRepCfg->modeANumPucchRepFormat1,mBuf);
-   CMCHKPK(oduUnpackUInt8,emtcPucchRepCfg->modeANumPucchRepFormat2,mBuf);
-   CMCHKPK(oduUnpackUInt8,param->pdschReptLevModeA,mBuf);
+   CMCHKPK(oduPackUInt8,emtcPucchRepCfg->isPucchRepPres, mBuf);
+   CMCHKPK(oduPackUInt8,emtcPucchRepCfg->modeANumPucchRepFormat1,mBuf);
+   CMCHKPK(oduPackUInt8,emtcPucchRepCfg->modeANumPucchRepFormat2,mBuf);
+   CMCHKPK(oduPackUInt8,param->pdschReptLevModeA,mBuf);
    
 #ifdef EMTC_DEBUG_CONSOLE_PRINTS 
    printf("\n EMTC RGR UE pack\n");
@@ -5599,11 +5157,11 @@ S16 cmUnpkRgr5gtfUeCfg
  Buffer       *mBuf
 )
 {
-   CMCHKUNPK(oduPackUInt8, &param->grpId, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->BeamId, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->numCC, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->mcs, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->maxPrb, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->grpId, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->BeamId, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numCC, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->mcs, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->maxPrb, mBuf);
    return ROK;
 }
 
@@ -5613,11 +5171,11 @@ S16 cmPkRgr5gtfUeCfg
  Buffer       *mBuf
 )
 {
-   CMCHKPK(oduUnpackUInt8, param->maxPrb, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->mcs, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->numCC, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->BeamId, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->grpId, mBuf);
+   CMCHKPK(oduPackUInt8, param->maxPrb, mBuf);
+   CMCHKPK(oduPackUInt8, param->mcs, mBuf);
+   CMCHKPK(oduPackUInt8, param->numCC, mBuf);
+   CMCHKPK(oduPackUInt8, param->BeamId, mBuf);
+   CMCHKPK(oduPackUInt8, param->grpId, mBuf);
    return ROK;
 }
 #endif
@@ -5651,9 +5209,9 @@ Buffer *mBuf
 #ifdef EMTC_ENABLE
  CMCHKPK(cmPkRgrEmtcUeCfg, &param->emtcUeCfg, mBuf);
 #endif
-   CMCHKPK(oduUnpackUInt8, param->csgMmbrSta, mBuf);
+   CMCHKPK(oduPackUInt8, param->csgMmbrSta, mBuf);
 
-   CMCHKPK(oduUnpackUInt32, param->accessStratumRls, mBuf);
+   CMCHKPK(oduPackUInt32, param->accessStratumRls, mBuf);
    /* LTE_ADV_FLAG_REMOVED_START */
    CMCHKPK(cmPkRgrLteAdvancedUeConfig, &param->ueLteAdvCfg, mBuf);
    /* LTE_ADV_FLAG_REMOVED_END */
@@ -5673,7 +5231,7 @@ Buffer *mBuf
 
 /*rgr_c_001.main_9 ADD added changes for HDFDD*/
 #ifdef LTEMAC_HDFDD
-   CMCHKPK(oduUnpackUInt8, param->isHdFddEnbld, mBuf);
+   CMCHKPK(oduPackUInt8, param->isHdFddEnbld, mBuf);
 #endif
 
 #ifdef TFU_UPGRADE
@@ -5686,7 +5244,7 @@ Buffer *mBuf
    CMCHKPK(cmPkRgrUeSpsCfg, &param->ueSpsCfg, mBuf);
 
 #ifdef LTE_TDD
-   CMCHKPK(oduUnpackUInt32, param->ackNackModeEnum, mBuf);
+   CMCHKPK(oduPackUInt32, param->ackNackModeEnum, mBuf);
 
 #endif
    CMCHKPK(cmPkTknUInt8, &param->dedPreambleId, mBuf);
@@ -5694,966 +5252,29 @@ Buffer *mBuf
    CMCHKPK(cmPkRgrUeCapCfg, &param->ueCapCfg, mBuf);
    CMCHKPK(cmPkRgrUeMeasGapCfg, &param->ueMesGapCfg, mBuf);
    CMCHKPK(cmPkRgrUeAckNackRepCfg, &param->ueAckNackCfg, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isTtiBundlEnabled, mBuf);
+   CMCHKPK(oduPackUInt8, param->isTtiBundlEnabled, mBuf);
 /*rgr_c_001.main_9 ADD added changes for DRX*/
    
    /* Anshika - Pack only if DRX is enabled */
    if(TRUE == param->ueDrxCfg.isDrxEnabled)
    {   
     CMCHKPK(cmPkRgrUeDrxCfg, &param->ueDrxCfg, mBuf);
-   }
-   CMCHKPK(oduUnpackUInt8, param->ueDrxCfg.isDrxEnabled, mBuf); /* This has to be packed even if
-                                                 DRX is disabled */
-   CMCHKPK(oduUnpackUInt32, param->ueCatEnum, mBuf);
-#ifdef RGR_V1
-   /* rgr_c_001.main_5: ccpu00112398: Added periodicBSR-timer and
-    * retxBSR-timer */
-   CMCHKPK(cmPkRgrUeBsrTmrCfg, &param->ueBsrTmrCfg, mBuf);
-#endif
-   CMCHKPK(cmPkRgrUeTaTmrCfg, &param->ueTaTmrCfg, mBuf);
-   CMCHKPK(cmPkRgrUeQosCfg, &param->ueQosCfg, mBuf);
-   CMCHKPK(cmPkRgrUeUlPwrCfg, &param->ueUlPwrCfg, mBuf);
-   CMCHKPK(cmPkRgrUeUlHqCfg, &param->ueUlHqCfg, mBuf);
-   CMCHKPK(cmPkRgrUeDlCqiCfg, &param->ueDlCqiCfg, mBuf);
-   CMCHKPK(cmPkRgrUeTxModeCfg, &param->txMode, mBuf);
-   CMCHKPK(cmPkLteRnti, param->crnti, mBuf);
-   CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmUnpkRgrUeCfg
-*
-*
-*     Desc : UE configuration
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmUnpkRgrUeCfg
-(
-RgrUeCfg *param,
-Buffer *mBuf
-)
-{
-   uint32_t tmpEnum;
-
-
-   CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
-   CMCHKUNPK(cmUnpkLteRnti, &param->crnti, mBuf);
-   CMCHKUNPK(cmUnpkRgrUeTxModeCfg, &param->txMode, mBuf);
-   CMCHKUNPK(cmUnpkRgrUeDlCqiCfg, &param->ueDlCqiCfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrUeUlHqCfg, &param->ueUlHqCfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrUeUlPwrCfg, &param->ueUlPwrCfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrUeQosCfg, &param->ueQosCfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrUeTaTmrCfg, &param->ueTaTmrCfg, mBuf);
-#ifdef RGR_V1
-   /* rgr_c_001.main_5: ccpu00112398: Added periodicBSR-timer and
-    * retxBSR-timer */
-   CMCHKUNPK(cmUnpkRgrUeBsrTmrCfg, &param->ueBsrTmrCfg, mBuf);
-#endif
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
-   param->ueCatEnum = (CmLteUeCategory) tmpEnum;
-/*rgr_c_001.main_9 ADD added changes for DRX*/
-   
-   /* Anshika - Unpack only if DRX is enabled */
-   CMCHKUNPK(oduPackUInt8, &param->ueDrxCfg.isDrxEnabled, mBuf);
-   if(TRUE == param->ueDrxCfg.isDrxEnabled)
-   {
-      CMCHKUNPK(cmUnpkRgrUeDrxCfg, &param->ueDrxCfg, mBuf);
-   }
-   CMCHKUNPK(oduPackUInt8, &param->isTtiBundlEnabled, mBuf);
-   CMCHKUNPK(cmUnpkRgrUeAckNackRepCfg, &param->ueAckNackCfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrUeMeasGapCfg, &param->ueMesGapCfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrUeCapCfg, &param->ueCapCfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrCodeBookRstCfg, &param->ueCodeBookRstCfg, mBuf);
-   CMCHKUNPK(cmUnpkTknUInt8, &param->dedPreambleId, mBuf);
-
-#ifdef LTE_TDD
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
-   param->ackNackModeEnum = tmpEnum;
-
-#endif
-   /*rgr_c_001.main_7 - Added support for SPS*/
-   CMCHKUNPK(cmUnpkRgrUeSpsCfg, &param->ueSpsCfg, mBuf);
-
-/* rgr_c_001.main_8. Added changes of TFU_UPGRADE */
-#ifdef TFU_UPGRADE
-   CMCHKUNPK(cmUnpkRgrUeUlSrsCfg, &param->srsCfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrUeSrCfg, &param->srCfg, mBuf);
-#endif
-/*rgr_c_001.main_9 ADD added changes for HDFDD*/
-#ifdef LTEMAC_HDFDD
-   CMCHKUNPK(oduPackUInt8, &param->isHdFddEnbld, mBuf);
-#endif
-   CMCHKUNPK(cmUnpkRgrUePuschDedCfg, &param->puschDedCfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrUeTxAntSelCfg, &param->ulTxAntSel, mBuf);
-/* rgr_c_001.main_9 ccpu00117452 - MOD - Changed macro name from
-   RGR_RRM_DLPWR_CNTRL to RGR_CQI_REPT */
-#ifdef RGR_CQI_REPT
-   CMCHKUNPK(cmUnpkRgrUeCqiReptCfg, &param->ueCqiReptCfg, mBuf);
-#endif
-#ifdef TFU_UPGRADE
-   CMCHKUNPK(cmUnpkRgrUePdschDedCfg, &param->uePdschDedCfg, mBuf);
-#endif
-   /* LTE_ADV_FLAG_REMOVED_START */
-   CMCHKUNPK(cmUnpkRgrLteAdvancedUeConfig, &param->ueLteAdvCfg, mBuf);
-   /* LTE_ADV_FLAG_REMOVED_END */
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&param->accessStratumRls, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->csgMmbrSta, mBuf);
-
-#ifdef EMTC_ENABLE
- CMCHKUNPK(cmUnpkRgrEmtcUeCfg, &param->emtcUeCfg, mBuf);
-#endif
-
-#ifdef RG_5GTF
- CMCHKUNPK(cmUnpkRgr5gtfUeCfg, &param->ue5gtfCfg, mBuf);
-#endif
-
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmPkRgrLchQosCfg
-*
-*
-*     Desc : QCI, GBR and MBR configuration for dedicated logical channels
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmPkRgrLchQosCfg
-(
-RgrLchQosCfg *param,
-Buffer *mBuf
-)
-{
-
-
-   CMCHKPK(oduUnpackUInt32, param->mbr, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->gbr, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->qci, mBuf);
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmUnpkRgrLchQosCfg
-*
-*
-*     Desc : QCI, GBR and MBR configuration for dedicated logical channels
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmUnpkRgrLchQosCfg
-(
-RgrLchQosCfg *param,
-Buffer *mBuf
-)
-{
-
-
-   CMCHKUNPK(oduPackUInt8, &param->qci, mBuf);
-   CMCHKUNPK(oduPackUInt32, &param->gbr, mBuf);
-   CMCHKUNPK(oduPackUInt32, &param->mbr, mBuf);
-   return ROK;
-}
-/*rgr_c_001.main_7 - Added support for SPS*/
-
-\f
-/***********************************************************
-*
-*     Func : cmPkRgrLchSpsCfg
-*
-*
-*     Desc : SPS related configuration for logical channels
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmPkRgrLchSpsCfg
-(
-RgrLchSpsCfg *param,
-Buffer *mBuf
-)
-{
-
-
-   /* SPS_DEV */
-   CMCHKPK(oduUnpackUInt8, param->isSpsEnabled, mBuf);
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmUnpkRgrLchSpsCfg
-*
-*
-*     Desc : SPS related configuration for logical channels
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmUnpkRgrLchSpsCfg
-(
-RgrLchSpsCfg *param,
-Buffer *mBuf
-)
-{
-
-
-   CMCHKUNPK(oduPackUInt8, &param->isSpsEnabled, mBuf);
-   
-   return ROK;
-}
-
-
-/***********************************************************
-*
-*     Func : cmPkRgrDlLchCfg
-*
-*
-*     Desc : Logical channel configuration info for downlink logical channels
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmPkRgrDlLchCfg
-(
-RgrDlLchCfg *param,
-Buffer *mBuf
-)
-{
-
-/*rgr_c_001.main_7 - Added support for SPS*/
-
-   CMCHKPK(oduUnpackUInt8, param->rlcReorderTmr, mBuf);
-   CMCHKPK(cmPkRgrLchSpsCfg, &param->dlSpsCfg, mBuf);
-   CMCHKPK(cmPkRgrLchQosCfg, &param->dlQos, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->dlTrchType, mBuf);
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmUnpkRgrDlLchCfg
-*
-*
-*     Desc : Logical channel configuration info for downlink logical channels
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmUnpkRgrDlLchCfg
-(
-RgrDlLchCfg *param,
-Buffer *mBuf
-)
-{
-
-
-   CMCHKUNPK(oduPackUInt8, &param->dlTrchType, mBuf);
-   CMCHKUNPK(cmUnpkRgrLchQosCfg, &param->dlQos, mBuf);
-   /*rgr_c_001.main_7 - Added support for SPs*/
-   CMCHKUNPK(cmUnpkRgrLchSpsCfg, &param->dlSpsCfg, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->rlcReorderTmr, mBuf);
-
-   return ROK;
-}
-
-
-/*rgr_c_001.main_9 ADD added changes for L2 measurements*/
-#ifdef LTE_L2_MEAS
-
-\f
-/***********************************************************
-*
-*     Func : cmPkRgrUlLchCfg
-*
-*
-*     Desc : Logical channel configuration information for uplink logical channels
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmPkRgrUlLchCfg
-(
-RgrUlLchCfg *param,
-Buffer *mBuf
-)
-{
-
-
-   CMCHKPK(oduUnpackUInt8, param->qci, mBuf);
-   CMCHKPK(cmPkLteLcId, param->lcId, mBuf);
-   return ROK;
-}
-
-
-\f
-/*rgr_c_001.main_9 ADD added changes for L2 measurements*/
-/***********************************************************
-*
-*     Func : cmUnpkRgrUlLchCfg
-*
-*
-*     Desc : Logical channel configuration information for uplink logical channels
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmUnpkRgrUlLchCfg
-(
-RgrUlLchCfg *param,
-Buffer *mBuf
-)
-{
-
-
-   CMCHKUNPK(cmUnpkLteLcId, &param->lcId, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->qci, mBuf);
-   return ROK;
-}
-
-
-#endif
-\f
-/***********************************************************
-*
-*     Func : cmPkRgrUlLcgCfg
-*
-*
-*     Desc : Logical channel configuration info for uplink logical channels
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmPkRgrUlLcgCfg
-(
-RgrUlLcgCfg *param,
-Buffer *mBuf
-)
-{
-
-/*rgr_c_001.main_9 ADD added changes for L2 measurements*/
-#ifdef LTE_L2_MEAS
-   S32 i;
-#endif
-   CMCHKPK(oduUnpackUInt32, param->mbr, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->gbr, mBuf);
-
-/*rgr_c_001.main_9 ADD added changes for L2 measurements*/
-#ifdef LTE_L2_MEAS
-   for (i = param->numLch - 1; i >= 0; i--)
-   {
-      CMCHKPK(cmPkRgrUlLchCfg, &param->lchUlCfg[i], mBuf);
-   }
-   CMCHKPK(oduUnpackUInt8, param->numLch, mBuf);
-#endif
-   CMCHKPK(oduUnpackUInt8, param->lcgId, mBuf);
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmUnpkRgrUlLcgCfg
-*
-*
-*     Desc : Logical channel configuration info for uplink logical channels
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmUnpkRgrUlLcgCfg
-(
-RgrUlLcgCfg *param,
-Buffer *mBuf
-)
-{
-
-/*rgr_c_001.main_9 ADD added changes for L2 measurements*/
-#ifdef LTE_L2_MEAS
-   S32 i;
-#endif
-
-   CMCHKUNPK(oduPackUInt8, &param->lcgId, mBuf);
-/*rgr_c_001.main_9 ADD added changes for L2 measurements*/
-#ifdef LTE_L2_MEAS
-   CMCHKUNPK(oduPackUInt8, &param->numLch, mBuf);
-   for (i = 0; i< param->numLch; i++)
-   {
-      CMCHKUNPK(cmUnpkRgrUlLchCfg, &param->lchUlCfg[i], mBuf);
-   }
-
-#endif
-   CMCHKUNPK(oduPackUInt32, &param->gbr, mBuf);
-   CMCHKUNPK(oduPackUInt32, &param->mbr, mBuf);
-   return ROK;
-}
-
-S16 cmPkRgrUlLchQciCfg
-(
-RgrUlLchQciCfg *param,
-Buffer *mBuf
-)
-{
-   CMCHKPK(oduUnpackUInt8, param->lcId, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->qci, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->lcgId, mBuf);
-   return ROK;
-}
-S16 cmUnpkRgrUlLchQciCfg
-(
-RgrUlLchQciCfg *param,
-Buffer *mBuf
-)
-{
-   CMCHKUNPK(oduPackUInt8, &param->lcgId, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->qci, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->lcId, mBuf);
-   return ROK;
-}
-
-\f
-/***********************************************************
-*
-*     Func : cmPkRgrLchCfg
-*
-*
-*     Desc : Logical channel configuration info for dedicated channels
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmPkRgrLchCfg
-(
-RgrLchCfg *param,
-Buffer *mBuf
-)
-{
-
-   CMCHKPK(oduUnpackUInt8, param->lcgId, mBuf);
-   CMCHKPK(cmPkRgrUlLchQciCfg, &param->ulLchQciInfo, mBuf);
-   CMCHKPK(cmPkRgrDlLchCfg, &param->dlInfo, mBuf);
-   CMCHKPK(cmPkLteLcType, param->lcType, mBuf);
-   CMCHKPK(cmPkLteLcId, param->lcId, mBuf);
-   CMCHKPK(cmPkLteRnti, param->crnti, mBuf);
-   CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmUnpkRgrLchCfg
-*
-*
-*     Desc : Logical channel configuration info for dedicated channels
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmUnpkRgrLchCfg
-(
-RgrLchCfg *param,
-Buffer *mBuf
-)
-{
-
-
-   CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
-   CMCHKUNPK(cmUnpkLteRnti, &param->crnti, mBuf);
-   CMCHKUNPK(cmUnpkLteLcId, &param->lcId, mBuf);
-   CMCHKUNPK(cmUnpkLteLcType, &param->lcType, mBuf);
-   CMCHKUNPK(cmUnpkRgrDlLchCfg, &param->dlInfo, mBuf);
-   CMCHKUNPK(cmUnpkRgrUlLchQciCfg, &param->ulLchQciInfo, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->lcgId, mBuf);
-   return ROK;
-}
-
-
-S16 cmPkRgrLcgCfg
-(
-RgrLcgCfg *param,
-Buffer *mBuf
-)
-{
-
-
-   CMCHKPK(cmPkRgrUlLcgCfg, &param->ulInfo, mBuf);
-   CMCHKPK(cmPkLteRnti, param->crnti, mBuf);
-   CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
-   return ROK;
-}
-
-
-S16 cmUnpkRgrLcgCfg
-(
-RgrLcgCfg *param,
-Buffer *mBuf
-)
-{
-
-
-   CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
-   CMCHKUNPK(cmUnpkLteRnti, &param->crnti, mBuf);
-   CMCHKUNPK(cmUnpkRgrUlLcgCfg, &param->ulInfo, mBuf);
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmPkRgrCfg
-*
-*
-*     Desc : Basic Configuration structure at RRM
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmPkRgrCfg
-(
-RgrCfg *param,
-Buffer *mBuf
-)
-{
-
-
-      switch(param->cfgType) {
-         case RGR_LCG_CFG:
-            CMCHKPK(cmPkRgrLcgCfg, &param->u.lcgCfg, mBuf);
-            break;
-         case RGR_LCH_CFG:
-            CMCHKPK(cmPkRgrLchCfg, &param->u.lchCfg, mBuf);
-            break;
-         case RGR_UE_CFG:
-            CMCHKPK(cmPkRgrUeCfg, &param->u.ueCfg, mBuf);
-            break;
-         case RGR_CELL_CFG:
-            CMCHKPK(cmPkRgrCellCfg, &param->u.cellCfg, mBuf);
-            break;
-         case MAC_GNB_CFG:
-            CMCHKPK(cmPkMacSchedGnbCfg, &param->u.schedGnbCfg, mBuf);
-            break;
-         default :
-            return RFAILED;
-      }
-   CMCHKPK(oduUnpackUInt8, param->cfgType, mBuf);
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmUnpkRgrCfg
-*
-*
-*     Desc : Basic Configuration structure at RRM
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmUnpkRgrCfg
-(
-RgrCfg *param,
-Buffer *mBuf
-)
-{
-
-
-   CMCHKUNPK(oduPackUInt8, &param->cfgType, mBuf);
-      switch(param->cfgType) {
-         case MAC_GNB_CFG:
-            CMCHKUNPK(cmUnpkMacSchedGnbCfg, &param->u.schedGnbCfg, mBuf);
-            break;
-         case RGR_CELL_CFG:
-            CMCHKUNPK(cmUnpkRgrCellCfg, &param->u.cellCfg, mBuf);
-            break;
-         case RGR_UE_CFG:
-            CMCHKUNPK(cmUnpkRgrUeCfg, &param->u.ueCfg, mBuf);
-            break;
-         case RGR_LCH_CFG:
-            CMCHKUNPK(cmUnpkRgrLchCfg, &param->u.lchCfg, mBuf);
-            break;
-         case RGR_LCG_CFG:
-            CMCHKUNPK(cmUnpkRgrLcgCfg, &param->u.lcgCfg, mBuf);
-            break;
-         default :
-            return RFAILED;
-      }
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmPkRgrActvTime
-*
-*
-*     Desc : Activation time information
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmPkRgrActvTime
-(
-RgrActvTime *param,
-Buffer *mBuf
-)
-{
-
-
-   CMCHKPK(cmPkLteTimingInfo, &param->actvTime, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->pres, mBuf);
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmUnpkRgrActvTime
-*
-*
-*     Desc : Activation time information
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmUnpkRgrActvTime
-(
-RgrActvTime *param,
-Buffer *mBuf
-)
-{
-
-
-   CMCHKUNPK(oduPackUInt8, &param->pres, mBuf);
-   CMCHKUNPK(cmUnpkLteTimingInfo, &param->actvTime, mBuf);
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmPkRgrCellRecfg
-*
-*
-*     Desc : Cell reconfiguration structure at RRM
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmPkRgrCellRecfg
-(
-RgrCellRecfg *param,
-Buffer *mBuf
-)
-{
-
-   CMCHKPK(cmPkRgrCellCntrlCmdCfg, &param->cntrlCmdCfg, mBuf);
-   CMCHKPK(cmPkRgrCellCsgParamCfg, &param->csgParamCfg, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isDynCfiEnb, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isAutoCfgModeEnb, mBuf);
-   /* LTE_ADV_FLAG_REMOVED_START */
-   CMCHKPK(cmPkRgrCellLteAdvancedFeatureCfg, &param->rgrLteAdvCfg, mBuf);
-   /* LTE_ADV_FLAG_REMOVED_END */
-   CMCHKPK(oduUnpackUInt16, param->t300TmrVal, mBuf);
-   /* rgr_c_001.main_4:MOD-Modified for SI Enhancement. */
-#ifdef RGR_SI_SCH
-   CMCHKPK(cmPkRgrSiCfg, &param->siReCfg, mBuf);
-#endif /* RGR_SI_SCH */
-   CMCHKPK(cmPkRgrDlfsCfg, &param->dlfsRecfg, mBuf);
-   CMCHKPK(cmPkRgrRachCfg, &param->rachRecfg, mBuf);
-   CMCHKPK(cmPkRgrSrsCfg, &param->srsRecfg, mBuf);
-   CMCHKPK(cmPkRgrPucchCfg, &param->pucchRecfg, mBuf);
-   CMCHKPK(cmPkRgrUlCmnCodeRateCfg, &param->ulCmnCodeRate, mBuf);
-   CMCHKPK(cmPkRgrPuschSubBandCfg, &param->puschSubBand, mBuf);
-   CMCHKPK(cmPkRgrDlCmnCodeRateCfg, &param->dlCmnCodeRate, mBuf);
-   CMCHKPK(cmPkRgrUlTrgCqiCfg, &param->trgUlCqi, mBuf);
-   CMCHKPK(cmPkRgrCfiCfg, &param->cfiRecfg, mBuf);
-   CMCHKPK(cmPkRgrDlHqCfg, &param->dlHqRecfg, mBuf);
-   CMCHKPK(cmPkRgrActvTime, &param->recfgActvTime, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->recfgTypes, mBuf);
-   CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmUnpkRgrCellRecfg
-*
-*
-*     Desc : Cell reconfiguration structure at RRM
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmUnpkRgrCellRecfg
-(
-RgrCellRecfg *param,
-Buffer *mBuf
-)
-{
-
-
-   CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
-   CMCHKUNPK(oduPackUInt32, &param->recfgTypes, mBuf);
-   CMCHKUNPK(cmUnpkRgrActvTime, &param->recfgActvTime, mBuf);
-   CMCHKUNPK(cmUnpkRgrDlHqCfg, &param->dlHqRecfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrCfiCfg, &param->cfiRecfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrUlTrgCqiCfg, &param->trgUlCqi, mBuf);
-   CMCHKUNPK(cmUnpkRgrDlCmnCodeRateCfg, &param->dlCmnCodeRate, mBuf);
-   CMCHKUNPK(cmUnpkRgrPuschSubBandCfg, &param->puschSubBand, mBuf);
-   CMCHKUNPK(cmUnpkRgrUlCmnCodeRateCfg, &param->ulCmnCodeRate, mBuf);
-   CMCHKUNPK(cmUnpkRgrPucchCfg, &param->pucchRecfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrSrsCfg, &param->srsRecfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrRachCfg, &param->rachRecfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrDlfsCfg, &param->dlfsRecfg, mBuf);
-   /* rgr_c_001.main_4-MOD-Modified for SI Enhancement. */
-#ifdef RGR_SI_SCH
-   CMCHKUNPK(cmUnpkRgrSiCfg, &param->siReCfg, mBuf);
-#endif /* RGR_SI_SCH */
-   CMCHKUNPK(oduPackUInt16, &param->t300TmrVal, mBuf);
-   /* LTE_ADV_FLAG_REMOVED_START */
-   CMCHKUNPK(cmUnpkRgrCellLteAdvancedFeatureCfg, &param->rgrLteAdvCfg, mBuf);
-   /* LTE_ADV_FLAG_REMOVED_END */
-   CMCHKUNPK(oduPackUInt8, &param->isAutoCfgModeEnb, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->isDynCfiEnb, mBuf);
-   CMCHKUNPK(cmUnpkRgrCellCsgParamCfg, &param->csgParamCfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrCellCntrlCmdCfg, &param->cntrlCmdCfg, mBuf);
-
-   return ROK;
-}
-
-
-\f
-/***********************************************************
-*
-*     Func : cmPkRgrUeRecfg
-*
-*
-*     Desc : UE reconfiguration info
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmPkRgrUeRecfg
-(
-RgrUeRecfg *param,
-Buffer *mBuf
-)
-{
-
-#ifdef EMTC_ENABLE
-   /* Note: As we add more members to emtcUeRecfg, 
-      create a new function for pkUnpk */
-   CMCHKPK(oduUnpackUInt8, param->emtcUeRecfg.isHdFddEnbld, mBuf);
-#endif
-   CMCHKPK(oduUnpackUInt8, param->csgMmbrSta, mBuf);
-  
-   CMCHKPK(oduUnpackUInt32, param->accessStratumRls, mBuf);
-#ifdef LTE_ADV 
-   CMCHKPK(oduUnpackUInt8, param->simulAckNackCQIFormat3, mBuf);
-   CMCHKPK(cmPkRgrUeSCellAckPucchCfg, &param->sCellAckN1ResCfg,mBuf);
-   CMCHKPK(cmPkRgrUeSecCellInfo, &param->ueSCellCfgInfo,mBuf);
-#endif
-   /* LTE_ADV_FLAG_REMOVED_START */
-   CMCHKPK(oduUnpackUInt8, param->ueLteAdvCfg.isUeCellEdge, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->ueLteAdvCfg.isAbsUe, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->ueLteAdvCfg.pres, mBuf);
-   /* LTE_ADV_FLAG_REMOVED_END */
-   /*ccpu00130497: Removed the duplicate packing*/
-#ifdef TFU_UPGRADE
-   CMCHKPK(cmPkRgrUePdschDedCfg, &param->uePdschDedCfg, mBuf);
-#endif
-   /* rgr_c_001.main_9 ccpu00117452 - MOD - Changed macro name from
-   RGR_RRM_DLPWR_CNTRL to RGR_CQI_REPT */
-#ifdef RGR_CQI_REPT
-   CMCHKPK(cmPkRgrUeCqiReptCfg, &param->ueCqiReptCfg, mBuf);
-#endif
-
-/* rgr_c_001.main_8. Added changes of TFU_UPGRADE */
-   CMCHKPK(cmPkRgrUePuschDedCfg, &param->puschDedCfg, mBuf);
-
-/*rgr_c_001.main_9 ADD added changes for HDFDD*/
-#ifdef LTEMAC_HDFDD
-   CMCHKPK(oduUnpackUInt8, param->isHdFddEnbld, mBuf);
-#endif
-
-#ifdef TFU_UPGRADE
-   CMCHKPK(cmPkRgrUeSrCfg, &param->srCfg, mBuf);
-   CMCHKPK(cmPkRgrUeUlSrsCfg, &param->srsCfg, mBuf);
-   CMCHKPK(cmPkRgrUePrdDlCqiCfg, &param->cqiCfg, mBuf);
-#endif 
-
-   /*rgr_c_001.main_7 - Added support for SPS*/
-   CMCHKPK(cmPkRgrUeSpsCfg, &param->ueSpsRecfg, mBuf);
-   CMCHKPK(cmPkRgrUeTxAntSelCfg, &param->ulTxAntSel, mBuf);
-
-   /* rgr_c_001.main_7 - Changes for UE category Reconfiguration */
-   CMCHKPK(oduUnpackUInt32, param->ueCatEnum, mBuf);
-
-   CMCHKPK(cmPkRgrCodeBookRstCfg, &param->ueCodeBookRstRecfg, mBuf);
-   CMCHKPK(cmPkRgrUeMeasGapCfg, &param->ueMeasGapRecfg, mBuf);
-   CMCHKPK(cmPkRgrUeCapCfg, &param->ueCapRecfg, mBuf);
-   CMCHKPK(cmPkRgrUeAckNackRepCfg, &param->ueAckNackRecfg, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isTtiBundlEnabled, mBuf);
-/*rgr_c_001.main_9 ADD added changes for DRX*/
-   
-   /* Anshika - Pack only if DRX is enabled */
-   if(TRUE == param->ueDrxRecfg.isDrxEnabled)
-   {
-      CMCHKPK(cmPkRgrUeDrxCfg, &param->ueDrxRecfg, mBuf);
-   }
-   CMCHKPK(oduUnpackUInt8, param->ueDrxRecfg.isDrxEnabled, mBuf); /* This has to be packed even if
-                                                 DRX is disabled */
-   CMCHKPK(cmPkRgrUeUlPwrCfg, &param->ueUlPwrRecfg, mBuf);
-#ifdef RGR_V1
-   /* rgr_c_001.main_5: ccpu00112398: Added periodicBSR-timer and
-    * retxBSR-timer */
-   CMCHKPK(cmPkRgrUeBsrTmrCfg, &param->ueBsrTmrRecfg, mBuf);
-#endif
-   CMCHKPK(cmPkRgrUeTaTmrCfg, &param->ueTaTmrRecfg, mBuf);
-   CMCHKPK(cmPkRgrUeQosCfg, &param->ueQosRecfg, mBuf);
-   CMCHKPK(cmPkRgrUeUlHqCfg, &param->ueUlHqRecfg, mBuf);
-
-#ifndef TFU_UPGRADE
-   CMCHKPK(cmPkRgrUePrdDlCqiCfg, &param->prdDlCqiRecfg, mBuf);
+   }
+   CMCHKPK(oduPackUInt8, param->ueDrxCfg.isDrxEnabled, mBuf); /* This has to be packed even if
+                                                 DRX is disabled */
+   CMCHKPK(oduPackUInt32, param->ueCatEnum, mBuf);
+#ifdef RGR_V1
+   /* rgr_c_001.main_5: ccpu00112398: Added periodicBSR-timer and
+    * retxBSR-timer */
+   CMCHKPK(cmPkRgrUeBsrTmrCfg, &param->ueBsrTmrCfg, mBuf);
 #endif
-
-   CMCHKPK(cmPkRgrUeAprdDlCqiCfg, &param->aprdDlCqiRecfg, mBuf);
+   CMCHKPK(cmPkRgrUeTaTmrCfg, &param->ueTaTmrCfg, mBuf);
+   CMCHKPK(cmPkRgrUeQosCfg, &param->ueQosCfg, mBuf);
+   CMCHKPK(cmPkRgrUeUlPwrCfg, &param->ueUlPwrCfg, mBuf);
+   CMCHKPK(cmPkRgrUeUlHqCfg, &param->ueUlHqCfg, mBuf);
+   CMCHKPK(cmPkRgrUeDlCqiCfg, &param->ueDlCqiCfg, mBuf);
    CMCHKPK(cmPkRgrUeTxModeCfg, &param->txMode, mBuf);
-   /*rgr_c_001.main_9: changing ueRecfgTypes to uint32_t */
-   /* LTE_ADV_FLAG_REMOVED_START */
-   /* KW fix for LTE_ADV */
-   CMCHKPK(oduUnpackUInt32, param->ueRecfgTypes, mBuf);
-   /* LTE_ADV_FLAG_REMOVED_END */
-   CMCHKPK(cmPkLteRnti, param->newCrnti, mBuf);
-   CMCHKPK(cmPkLteRnti, param->oldCrnti, mBuf);
+   CMCHKPK(cmPkLteRnti, param->crnti, mBuf);
    CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
    return ROK;
 }
@@ -6662,10 +5283,10 @@ Buffer *mBuf
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrUeRecfg
+*     Func : cmUnpkRgrUeCfg
 *
 *
-*     Desc : UE reconfiguration info
+*     Desc : UE configuration
 *
 *
 *     Ret  : S16
@@ -6675,9 +5296,9 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrUeRecfg
+S16 cmUnpkRgrUeCfg
 (
-RgrUeRecfg *param,
+RgrUeCfg *param,
 Buffer *mBuf
 )
 {
@@ -6685,64 +5306,54 @@ Buffer *mBuf
 
 
    CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
-   CMCHKUNPK(cmUnpkLteRnti, &param->oldCrnti, mBuf);
-   CMCHKUNPK(cmUnpkLteRnti, &param->newCrnti, mBuf);
-   /* LTE_ADV_FLAG_REMOVED_START */
-   /*rgr_c_001.main_9: changing ueRecfgTypes to uint32_t */
-   /* KW fix for LTE_ADV */
-   CMCHKUNPK(oduPackUInt32, &param->ueRecfgTypes, mBuf);
-   /* LTE_ADV_FLAG_REMOVED_END */
+   CMCHKUNPK(cmUnpkLteRnti, &param->crnti, mBuf);
    CMCHKUNPK(cmUnpkRgrUeTxModeCfg, &param->txMode, mBuf);
-
-   CMCHKUNPK(cmUnpkRgrUeAprdDlCqiCfg, &param->aprdDlCqiRecfg, mBuf);
-
-#ifndef TFU_UPGRADE
-   CMCHKUNPK(cmUnpkRgrUePrdDlCqiCfg, &param->prdDlCqiRecfg, mBuf);
-#endif
-
-   CMCHKUNPK(cmUnpkRgrUeUlHqCfg, &param->ueUlHqRecfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrUeQosCfg, &param->ueQosRecfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrUeTaTmrCfg, &param->ueTaTmrRecfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrUeDlCqiCfg, &param->ueDlCqiCfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrUeUlHqCfg, &param->ueUlHqCfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrUeUlPwrCfg, &param->ueUlPwrCfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrUeQosCfg, &param->ueQosCfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrUeTaTmrCfg, &param->ueTaTmrCfg, mBuf);
 #ifdef RGR_V1
    /* rgr_c_001.main_5: ccpu00112398: Added periodicBSR-timer and
     * retxBSR-timer */
-   CMCHKUNPK(cmUnpkRgrUeBsrTmrCfg, &param->ueBsrTmrRecfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrUeBsrTmrCfg, &param->ueBsrTmrCfg, mBuf);
 #endif
-   CMCHKUNPK(cmUnpkRgrUeUlPwrCfg, &param->ueUlPwrRecfg, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   param->ueCatEnum = (CmLteUeCategory) tmpEnum;
 /*rgr_c_001.main_9 ADD added changes for DRX*/
    
    /* Anshika - Unpack only if DRX is enabled */
-   CMCHKUNPK(oduPackUInt8, &param->ueDrxRecfg.isDrxEnabled, mBuf);
-   if(TRUE == param->ueDrxRecfg.isDrxEnabled)
+   CMCHKUNPK(oduUnpackUInt8, &param->ueDrxCfg.isDrxEnabled, mBuf);
+   if(TRUE == param->ueDrxCfg.isDrxEnabled)
    {
-      CMCHKUNPK(cmUnpkRgrUeDrxCfg, &param->ueDrxRecfg, mBuf);
+      CMCHKUNPK(cmUnpkRgrUeDrxCfg, &param->ueDrxCfg, mBuf);
    }
-   CMCHKUNPK(oduPackUInt8, &param->isTtiBundlEnabled, mBuf);
-   CMCHKUNPK(cmUnpkRgrUeAckNackRepCfg, &param->ueAckNackRecfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrUeCapCfg, &param->ueCapRecfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrUeMeasGapCfg, &param->ueMeasGapRecfg, mBuf);
-   CMCHKUNPK(cmUnpkRgrCodeBookRstCfg, &param->ueCodeBookRstRecfg, mBuf);
-/* rgr_c_001.main_7 - Changes for UE category Reconfiguration */
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&tmpEnum, mBuf);
-   param->ueCatEnum = (CmLteUeCategory) tmpEnum;
-   CMCHKUNPK(cmUnpkRgrUeTxAntSelCfg, &param->ulTxAntSel, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isTtiBundlEnabled, mBuf);
+   CMCHKUNPK(cmUnpkRgrUeAckNackRepCfg, &param->ueAckNackCfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrUeMeasGapCfg, &param->ueMesGapCfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrUeCapCfg, &param->ueCapCfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrCodeBookRstCfg, &param->ueCodeBookRstCfg, mBuf);
+   CMCHKUNPK(cmUnpkTknUInt8, &param->dedPreambleId, mBuf);
+
+#ifdef LTE_TDD
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   param->ackNackModeEnum = tmpEnum;
+
+#endif
    /*rgr_c_001.main_7 - Added support for SPS*/
-   CMCHKUNPK(cmUnpkRgrUeSpsCfg, &param->ueSpsRecfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrUeSpsCfg, &param->ueSpsCfg, mBuf);
 
 /* rgr_c_001.main_8. Added changes of TFU_UPGRADE */
 #ifdef TFU_UPGRADE
-   CMCHKUNPK(cmUnpkRgrUePrdDlCqiCfg, &param->cqiCfg, mBuf);
    CMCHKUNPK(cmUnpkRgrUeUlSrsCfg, &param->srsCfg, mBuf);
    CMCHKUNPK(cmUnpkRgrUeSrCfg, &param->srCfg, mBuf);
 #endif
-
 /*rgr_c_001.main_9 ADD added changes for HDFDD*/
 #ifdef LTEMAC_HDFDD
-   CMCHKUNPK(oduPackUInt8, &param->isHdFddEnbld, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isHdFddEnbld, mBuf);
 #endif
-
    CMCHKUNPK(cmUnpkRgrUePuschDedCfg, &param->puschDedCfg, mBuf);
-
+   CMCHKUNPK(cmUnpkRgrUeTxAntSelCfg, &param->ulTxAntSel, mBuf);
 /* rgr_c_001.main_9 ccpu00117452 - MOD - Changed macro name from
    RGR_RRM_DLPWR_CNTRL to RGR_CQI_REPT */
 #ifdef RGR_CQI_REPT
@@ -6751,22 +5362,18 @@ Buffer *mBuf
 #ifdef TFU_UPGRADE
    CMCHKUNPK(cmUnpkRgrUePdschDedCfg, &param->uePdschDedCfg, mBuf);
 #endif
-
    /* LTE_ADV_FLAG_REMOVED_START */
-   CMCHKUNPK(oduPackUInt32, &param->ueLteAdvCfg.pres, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->ueLteAdvCfg.isAbsUe, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->ueLteAdvCfg.isUeCellEdge, mBuf);
+   CMCHKUNPK(cmUnpkRgrLteAdvancedUeConfig, &param->ueLteAdvCfg, mBuf);
    /* LTE_ADV_FLAG_REMOVED_END */
-#ifdef LTE_ADV 
-   CMCHKUNPK(cmUnpkRgrUeSecCellInfo, &param->ueSCellCfgInfo,mBuf);
-   CMCHKUNPK(cmUnpkRgrUeSCellAckPucchCfg, &param->sCellAckN1ResCfg,mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->simulAckNackCQIFormat3, mBuf);
-#endif
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&param->accessStratumRls, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&param->accessStratumRls, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->csgMmbrSta, mBuf);
 
-   CMCHKUNPK(oduPackUInt8, &param->csgMmbrSta, mBuf);
 #ifdef EMTC_ENABLE
-   CMCHKPK(oduPackUInt8, &param->emtcUeRecfg.isHdFddEnbld, mBuf);
+ CMCHKUNPK(cmUnpkRgrEmtcUeCfg, &param->emtcUeCfg, mBuf);
+#endif
+
+#ifdef RG_5GTF
+ CMCHKUNPK(cmUnpkRgr5gtfUeCfg, &param->ue5gtfCfg, mBuf);
 #endif
 
    return ROK;
@@ -6776,10 +5383,10 @@ Buffer *mBuf
 \f
 /***********************************************************
 *
-*     Func : cmPkRgrLchRecfg
+*     Func : cmPkRgrLchQosCfg
 *
 *
-*     Desc : Logical channel reconfiguration info for dedicated channels only
+*     Desc : QCI, GBR and MBR configuration for dedicated logical channels
 *
 *
 *     Ret  : S16
@@ -6789,23 +5396,17 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrLchRecfg
+S16 cmPkRgrLchQosCfg
 (
-RgrLchRecfg *param,
+RgrLchQosCfg *param,
 Buffer *mBuf
 )
 {
 
-/*rgr_c_001.main_7 - Added support for SPS*/
-   CMCHKPK(oduUnpackUInt8, param->lcgId, mBuf);
-   
-   CMCHKPK(cmPkRgrUlLchQciCfg, &param->ulLchQciInfo, mBuf);
-   CMCHKPK(cmPkRgrLchSpsCfg, &param->dlRecfg.dlSpsRecfg, mBuf);
-   
-   CMCHKPK(cmPkRgrLchQosCfg, &param->dlRecfg.dlQos, mBuf);
-   CMCHKPK(cmPkLteLcId, param->lcId, mBuf);
-   CMCHKPK(cmPkLteRnti, param->crnti, mBuf);
-   CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
+
+   CMCHKPK(oduPackUInt32, param->mbr, mBuf);
+   CMCHKPK(oduPackUInt32, param->gbr, mBuf);
+   CMCHKPK(oduPackUInt8, param->qci, mBuf);
    return ROK;
 }
 
@@ -6813,10 +5414,10 @@ Buffer *mBuf
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrLchRecfg
+*     Func : cmUnpkRgrLchQosCfg
 *
 *
-*     Desc : Logical channel reconfiguration info for dedicated channels only
+*     Desc : QCI, GBR and MBR configuration for dedicated logical channels
 *
 *
 *     Ret  : S16
@@ -6826,77 +5427,109 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrLchRecfg
+S16 cmUnpkRgrLchQosCfg
 (
-RgrLchRecfg *param,
+RgrLchQosCfg *param,
 Buffer *mBuf
 )
 {
 
 
-   CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
-   CMCHKUNPK(cmUnpkLteRnti, &param->crnti, mBuf);
-   CMCHKUNPK(cmUnpkLteLcId, &param->lcId, mBuf);
-   CMCHKUNPK(cmUnpkRgrLchQosCfg, &param->dlRecfg.dlQos, mBuf);
-      /*rgr_c_001.main_7 - Added support for SPs*/
-   CMCHKUNPK(cmUnpkRgrLchSpsCfg, &param->dlRecfg.dlSpsRecfg, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->qci, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, &param->gbr, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, &param->mbr, mBuf);
+   return ROK;
+}
+/*rgr_c_001.main_7 - Added support for SPS*/
 
-   CMCHKUNPK(cmUnpkRgrUlLchQciCfg, &param->ulLchQciInfo, mBuf);   
-   CMCHKUNPK(oduPackUInt8, &param->lcgId, mBuf);
+\f
+/***********************************************************
+*
+*     Func : cmPkRgrLchSpsCfg
+*
+*
+*     Desc : SPS related configuration for logical channels
+*
+*
+*     Ret  : S16
+*
+*     Notes:
+*
+*     File  : 
+*
+**********************************************************/
+S16 cmPkRgrLchSpsCfg
+(
+RgrLchSpsCfg *param,
+Buffer *mBuf
+)
+{
+
+
+   /* SPS_DEV */
+   CMCHKPK(oduPackUInt8, param->isSpsEnabled, mBuf);
    return ROK;
 }
 
 
-S16 cmPkRgrLcgRecfg
+\f
+/***********************************************************
+*
+*     Func : cmUnpkRgrLchSpsCfg
+*
+*
+*     Desc : SPS related configuration for logical channels
+*
+*
+*     Ret  : S16
+*
+*     Notes:
+*
+*     File  : 
+*
+**********************************************************/
+S16 cmUnpkRgrLchSpsCfg
 (
-RgrLcgRecfg *param,
+RgrLchSpsCfg *param,
 Buffer *mBuf
 )
 {
-#ifdef RG_UNUSED
-   S32 i;
-#endif
 
-   CMCHKPK(oduUnpackUInt32, param->ulRecfg.mbr, mBuf);
-   CMCHKPK(oduUnpackUInt32, param->ulRecfg.gbr, mBuf);
-#ifdef RG_UNUSED
-   for (i = param->ulRecfg.numLch - 1; i >= 0; i--)
-   {
-      CMCHKPK(cmPkRgrUlLchCfg, &param->ulRecfg.lchUlCfg[i], mBuf);
-   }
-   CMCHKPK(oduUnpackUInt8, param->ulRecfg.numLch, mBuf);
-#endif
-   CMCHKPK(oduUnpackUInt8, param->ulRecfg.lcgId, mBuf);
-   CMCHKPK(cmPkLteRnti, param->crnti, mBuf);
-   CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
+
+   CMCHKUNPK(oduUnpackUInt8, &param->isSpsEnabled, mBuf);
+   
    return ROK;
 }
 
 
-S16 cmUnpkRgrLcgRecfg
+/***********************************************************
+*
+*     Func : cmPkRgrDlLchCfg
+*
+*
+*     Desc : Logical channel configuration info for downlink logical channels
+*
+*
+*     Ret  : S16
+*
+*     Notes:
+*
+*     File  : 
+*
+**********************************************************/
+S16 cmPkRgrDlLchCfg
 (
-RgrLcgRecfg *param,
+RgrDlLchCfg *param,
 Buffer *mBuf
 )
 {
-#ifdef RG_UNUSED
-   S32 i;
-#endif
-
-   CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
-   CMCHKUNPK(cmUnpkLteRnti, &param->crnti, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->ulRecfg.lcgId, mBuf);
 
-#ifdef RG_UNUSED
-   CMCHKUNPK(oduPackUInt8, &param->ulRecfg.numLch, mBuf);
-   for (i = 0; i < param->ulRecfg.numLch; i++)
-   {
-      CMCHKUNPK(cmUnpkRgrUlLchCfg, &param->ulRecfg.lchUlCfg[i], mBuf);
-   }
-#endif
-   CMCHKUNPK(oduPackUInt32, &param->ulRecfg.gbr, mBuf);
-   CMCHKUNPK(oduPackUInt32, &param->ulRecfg.mbr, mBuf);
+/*rgr_c_001.main_7 - Added support for SPS*/
 
+   CMCHKPK(oduPackUInt8, param->rlcReorderTmr, mBuf);
+   CMCHKPK(cmPkRgrLchSpsCfg, &param->dlSpsCfg, mBuf);
+   CMCHKPK(cmPkRgrLchQosCfg, &param->dlQos, mBuf);
+   CMCHKPK(oduPackUInt8, param->dlTrchType, mBuf);
    return ROK;
 }
 
@@ -6904,10 +5537,10 @@ Buffer *mBuf
 \f
 /***********************************************************
 *
-*     Func : cmPkRgrRecfg
+*     Func : cmUnpkRgrDlLchCfg
 *
 *
-*     Desc : Basic reconfiguration structure at RRM
+*     Desc : Logical channel configuration info for downlink logical channels
 *
 *
 *     Ret  : S16
@@ -6917,42 +5550,34 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrRecfg
+S16 cmUnpkRgrDlLchCfg
 (
-RgrRecfg *param,
+RgrDlLchCfg *param,
 Buffer *mBuf
 )
 {
 
 
-      switch(param->recfgType) {
-         case RGR_LCG_CFG:
-            CMCHKPK(cmPkRgrLcgRecfg, &param->u.lcgRecfg, mBuf);
-            break;
-         case RGR_LCH_CFG:
-            CMCHKPK(cmPkRgrLchRecfg, &param->u.lchRecfg, mBuf);
-            break;
-         case RGR_UE_CFG:
-            CMCHKPK(cmPkRgrUeRecfg, &param->u.ueRecfg, mBuf);
-            break;
-         case RGR_CELL_CFG:
-            CMCHKPK(cmPkRgrCellRecfg, &param->u.cellRecfg, mBuf);
-            break;
-         default :
-            return RFAILED;
-      }
-   CMCHKPK(oduUnpackUInt8, param->recfgType, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->dlTrchType, mBuf);
+   CMCHKUNPK(cmUnpkRgrLchQosCfg, &param->dlQos, mBuf);
+   /*rgr_c_001.main_7 - Added support for SPs*/
+   CMCHKUNPK(cmUnpkRgrLchSpsCfg, &param->dlSpsCfg, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->rlcReorderTmr, mBuf);
+
    return ROK;
 }
 
 
+/*rgr_c_001.main_9 ADD added changes for L2 measurements*/
+#ifdef LTE_L2_MEAS
+
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrRecfg
+*     Func : cmPkRgrUlLchCfg
 *
 *
-*     Desc : Basic reconfiguration structure at RRM
+*     Desc : Logical channel configuration information for uplink logical channels
 *
 *
 *     Ret  : S16
@@ -6962,41 +5587,28 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrRecfg
+S16 cmPkRgrUlLchCfg
 (
-RgrRecfg *param,
+RgrUlLchCfg *param,
 Buffer *mBuf
 )
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->recfgType, mBuf);
-      switch(param->recfgType) {
-         case RGR_CELL_CFG:
-            CMCHKUNPK(cmUnpkRgrCellRecfg, &param->u.cellRecfg, mBuf);
-            break;
-         case RGR_UE_CFG:
-            CMCHKUNPK(cmUnpkRgrUeRecfg, &param->u.ueRecfg, mBuf);
-            break;
-         case RGR_LCH_CFG:
-            CMCHKUNPK(cmUnpkRgrLchRecfg, &param->u.lchRecfg, mBuf);
-            break;
-         case RGR_LCG_CFG:
-            CMCHKUNPK(cmUnpkRgrLcgRecfg, &param->u.lcgRecfg, mBuf);
-            break;
-         default :
-            return RFAILED;
-      }
+   CMCHKPK(oduPackUInt8, param->qci, mBuf);
+   CMCHKPK(cmPkLteLcId, param->lcId, mBuf);
    return ROK;
 }
 
-#ifdef LTE_ADV
+
+\f
+/*rgr_c_001.main_9 ADD added changes for L2 measurements*/
 /***********************************************************
 *
-*     Func : cmPkRgrUeDlSecCellRelInfo
+*     Func : cmUnpkRgrUlLchCfg
 *
 *
-*     Desc : DL Secondary Cell information of the UE
+*     Desc : Logical channel configuration information for uplink logical channels
 *
 *
 *     Ret  : S16
@@ -7006,23 +5618,28 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrUeDlSecCellRelInfo
+S16 cmUnpkRgrUlLchCfg
 (
-RgrUeDlSecCellRelInfo *param,
+RgrUlLchCfg *param,
 Buffer *mBuf
 )
 {
-   CMCHKPK(oduUnpackUInt16, param->sCellId, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->sCellIdx, mBuf);
+
+
+   CMCHKUNPK(cmUnpkLteLcId, &param->lcId, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->qci, mBuf);
    return ROK;
 }
+
+
+#endif
 \f
 /***********************************************************
 *
-*     Func : cmPkRgrUeSecCellRelInfo
+*     Func : cmPkRgrUlLcgCfg
 *
 *
-*     Desc : Secondary Cell Delete information of the UE
+*     Desc : Logical channel configuration info for uplink logical channels
 *
 *
 *     Ret  : S16
@@ -7032,30 +5649,40 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrUeSecCellRelInfo
+S16 cmPkRgrUlLcgCfg
 (
-RgrUeSecCellRelInfo *param,
+RgrUlLcgCfg *param,
 Buffer *mBuf
 )
 {
-   S8 idx;
-   for(idx = param->numSCells - 1; idx >= 0; idx--)
+
+/*rgr_c_001.main_9 ADD added changes for L2 measurements*/
+#ifdef LTE_L2_MEAS
+   S32 i;
+#endif
+   CMCHKPK(oduPackUInt32, param->mbr, mBuf);
+   CMCHKPK(oduPackUInt32, param->gbr, mBuf);
+
+/*rgr_c_001.main_9 ADD added changes for L2 measurements*/
+#ifdef LTE_L2_MEAS
+   for (i = param->numLch - 1; i >= 0; i--)
    {
-      CMCHKPK(cmPkRgrUeDlSecCellRelInfo, &param->ueSCellRelDedCfg[(uint8_t)idx],mBuf);
+      CMCHKPK(cmPkRgrUlLchCfg, &param->lchUlCfg[i], mBuf);
    }
-   CMCHKPK(oduUnpackUInt8, param->numSCells, mBuf);
-
+   CMCHKPK(oduPackUInt8, param->numLch, mBuf);
+#endif
+   CMCHKPK(oduPackUInt8, param->lcgId, mBuf);
    return ROK;
 }
-#endif
+
 
 \f
 /***********************************************************
 *
-*     Func : cmPkRgrDel
+*     Func : cmUnpkRgrUlLcgCfg
 *
 *
-*     Desc : Basic Delete info for MAC
+*     Desc : Logical channel configuration info for uplink logical channels
 *
 *
 *     Ret  : S16
@@ -7065,57 +5692,63 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrDel
+S16 cmUnpkRgrUlLcgCfg
 (
-RgrDel *param,
+RgrUlLcgCfg *param,
 Buffer *mBuf
 )
 {
 
+/*rgr_c_001.main_9 ADD added changes for L2 measurements*/
+#ifdef LTE_L2_MEAS
+   S32 i;
+#endif
+
+   CMCHKUNPK(oduUnpackUInt8, &param->lcgId, mBuf);
+/*rgr_c_001.main_9 ADD added changes for L2 measurements*/
+#ifdef LTE_L2_MEAS
+   CMCHKUNPK(oduUnpackUInt8, &param->numLch, mBuf);
+   for (i = 0; i< param->numLch; i++)
+   {
+      CMCHKUNPK(cmUnpkRgrUlLchCfg, &param->lchUlCfg[i], mBuf);
+   }
 
-      switch(param->delType) {
-         case RGR_LCG_CFG:
-            CMCHKPK(oduUnpackUInt8, param->u.lcgDel.lcgId, mBuf);
-            CMCHKPK(cmPkLteRnti, param->u.lcgDel.crnti, mBuf);
-            CMCHKPK(cmPkLteCellId, param->u.lcgDel.cellId, mBuf);
-         break;
-         case RGR_LCH_CFG:
-            CMCHKPK(oduUnpackUInt8, param->u.lchDel.lcgId, mBuf);
-            CMCHKPK(cmPkLteLcId, param->u.lchDel.lcId, mBuf);
-            CMCHKPK(cmPkLteRnti, param->u.lchDel.crnti, mBuf);
-            CMCHKPK(cmPkLteCellId, param->u.lchDel.cellId, mBuf);
-         break;
-         case RGR_UE_CFG:
-            CMCHKPK(cmPkLteRnti, param->u.ueDel.crnti, mBuf);
-            CMCHKPK(cmPkLteCellId, param->u.ueDel.cellId, mBuf);
-         break;
-         case RGR_CELL_CFG:
-            CMCHKPK(cmPkLteCellId, param->u.cellDel.cellId, mBuf);
-         break;
-#ifdef LTE_ADV
-         case RGR_SCELL_UE_CFG:
-            CMCHKPK(cmPkRgrUeSecCellRelInfo, &param->u.ueScellRel.ueSCellRelCfgInfo, mBuf);
-            CMCHKPK(oduUnpackUInt32, param->u.ueScellRel.ueDelTypes, mBuf);
-            CMCHKPK(cmPkLteRnti, param->u.ueScellRel.crnti, mBuf);
-            CMCHKPK(cmPkLteCellId, param->u.ueScellRel.cellId, mBuf);
-         break;
 #endif
-         default :
-            return RFAILED;
-      }
-   CMCHKPK(oduUnpackUInt8, param->delType, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, &param->gbr, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, &param->mbr, mBuf);
    return ROK;
 }
 
+S16 cmPkRgrUlLchQciCfg
+(
+RgrUlLchQciCfg *param,
+Buffer *mBuf
+)
+{
+   CMCHKPK(oduPackUInt8, param->lcId, mBuf);
+   CMCHKPK(oduPackUInt8, param->qci, mBuf);
+   CMCHKPK(oduPackUInt8, param->lcgId, mBuf);
+   return ROK;
+}
+S16 cmUnpkRgrUlLchQciCfg
+(
+RgrUlLchQciCfg *param,
+Buffer *mBuf
+)
+{
+   CMCHKUNPK(oduUnpackUInt8, &param->lcgId, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->qci, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->lcId, mBuf);
+   return ROK;
+}
 
-#ifdef LTE_ADV
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrUeDlSecCellRelInfo
+*     Func : cmPkRgrLchCfg
 *
 *
-*     Desc : DL Secondary Cell information of the UE
+*     Desc : Logical channel configuration info for dedicated channels
 *
 *
 *     Ret  : S16
@@ -7125,24 +5758,31 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrUeDlSecCellRelInfo
+S16 cmPkRgrLchCfg
 (
-RgrUeDlSecCellRelInfo *param,
+RgrLchCfg *param,
 Buffer *mBuf
 )
 {
-   CMCHKUNPK(oduPackUInt8, &param->sCellIdx, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->sCellId, mBuf);
+
+   CMCHKPK(oduPackUInt8, param->lcgId, mBuf);
+   CMCHKPK(cmPkRgrUlLchQciCfg, &param->ulLchQciInfo, mBuf);
+   CMCHKPK(cmPkRgrDlLchCfg, &param->dlInfo, mBuf);
+   CMCHKPK(cmPkLteLcType, param->lcType, mBuf);
+   CMCHKPK(cmPkLteLcId, param->lcId, mBuf);
+   CMCHKPK(cmPkLteRnti, param->crnti, mBuf);
+   CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
    return ROK;
 }
 
+
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrUeSecCellRelInfo
+*     Func : cmUnpkRgrLchCfg
 *
 *
-*     Desc : Secondary Cell information of the UE
+*     Desc : Logical channel configuration info for dedicated channels
 *
 *
 *     Ret  : S16
@@ -7152,236 +5792,218 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrUeSecCellRelInfo
+S16 cmUnpkRgrLchCfg
 (
-RgrUeSecCellRelInfo *param,
+RgrLchCfg *param,
 Buffer *mBuf
 )
 {
-   uint8_t idx;
 
-   CMCHKUNPK(oduPackUInt8, &param->numSCells, mBuf);
 
-   for(idx = 0; idx < param->numSCells;idx++)
-   {
-      CMCHKUNPK(cmUnpkRgrUeDlSecCellRelInfo, &param->ueSCellRelDedCfg[idx],mBuf);
-   }
+   CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
+   CMCHKUNPK(cmUnpkLteRnti, &param->crnti, mBuf);
+   CMCHKUNPK(cmUnpkLteLcId, &param->lcId, mBuf);
+   CMCHKUNPK(cmUnpkLteLcType, &param->lcType, mBuf);
+   CMCHKUNPK(cmUnpkRgrDlLchCfg, &param->dlInfo, mBuf);
+   CMCHKUNPK(cmUnpkRgrUlLchQciCfg, &param->ulLchQciInfo, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->lcgId, mBuf);
    return ROK;
 }
-#endif
-\f
-/***********************************************************
-*
-*     Func : cmUnpkRgrDel
-*
-*
-*     Desc : Basic Delete info for MAC
-*
-*
-*     Ret  : S16
-*
-*     Notes:
-*
-*     File  : 
-*
-**********************************************************/
-S16 cmUnpkRgrDel
+
+
+S16 cmPkRgrLcgCfg
 (
-RgrDel *param,
+RgrLcgCfg *param,
 Buffer *mBuf
 )
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->delType, mBuf);
-      switch(param->delType) {
-         case RGR_CELL_CFG:
-            CMCHKUNPK(cmUnpkLteCellId, &param->u.cellDel.cellId, mBuf);
-         break;
-         case RGR_UE_CFG:
-            CMCHKUNPK(cmUnpkLteCellId, &param->u.ueDel.cellId, mBuf);
-            CMCHKUNPK(cmUnpkLteRnti, &param->u.ueDel.crnti, mBuf);
-         break;
-         case RGR_LCH_CFG:
-            CMCHKUNPK(cmUnpkLteCellId, &param->u.lchDel.cellId, mBuf);
-            CMCHKUNPK(cmUnpkLteRnti, &param->u.lchDel.crnti, mBuf);
-            CMCHKUNPK(cmUnpkLteLcId, &param->u.lchDel.lcId, mBuf);
-            CMCHKUNPK(oduPackUInt8, &param->u.lchDel.lcgId, mBuf);
-         break;
-         case RGR_LCG_CFG:
-            CMCHKUNPK(cmUnpkLteCellId, &param->u.lcgDel.cellId, mBuf);
-            CMCHKUNPK(cmUnpkLteRnti, &param->u.lcgDel.crnti, mBuf);
-            CMCHKUNPK(oduPackUInt8, &param->u.lcgDel.lcgId, mBuf);
-         break;
-#ifdef LTE_ADV
-         case RGR_SCELL_UE_CFG:
-            CMCHKUNPK(cmUnpkLteCellId, &param->u.ueScellRel.cellId, mBuf);
-            CMCHKUNPK(cmUnpkLteRnti, &param->u.ueScellRel.crnti, mBuf);
-            CMCHKUNPK(oduPackUInt32, &param->u.ueScellRel.ueDelTypes, mBuf);
-            CMCHKUNPK(cmUnpkRgrUeSecCellRelInfo, &param->u.ueScellRel.ueSCellRelCfgInfo, mBuf);
-         break;
-#endif
-         default :
-            return RFAILED;
-      }
+   CMCHKPK(cmPkRgrUlLcgCfg, &param->ulInfo, mBuf);
+   CMCHKPK(cmPkLteRnti, param->crnti, mBuf);
+   CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
+   return ROK;
+}
+
+
+S16 cmUnpkRgrLcgCfg
+(
+RgrLcgCfg *param,
+Buffer *mBuf
+)
+{
+
+
+   CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
+   CMCHKUNPK(cmUnpkLteRnti, &param->crnti, mBuf);
+   CMCHKUNPK(cmUnpkRgrUlLcgCfg, &param->ulInfo, mBuf);
    return ROK;
 }
+
+
+\f
 /***********************************************************
 *
-*     Func : cmPkRgrSonPrbCfg
+*     Func : cmPkRgrCfg
 *
 *
-*     Desc : SON PRB Configuration info for MAC
+*     Desc : Basic Configuration structure at RRM
 *
 *
 *     Ret  : S16
 *
 *     Notes:
 *
-*     File  :
+*     File  : 
 *
 **********************************************************/
-S16 cmPkRgrSonPrbCfg
+S16 cmPkRgrCfg
 (
-RgrPrbCfg *param,
-Buffer *mBuf
-)
-{
-   S32 count;
-   for(count = RGR_SCH_MAX_PA_PER_PRB - 1; count >= 0; count --)
-   {
-      CMCHKPK(oduUnpackUInt32, param->paLevelPerPrb[count], mBuf);
-   }
-   for(count = param->numCellCentreUEs - 1; count >= 0; count --)
-   {
-      CMCHKPK(cmPkLteRnti, param->cellCentreUe[count], mBuf);
-   } 
-   for(count = param->numCellEdgeUEs - 1; count >= 0; count --)
-   {
-      CMCHKPK(cmPkLteRnti, param->cellEdgeUe[count], mBuf);
-   }
-   CMCHKPK(oduUnpackUInt8, param->numCellCentreUEs, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->numCellEdgeUEs, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isSonIcicEnable, mBuf);
+RgrCfg *param,
+Buffer *mBuf
+)
+{
+
+
+      switch(param->cfgType) {
+         case RGR_LCG_CFG:
+            CMCHKPK(cmPkRgrLcgCfg, &param->u.lcgCfg, mBuf);
+            break;
+         case RGR_LCH_CFG:
+            CMCHKPK(cmPkRgrLchCfg, &param->u.lchCfg, mBuf);
+            break;
+         case RGR_UE_CFG:
+            CMCHKPK(cmPkRgrUeCfg, &param->u.ueCfg, mBuf);
+            break;
+         case RGR_CELL_CFG:
+            CMCHKPK(cmPkRgrCellCfg, &param->u.cellCfg, mBuf);
+            break;
+         case MAC_GNB_CFG:
+            CMCHKPK(cmPkMacSchedGnbCfg, &param->u.schedGnbCfg, mBuf);
+            break;
+         default :
+            return RFAILED;
+      }
+   CMCHKPK(oduPackUInt8, param->cfgType, mBuf);
    return ROK;
 }
 
+
+\f
 /***********************************************************
 *
-*     Func : cmUnpkRgrSon
+*     Func : cmUnpkRgrCfg
 *
 *
-*     Desc : SON configuration info for MAC
+*     Desc : Basic Configuration structure at RRM
 *
 *
 *     Ret  : S16
 *
 *     Notes:
 *
-*     File  :
+*     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrSonPrbCfg
+S16 cmUnpkRgrCfg
 (
-RgrPrbCfg   *param,
-Buffer      *mBuf
+RgrCfg *param,
+Buffer *mBuf
 )
 {
-   S32   count;
-   CMCHKUNPK(oduPackUInt8, &param->isSonIcicEnable, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->numCellEdgeUEs, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->numCellCentreUEs, mBuf);
-   for (count = 0; count < param->numCellEdgeUEs; count++)
-   {
-      CMCHKUNPK(cmUnpkLteRnti, &param->cellEdgeUe[count], mBuf);
-   }
-   for (count = 0; count < param->numCellCentreUEs; count++)
-   {
-      CMCHKUNPK(cmUnpkLteRnti, &param->cellCentreUe[count], mBuf);
-   }
-   for(count = 0; count < RGR_SCH_MAX_PA_PER_PRB; count ++)
-   {
-      CMCHKUNPK(oduPackUInt32,(uint32_t *) &param->paLevelPerPrb[count], mBuf);
-   }
+
+
+   CMCHKUNPK(oduUnpackUInt8, &param->cfgType, mBuf);
+      switch(param->cfgType) {
+         case MAC_GNB_CFG:
+            CMCHKUNPK(cmUnpkMacSchedGnbCfg, &param->u.schedGnbCfg, mBuf);
+            break;
+         case RGR_CELL_CFG:
+            CMCHKUNPK(cmUnpkRgrCellCfg, &param->u.cellCfg, mBuf);
+            break;
+         case RGR_UE_CFG:
+            CMCHKUNPK(cmUnpkRgrUeCfg, &param->u.ueCfg, mBuf);
+            break;
+         case RGR_LCH_CFG:
+            CMCHKUNPK(cmUnpkRgrLchCfg, &param->u.lchCfg, mBuf);
+            break;
+         case RGR_LCG_CFG:
+            CMCHKUNPK(cmUnpkRgrLcgCfg, &param->u.lcgCfg, mBuf);
+            break;
+         default :
+            return RFAILED;
+      }
    return ROK;
 }
+
+
+\f
 /***********************************************************
 *
-*     Func : cmPkRgrSonCfg
+*     Func : cmPkRgrActvTime
 *
 *
-*     Desc : SON Configuration info for MAC
+*     Desc : Activation time information
 *
 *
 *     Ret  : S16
 *
 *     Notes:
 *
-*     File  :
+*     File  : 
 *
 **********************************************************/
-S16 cmPkRgrSonCfg
+S16 cmPkRgrActvTime
 (
-RgrSonCfg *param,
+RgrActvTime *param,
 Buffer *mBuf
 )
 {
 
-   switch(param->cfgType)
-   {
-      case RGR_SON_PRB_CFG :
-      CMCHKPK(cmPkRgrSonPrbCfg, &param->u.prbCfg, mBuf);
-      break;
-      default :
-      return RFAILED;
-   }
-   CMCHKPK(oduUnpackUInt32, param->cfgType, mBuf);
+
+   CMCHKPK(cmPkLteTimingInfo, &param->actvTime, mBuf);
+   CMCHKPK(oduPackUInt8, param->pres, mBuf);
    return ROK;
 }
 
+
+\f
 /***********************************************************
 *
-*     Func : cmUnpkRgrSon
+*     Func : cmUnpkRgrActvTime
 *
 *
-*     Desc : SON configuration info for MAC
+*     Desc : Activation time information
 *
 *
 *     Ret  : S16
 *
 *     Notes:
 *
-*     File  :
+*     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrSonCfg
+S16 cmUnpkRgrActvTime
 (
-RgrSonCfg   *param,
-Buffer      *mBuf
+RgrActvTime *param,
+Buffer *mBuf
 )
 {
 
-   CMCHKUNPK(oduPackUInt32, (uint32_t *)&param->cfgType, mBuf);
-   switch(param->cfgType)
-   {
-      case RGR_SON_PRB_CFG :
-      {
-         CMCHKUNPK(cmUnpkRgrSonPrbCfg, &param->u.prbCfg, mBuf);
-         break;
-         default :
-         return RFAILED;
-      }
-   }
+
+   CMCHKUNPK(oduUnpackUInt8, &param->pres, mBuf);
+   CMCHKUNPK(cmUnpkLteTimingInfo, &param->actvTime, mBuf);
    return ROK;
 }
 
+
 \f
 /***********************************************************
 *
-*     Func : cmPkRgrRst
+*     Func : cmPkRgrCellRecfg
 *
 *
-*     Desc : UE RESET info for MAC
+*     Desc : Cell reconfiguration structure at RRM
 *
 *
 *     Ret  : S16
@@ -7391,15 +6013,37 @@ Buffer      *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrRst
+S16 cmPkRgrCellRecfg
 (
-RgrRst *param,
+RgrCellRecfg *param,
 Buffer *mBuf
 )
 {
 
-
-   CMCHKPK(cmPkLteRnti, param->crnti, mBuf);
+   CMCHKPK(cmPkRgrCellCntrlCmdCfg, &param->cntrlCmdCfg, mBuf);
+   CMCHKPK(cmPkRgrCellCsgParamCfg, &param->csgParamCfg, mBuf);
+   CMCHKPK(oduPackUInt8, param->isDynCfiEnb, mBuf);
+   CMCHKPK(oduPackUInt8, param->isAutoCfgModeEnb, mBuf);
+   /* LTE_ADV_FLAG_REMOVED_START */
+   CMCHKPK(cmPkRgrCellLteAdvancedFeatureCfg, &param->rgrLteAdvCfg, mBuf);
+   /* LTE_ADV_FLAG_REMOVED_END */
+   CMCHKPK(oduPackUInt16, param->t300TmrVal, mBuf);
+   /* rgr_c_001.main_4:MOD-Modified for SI Enhancement. */
+#ifdef RGR_SI_SCH
+   CMCHKPK(cmPkRgrSiCfg, &param->siReCfg, mBuf);
+#endif /* RGR_SI_SCH */
+   CMCHKPK(cmPkRgrDlfsCfg, &param->dlfsRecfg, mBuf);
+   CMCHKPK(cmPkRgrRachCfg, &param->rachRecfg, mBuf);
+   CMCHKPK(cmPkRgrSrsCfg, &param->srsRecfg, mBuf);
+   CMCHKPK(cmPkRgrPucchCfg, &param->pucchRecfg, mBuf);
+   CMCHKPK(cmPkRgrUlCmnCodeRateCfg, &param->ulCmnCodeRate, mBuf);
+   CMCHKPK(cmPkRgrPuschSubBandCfg, &param->puschSubBand, mBuf);
+   CMCHKPK(cmPkRgrDlCmnCodeRateCfg, &param->dlCmnCodeRate, mBuf);
+   CMCHKPK(cmPkRgrUlTrgCqiCfg, &param->trgUlCqi, mBuf);
+   CMCHKPK(cmPkRgrCfiCfg, &param->cfiRecfg, mBuf);
+   CMCHKPK(cmPkRgrDlHqCfg, &param->dlHqRecfg, mBuf);
+   CMCHKPK(cmPkRgrActvTime, &param->recfgActvTime, mBuf);
+   CMCHKPK(oduPackUInt32, param->recfgTypes, mBuf);
    CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
    return ROK;
 }
@@ -7408,10 +6052,10 @@ Buffer *mBuf
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrRst
+*     Func : cmUnpkRgrCellRecfg
 *
 *
-*     Desc : UE RESET info for MAC
+*     Desc : Cell reconfiguration structure at RRM
 *
 *
 *     Ret  : S16
@@ -7421,25 +6065,51 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrRst
+S16 cmUnpkRgrCellRecfg
 (
-RgrRst *param,
+RgrCellRecfg *param,
 Buffer *mBuf
 )
 {
 
 
    CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
-   CMCHKUNPK(cmUnpkLteRnti, &param->crnti, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, &param->recfgTypes, mBuf);
+   CMCHKUNPK(cmUnpkRgrActvTime, &param->recfgActvTime, mBuf);
+   CMCHKUNPK(cmUnpkRgrDlHqCfg, &param->dlHqRecfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrCfiCfg, &param->cfiRecfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrUlTrgCqiCfg, &param->trgUlCqi, mBuf);
+   CMCHKUNPK(cmUnpkRgrDlCmnCodeRateCfg, &param->dlCmnCodeRate, mBuf);
+   CMCHKUNPK(cmUnpkRgrPuschSubBandCfg, &param->puschSubBand, mBuf);
+   CMCHKUNPK(cmUnpkRgrUlCmnCodeRateCfg, &param->ulCmnCodeRate, mBuf);
+   CMCHKUNPK(cmUnpkRgrPucchCfg, &param->pucchRecfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrSrsCfg, &param->srsRecfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrRachCfg, &param->rachRecfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrDlfsCfg, &param->dlfsRecfg, mBuf);
+   /* rgr_c_001.main_4-MOD-Modified for SI Enhancement. */
+#ifdef RGR_SI_SCH
+   CMCHKUNPK(cmUnpkRgrSiCfg, &param->siReCfg, mBuf);
+#endif /* RGR_SI_SCH */
+   CMCHKUNPK(oduUnpackUInt16, &param->t300TmrVal, mBuf);
+   /* LTE_ADV_FLAG_REMOVED_START */
+   CMCHKUNPK(cmUnpkRgrCellLteAdvancedFeatureCfg, &param->rgrLteAdvCfg, mBuf);
+   /* LTE_ADV_FLAG_REMOVED_END */
+   CMCHKUNPK(oduUnpackUInt8, &param->isAutoCfgModeEnb, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isDynCfiEnb, mBuf);
+   CMCHKUNPK(cmUnpkRgrCellCsgParamCfg, &param->csgParamCfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrCellCntrlCmdCfg, &param->cntrlCmdCfg, mBuf);
+
    return ROK;
 }
-#ifdef LTE_ADV
+
+
+\f
 /***********************************************************
 *
-*     Func : cmUnPkRgrSCellActDeactInfo
+*     Func : cmPkRgrUeRecfg
 *
 *
-*     Desc : SCell Activation information of the UE
+*     Desc : UE reconfiguration info
 *
 *
 *     Ret  : S16
@@ -7449,23 +6119,111 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-static S16 cmUnPkRgrSCellActDeactInfo
+S16 cmPkRgrUeRecfg
 (
-RgrSCellActDeactInfo *param,
+RgrUeRecfg *param,
 Buffer *mBuf
 )
 {
 
-   CMCHKUNPK(oduPackUInt8, &param->sCellIdx, mBuf);
+#ifdef EMTC_ENABLE
+   /* Note: As we add more members to emtcUeRecfg, 
+      create a new function for pkUnpk */
+   CMCHKPK(oduPackUInt8, param->emtcUeRecfg.isHdFddEnbld, mBuf);
+#endif
+   CMCHKPK(oduPackUInt8, param->csgMmbrSta, mBuf);
+  
+   CMCHKPK(oduPackUInt32, param->accessStratumRls, mBuf);
+#ifdef LTE_ADV 
+   CMCHKPK(oduPackUInt8, param->simulAckNackCQIFormat3, mBuf);
+   CMCHKPK(cmPkRgrUeSCellAckPucchCfg, &param->sCellAckN1ResCfg,mBuf);
+   CMCHKPK(cmPkRgrUeSecCellInfo, &param->ueSCellCfgInfo,mBuf);
+#endif
+   /* LTE_ADV_FLAG_REMOVED_START */
+   CMCHKPK(oduPackUInt8, param->ueLteAdvCfg.isUeCellEdge, mBuf);
+   CMCHKPK(oduPackUInt8, param->ueLteAdvCfg.isAbsUe, mBuf);
+   CMCHKPK(oduPackUInt32, param->ueLteAdvCfg.pres, mBuf);
+   /* LTE_ADV_FLAG_REMOVED_END */
+   /*ccpu00130497: Removed the duplicate packing*/
+#ifdef TFU_UPGRADE
+   CMCHKPK(cmPkRgrUePdschDedCfg, &param->uePdschDedCfg, mBuf);
+#endif
+   /* rgr_c_001.main_9 ccpu00117452 - MOD - Changed macro name from
+   RGR_RRM_DLPWR_CNTRL to RGR_CQI_REPT */
+#ifdef RGR_CQI_REPT
+   CMCHKPK(cmPkRgrUeCqiReptCfg, &param->ueCqiReptCfg, mBuf);
+#endif
+
+/* rgr_c_001.main_8. Added changes of TFU_UPGRADE */
+   CMCHKPK(cmPkRgrUePuschDedCfg, &param->puschDedCfg, mBuf);
+
+/*rgr_c_001.main_9 ADD added changes for HDFDD*/
+#ifdef LTEMAC_HDFDD
+   CMCHKPK(oduPackUInt8, param->isHdFddEnbld, mBuf);
+#endif
+
+#ifdef TFU_UPGRADE
+   CMCHKPK(cmPkRgrUeSrCfg, &param->srCfg, mBuf);
+   CMCHKPK(cmPkRgrUeUlSrsCfg, &param->srsCfg, mBuf);
+   CMCHKPK(cmPkRgrUePrdDlCqiCfg, &param->cqiCfg, mBuf);
+#endif 
+
+   /*rgr_c_001.main_7 - Added support for SPS*/
+   CMCHKPK(cmPkRgrUeSpsCfg, &param->ueSpsRecfg, mBuf);
+   CMCHKPK(cmPkRgrUeTxAntSelCfg, &param->ulTxAntSel, mBuf);
+
+   /* rgr_c_001.main_7 - Changes for UE category Reconfiguration */
+   CMCHKPK(oduPackUInt32, param->ueCatEnum, mBuf);
+
+   CMCHKPK(cmPkRgrCodeBookRstCfg, &param->ueCodeBookRstRecfg, mBuf);
+   CMCHKPK(cmPkRgrUeMeasGapCfg, &param->ueMeasGapRecfg, mBuf);
+   CMCHKPK(cmPkRgrUeCapCfg, &param->ueCapRecfg, mBuf);
+   CMCHKPK(cmPkRgrUeAckNackRepCfg, &param->ueAckNackRecfg, mBuf);
+   CMCHKPK(oduPackUInt8, param->isTtiBundlEnabled, mBuf);
+/*rgr_c_001.main_9 ADD added changes for DRX*/
+   
+   /* Anshika - Pack only if DRX is enabled */
+   if(TRUE == param->ueDrxRecfg.isDrxEnabled)
+   {
+      CMCHKPK(cmPkRgrUeDrxCfg, &param->ueDrxRecfg, mBuf);
+   }
+   CMCHKPK(oduPackUInt8, param->ueDrxRecfg.isDrxEnabled, mBuf); /* This has to be packed even if
+                                                 DRX is disabled */
+   CMCHKPK(cmPkRgrUeUlPwrCfg, &param->ueUlPwrRecfg, mBuf);
+#ifdef RGR_V1
+   /* rgr_c_001.main_5: ccpu00112398: Added periodicBSR-timer and
+    * retxBSR-timer */
+   CMCHKPK(cmPkRgrUeBsrTmrCfg, &param->ueBsrTmrRecfg, mBuf);
+#endif
+   CMCHKPK(cmPkRgrUeTaTmrCfg, &param->ueTaTmrRecfg, mBuf);
+   CMCHKPK(cmPkRgrUeQosCfg, &param->ueQosRecfg, mBuf);
+   CMCHKPK(cmPkRgrUeUlHqCfg, &param->ueUlHqRecfg, mBuf);
+
+#ifndef TFU_UPGRADE
+   CMCHKPK(cmPkRgrUePrdDlCqiCfg, &param->prdDlCqiRecfg, mBuf);
+#endif
+
+   CMCHKPK(cmPkRgrUeAprdDlCqiCfg, &param->aprdDlCqiRecfg, mBuf);
+   CMCHKPK(cmPkRgrUeTxModeCfg, &param->txMode, mBuf);
+   /*rgr_c_001.main_9: changing ueRecfgTypes to uint32_t */
+   /* LTE_ADV_FLAG_REMOVED_START */
+   /* KW fix for LTE_ADV */
+   CMCHKPK(oduPackUInt32, param->ueRecfgTypes, mBuf);
+   /* LTE_ADV_FLAG_REMOVED_END */
+   CMCHKPK(cmPkLteRnti, param->newCrnti, mBuf);
+   CMCHKPK(cmPkLteRnti, param->oldCrnti, mBuf);
+   CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
    return ROK;
 }
 
+
+\f
 /***********************************************************
 *
-*     Func : cmUnPkRgrSCellActDeactEvnt
+*     Func : cmUnpkRgrUeRecfg
 *
 *
-*     Desc : SCell Activation Configuration structure to SCH
+*     Desc : UE reconfiguration info
 *
 *
 *     Ret  : S16
@@ -7475,33 +6233,111 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnPkRgrSCellActDeactEvnt
+S16 cmUnpkRgrUeRecfg
 (
-RgrSCellActDeactEvnt *param,
+RgrUeRecfg *param,
 Buffer *mBuf
 )
 {
+   uint32_t tmpEnum;
 
-   uint8_t idx;
 
-   CMCHKUNPK(cmUnpkLteRnti, &param->crnti, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->numOfSCells, mBuf);
+   CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
+   CMCHKUNPK(cmUnpkLteRnti, &param->oldCrnti, mBuf);
+   CMCHKUNPK(cmUnpkLteRnti, &param->newCrnti, mBuf);
+   /* LTE_ADV_FLAG_REMOVED_START */
+   /*rgr_c_001.main_9: changing ueRecfgTypes to uint32_t */
+   /* KW fix for LTE_ADV */
+   CMCHKUNPK(oduUnpackUInt32, &param->ueRecfgTypes, mBuf);
+   /* LTE_ADV_FLAG_REMOVED_END */
+   CMCHKUNPK(cmUnpkRgrUeTxModeCfg, &param->txMode, mBuf);
 
-   for(idx = 0; idx < param->numOfSCells;idx++)
+   CMCHKUNPK(cmUnpkRgrUeAprdDlCqiCfg, &param->aprdDlCqiRecfg, mBuf);
+
+#ifndef TFU_UPGRADE
+   CMCHKUNPK(cmUnpkRgrUePrdDlCqiCfg, &param->prdDlCqiRecfg, mBuf);
+#endif
+
+   CMCHKUNPK(cmUnpkRgrUeUlHqCfg, &param->ueUlHqRecfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrUeQosCfg, &param->ueQosRecfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrUeTaTmrCfg, &param->ueTaTmrRecfg, mBuf);
+#ifdef RGR_V1
+   /* rgr_c_001.main_5: ccpu00112398: Added periodicBSR-timer and
+    * retxBSR-timer */
+   CMCHKUNPK(cmUnpkRgrUeBsrTmrCfg, &param->ueBsrTmrRecfg, mBuf);
+#endif
+   CMCHKUNPK(cmUnpkRgrUeUlPwrCfg, &param->ueUlPwrRecfg, mBuf);
+/*rgr_c_001.main_9 ADD added changes for DRX*/
+   
+   /* Anshika - Unpack only if DRX is enabled */
+   CMCHKUNPK(oduUnpackUInt8, &param->ueDrxRecfg.isDrxEnabled, mBuf);
+   if(TRUE == param->ueDrxRecfg.isDrxEnabled)
    {
-      CMCHKUNPK(cmUnPkRgrSCellActDeactInfo, &param->sCellActDeactInfo[idx],mBuf);
+      CMCHKUNPK(cmUnpkRgrUeDrxCfg, &param->ueDrxRecfg, mBuf);
    }
+   CMCHKUNPK(oduUnpackUInt8, &param->isTtiBundlEnabled, mBuf);
+   CMCHKUNPK(cmUnpkRgrUeAckNackRepCfg, &param->ueAckNackRecfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrUeCapCfg, &param->ueCapRecfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrUeMeasGapCfg, &param->ueMeasGapRecfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrCodeBookRstCfg, &param->ueCodeBookRstRecfg, mBuf);
+/* rgr_c_001.main_7 - Changes for UE category Reconfiguration */
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&tmpEnum, mBuf);
+   param->ueCatEnum = (CmLteUeCategory) tmpEnum;
+   CMCHKUNPK(cmUnpkRgrUeTxAntSelCfg, &param->ulTxAntSel, mBuf);
+   /*rgr_c_001.main_7 - Added support for SPS*/
+   CMCHKUNPK(cmUnpkRgrUeSpsCfg, &param->ueSpsRecfg, mBuf);
+
+/* rgr_c_001.main_8. Added changes of TFU_UPGRADE */
+#ifdef TFU_UPGRADE
+   CMCHKUNPK(cmUnpkRgrUePrdDlCqiCfg, &param->cqiCfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrUeUlSrsCfg, &param->srsCfg, mBuf);
+   CMCHKUNPK(cmUnpkRgrUeSrCfg, &param->srCfg, mBuf);
+#endif
+
+/*rgr_c_001.main_9 ADD added changes for HDFDD*/
+#ifdef LTEMAC_HDFDD
+   CMCHKUNPK(oduUnpackUInt8, &param->isHdFddEnbld, mBuf);
+#endif
+
+   CMCHKUNPK(cmUnpkRgrUePuschDedCfg, &param->puschDedCfg, mBuf);
+
+/* rgr_c_001.main_9 ccpu00117452 - MOD - Changed macro name from
+   RGR_RRM_DLPWR_CNTRL to RGR_CQI_REPT */
+#ifdef RGR_CQI_REPT
+   CMCHKUNPK(cmUnpkRgrUeCqiReptCfg, &param->ueCqiReptCfg, mBuf);
+#endif
+#ifdef TFU_UPGRADE
+   CMCHKUNPK(cmUnpkRgrUePdschDedCfg, &param->uePdschDedCfg, mBuf);
+#endif
+
+   /* LTE_ADV_FLAG_REMOVED_START */
+   CMCHKUNPK(oduUnpackUInt32, &param->ueLteAdvCfg.pres, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->ueLteAdvCfg.isAbsUe, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->ueLteAdvCfg.isUeCellEdge, mBuf);
+   /* LTE_ADV_FLAG_REMOVED_END */
+#ifdef LTE_ADV 
+   CMCHKUNPK(cmUnpkRgrUeSecCellInfo, &param->ueSCellCfgInfo,mBuf);
+   CMCHKUNPK(cmUnpkRgrUeSCellAckPucchCfg, &param->sCellAckN1ResCfg,mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->simulAckNackCQIFormat3, mBuf);
+#endif
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&param->accessStratumRls, mBuf);
+
+   CMCHKUNPK(oduUnpackUInt8, &param->csgMmbrSta, mBuf);
+#ifdef EMTC_ENABLE
+   CMCHKPK(oduUnpackUInt8, &param->emtcUeRecfg.isHdFddEnbld, mBuf);
+#endif
 
    return ROK;
 }
 
 
+\f
 /***********************************************************
 *
-*     Func : cmPkRgrSCellActInfo
+*     Func : cmPkRgrLchRecfg
 *
 *
-*     Desc : SCell Activation information of the UE
+*     Desc : Logical channel reconfiguration info for dedicated channels only
 *
 *
 *     Ret  : S16
@@ -7511,24 +6347,34 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-static S16 cmPkRgrSCellActDeactInfo
+S16 cmPkRgrLchRecfg
 (
-RgrSCellActDeactInfo *param,
+RgrLchRecfg *param,
 Buffer *mBuf
 )
 {
 
-   CMCHKPK(oduUnpackUInt8, param->sCellIdx, mBuf);
-
+/*rgr_c_001.main_7 - Added support for SPS*/
+   CMCHKPK(oduPackUInt8, param->lcgId, mBuf);
+   
+   CMCHKPK(cmPkRgrUlLchQciCfg, &param->ulLchQciInfo, mBuf);
+   CMCHKPK(cmPkRgrLchSpsCfg, &param->dlRecfg.dlSpsRecfg, mBuf);
+   
+   CMCHKPK(cmPkRgrLchQosCfg, &param->dlRecfg.dlQos, mBuf);
+   CMCHKPK(cmPkLteLcId, param->lcId, mBuf);
+   CMCHKPK(cmPkLteRnti, param->crnti, mBuf);
+   CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
    return ROK;
 }
 
+
+\f
 /***********************************************************
 *
-*     Func : cmPkRgrSCellActDeactEvnt
+*     Func : cmUnpkRgrLchRecfg
 *
 *
-*     Desc : Basic Configuration structure at SCH
+*     Desc : Logical channel reconfiguration info for dedicated channels only
 *
 *
 *     Ret  : S16
@@ -7538,35 +6384,88 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrSCellActDeactEvnt
+S16 cmUnpkRgrLchRecfg
 (
-RgrSCellActDeactEvnt *param,
+RgrLchRecfg *param,
 Buffer *mBuf
 )
 {
 
 
-   S8 idx;
-   for(idx = param->numOfSCells - 1; idx >= 0; idx--)
+   CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
+   CMCHKUNPK(cmUnpkLteRnti, &param->crnti, mBuf);
+   CMCHKUNPK(cmUnpkLteLcId, &param->lcId, mBuf);
+   CMCHKUNPK(cmUnpkRgrLchQosCfg, &param->dlRecfg.dlQos, mBuf);
+      /*rgr_c_001.main_7 - Added support for SPs*/
+   CMCHKUNPK(cmUnpkRgrLchSpsCfg, &param->dlRecfg.dlSpsRecfg, mBuf);
+
+   CMCHKUNPK(cmUnpkRgrUlLchQciCfg, &param->ulLchQciInfo, mBuf);   
+   CMCHKUNPK(oduUnpackUInt8, &param->lcgId, mBuf);
+   return ROK;
+}
+
+
+S16 cmPkRgrLcgRecfg
+(
+RgrLcgRecfg *param,
+Buffer *mBuf
+)
+{
+#ifdef RG_UNUSED
+   S32 i;
+#endif
+
+   CMCHKPK(oduPackUInt32, param->ulRecfg.mbr, mBuf);
+   CMCHKPK(oduPackUInt32, param->ulRecfg.gbr, mBuf);
+#ifdef RG_UNUSED
+   for (i = param->ulRecfg.numLch - 1; i >= 0; i--)
    {
-      CMCHKPK(cmPkRgrSCellActDeactInfo, &param->sCellActDeactInfo[(uint8_t)idx], mBuf);
+      CMCHKPK(cmPkRgrUlLchCfg, &param->ulRecfg.lchUlCfg[i], mBuf);
    }
-
-   CMCHKPK(oduUnpackUInt8, param->numOfSCells, mBuf);
+   CMCHKPK(oduPackUInt8, param->ulRecfg.numLch, mBuf);
+#endif
+   CMCHKPK(oduPackUInt8, param->ulRecfg.lcgId, mBuf);
    CMCHKPK(cmPkLteRnti, param->crnti, mBuf);
+   CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
+   return ROK;
+}
+
+
+S16 cmUnpkRgrLcgRecfg
+(
+RgrLcgRecfg *param,
+Buffer *mBuf
+)
+{
+#ifdef RG_UNUSED
+   S32 i;
+#endif
+
+   CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
+   CMCHKUNPK(cmUnpkLteRnti, &param->crnti, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->ulRecfg.lcgId, mBuf);
+
+#ifdef RG_UNUSED
+   CMCHKUNPK(oduUnpackUInt8, &param->ulRecfg.numLch, mBuf);
+   for (i = 0; i < param->ulRecfg.numLch; i++)
+   {
+      CMCHKUNPK(cmUnpkRgrUlLchCfg, &param->ulRecfg.lchUlCfg[i], mBuf);
+   }
+#endif
+   CMCHKUNPK(oduUnpackUInt32, &param->ulRecfg.gbr, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, &param->ulRecfg.mbr, mBuf);
 
    return ROK;
 }
 
 
-#endif /* LTE_ADV */
 \f
 /***********************************************************
 *
-*     Func : cmPkRgrCfgReqInfo
+*     Func : cmPkRgrRecfg
 *
 *
-*     Desc : Basic RGR configuration/reconfiguration info at RRM
+*     Desc : Basic reconfiguration structure at RRM
 *
 *
 *     Ret  : S16
@@ -7576,41 +6475,31 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrCfgReqInfo
+S16 cmPkRgrRecfg
 (
-RgrCfgReqInfo *param,
+RgrRecfg *param,
 Buffer *mBuf
 )
 {
 
 
-      switch(param->action) {
-         case RGR_SON_CFG:
-            CMCHKPK(cmPkRgrSonCfg, &param->u.sonCfg, mBuf);
-            break;
-         case RGR_RESET:
-            CMCHKPK(cmPkRgrRst, &param->u.rstInfo, mBuf);
-            break;
-         case RGR_DELETE:
-            CMCHKPK(cmPkRgrDel, &param->u.delInfo, mBuf);
+      switch(param->recfgType) {
+         case RGR_LCG_CFG:
+            CMCHKPK(cmPkRgrLcgRecfg, &param->u.lcgRecfg, mBuf);
             break;
-         case RGR_RECONFIG:
-            CMCHKPK(cmPkRgrRecfg, &param->u.recfgInfo, mBuf);
+         case RGR_LCH_CFG:
+            CMCHKPK(cmPkRgrLchRecfg, &param->u.lchRecfg, mBuf);
             break;
-         case SCH_CONFIG:
-            CMCHKPK(cmPkRgrCfg, &param->u.cfgInfo, mBuf);
+         case RGR_UE_CFG:
+            CMCHKPK(cmPkRgrUeRecfg, &param->u.ueRecfg, mBuf);
             break;
-#ifdef LTE_ADV
-         case RGR_SCELL_ACT:
-         case RGR_SCELL_DEACT:
-         case RGR_SCELL_READY:
-            CMCHKPK(cmPkRgrSCellActDeactEvnt, &param->u.sCellActDeactEvnt, mBuf);
+         case RGR_CELL_CFG:
+            CMCHKPK(cmPkRgrCellRecfg, &param->u.cellRecfg, mBuf);
             break;
-#endif
          default :
             return RFAILED;
       }
-   CMCHKPK(oduUnpackUInt8, param->action, mBuf);
+   CMCHKPK(oduPackUInt8, param->recfgType, mBuf);
    return ROK;
 }
 
@@ -7618,10 +6507,10 @@ Buffer *mBuf
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrCfgReqInfo
+*     Func : cmUnpkRgrRecfg
 *
 *
-*     Desc : Basic RGR configuration/reconfiguration info at RRM
+*     Desc : Basic reconfiguration structure at RRM
 *
 *
 *     Ret  : S16
@@ -7631,52 +6520,41 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrCfgReqInfo
+S16 cmUnpkRgrRecfg
 (
-RgrCfgReqInfo *param,
+RgrRecfg *param,
 Buffer *mBuf
 )
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->action, mBuf);
-      switch(param->action) {
-         case SCH_CONFIG:
-            CMCHKUNPK(cmUnpkRgrCfg, &param->u.cfgInfo, mBuf);
-            break;
-         case RGR_RECONFIG:
-            CMCHKUNPK(cmUnpkRgrRecfg, &param->u.recfgInfo, mBuf);
-            break;
-         case RGR_DELETE:
-            CMCHKUNPK(cmUnpkRgrDel, &param->u.delInfo, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->recfgType, mBuf);
+      switch(param->recfgType) {
+         case RGR_CELL_CFG:
+            CMCHKUNPK(cmUnpkRgrCellRecfg, &param->u.cellRecfg, mBuf);
             break;
-         case RGR_RESET:
-            CMCHKUNPK(cmUnpkRgrRst, &param->u.rstInfo, mBuf);
+         case RGR_UE_CFG:
+            CMCHKUNPK(cmUnpkRgrUeRecfg, &param->u.ueRecfg, mBuf);
             break;
-         case RGR_SON_CFG:
-            CMCHKUNPK(cmUnpkRgrSonCfg, &param->u.sonCfg, mBuf);
+         case RGR_LCH_CFG:
+            CMCHKUNPK(cmUnpkRgrLchRecfg, &param->u.lchRecfg, mBuf);
             break;
-#ifdef LTE_ADV
-         case RGR_SCELL_ACT:
-         case RGR_SCELL_DEACT:
-         case RGR_SCELL_READY:
-            CMCHKUNPK(cmUnPkRgrSCellActDeactEvnt, &param->u.sCellActDeactEvnt, mBuf);
+         case RGR_LCG_CFG:
+            CMCHKUNPK(cmUnpkRgrLcgRecfg, &param->u.lcgRecfg, mBuf);
             break;
-#endif /* LTE_ADV */
          default :
             return RFAILED;
       }
    return ROK;
 }
-#ifdef RGR_V1
-/* rgr_c_001.main_5: ccpu00112398: Added periodicBSR-timer and
- * retxBSR-timer */
+
+#ifdef LTE_ADV
 /***********************************************************
 *
-*     Func : cmPkRgrUeBsrTmrCfg
+*     Func : cmPkRgrUeDlSecCellRelInfo
 *
 *
-*     Desc : BSR timer configuration per UE
+*     Desc : DL Secondary Cell information of the UE
 *
 *
 *     Ret  : S16
@@ -7686,26 +6564,23 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrUeBsrTmrCfg
+S16 cmPkRgrUeDlSecCellRelInfo
 (
-RgrUeBsrTmrCfg *param,
+RgrUeDlSecCellRelInfo *param,
 Buffer *mBuf
 )
 {
-
-
-   CMCHKPK(oduUnpackUInt16, param->prdBsrTmr, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->retxBsrTmr, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isPrdBsrTmrPres, mBuf);
+   CMCHKPK(oduPackUInt16, param->sCellId, mBuf);
+   CMCHKPK(oduPackUInt8, param->sCellIdx, mBuf);
    return ROK;
 }
-
+\f
 /***********************************************************
 *
-*     Func : cmUnpkRgrUeBsrTmrCfg
+*     Func : cmPkRgrUeSecCellRelInfo
 *
 *
-*     Desc : BSR timer configuration per UE
+*     Desc : Secondary Cell Delete information of the UE
 *
 *
 *     Ret  : S16
@@ -7715,29 +6590,30 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrUeBsrTmrCfg
+S16 cmPkRgrUeSecCellRelInfo
 (
-RgrUeBsrTmrCfg *param,
+RgrUeSecCellRelInfo *param,
 Buffer *mBuf
 )
 {
+   S8 idx;
+   for(idx = param->numSCells - 1; idx >= 0; idx--)
+   {
+      CMCHKPK(cmPkRgrUeDlSecCellRelInfo, &param->ueSCellRelDedCfg[(uint8_t)idx],mBuf);
+   }
+   CMCHKPK(oduPackUInt8, param->numSCells, mBuf);
 
-
-   CMCHKUNPK(oduPackUInt8, &param->isPrdBsrTmrPres, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->retxBsrTmr, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->prdBsrTmr, mBuf);
    return ROK;
 }
-#endif /* RGR_V1 */
-/* rgr_c_001.main_4-ADD-Added for SI Enhancement. */
-#ifdef RGR_SI_SCH
+#endif
+
+\f
 /***********************************************************
 *
-*     Func : cmPkRgrSiCfgReq
+*     Func : cmPkRgrDel
 *
 *
-*     Desc : SI Configuration Request from RRM to MAC for 
-*            configuring SI
+*     Desc : Basic Delete info for MAC
 *
 *
 *     Ret  : S16
@@ -7747,83 +6623,57 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrSiCfgReq
+S16 cmPkRgrDel
 (
-Pst* pst,
-SpId spId,
-RgrCfgTransId transId,
-RgrSiCfgReqInfo * cfgReqInfo
+RgrDel *param,
+Buffer *mBuf
 )
 {
-   Buffer *mBuf = NULLP;
 
 
-   if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) 
-   {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR045, (ErrVal)0, "Packing failed");
-#endif
-      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)cfgReqInfo, 
-                 sizeof(RgrSiCfgReqInfo));
-      return RFAILED;
-   }
-   if (cmPkRgrSiCfgReqInfo(cfgReqInfo, mBuf) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-            __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-            (ErrVal)ERGR046, (ErrVal)0, "Packing failed");
-#endif
-      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)cfgReqInfo, 
-                sizeof(RgrSiCfgReqInfo));
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
-   if (cmPkRgrCfgTransId(&transId, mBuf) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR047, (ErrVal)0, "Packing failed");
-#endif
-      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)cfgReqInfo, 
-               sizeof(RgrSiCfgReqInfo));
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
-   if (SPkS16(spId, mBuf) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR048, (ErrVal)0, "Packing failed");
-#endif
-      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)cfgReqInfo, 
-               sizeof(RgrSiCfgReqInfo));
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
-   if (SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)cfgReqInfo, 
-               sizeof(RgrSiCfgReqInfo)) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-            __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-            (ErrVal)ERGR049, (ErrVal)0, "Packing failed");
+      switch(param->delType) {
+         case RGR_LCG_CFG:
+            CMCHKPK(oduPackUInt8, param->u.lcgDel.lcgId, mBuf);
+            CMCHKPK(cmPkLteRnti, param->u.lcgDel.crnti, mBuf);
+            CMCHKPK(cmPkLteCellId, param->u.lcgDel.cellId, mBuf);
+         break;
+         case RGR_LCH_CFG:
+            CMCHKPK(oduPackUInt8, param->u.lchDel.lcgId, mBuf);
+            CMCHKPK(cmPkLteLcId, param->u.lchDel.lcId, mBuf);
+            CMCHKPK(cmPkLteRnti, param->u.lchDel.crnti, mBuf);
+            CMCHKPK(cmPkLteCellId, param->u.lchDel.cellId, mBuf);
+         break;
+         case RGR_UE_CFG:
+            CMCHKPK(cmPkLteRnti, param->u.ueDel.crnti, mBuf);
+            CMCHKPK(cmPkLteCellId, param->u.ueDel.cellId, mBuf);
+         break;
+         case RGR_CELL_CFG:
+            CMCHKPK(cmPkLteCellId, param->u.cellDel.cellId, mBuf);
+         break;
+#ifdef LTE_ADV
+         case RGR_SCELL_UE_CFG:
+            CMCHKPK(cmPkRgrUeSecCellRelInfo, &param->u.ueScellRel.ueSCellRelCfgInfo, mBuf);
+            CMCHKPK(oduPackUInt32, param->u.ueScellRel.ueDelTypes, mBuf);
+            CMCHKPK(cmPkLteRnti, param->u.ueScellRel.crnti, mBuf);
+            CMCHKPK(cmPkLteCellId, param->u.ueScellRel.cellId, mBuf);
+         break;
 #endif
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
-
-   pst->event = (Event) EVTRGRSICFGREQ;
-   return (SPstTsk(pst,mBuf));
+         default :
+            return RFAILED;
+      }
+   CMCHKPK(oduPackUInt8, param->delType, mBuf);
+   return ROK;
 }
+
+
+#ifdef LTE_ADV
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrSiCfgReq
+*     Func : cmUnpkRgrUeDlSecCellRelInfo
 *
 *
-*     Desc : SI Configuration Request from RRM to MAC for 
-*     configuring SI
+*     Desc : DL Secondary Cell information of the UE
 *
 *
 *     Ret  : S16
@@ -7833,70 +6683,24 @@ RgrSiCfgReqInfo * cfgReqInfo
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrSiCfgReq
+S16 cmUnpkRgrUeDlSecCellRelInfo
 (
-RgrSiCfgReq func,
-Pst *pst,
+RgrUeDlSecCellRelInfo *param,
 Buffer *mBuf
 )
 {
-   SpId spId;
-   RgrCfgTransId transId;
-   RgrSiCfgReqInfo *cfgReqInfo;
-   
-
-   if (SUnpkS16(&spId, mBuf) != ROK) {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR050, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-   if (cmUnpkRgrCfgTransId(&transId, mBuf) != ROK) {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR051, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-   if ((SGetSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data **)&cfgReqInfo,
-            sizeof(RgrSiCfgReqInfo))) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-            __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-            (ErrVal)ERGR052, (ErrVal)0, "Packing failed");
-#endif
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
-   memset(cfgReqInfo, 0, sizeof(RgrSiCfgReqInfo));
-   if (pst->selector == ODU_SELECTOR_LC) 
-      if (cmUnpkRgrSiCfgReqInfo(cfgReqInfo, mBuf) != ROK) {
-         SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)cfgReqInfo, 
-                          sizeof(RgrSiCfgReqInfo));
-         SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-         SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-               __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-               (ErrVal)ERGR053, (ErrVal)0, "Packing failed");
-#endif
-         return RFAILED;
-      }
-   SPutMsg(mBuf);
-
-   return ((*func)(pst, spId, transId, cfgReqInfo));
+   CMCHKUNPK(oduUnpackUInt8, &param->sCellIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->sCellId, mBuf);
+   return ROK;
 }
 
+\f
 /***********************************************************
 *
-*     Func : cmPkRgrSiCfgReqInfo
+*     Func : cmUnpkRgrUeSecCellRelInfo
 *
 *
-*     Desc : Basic SI configuration/reconfiguration info at RRM
+*     Desc : Secondary Cell information of the UE
 *
 *
 *     Ret  : S16
@@ -7906,44 +6710,30 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrSiCfgReqInfo
+S16 cmUnpkRgrUeSecCellRelInfo
 (
-RgrSiCfgReqInfo *param,
+RgrUeSecCellRelInfo *param,
 Buffer *mBuf
 )
 {
-  /* ccpu00111328: S16 is renamed as MsgLen */
-   MsgLen msgLen;
-
+   uint8_t idx;
 
-   CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
-   CMCHKPK(SPkS32, param->cfgType, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->siId, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numSCells, mBuf);
 
-   if(NULLP != param->pdu)
-   {
-      if (SFndLenMsg(param->pdu, &msgLen) != ROK)
-         return RFAILED;
-      if (SCatMsg(mBuf, param->pdu, M1M2) != ROK)
-         return RFAILED;
-      SPutMsg(param->pdu);
-      CMCHKPK(cmPkMsgLen, msgLen, mBuf);
-   }
-   /*ccpu00140789*/
-   else
+   for(idx = 0; idx < param->numSCells;idx++)
    {
-      CMCHKPK(cmPkMsgLen, 0, mBuf);
+      CMCHKUNPK(cmUnpkRgrUeDlSecCellRelInfo, &param->ueSCellRelDedCfg[idx],mBuf);
    }
-
    return ROK;
 }
+#endif
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrSiCfgReqInfo
+*     Func : cmUnpkRgrDel
 *
 *
-*     Desc : Basic SI configuration/reconfiguration info at RRM
+*     Desc : Basic Delete info for MAC
 *
 *
 *     Ret  : S16
@@ -7953,480 +6743,261 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrSiCfgReqInfo
+S16 cmUnpkRgrDel
 (
-RgrSiCfgReqInfo *param,
+RgrDel *param,
 Buffer *mBuf
 )
 {
-   MsgLen  msgLen, totalMsgLen;
-   /*Merge from Mohit Changes*/
-   S32    cfgType;
 
 
-   SFndLenMsg(mBuf, &msgLen);
-   if(msgLen > 0)
-   {
-      CMCHKUNPK(cmUnpkMsgLen, &msgLen, mBuf);
-      /*ccpu00140789*/
-      if(msgLen > 0)
-      {
-         if (SFndLenMsg(mBuf, &totalMsgLen) != ROK)
-            return RFAILED;
-         if (SSegMsg(mBuf, totalMsgLen-msgLen, &param->pdu) != ROK)
+   CMCHKUNPK(oduUnpackUInt8, &param->delType, mBuf);
+      switch(param->delType) {
+         case RGR_CELL_CFG:
+            CMCHKUNPK(cmUnpkLteCellId, &param->u.cellDel.cellId, mBuf);
+         break;
+         case RGR_UE_CFG:
+            CMCHKUNPK(cmUnpkLteCellId, &param->u.ueDel.cellId, mBuf);
+            CMCHKUNPK(cmUnpkLteRnti, &param->u.ueDel.crnti, mBuf);
+         break;
+         case RGR_LCH_CFG:
+            CMCHKUNPK(cmUnpkLteCellId, &param->u.lchDel.cellId, mBuf);
+            CMCHKUNPK(cmUnpkLteRnti, &param->u.lchDel.crnti, mBuf);
+            CMCHKUNPK(cmUnpkLteLcId, &param->u.lchDel.lcId, mBuf);
+            CMCHKUNPK(oduUnpackUInt8, &param->u.lchDel.lcgId, mBuf);
+         break;
+         case RGR_LCG_CFG:
+            CMCHKUNPK(cmUnpkLteCellId, &param->u.lcgDel.cellId, mBuf);
+            CMCHKUNPK(cmUnpkLteRnti, &param->u.lcgDel.crnti, mBuf);
+            CMCHKUNPK(oduUnpackUInt8, &param->u.lcgDel.lcgId, mBuf);
+         break;
+#ifdef LTE_ADV
+         case RGR_SCELL_UE_CFG:
+            CMCHKUNPK(cmUnpkLteCellId, &param->u.ueScellRel.cellId, mBuf);
+            CMCHKUNPK(cmUnpkLteRnti, &param->u.ueScellRel.crnti, mBuf);
+            CMCHKUNPK(oduUnpackUInt32, &param->u.ueScellRel.ueDelTypes, mBuf);
+            CMCHKUNPK(cmUnpkRgrUeSecCellRelInfo, &param->u.ueScellRel.ueSCellRelCfgInfo, mBuf);
+         break;
+#endif
+         default :
             return RFAILED;
       }
-      else
-      {
-         param->pdu = NULLP;
-      }
-   }
-
-   CMCHKUNPK(oduPackUInt8, &param->siId, mBuf);
-   /*CMCHKUNPK(SUnpkS32, (S32 *)&param->cfgType, mBuf);*/
-   /*Merge from Mohit Changes*/
-   CMCHKUNPK(SUnpkS32,(S32 *)&cfgType, mBuf);
-   param->cfgType = (RgrSiCfgType) cfgType;
-   CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
-
    return ROK;
 }
-
-
-\f
 /***********************************************************
 *
-*     Func : cmPkRgrWarningSiCfgReq
+*     Func : cmPkRgrSonPrbCfg
 *
 *
-*     Desc : SI Configuration Request from RRM to MAC for 
-*            configuring warning SI
+*     Desc : SON PRB Configuration info for MAC
 *
 *
 *     Ret  : S16
 *
 *     Notes:
 *
-*     File  : 
+*     File  :
 *
 **********************************************************/
-S16 cmPkRgrWarningSiCfgReq
+S16 cmPkRgrSonPrbCfg
 (
-Pst* pst,
-SpId spId,
-RgrCfgTransId transId,
-RgrWarningSiCfgReqInfo * warningSiCfgReqInfo
+RgrPrbCfg *param,
+Buffer *mBuf
 )
-{
-   Buffer *mBuf = NULLP;
-
-
-   if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) 
-   {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR061, (ErrVal)0, "Packing failed");
-#endif
-      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)warningSiCfgReqInfo, 
-                 sizeof(RgrWarningSiCfgReqInfo));
-      return RFAILED;
-   }
-
-   if (cmPkRgrWarningSiCfgReqInfo(pst, warningSiCfgReqInfo, mBuf) != ROK) 
-   {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-            __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-            (ErrVal)ERGR062, (ErrVal)0, "Packing failed");
-#endif
-      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)warningSiCfgReqInfo, 
-                sizeof(RgrWarningSiCfgReqInfo));
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
-
-   if (cmPkRgrCfgTransId(&transId, mBuf) != ROK) 
-   {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR063, (ErrVal)0, "Packing failed");
-#endif
-      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)warningSiCfgReqInfo, 
-               sizeof(RgrWarningSiCfgReqInfo));
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
-
-   if (SPkS16(spId, mBuf) != ROK) 
-   {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR064, (ErrVal)0, "Packing failed");
-#endif
-      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)warningSiCfgReqInfo, 
-               sizeof(RgrWarningSiCfgReqInfo));
-      SPutMsg(mBuf);
-      return RFAILED;
+{
+   S32 count;
+   for(count = RGR_SCH_MAX_PA_PER_PRB - 1; count >= 0; count --)
+   {
+      CMCHKPK(oduPackUInt32, param->paLevelPerPrb[count], mBuf);
    }
-
-   /* if the application wants to retain this structure, the below 
-    * code should be removed */
-   if (SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)warningSiCfgReqInfo, 
-               sizeof(RgrWarningSiCfgReqInfo)) != ROK) 
+   for(count = param->numCellCentreUEs - 1; count >= 0; count --)
    {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-            __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-            (ErrVal)ERGR065, (ErrVal)0, "Packing failed");
-#endif
-      SPutMsg(mBuf);
-      return RFAILED;
+      CMCHKPK(cmPkLteRnti, param->cellCentreUe[count], mBuf);
+   } 
+   for(count = param->numCellEdgeUEs - 1; count >= 0; count --)
+   {
+      CMCHKPK(cmPkLteRnti, param->cellEdgeUe[count], mBuf);
    }
+   CMCHKPK(oduPackUInt8, param->numCellCentreUEs, mBuf);
+   CMCHKPK(oduPackUInt8, param->numCellEdgeUEs, mBuf);
+   CMCHKPK(oduPackUInt8, param->isSonIcicEnable, mBuf);
+   return ROK;
+}
 
-   pst->event = (Event) EVTRGRWARNINGSICFGREQ;
-   return (SPstTsk(pst,mBuf));
-}/*cmPkRgrWarningSiCfgReq*/
-
-\f
 /***********************************************************
 *
-*     Func : cmUnpkRgrWarningSiCfgReq
+*     Func : cmUnpkRgrSon
 *
 *
-*     Desc : SI Configuration Request from RRM to MAC for  
-*            configuring warning SI
+*     Desc : SON configuration info for MAC
 *
 *
 *     Ret  : S16
 *
 *     Notes:
 *
-*     File  : 
+*     File  :
 *
 **********************************************************/
-S16 cmUnpkRgrWarningSiCfgReq
+S16 cmUnpkRgrSonPrbCfg
 (
-RgrWarningSiCfgReq func,
-Pst *pst,
-Buffer *mBuf
+RgrPrbCfg   *param,
+Buffer      *mBuf
 )
 {
-   SpId spId;
-   RgrCfgTransId transId;
-   RgrWarningSiCfgReqInfo *warningSiCfgReqInfo;
-   
-
-   if (SUnpkS16(&spId, mBuf) != ROK) 
-   {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR066, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-
-   if (cmUnpkRgrCfgTransId(&transId, mBuf) != ROK) 
+   S32   count;
+   CMCHKUNPK(oduUnpackUInt8, &param->isSonIcicEnable, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numCellEdgeUEs, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numCellCentreUEs, mBuf);
+   for (count = 0; count < param->numCellEdgeUEs; count++)
    {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR067, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
+      CMCHKUNPK(cmUnpkLteRnti, &param->cellEdgeUe[count], mBuf);
    }
-
-   if ((SGetSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data **)&warningSiCfgReqInfo,
-            sizeof(RgrWarningSiCfgReqInfo))) != ROK) 
+   for (count = 0; count < param->numCellCentreUEs; count++)
    {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-            __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-            (ErrVal)ERGR068, (ErrVal)0, "Packing failed");
-#endif
-      SPutMsg(mBuf);
-      return RFAILED;
+      CMCHKUNPK(cmUnpkLteRnti, &param->cellCentreUe[count], mBuf);
    }
-
-
-   if (pst->selector == ODU_SELECTOR_LC)
+   for(count = 0; count < RGR_SCH_MAX_PA_PER_PRB; count ++)
    {
-      if (cmUnpkRgrWarningSiCfgReqInfo(pst, warningSiCfgReqInfo, mBuf) != ROK) 
-      {
-         SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)warningSiCfgReqInfo, 
-                          sizeof(RgrWarningSiCfgReqInfo));
-         SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-         SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-               __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-               (ErrVal)ERGR069, (ErrVal)0, "Packing failed");
-#endif
-         return RFAILED;
-      }
+      CMCHKUNPK(oduUnpackUInt32,(uint32_t *) &param->paLevelPerPrb[count], mBuf);
    }
-   SPutMsg(mBuf);
-
-   return ((*func)(pst, spId, transId, warningSiCfgReqInfo));
-} /* cmUnpkRgrWarningSiCfgReq */
-
-\f
+   return ROK;
+}
 /***********************************************************
 *
-*     Func : cmPkRgrWarningSiCfgReqInfo
+*     Func : cmPkRgrSonCfg
 *
 *
-*     Desc : Basic warning SI configuration/reconfiguration 
-*            info at RRM
+*     Desc : SON Configuration info for MAC
 *
 *
 *     Ret  : S16
 *
 *     Notes:
 *
-*     File  : 
+*     File  :
 *
 **********************************************************/
-S16 cmPkRgrWarningSiCfgReqInfo
+S16 cmPkRgrSonCfg
 (
-Pst *pst,
-RgrWarningSiCfgReqInfo *param,
+RgrSonCfg *param,
 Buffer *mBuf
 )
 {
-   MsgLen   msgLen;
-   uint32_t      count;
-   CmLList  *node, *prevNode;
-   RgrSegmentInfo   *pdu;
-
-   CMCHKPK(oduUnpackUInt8, param->emtcEnable, mBuf);
-
-   CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->siId, mBuf);
 
-   count = param->siPduLst.count;
-   node = param->siPduLst.last;
-   while (node) 
+   switch(param->cfgType)
    {
-      pdu = (RgrSegmentInfo *)node->node;
-      prevNode= node->prev;
-      if(NULLP != pdu)
-      {
-         if (SFndLenMsg(pdu->pdu, &msgLen) != ROK)
-            return RFAILED;
-         if (SCatMsg(mBuf, pdu->pdu, M1M2) != ROK)
-            return RFAILED;
-         /* The PDU is not Released. This has to be done by 
-          * the caller of the packing function  */
-         CMCHKPK(cmPkMsgLen, msgLen, mBuf);
-         SPutMsg(pdu->pdu);
-      }
-      cmLListDelFrm(&param->siPduLst, node);
-      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)node, sizeof(RgrSegmentInfo));
-      node= prevNode;
+      case RGR_SON_PRB_CFG :
+      CMCHKPK(cmPkRgrSonPrbCfg, &param->u.prbCfg, mBuf);
+      break;
+      default :
+      return RFAILED;
    }
-   CMCHKPK(oduUnpackUInt32, count, mBuf);
+   CMCHKPK(oduPackUInt32, param->cfgType, mBuf);
    return ROK;
 }
 
-\f
 /***********************************************************
 *
-*     Func : cmUnpkRgrWarningSiCfgReqInfo
+*     Func : cmUnpkRgrSon
 *
 *
-*     Desc : Unpack warning SI configuration info at SCH 
+*     Desc : SON configuration info for MAC
 *
 *
 *     Ret  : S16
 *
 *     Notes:
 *
-*     File  : 
+*     File  :
 *
 **********************************************************/
-S16 cmUnpkRgrWarningSiCfgReqInfo
+S16 cmUnpkRgrSonCfg
 (
-Pst *pst,
-RgrWarningSiCfgReqInfo *param,
-Buffer *mBuf
+RgrSonCfg   *param,
+Buffer      *mBuf
 )
 {
-   MsgLen   msgLen, totalMsgLen;
-   uint32_t      count, loopCnt;
-   Buffer   *pdu;
-   CmLList  *node;
-
 
-   cmLListInit(&param->siPduLst);
-   CMCHKUNPK(oduPackUInt32, &count, mBuf);
-   for (loopCnt=0; loopCnt<count; loopCnt++) 
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t *)&param->cfgType, mBuf);
+   switch(param->cfgType)
    {
-      if(SFndLenMsg(mBuf, &msgLen) != ROK)
-      {
-         return RFAILED;
-      } 
-
-      if(msgLen > 0)
-      { 
-         CMCHKUNPK(cmUnpkMsgLen, &msgLen, mBuf);
-         if (SFndLenMsg(mBuf, &totalMsgLen) != ROK)
-         { 
-            return RFAILED;
-         }   
-         if (SSegMsg(mBuf, totalMsgLen-msgLen, &pdu) != ROK)
-         {              
-            return RFAILED;
-         }   
-      }
-      else
+      case RGR_SON_PRB_CFG :
       {
+         CMCHKUNPK(cmUnpkRgrSonPrbCfg, &param->u.prbCfg, mBuf);
+         break;
+         default :
          return RFAILED;
       }
-      if ((SGetSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data **)&node,
-                  sizeof(CmLList))) != ROK)
-         return RFAILED;
-      node->node = (PTR)pdu;
-      cmLListAdd2Tail(&param->siPduLst, node);
    }
-
-   CMCHKUNPK(oduPackUInt8, &param->siId, mBuf);
-   CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
-   CMCHKPK(oduPackUInt8, &param->emtcEnable, mBuf);
-
    return ROK;
 }
 
 \f
 /***********************************************************
 *
-*    Func : cmPkRgrWarningSiStopReq
+*     Func : cmPkRgrRst
+*
+*
+*     Desc : UE RESET info for MAC
 *
-*    Desc : To stop the broadcast for SIB10, SIB11 and SIB12.
 *
 *     Ret  : S16
 *
 *     Notes:
 *
 *     File  : 
+*
 **********************************************************/
-S16 cmPkRgrWarningSiStopReq
+S16 cmPkRgrRst
 (
-Pst           *pst,
-SpId          spId,
-RgrCfgTransId transId,
-uint8_t            siId
+RgrRst *param,
+Buffer *mBuf
 )
 {
-   Buffer *mBuf = NULLP;
-
-
-   if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK)
-   {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-            __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-            (ErrVal)ERGR070, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-
-   CMCHKPK(oduUnpackUInt8, siId, mBuf);
-
-   if (cmPkRgrCfgTransId(&transId, mBuf) != ROK) 
-   {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR082, (ErrVal)0, "Packing failed");
-#endif
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
 
 
-   if (SPkS16(spId, mBuf) != ROK) 
-   {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-            __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-            (ErrVal)ERGR071, (ErrVal)0, "Packing failed");
-#endif
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
+   CMCHKPK(cmPkLteRnti, param->crnti, mBuf);
+   CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
+   return ROK;
+}
 
-   pst->event = (Event) EVTRGRWARNINGSISTOPREQ;
-   return (SPstTsk(pst,mBuf));
-}/*cmPkRgrWarningSiStopReq */
 
 \f
 /***********************************************************
 *
-*    Func : cmUnpkRgrWarningSiStopReq
+*     Func : cmUnpkRgrRst
+*
+*
+*     Desc : UE RESET info for MAC
 *
-*    Desc : To stop the broadcast for SIB10, SIB11 and SIB12.
 *
 *     Ret  : S16
 *
 *     Notes:
 *
 *     File  : 
+*
 **********************************************************/
-S16 cmUnpkRgrWarningSiStopReq
+S16 cmUnpkRgrRst
 (
-RgrWarningSiStopReq func,
-Pst *pst,
+RgrRst *param,
 Buffer *mBuf
 )
 {
-   SpId          spId;
-   uint8_t            siId;
-   RgrCfgTransId transId;
-
-
-  if (SUnpkS16(&spId, mBuf) != ROK)
-  {
-     SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-     SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-           __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-           (ErrVal)ERGR072, (ErrVal)0, "Packing failed");
-#endif
-     return RFAILED;
-  }
-
-    if (cmUnpkRgrCfgTransId(&transId, mBuf) != ROK) 
-   {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR083, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-   CMCHKUNPK(oduPackUInt8, &siId, mBuf);
 
-   SPutMsg(mBuf);
-
-   return ((*func)(pst, spId, transId, siId));
-} /*cmUnpkRgrWarningSiStopReq */
 
-\f
+   CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
+   CMCHKUNPK(cmUnpkLteRnti, &param->crnti, mBuf);
+   return ROK;
+}
+#ifdef LTE_ADV
 /***********************************************************
 *
-*     Func : cmPkRgrWarningSiCfgCfm
+*     Func : cmUnPkRgrSCellActDeactInfo
 *
 *
-*     Desc : Warning SI Configuration Confirm from MAC to RRM
+*     Desc : SCell Activation information of the UE
 *
 *
 *     Ret  : S16
@@ -8436,83 +7007,59 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrWarningSiCfgCfm
+static S16 cmUnPkRgrSCellActDeactInfo
 (
-Pst*          pst,
-SuId          suId,
-RgrCfgTransId transId,
-uint8_t            siId,
-uint8_t            status
+RgrSCellActDeactInfo *param,
+Buffer *mBuf
 )
 {
-   Buffer *mBuf = NULLP;
-
 
-   if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) 
-   {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR073, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
+   CMCHKUNPK(oduUnpackUInt8, &param->sCellIdx, mBuf);
+   return ROK;
+}
 
-   if (oduUnpackUInt8(status, mBuf) != ROK)
-   {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR074, (ErrVal)0, "Packing failed");
-#endif
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
+/***********************************************************
+*
+*     Func : cmUnPkRgrSCellActDeactEvnt
+*
+*
+*     Desc : SCell Activation Configuration structure to SCH
+*
+*
+*     Ret  : S16
+*
+*     Notes:
+*
+*     File  : 
+*
+**********************************************************/
+S16 cmUnPkRgrSCellActDeactEvnt
+(
+RgrSCellActDeactEvnt *param,
+Buffer *mBuf
+)
+{
 
-   if (oduUnpackUInt8(siId, mBuf) != ROK)
-   {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR075, (ErrVal)0, "Packing failed");
-#endif
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
+   uint8_t idx;
 
-   if (cmPkRgrCfgTransId(&transId, mBuf) != ROK) 
-   {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR076, (ErrVal)0, "Packing failed");
-#endif
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
+   CMCHKUNPK(cmUnpkLteRnti, &param->crnti, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numOfSCells, mBuf);
 
-   if (SPkS16(suId, mBuf) != ROK)
+   for(idx = 0; idx < param->numOfSCells;idx++)
    {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR077, (ErrVal)0, "Packing failed");
-#endif
-      SPutMsg(mBuf);
-      return RFAILED;
+      CMCHKUNPK(cmUnPkRgrSCellActDeactInfo, &param->sCellActDeactInfo[idx],mBuf);
    }
 
-   pst->event = (Event) EVTRGRWARNINGSICFGCFM;
-   return (SPstTsk(pst,mBuf));
-} /* cmPkRgrWarningSiCfgCfm */
+   return ROK;
+}
+
 
-\f
 /***********************************************************
 *
-*     Func : cmUnpkRgrwarningSiCfgCfm
+*     Func : cmPkRgrSCellActInfo
 *
 *
-*     Desc : Warning SI Configuration Confirm from MAC to RRM
+*     Desc : SCell Activation information of the UE
 *
 *
 *     Ret  : S16
@@ -8522,161 +7069,62 @@ uint8_t            status
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrWarningSiCfgCfm
+static S16 cmPkRgrSCellActDeactInfo
 (
-RgrWarningSiCfgCfm func,
-Pst *pst,
+RgrSCellActDeactInfo *param,
 Buffer *mBuf
 )
 {
-   SuId          suId;
-   uint8_t            siId;
-   RgrCfgTransId transId;
-   uint8_t            status;
-
-
-   if (SUnpkS16(&suId, mBuf) != ROK) 
-   {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-            __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-            (ErrVal)ERGR078, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-
-   if (cmUnpkRgrCfgTransId(&transId, mBuf) != ROK) 
-   {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-            __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-            (ErrVal)ERGR079, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
 
-   if (oduPackUInt8(&siId, mBuf) != ROK) 
-   {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-            __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-            (ErrVal)ERGR080, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
+   CMCHKPK(oduPackUInt8, param->sCellIdx, mBuf);
 
-   if (oduPackUInt8(&status, mBuf) != ROK) 
-   {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-            __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-            (ErrVal)ERGR081, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
-   SPutMsg(mBuf);
-   return ((*func)(pst, suId, transId, siId, status));
-}/* cmUnpkRgrwarningSiCfgCfm */
-#endif/*RGR_SI_SCH*/
+   return ROK;
+}
 
-/* LTE_ADV_FLAG_REMOVED_START */
 /***********************************************************
 *
-*     Func : cmPkRgrLoadInfReq
+*     Func : cmPkRgrSCellActDeactEvnt
 *
 *
-*     Desc : LOAD INF Configuration Request from RRM to MAC for
-*            configuring RNTP, ABS etc
+*     Desc : Basic Configuration structure at SCH
 *
 *
 *     Ret  : S16
 *
 *     Notes:
 *
-*     File  :
+*     File  : 
 *
 **********************************************************/
-S16 cmPkRgrLoadInfReq
+S16 cmPkRgrSCellActDeactEvnt
 (
-Pst* pst,
-SpId spId,
-RgrCfgTransId transId,
-RgrLoadInfReqInfo * loadInfReq
+RgrSCellActDeactEvnt *param,
+Buffer *mBuf
 )
 {
-   Buffer *mBuf = NULLP;
 
 
-   if (SGetMsg(pst->region, pst->pool, &mBuf) != ROK) 
+   S8 idx;
+   for(idx = param->numOfSCells - 1; idx >= 0; idx--)
    {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR045, (ErrVal)0, "Packing failed");
-#endif
-      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)loadInfReq, 
-                 sizeof(RgrLoadInfReqInfo));
-      return RFAILED;
-   }
-   if (cmPkRgrLoadInfReqInfo(loadInfReq, mBuf) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-            __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-            (ErrVal)ERGR046, (ErrVal)0, "Packing failed");
-#endif
-      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)loadInfReq, 
-                sizeof(RgrLoadInfReqInfo));
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
-   if (cmPkRgrCfgTransId(&transId, mBuf) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR047, (ErrVal)0, "Packing failed");
-#endif
-      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)loadInfReq, 
-               sizeof(RgrLoadInfReqInfo));
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
-   if (SPkS16(spId, mBuf) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR048, (ErrVal)0, "Packing failed");
-#endif
-      SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)loadInfReq, 
-               sizeof(RgrLoadInfReqInfo));
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
-   if (SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)loadInfReq, 
-               sizeof(RgrLoadInfReqInfo)) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-            __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-            (ErrVal)ERGR049, (ErrVal)0, "Packing failed");
-#endif
-      SPutMsg(mBuf);
-      return RFAILED;
+      CMCHKPK(cmPkRgrSCellActDeactInfo, &param->sCellActDeactInfo[(uint8_t)idx], mBuf);
    }
 
-   pst->event = (Event) EVTRGRLOADINFREQ;
-   return (SPstTsk(pst,mBuf));
+   CMCHKPK(oduPackUInt8, param->numOfSCells, mBuf);
+   CMCHKPK(cmPkLteRnti, param->crnti, mBuf);
+
+   return ROK;
 }
+
+
+#endif /* LTE_ADV */
 \f
 /***********************************************************
 *
-*     Func : cmUnpkRgrLoadInfReq
+*     Func : cmPkRgrCfgReqInfo
 *
 *
-*     Desc : LOAD INF Configuration Request from RRM to MAC for 
-*     configuring RNTP, ABS etc
+*     Desc : Basic RGR configuration/reconfiguration info at RRM
 *
 *
 *     Ret  : S16
@@ -8686,74 +7134,107 @@ RgrLoadInfReqInfo * loadInfReq
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrLoadInfReq
+S16 cmPkRgrCfgReqInfo
 (
-RgrLoadInfReq func,
-Pst *pst,
+RgrCfgReqInfo *param,
 Buffer *mBuf
 )
 {
-   SpId spId;
-   RgrCfgTransId transId;
-   RgrLoadInfReqInfo *loadInfReq;
-   
 
-   if (SUnpkS16(&spId, mBuf) != ROK) {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR050, (ErrVal)0, "Packing failed");
-#endif
-      return RFAILED;
-   }
 
-   if (cmUnpkRgrCfgTransId(&transId, mBuf) != ROK) {
-      SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-         __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-         (ErrVal)ERGR051, (ErrVal)0, "Packing failed");
+      switch(param->action) {
+         case RGR_SON_CFG:
+            CMCHKPK(cmPkRgrSonCfg, &param->u.sonCfg, mBuf);
+            break;
+         case RGR_RESET:
+            CMCHKPK(cmPkRgrRst, &param->u.rstInfo, mBuf);
+            break;
+         case RGR_DELETE:
+            CMCHKPK(cmPkRgrDel, &param->u.delInfo, mBuf);
+            break;
+         case RGR_RECONFIG:
+            CMCHKPK(cmPkRgrRecfg, &param->u.recfgInfo, mBuf);
+            break;
+         case SCH_CONFIG:
+            CMCHKPK(cmPkRgrCfg, &param->u.cfgInfo, mBuf);
+            break;
+#ifdef LTE_ADV
+         case RGR_SCELL_ACT:
+         case RGR_SCELL_DEACT:
+         case RGR_SCELL_READY:
+            CMCHKPK(cmPkRgrSCellActDeactEvnt, &param->u.sCellActDeactEvnt, mBuf);
+            break;
 #endif
-      return RFAILED;
-   }
+         default :
+            return RFAILED;
+      }
+   CMCHKPK(oduPackUInt8, param->action, mBuf);
+   return ROK;
+}
 
-   if ((SGetSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data **)&loadInfReq,
-            sizeof(RgrLoadInfReqInfo))) != ROK) {
-#if (ERRCLASS & ERRCLS_ADD_RES)
-      SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-            __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-            (ErrVal)ERGR052, (ErrVal)0, "Packing failed");
-#endif
-      SPutMsg(mBuf);
-      return RFAILED;
-   }
 
-   memset(loadInfReq, 0, sizeof(RgrLoadInfReqInfo));
+\f
+/***********************************************************
+*
+*     Func : cmUnpkRgrCfgReqInfo
+*
+*
+*     Desc : Basic RGR configuration/reconfiguration info at RRM
+*
+*
+*     Ret  : S16
+*
+*     Notes:
+*
+*     File  : 
+*
+**********************************************************/
+S16 cmUnpkRgrCfgReqInfo
+(
+RgrCfgReqInfo *param,
+Buffer *mBuf
+)
+{
+
 
-   if (pst->selector == ODU_SELECTOR_LC) 
-      if (cmUnpkRgrLoadInfReqInfo(loadInfReq, mBuf) != ROK) {
-         SPutSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data *)loadInfReq, 
-                          sizeof(RgrLoadInfReqInfo));
-         SPutMsg(mBuf);
-#if (ERRCLASS & ERRCLS_ADD_RES)
-         SLogError(pst->srcEnt, pst->srcInst, pst->srcProcId,
-               __FILE__, __LINE__, (ErrCls)ERRCLS_ADD_RES,
-               (ErrVal)ERGR053, (ErrVal)0, "Packing failed");
-#endif
-         return RFAILED;
+   CMCHKUNPK(oduUnpackUInt8, &param->action, mBuf);
+      switch(param->action) {
+         case SCH_CONFIG:
+            CMCHKUNPK(cmUnpkRgrCfg, &param->u.cfgInfo, mBuf);
+            break;
+         case RGR_RECONFIG:
+            CMCHKUNPK(cmUnpkRgrRecfg, &param->u.recfgInfo, mBuf);
+            break;
+         case RGR_DELETE:
+            CMCHKUNPK(cmUnpkRgrDel, &param->u.delInfo, mBuf);
+            break;
+         case RGR_RESET:
+            CMCHKUNPK(cmUnpkRgrRst, &param->u.rstInfo, mBuf);
+            break;
+         case RGR_SON_CFG:
+            CMCHKUNPK(cmUnpkRgrSonCfg, &param->u.sonCfg, mBuf);
+            break;
+#ifdef LTE_ADV
+         case RGR_SCELL_ACT:
+         case RGR_SCELL_DEACT:
+         case RGR_SCELL_READY:
+            CMCHKUNPK(cmUnPkRgrSCellActDeactEvnt, &param->u.sCellActDeactEvnt, mBuf);
+            break;
+#endif /* LTE_ADV */
+         default :
+            return RFAILED;
       }
-   SPutMsg(mBuf);
-
-   return ((*func)(pst, spId, transId, loadInfReq));
+   return ROK;
 }
-
+#ifdef RGR_V1
+/* rgr_c_001.main_5: ccpu00112398: Added periodicBSR-timer and
+ * retxBSR-timer */
 /***********************************************************
 *
-*     Func : cmPkRgrLoadInfReqInfo
+*     Func : cmPkRgrUeBsrTmrCfg
 *
 *
-*     Desc : Basic LOAD INF configuration/reconfiguration info at RRM
+*     Desc : BSR timer configuration per UE
 *
 *
 *     Ret  : S16
@@ -8763,26 +7244,26 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmPkRgrLoadInfReqInfo
+S16 cmPkRgrUeBsrTmrCfg
 (
-RgrLoadInfReqInfo *param,
+RgrUeBsrTmrCfg *param,
 Buffer *mBuf
 )
 {
 
-   CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->rgrCcPHighStartRb, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->rgrCcPHighEndRb, mBuf);
 
+   CMCHKPK(oduPackUInt16, param->prdBsrTmr, mBuf);
+   CMCHKPK(oduPackUInt16, param->retxBsrTmr, mBuf);
+   CMCHKPK(oduPackUInt8, param->isPrdBsrTmrPres, mBuf);
    return ROK;
 }
-\f
+
 /***********************************************************
 *
-*     Func : cmUnpkRgrLoadInfReqInfo
+*     Func : cmUnpkRgrUeBsrTmrCfg
 *
 *
-*     Desc : Basic LOAD INF configuration/reconfiguration info at RRM
+*     Desc : BSR timer configuration per UE
 *
 *
 *     Ret  : S16
@@ -8792,20 +7273,20 @@ Buffer *mBuf
 *     File  : 
 *
 **********************************************************/
-S16 cmUnpkRgrLoadInfReqInfo
+S16 cmUnpkRgrUeBsrTmrCfg
 (
-RgrLoadInfReqInfo *param,
+RgrUeBsrTmrCfg *param,
 Buffer *mBuf
 )
 {
 
-   CMCHKUNPK(oduPackUInt8, &param->rgrCcPHighEndRb, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->rgrCcPHighStartRb, mBuf);
-   CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
 
+   CMCHKUNPK(oduUnpackUInt8, &param->isPrdBsrTmrPres, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->retxBsrTmr, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->prdBsrTmr, mBuf);
    return ROK;
 }
-/* LTE_ADV_FLAG_REMOVED_END */
+#endif /* RGR_V1 */
 
 /*rgr_c_001.main_9 ccpu00117452 - MOD - Changed macro name from
    RGR_RRM_DLPWR_CNTRL to RGR_CQI_REPT */
@@ -8833,7 +7314,7 @@ Buffer *mBuf
 )
 {
 
-   CMCHKPK(oduUnpackUInt8, param->numColltdCqiRept, mBuf);
+   CMCHKPK(oduPackUInt8, param->numColltdCqiRept, mBuf);
 
    return ROK;
 }
@@ -8862,7 +7343,7 @@ Buffer *mBuf
 )
 {
 
-   CMCHKUNPK(oduPackUInt8, &param->numColltdCqiRept, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numColltdCqiRept, mBuf);
 
    return ROK;
 }
@@ -9098,7 +7579,7 @@ Buffer *mBuf
    {
       CMCHKPK(cmPkRgrUeCqiRept, &param->cqiRept[idx], mBuf);
    }
-   CMCHKPK(oduUnpackUInt8, param->numCqiRept, mBuf);
+   CMCHKPK(oduPackUInt8, param->numCqiRept, mBuf);
 
    return ROK;
 } /* cmPkRgrUeCqiInfo */
@@ -9127,7 +7608,7 @@ Buffer *mBuf
 
    uint8_t  idx;
 
-   CMCHKUNPK(oduPackUInt8, &param->numCqiRept, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numCqiRept, mBuf);
    for (idx = 0; idx < param->numCqiRept; idx++)
    {
       CMCHKUNPK(cmUnpkRgrUeCqiRept, &param->cqiRept[idx], mBuf);
@@ -9158,9 +7639,9 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt8, param->cqi[0], mBuf);
-   CMCHKPK(oduUnpackUInt8, param->cqi[1], mBuf);
-   CMCHKPK(oduUnpackUInt8, param->subBandIdx, mBuf);
+   CMCHKPK(oduPackUInt8, param->cqi[0], mBuf);
+   CMCHKPK(oduPackUInt8, param->cqi[1], mBuf);
+   CMCHKPK(oduPackUInt8, param->subBandIdx, mBuf);
 
    return ROK;
 } /* cmPkRgrSubBandCqiInfo */
@@ -9190,15 +7671,15 @@ Buffer *mBuf
    uint8_t count;
 
 
-   CMCHKPK(oduUnpackUInt8, param->cqi[0], mBuf);
-   CMCHKPK(oduUnpackUInt8, param->cqi[1], mBuf);
-   CMCHKPK(oduUnpackUInt8, param->cqiMode, mBuf);
+   CMCHKPK(oduPackUInt8, param->cqi[0], mBuf);
+   CMCHKPK(oduPackUInt8, param->cqi[1], mBuf);
+   CMCHKPK(oduPackUInt8, param->cqiMode, mBuf);
    for (idx = param->numSubBand - 1; idx >= 0; idx--)
    {
       count = idx;
       CMCHKPK(cmPkRgrSubBandCqiInfo, &param->sbCqiInfo[count], mBuf);
    }
-   CMCHKPK(oduUnpackUInt8, param->numSubBand, mBuf);
+   CMCHKPK(oduPackUInt8, param->numSubBand, mBuf);
    return ROK;
 } /* cmPkRgrUeCqiRept */
 
@@ -9224,9 +7705,9 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->subBandIdx, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->cqi[1], mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->cqi[0], mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->subBandIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->cqi[1], mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->cqi[0], mBuf);
 
    return ROK;
 } /* cmUnpkRgrSubBandCqiInfo*/
@@ -9254,14 +7735,14 @@ Buffer *mBuf
 {
    uint8_t idx;
 
-   CMCHKUNPK(oduPackUInt8, &param->numSubBand, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numSubBand, mBuf);
    for (idx = 0; idx < param->numSubBand; idx++)
    {
       CMCHKUNPK(cmUnpkRgrSubBandCqiInfo, &param->sbCqiInfo[idx], mBuf);
    }
-   CMCHKUNPK(oduPackUInt8, &param->cqiMode, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->cqi[1], mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->cqi[0], mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->cqiMode, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->cqi[1], mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->cqi[0], mBuf);
 
    return ROK;
 } /* cmUnpkRgrUeCqiRept */
@@ -9437,12 +7918,12 @@ Buffer *mBuf
    uint8_t                     idx;
 
    CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->bw, mBuf);
+   CMCHKPK(oduPackUInt16, param->bw, mBuf);
    if(RGR_ABS == param->type)
    {
       for(idx = 0; idx < RGR_ABS_PATTERN_LEN; idx++)
       {
-         CMCHKPK(oduUnpackUInt32, param->u.absLoadInfo[idx], mBuf);
+         CMCHKPK(oduPackUInt32, param->u.absLoadInfo[idx], mBuf);
       }
    }
    else
@@ -9450,7 +7931,7 @@ Buffer *mBuf
       CMCHKPK(cmPkTknStrOSXL, &param->u.rntpInfo, mBuf);
    }
 
-   CMCHKPK(oduUnpackUInt32, param->type, mBuf);
+   CMCHKPK(oduPackUInt32, param->type, mBuf);
 
    return ROK;
 }
@@ -9483,12 +7964,12 @@ Buffer *mBuf
    uint16_t         ndx;
 
 
-   CMCHKUNPK(oduPackUInt32, &param->type, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, &param->type, mBuf);
    if(RGR_ABS == param->type)
    {
       for(idx = RGR_ABS_PATTERN_LEN -1 ; idx >= 0; idx--)
       {
-         CMCHKUNPK(oduPackUInt32, &param->u.absLoadInfo[(uint8_t)idx], mBuf);
+         CMCHKUNPK(oduUnpackUInt32, &param->u.absLoadInfo[(uint8_t)idx], mBuf);
       }
    }
    else
@@ -9497,12 +7978,12 @@ Buffer *mBuf
       /* dsfr_pal_fixes ** 21-March-2013 ** SKS ** Start */
       tknStr = &param->u.rntpInfo;
 
-      CMCHKUNPK(oduPackUInt8, &tknStr->pres, mBuf);
+      CMCHKUNPK(oduUnpackUInt8, &tknStr->pres, mBuf);
 
       if(tknStr->pres)
       {
          /* Length */
-         CMCHKUNPK(oduPackUInt16, &tknStr->len, mBuf);
+         CMCHKUNPK(oduUnpackUInt16, &tknStr->len, mBuf);
 
          if ((SGetSBufNewForDebug(__FILE__,__FUNCTION__,__LINE__,pst->region, pst->pool, (Data **)&tknStr->val,tknStr->len)) != ROK) {
 #if (ERRCLASS & ERRCLS_ADD_RES)
@@ -9517,14 +7998,14 @@ Buffer *mBuf
          /* Value */
          for (ndx = 1; ndx <= tknStr->len; ndx++)
          {
-            CMCHKUNPK(oduPackUInt8, &tknStr->val[tknStr->len - ndx], mBuf);
+            CMCHKUNPK(oduUnpackUInt8, &tknStr->val[tknStr->len - ndx], mBuf);
          }
       }
    }
    /* dsfr_pal_fixes ** 21-March-2013 ** SKS ** End */
 
    /* dsfr_pal_fixes ** 22-March-2013 ** SKS */
-   CMCHKUNPK(oduPackUInt16, &param->bw, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->bw, mBuf);
 
    CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
 
@@ -9558,9 +8039,9 @@ Buffer *mBuf
 
    if(param->pAPrsnt)
    {
-      CMCHKPK(oduUnpackUInt32, param->pA, mBuf);
+      CMCHKPK(oduPackUInt32, param->pA, mBuf);
    }
-   CMCHKPK(oduUnpackUInt8, param->pAPrsnt, mBuf);
+   CMCHKPK(oduPackUInt8, param->pAPrsnt, mBuf);
 
    return ROK;
 }
@@ -9590,10 +8071,10 @@ Buffer *mBuf
 {
    uint32_t tmpEnum;
 
-   CMCHKUNPK(oduPackUInt8, (uint8_t *)&param->pAPrsnt, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, (uint8_t *)&param->pAPrsnt, mBuf);
    if (param->pAPrsnt)
    {
-      CMCHKUNPK(oduPackUInt32, (uint32_t*)&tmpEnum, mBuf);
+      CMCHKUNPK(oduUnpackUInt32, (uint32_t*)&tmpEnum, mBuf);
       param->pA = (RgrUeDlPwrCntrlPaCfg) tmpEnum;
    }
 
@@ -9682,10 +8163,10 @@ RgrUeUlPwrDedSCellCfg *param,
 Buffer *mBuf
 )
 {
-   CMCHKPK(oduUnpackUInt8, param->pSRSOffset, mBuf);
+   CMCHKPK(oduPackUInt8, param->pSRSOffset, mBuf);
    CMCHKPK(SPkS8, param->p0UePusch, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isDeltaMCSEnabled, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isAccumulated, mBuf);
+   CMCHKPK(oduPackUInt8, param->isDeltaMCSEnabled, mBuf);
+   CMCHKPK(oduPackUInt8, param->isAccumulated, mBuf);
 
    return ROK;
 }
@@ -9713,10 +8194,10 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->isAccumulated, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->isDeltaMCSEnabled, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isAccumulated, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isDeltaMCSEnabled, mBuf);
    CMCHKUNPK(SUnpkS8, &param->p0UePusch, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->pSRSOffset, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->pSRSOffset, mBuf);
    return ROK;
 }
 
@@ -9745,7 +8226,7 @@ Buffer *mBuf
 )
 {
    CMCHKPK(cmPkRgrUeUlPwrDedSCellCfg,&param->ueSCellUlDedPwrCfg, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->isUlCaEnabled, mBuf);
+   CMCHKPK(oduPackUInt8, param->isUlCaEnabled, mBuf);
    CMCHKPK(cmPkRgrUeTxModeCfg, &param->txMode, mBuf);
 #ifdef TFU_UPGRADE
 /*rgr_c_001.main_9 ADD PDSCH ded cfg*/
@@ -9753,8 +8234,8 @@ Buffer *mBuf
 #endif
    CMCHKPK(cmPkRgrUeDlCqiCfg,&param->ueSCellDlCqiCfg, mBuf);
    CMCHKPK(cmPkTknUInt32, &param->sCellDeActTmr, mBuf);
-   CMCHKPK(oduUnpackUInt16, param->sCellId, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->sCellIdx, mBuf);
+   CMCHKPK(oduPackUInt16, param->sCellId, mBuf);
+   CMCHKPK(oduPackUInt8, param->sCellIdx, mBuf);
 
    return ROK;
 }
@@ -9788,9 +8269,9 @@ Buffer *mBuf
       CMCHKPK(cmPkRgrUeSecCellCfg, &param->ueSCellDedCfg[(uint8_t)idx],mBuf);
    }
 
-   CMCHKPK(oduUnpackUInt8, param->numSCells, mBuf);
+   CMCHKPK(oduPackUInt8, param->numSCells, mBuf);
 
-   CMCHKPK(oduUnpackUInt8, param->useExtBSRSizes, mBuf);
+   CMCHKPK(oduPackUInt8, param->useExtBSRSizes, mBuf);
 
    return ROK;
 }
@@ -9817,15 +8298,15 @@ RgrUeSecCellCfg *param,
 Buffer *mBuf
 )
 {
-   CMCHKUNPK(oduPackUInt8, &param->sCellIdx, mBuf);
-   CMCHKUNPK(oduPackUInt16, &param->sCellId, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->sCellIdx, mBuf);
+   CMCHKUNPK(oduUnpackUInt16, &param->sCellId, mBuf);
    CMCHKUNPK(cmUnpkTknUInt32, &param->sCellDeActTmr, mBuf);
    CMCHKUNPK(cmUnpkRgrUeDlCqiCfg, &param->ueSCellDlCqiCfg, mBuf);
 #ifdef TFU_UPGRADE
    CMCHKUNPK(cmUnpkRgrUePdschDedCfg, &param->uePdschDedCfg, mBuf);
 #endif
    CMCHKUNPK(cmUnpkRgrUeTxModeCfg, &param->txMode, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->isUlCaEnabled, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->isUlCaEnabled, mBuf);
    CMCHKUNPK(cmUnpkRgrUeUlPwrDedSCellCfg, &param->ueSCellUlDedPwrCfg, mBuf);
 
    return ROK;
@@ -9857,8 +8338,8 @@ Buffer *mBuf
 {
    uint8_t idx;
 
-   CMCHKUNPK(oduPackUInt8, &param->useExtBSRSizes, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->numSCells, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->useExtBSRSizes, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->numSCells, mBuf);
 
    for(idx = 0; idx < param->numSCells;idx++)
    {
@@ -9895,35 +8376,35 @@ Buffer *mBuf
    { 
       for(idx = param->u.format1Bcs.sCellAckN1ResTb2Count - 1; idx >=0 ;idx--)
       {
-         CMCHKPK(oduUnpackUInt16, param->u.format1Bcs.sCellAckN1ResTb2[(uint8_t)idx], mBuf);
+         CMCHKPK(oduPackUInt16, param->u.format1Bcs.sCellAckN1ResTb2[(uint8_t)idx], mBuf);
       }
 
-      CMCHKPK(oduUnpackUInt8, param->u.format1Bcs.sCellAckN1ResTb2Count, mBuf);
+      CMCHKPK(oduPackUInt8, param->u.format1Bcs.sCellAckN1ResTb2Count, mBuf);
 
       for(idx = param->u.format1Bcs.sCellAckN1ResTb1Count - 1; idx >=0 ;idx--)
       {
-         CMCHKPK(oduUnpackUInt16, param->u.format1Bcs.sCellAckN1ResTb1[(uint8_t)idx], mBuf);
+         CMCHKPK(oduPackUInt16, param->u.format1Bcs.sCellAckN1ResTb1[(uint8_t)idx], mBuf);
       }
 
-      CMCHKPK(oduUnpackUInt8, param->u.format1Bcs.sCellAckN1ResTb1Count, mBuf);
+      CMCHKPK(oduPackUInt8, param->u.format1Bcs.sCellAckN1ResTb1Count, mBuf);
    }
    else
    {
       for(idx = param->u.format3.sCellAckN3ResAntP1Count - 1; idx >=0 ;idx--)
       {
-         CMCHKPK(oduUnpackUInt16, param->u.format3.sCellAckN3ResAntP1[(uint8_t)idx], mBuf);
+         CMCHKPK(oduPackUInt16, param->u.format3.sCellAckN3ResAntP1[(uint8_t)idx], mBuf);
       }
 
-      CMCHKPK(oduUnpackUInt8, param->u.format3.sCellAckN3ResAntP1Count, mBuf);
+      CMCHKPK(oduPackUInt8, param->u.format3.sCellAckN3ResAntP1Count, mBuf);
 
       for(idx = param->u.format3.sCellAckN3ResAntP0Count- 1; idx >=0 ;idx--)
       {
-         CMCHKPK(oduUnpackUInt16, param->u.format3.sCellAckN3ResAntP0[(uint8_t)idx], mBuf);
+         CMCHKPK(oduPackUInt16, param->u.format3.sCellAckN3ResAntP0[(uint8_t)idx], mBuf);
       }
 
-      CMCHKPK(oduUnpackUInt8, param->u.format3.sCellAckN3ResAntP0Count, mBuf);
+      CMCHKPK(oduPackUInt8, param->u.format3.sCellAckN3ResAntP0Count, mBuf);
    }
-   CMCHKPK(oduUnpackUInt32, param->pucchFormatType, mBuf);
+   CMCHKPK(oduPackUInt32, param->pucchFormatType, mBuf);
 
    return ROK;
 }
@@ -9952,38 +8433,38 @@ Buffer *mBuf
    uint8_t idx;
 
 
-   CMCHKUNPK(oduPackUInt32, (uint32_t*)&param->pucchFormatType, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, (uint32_t*)&param->pucchFormatType, mBuf);
    //if (param->pucchFormatType == RG_SCH_UCI_FORMAT1B_CS)
    if (param->pucchFormatType == RG_SCH_UCI_FORMAT1B_CS || param->pucchFormatType == RG_SCH_UCI_FORMAT1A_1B)
    {
-      CMCHKUNPK(oduPackUInt8, &param->u.format1Bcs.sCellAckN1ResTb1Count, mBuf);
+      CMCHKUNPK(oduUnpackUInt8, &param->u.format1Bcs.sCellAckN1ResTb1Count, mBuf);
 
       for(idx = 0; idx < param->u.format1Bcs.sCellAckN1ResTb1Count; idx++)
       {
-         CMCHKUNPK(oduPackUInt16, &param->u.format1Bcs.sCellAckN1ResTb1[idx], mBuf);
+         CMCHKUNPK(oduUnpackUInt16, &param->u.format1Bcs.sCellAckN1ResTb1[idx], mBuf);
       }
 
-      CMCHKUNPK(oduPackUInt8, &param->u.format1Bcs.sCellAckN1ResTb2Count, mBuf);
+      CMCHKUNPK(oduUnpackUInt8, &param->u.format1Bcs.sCellAckN1ResTb2Count, mBuf);
 
       for(idx = 0; idx < param->u.format1Bcs.sCellAckN1ResTb2Count; idx++)
       {
-         CMCHKUNPK(oduPackUInt16, &param->u.format1Bcs.sCellAckN1ResTb2[idx], mBuf);
+         CMCHKUNPK(oduUnpackUInt16, &param->u.format1Bcs.sCellAckN1ResTb2[idx], mBuf);
       }
    }
    else
    {
-      CMCHKUNPK(oduPackUInt8, &param->u.format3.sCellAckN3ResAntP0Count, mBuf);
+      CMCHKUNPK(oduUnpackUInt8, &param->u.format3.sCellAckN3ResAntP0Count, mBuf);
 
       for(idx = 0; idx < param->u.format3.sCellAckN3ResAntP0Count; idx++)
       {
-         CMCHKUNPK(oduPackUInt16, &param->u.format3.sCellAckN3ResAntP0[idx], mBuf);
+         CMCHKUNPK(oduUnpackUInt16, &param->u.format3.sCellAckN3ResAntP0[idx], mBuf);
       }
 
-      CMCHKUNPK(oduPackUInt8, &param->u.format3.sCellAckN3ResAntP1Count, mBuf);
+      CMCHKUNPK(oduUnpackUInt8, &param->u.format3.sCellAckN3ResAntP1Count, mBuf);
 
       for(idx = 0; idx < param->u.format3.sCellAckN3ResAntP1Count; idx++)
       {
-         CMCHKUNPK(oduPackUInt16, &param->u.format3.sCellAckN3ResAntP1[idx], mBuf);
+         CMCHKUNPK(oduUnpackUInt16, &param->u.format3.sCellAckN3ResAntP1[idx], mBuf);
       }
 
    }
@@ -10163,7 +8644,7 @@ Buffer *mBuf
 
    CMCHKPK(cmPkLteCellId, param->cellId, mBuf);
    CMCHKPK(cmPkLteRnti, param->crnti, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->status, mBuf);
+   CMCHKPK(oduPackUInt8, param->status, mBuf);
 
    return ROK;
 }
@@ -10189,7 +8670,7 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->status, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->status, mBuf);
    CMCHKUNPK(cmUnpkLteRnti, &param->crnti, mBuf);
    CMCHKUNPK(cmUnpkLteCellId, &param->cellId, mBuf);
 
@@ -10220,8 +8701,8 @@ Buffer *mBuf
 {
 
 
-   CMCHKPK(oduUnpackUInt8, param->minUlResNonCsg, mBuf);
-   CMCHKPK(oduUnpackUInt8, param->minDlResNonCsg, mBuf);
+   CMCHKPK(oduPackUInt8, param->minUlResNonCsg, mBuf);
+   CMCHKPK(oduPackUInt8, param->minDlResNonCsg, mBuf);
 
    return ROK;
 }
@@ -10248,8 +8729,8 @@ Buffer *mBuf
 {
 
 
-   CMCHKUNPK(oduPackUInt8, &param->minDlResNonCsg, mBuf);
-   CMCHKUNPK(oduPackUInt8, &param->minUlResNonCsg, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->minDlResNonCsg, mBuf);
+   CMCHKUNPK(oduUnpackUInt8, &param->minUlResNonCsg, mBuf);
 
    return ROK;
 }
@@ -10278,16 +8759,16 @@ Buffer *mBuf
    switch(param->cmdType)
    {
       case RGR_CNTRL_CMD_RACH_OVRLD:
-         CMCHKUNPK(oduUnpackUInt8, param->cmdDesc.rachOvrLd.backOffVal, mBuf);
-         CMCHKUNPK(oduUnpackUInt8, param->cmdDesc.rachOvrLd.backOffEnb, mBuf);
+         CMCHKUNPK(oduPackUInt8, param->cmdDesc.rachOvrLd.backOffVal, mBuf);
+         CMCHKUNPK(oduPackUInt8, param->cmdDesc.rachOvrLd.backOffEnb, mBuf);
          break;
       case RGR_CNTRL_CMD_CPU_OVRLD:
-         CMCHKUNPK(oduUnpackUInt8, param->cmdDesc.cpuOvrLd.instruction, mBuf);
+         CMCHKUNPK(oduPackUInt8, param->cmdDesc.cpuOvrLd.instruction, mBuf);
          break;
       default:
          break;
    }
-   CMCHKUNPK(oduUnpackUInt32, param->cmdType, mBuf);
+   CMCHKUNPK(oduPackUInt32, param->cmdType, mBuf);
 
    return ROK;
 }
@@ -10314,16 +8795,16 @@ Buffer *mBuf
    uint32_t tmpEnum;
 
 
-   CMCHKUNPK(oduPackUInt32, &tmpEnum, mBuf);
+   CMCHKUNPK(oduUnpackUInt32, &tmpEnum, mBuf);
    param->cmdType = (RgrCellCntrlCmdType) tmpEnum;
    switch(param->cmdType)
    {
       case RGR_CNTRL_CMD_RACH_OVRLD:
-         CMCHKUNPK(oduPackUInt8, &param->cmdDesc.rachOvrLd.backOffEnb, mBuf);
-         CMCHKUNPK(oduPackUInt8, &param->cmdDesc.rachOvrLd.backOffVal, mBuf);
+         CMCHKUNPK(oduUnpackUInt8, &param->cmdDesc.rachOvrLd.backOffEnb, mBuf);
+         CMCHKUNPK(oduUnpackUInt8, &param->cmdDesc.rachOvrLd.backOffVal, mBuf);
          break;
       case RGR_CNTRL_CMD_CPU_OVRLD:
-         CMCHKUNPK(oduPackUInt8, &param->cmdDesc.cpuOvrLd.instruction, mBuf);
+         CMCHKUNPK(oduUnpackUInt8, &param->cmdDesc.cpuOvrLd.instruction, mBuf);
          break;
       default:
          break;