CmLteRnti rnti; /*!< Temporary CRNTI */
U8 nmbLch; /*!< Number of logical channels scheduled */
RlcMacLchSta lchSta[RGU_MAX_LC]; /*!< Scheduled info of logical channels */
-}RlcMacSchedRep;
+}RlcMacSchedRepInfo;
/* UL Data i.e. RLC PDU info from RLC to MAC */
typedef struct rlcMacPduInfo
typedef S16 (*RguDDatReq) ARGS((
Pst* pst,
SpId spId,
- RguDDatReqInfo * datReq));
+ RguDDatReqInfo *datReq));
+
+typedef uint16_t (*RlcMacDlData) ARGS((
+ Pst* pst,
+ SpId spId,
+ RlcMacData *dlData));
/** @brief Data Indication from MAC to RLC to
* forward the data received for common channels */
typedef S16 (*RguCDatInd) ARGS((
typedef S16 (*RguDDatInd) ARGS((
Pst* pst,
SuId suId,
- RguDDatIndInfo * datInd));
+ RguDDatIndInfo *datInd));
+
+typedef S16 (*RlcMacUlData) ARGS((
+ Pst* pst,
+ SuId suId,
+ RlcMacData *ulData));
/** @brief Status Response from RLC to MAC to
* inform the BO report for common channels */
typedef S16 (*RguCStaRsp) ARGS((
Pst* pst,
SpId spId,
RguDStaRspInfo * staRsp));
+
+typedef uint16_t (*RlcMacBoStatus) ARGS((
+ Pst* pst,
+ SpId spId,
+ RlcMacBOStatus *boStatus));
+
/** @brief Status Indication from MAC to RLC
* as a response to the staRsp primitive from RLC */
typedef S16 (*RguCStaInd) ARGS((
typedef S16 (*RguDStaInd) ARGS((
Pst* pst,
SuId suId,
- RguDStaIndInfo * staInd));
+ RguDStaIndInfo * staInd));
+
+typedef uint16_t (*RlcMacSchedRep) ARGS((
+ Pst* pst,
+ SuId suId,
+ RlcMacSchedRepInfo *schRep));
typedef S16 (*RguFlowCntrlIndInfo) ARGS((
Pst *pst,
* @return ROK/RFAILED
*/
EXTERN S16 RgUiRguDDatReq ARGS((Pst* pst,SpId spId,RguDDatReqInfo *datReq));
+
+EXTERN uint16_t MacRlcProcDlData(Pst* pst, SpId spId, RlcMacData *dlData);
+
/** @brief Data Indication from MAC to RLC to
* forward the data received for common channels
* @param pst Pointer to the post structure.
* @return ROK/RFAILED
*/
EXTERN S16 RgUiRguDStaRsp ARGS((Pst* pst,SpId spId,RguDStaRspInfo *staRsp));
+
+EXTERN uint16_t MacRlcProcBOStatus(Pst* pst, SpId spId, RlcMacBOStatus* boStatus);
+
/** @brief Status Indication from MAC to RLC
* as a response to the staRsp primitive from RLC.
* @param pst Pointer to the post structure.
/**@brief Primitive invoked from MAC to RLC to
* inform scheduling result for logical channels */
-EXTERN S16 RlcMacProcSchedRep ARGS((
+EXTERN uint16_t RlcMacProcSchedRep ARGS((
Pst* pst,
SuId suId,
- RlcMacSchedRep *schRep
+ RlcMacSchedRepInfo *schRep
));
/** @brief Status Indication from MAC to RLC
* as a response to the staRsp primitive from RLC.
));
/** @brief Request from RLC to MAC for forwarding SDUs on
* dedicated channel for transmission */
-EXTERN S16 packSendDlData ARGS((
+EXTERN uint16_t packDlData ARGS((
Pst* pst,
SpId spId,
RlcMacData * datReq
));
/** @brief Request from RLC to MAC for forwarding SDUs on
* dedicated channel for transmission */
-EXTERN S16 unpackSendDlData ARGS((
- RguDDatReq func,
+EXTERN S16 unpackDlData ARGS((
+ RlcMacDlData func,
Pst* pst,
Buffer *mBuf
));
/** @brief Data Indication from MAC to RLC to
* forward the data received for dedicated channels*/
EXTERN S16 unpackRcvdUlData ARGS((
- RguDDatInd func,
+ RlcMacUlData func,
Pst* pst,
Buffer *mBuf
));
));
/** @brief Primitive invoked from RLC to MAC to
* inform the BO report for dedicated channels*/
-EXTERN S16 packSendBOStatus ARGS((
+EXTERN uint16_t packBOStatus ARGS((
Pst* pst,
SpId spId,
RlcMacBOStatus* boStatus
));
/** @brief Primitive invoked from RLC to MAC to
* inform the BO report for dedicated channels*/
-EXTERN S16 unpackSendBOStatus ARGS((
- RguDStaRsp func,
+EXTERN uint16_t unpackBOStatus ARGS((
+ RlcMacBoStatus func,
Pst* pst,
Buffer *mBuf
));
EXTERN S16 packSchedRep ARGS((
Pst* pst,
SuId suId,
- RlcMacSchedRep * staInd
+ RlcMacSchedRepInfo *staInd
));
EXTERN S16 cmPkRguFlowCntrlInfo ARGS((
RguFlowCntrlInd *param,
* Informs RLC of the totalBufferSize and Timing Info
* for the transmission on dedicated channels. */
EXTERN S16 unpackSchedRep ARGS((
- RguDStaInd func,
+ RlcMacSchedRep func,
Pst* pst,
Buffer *mBuf
));
Buffer *mBuf
));
EXTERN S16 packSchedRepInfo ARGS((
- RlcMacSchedRep *param,
+ RlcMacSchedRepInfo *param,
Buffer *mBuf
));
EXTERN S16 unpackSchedRepInfo ARGS((
- RlcMacSchedRep *param,
+ RlcMacSchedRepInfo *param,
Buffer *mBuf
));