1 /*******************************************************************************
2 ################################################################################
3 # Copyright (c) [2017-2019] [Radisys] #
5 # Licensed under the Apache License, Version 2.0 (the "License"); #
6 # you may not use this file except in compliance with the License. #
7 # You may obtain a copy of the License at #
9 # http://www.apache.org/licenses/LICENSE-2.0 #
11 # Unless required by applicable law or agreed to in writing, software #
12 # distributed under the License is distributed on an "AS IS" BASIS, #
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
14 # See the License for the specific language governing permissions and #
15 # limitations under the License. #
16 ################################################################################
17 *******************************************************************************/
19 /**********************************************************************
20 Name: Upper Layer Interface
24 Desc: Structures, variables and typedefs required by
29 *********************************************************************21*/
40 @brief Structure declarations and definitions for RGU interface.
43 /***********************************************************************
44 typedefs and data structures
45 ***********************************************************************/
48 * @brief PDU information given on a logical channel.
50 typedef struct rguPduInfo
52 U8 numPdu; /*!< Number of PDUs */
53 Buffer *mBuf[RGU_MAX_PDU]; /*!< numPdu data buffers */
58 * @brief Buffer Occupancy Report for dedicated logical channel.
60 typedef struct rguDBoReport
62 S32 bo; /*!< Buffer occupancy reported by RLC */
64 U16 estRlcHdrSz; /*!< Estimated RLC header size */
65 Bool staPduPrsnt; /*!< Indicates whether the BO includes
66 a status PDU as well */
68 U32 staPduBo; /*!< Indicates the Status PDU BO.
69 This is included in bo */
74 * @brief DatReq from RLC to MAC for Common Channels (BCCH, PCCH and CCCH).
76 typedef struct rguCDatReqInfo
78 CmLteCellId cellId; /*!< CELL ID */
79 CmLteLcId lcId; /*!< Logical channel ID */
80 CmLteLcType lcType; /*!< Logical channel Type */
81 U32 transId; /*!< Transaction ID */
83 U8 pnb; /*Paging narrowBand on which UE performs Paging*/
86 CmLteTimingInfo timeToTx; /*!< Actual time when PHY transmits
87 this, applicable to BCCH and PCCH only */
88 CmLteRnti rnti; /*!< Temporary CRNTI:Applicable for CCCH. */
90 Buffer *pdu; /*!< PDU to be transmitted */
93 * @brief DatReq Information of a logical channel.
95 typedef struct rguLchDatReq
97 CmLteLcId lcId; /*!< Logical channel ID */
98 RguDBoReport boReport; /*!< BO for the logical channel */
99 RguPduInfo pdu; /*!< PDU to be transmitted*/
102 Bool freeBuff; /*!< TRUE if Buffer is to be freed by MAC
103 It is set for UM bearer*/
107 /*rgu_x_001.main_3 - ADD - L2M Support */
110 * @brief Structure to store logical channels to SN mapping */
111 typedef struct rguLchmapInfo
113 CmLteLcId lChId; /*!< Logical channel Id */
114 U16 snList[RGU_MAX_LC]; /*!< Set of sequence numbers */
117 * @brief Sequence Number mapping info per TB
119 typedef struct rguSnMapInfo
121 U32 tbId; /*!< TB id for which sn info map */
122 U8 numLch; /*!< Number of Ded Logical Channels */
123 RguLchMapInfo lchMap[RGU_MAX_LC]; /*!< LC to SN Mapping Info*/
127 * @brief Structure to hold harq status Indication to RLC
129 typedef struct rguHarqStatusInd
131 CmLteCellId cellId; /*!< Cell Id*/
132 CmLteRnti ueId; /*!< ue Id*/
133 U8 numTbs; /*!< Number of Tbs present */
135 U32 tbId[RGU_MAX_TB]; /*!< tbId provided by RLC in
137 U16 status[RGU_MAX_TB]; /*!< Status back to RLC ACK/NACK*/
141 * @brief Structure to hold rguHarqStatusInd and pst structure
143 typedef struct rguHarqStaInd
145 RguHarqStatusInd hqStatusInd;
150 * @brief UL Throughput Measurement Request from RLC to MAC regarding configuration
151 * of an LC for a particular UE to provide Timing Info.
153 typedef struct rguL2MUlThrpMeasReqInfo
155 CmLteCellId cellId; /*!< Cell Id*/
156 CmLteRnti rnti; /*!< UE Id*/
157 U8 numLcId; /*!< Number of LC Ids configured */
158 U8 lcId[RGU_MAX_LC]; /*!< LC ID indices that are
160 Bool enbMeas; /*!< Indication to enable/disable
161 measurement for the LC ID*/
162 } RguL2MUlThrpMeasReqInfo;
164 #endif /* LTE_L2_MEAS */
166 * @brief DatReq info for each TB of a UE.
168 typedef struct rguDatReqTb
170 U8 nmbLch; /*!< Number of logical channels of a UE
171 that have data for this TB */
172 RguLchDatReq lchData[RGU_MAX_LC]; /*!< Data Buffers and BO of
173 logical channels for this TB */
174 /* rgu_x_001.main_3 - ADD - L2M Support */
176 U32 tbId; /*!< RLC's internal tbId maintained
178 #endif /* LTE_L2_MEAS */
182 * @brief DatReq from RLC to MAC for dedicated channels of an UE.
184 typedef struct rguDDatReqPerUe
186 CmLteRnti rnti; /*!< UE ID */
187 U32 transId; /*!< Transaction ID */
188 U8 nmbOfTbs; /*!< Number of TBs. Relevant for MIMO */
189 RguDatReqTb datReqTb[2]; /*!< DatReq info for MAX 2 TBs */
193 * @brief DatReq from RLC to MAC for dedicated channels of all UEs in a TTI.
195 typedef struct rguDDatReqInfo
197 CmLteCellId cellId; /*!< CELL ID */
198 U8 nmbOfUeGrantPerTti; /*!< Number of TBs. Relevant for MIMO */
199 RguDDatReqPerUe datReq[RGU_MAX_NUM_UE_PER_TTI]; /*!< Pointer to DatReq for MAX UEs configured Per TTI */
203 * @brief DatInd from MAC to RLC on CCCH.
205 typedef struct rguCDatIndInfo
207 CmLteCellId cellId; /*!< Cell ID */
208 CmLteRnti rnti; /*!< RNTI */
209 CmLteLcId lcId; /*!< Logical channel instance */
210 Buffer *pdu; /*!< PDU received always one */
213 #ifdef MAC_RLC_UL_RBUF
214 typedef struct rguDedDatInd1
220 /* rgu_x_001.main_3 - ADD - L2M & R9 Support */
224 * * Segment Indication ID from MAC to RLC */
225 typedef enum rguL2MUlThrpSegInd
227 RGU_L2M_ULTHRP_NOTDEF = 0,/**< Specifies No Indication */
228 RGU_L2M_ULTHRP_FIRST = 1, /**< Specifies First Segment Indication */
229 RGU_L2M_ULTHRP_LAST = 2, /**< Specifies Last Segment Indication */
230 RGU_L2M_ULTHRP_INTERIM = 3 /**< Specifies Interim Segment Indication */
234 * @brief Scheduled IP Throughput Timing Info from MAC to RLC.
236 typedef struct rgL2MeasUlThrpTimInfo
238 U32 thrpTimeUl; /*!< Difference in Timing values T1, T2 */
239 RguL2MUlThrpSegInd firstLastSegInd; /*!< Indication of Data Burst */
240 }RgL2MeasUlThrpTimInfo;
244 * @brief DatInd Information for a logical channel.
246 typedef struct rguLchDatInd
248 CmLteLcId lcId; /*!< Logical channel instance */
249 RguPduInfo pdu; /*!< PDU received */
250 /* rgu_x_001.main_3 - ADD - L2M & R9 Support */
254 * @brief Data Indication from MAC to RLC for dedicated channels of an UE.
256 typedef struct rguDDatIndInfo
258 CmLteCellId cellId; /*!< CELL ID */
259 CmLteRnti rnti; /*!< UE ID */
260 U8 numLch; /*!< Number of logical channels within
261 the UE that has data */
262 RguLchDatInd lchData[MAX_NUM_LC]; /*!< Data buffers of logical channels */
264 U32 ttiCnt; /*!< The Current TTI in the Cell */
265 U8 burstInd; /*!< Indicates the Burst Start or End */
270 * @brief Status Response from RLC to MAC for common logical channel.
272 typedef struct rguCStaRspInfo
274 CmLteCellId cellId; /*!< CELL ID */
275 CmLteLcId lcId; /*!< Logical channel ID */
276 CmLteLcType lcType; /*!< Logical channel type */
277 S32 bo; /*!< Buffer occupancy reported by RLC */
279 U8 emtcDiReason; /*!< Reason for DI message to send. */
280 U8 pnb; /*paging narrowBand on which UE will perform paging*/
282 union /*!< lcType in the primitive is
283 the union selector */
285 CmLteTimingInfo timeToTx; /*!< Timing info for the BO, applicable for
287 CmLteRnti rnti; /*!< Temporary CRNTI, only for CCCH */
292 * @brief Status Response from RLC to MAC for dedicated logical channel.
294 typedef struct rguDStaRspInfo
297 CmLteCellId cellId; /*!< CELL ID */
298 CmLteRnti rnti; /*!< UE ID */
299 CmLteLcId lcId; /*!< Logical channel ID */
300 RguDBoReport boReport; /*!< BO report for this common channel */
304 * @brief Status Indication from MAC to RLC for common logical channel.
306 typedef struct rguCStaIndInfo
308 CmLteCellId cellId; /*!< CELL ID */
309 CmLteLcId lcId; /*!< Logical channel ID */
310 U32 transId; /*!< Transaction ID */
311 CmLteRnti rnti; /*!< Temporary CRNTI */
313 Bool isEmtcPaging; /*!< To Identify whether Paging is EMTC or Lagecy */
314 CmLteTimingInfo pagingTimingInfo; /*!< paging TimingInfo information */
319 * @brief StaInd info for each logical channel of an UE.
321 typedef struct rguLchStaInd
323 CmLteLcId lcId; /*!< Logical channel ID */
324 S16 totBufSize; /*!< Total buffer size in bytes
329 * @brief StaInd info for each TB of a UE.
331 typedef struct rguStaIndTb
333 U8 nmbLch; /*!< Number of logical channels scheduled
335 RguLchStaInd lchStaInd[RGU_MAX_LC];/*!< Buffer size allocated for scheduled
336 logical channels for this TB */
338 U32 tbId; /*!< RLC internal TB id */
339 U16 status; /*!< Status back to RLC ACK/NACK/RGU_NACK_LOSS */
343 * @brief StaInd from MAC to RLC for dedicated logical channels of an UE.
345 typedef struct rguDStaIndPerUe
347 CmLteRnti rnti; /*!< UE ID */
348 U32 transId; /*!< Transaction ID */
349 U8 nmbOfTbs; /*!< Number of TBs. Relevant for MIMO */
350 RguStaIndTb staIndTb[2]; /*!< StaInd info for MAX 2 TBs */
351 Bool fillCtrlPdu; /*!< Flag to fill RLC control PDU */
355 * @brief StaInd from MAC to RLC for dedicated logical channels of all UEs Per TTI.
357 typedef struct rguDStaIndInfo
359 CmLteCellId cellId; /*!< CELL ID */
360 U8 nmbOfUeGrantPerTti; /*!< Number of TBs. Relevant for MIMO */
361 RguDStaIndPerUe staInd[RGU_MAX_NUM_UE_PER_TTI]; /*!< StaInd info for MAX number of UEs per TTI */
365 * @brief flowCntrl info per LC.
367 typedef struct rguLcFlowCntrlInfo
371 U32 maxBo4FlowCtrl; /*!< MAX BO of Queued SDUs at RLC beyond which Flow is Controlled */
375 * @brief flowCntrl info per UE.
377 typedef struct rguUeFlowCntrlInfo
381 RguLcFlowCntrlInfo lcInfo[RGU_MAX_LC];
385 * @brief flowCntrlInd from MAC to RLC for dedicated logical channels of all UEs Per TTI.
387 typedef struct rguFlowCntrlInd
389 CmLteCellId cellId; /*!< CELL ID */
391 RguUeFlowCntrlInfo ueFlowCntrlInfo[RGU_MAX_NUM_UE_PER_TTI];
393 typedef struct rguInfoRingElem
400 /***********************************************************************
401 type definitions for upper layer interface - RLC primitives
402 ***********************************************************************/
403 /** @brief Bind Request from RLC to MAC to bind the interface SAPs */
404 typedef S16 (*RguBndReq) ARGS((
408 /** @brief Unbind Request from RLC to MAC to unbind the interface SAPs */
409 typedef S16 (*RguUbndReq) ARGS((
413 /** @brief Bind Confirmation from MAC to RLC for the bind/unbind
414 * request for the interface SAPs */
415 typedef S16 (*RguBndCfm) ARGS((
419 /** @brief Data Request from RLC to MAC for forwarding SDUs on common
420 * channel for transmission */
421 typedef S16 (*RguCDatReq) ARGS((
424 RguCDatReqInfo * datReq));
425 /** @brief Data Request from RLC to MAC for forwarding SDUs on
426 * dedicated channel for transmission */
427 typedef S16 (*RguDDatReq) ARGS((
430 RguDDatReqInfo *datReq));
432 /** @brief Data Indication from MAC to RLC to
433 * forward the data received for common channels */
434 typedef S16 (*RguCDatInd) ARGS((
437 RguCDatIndInfo * datInd));
438 /** @brief Data Indication from MAC to RLC to
439 * forward the data received for dedicated channels */
440 typedef S16 (*RguDDatInd) ARGS((
443 RguDDatIndInfo *datInd));
445 /** @brief Status Response from RLC to MAC to
446 * inform the BO report for common channels */
447 typedef S16 (*RguCStaRsp) ARGS((
450 RguCStaRspInfo * staRsp));
451 /** @brief Status Repsonse from RLC to MAC to
452 * inform the BO report for dedicated channels */
453 typedef S16 (*RguDStaRsp) ARGS((
456 RguDStaRspInfo * staRsp));
458 /** @brief Status Indication from MAC to RLC
459 * as a response to the staRsp primitive from RLC */
460 typedef S16 (*RguCStaInd) ARGS((
463 RguCStaIndInfo * staInd));
464 /** @brief Status Indication from MAC to RLC
465 * as a response to the staRsp primitive from RLC */
466 typedef S16 (*RguDStaInd) ARGS((
469 RguDStaIndInfo * staInd));
471 typedef S16 (*RguFlowCntrlIndInfo) ARGS((
474 RguFlowCntrlInd *flowCntrlInd));
476 /* rgu_x_001.main_3 - ADD - L2M & R9 Support */
478 /** @brief HARQ Status Indication from MAC to RLC
479 * as a response to Data Req primitive from RLC */
480 typedef S16 (*RguHqStaInd) ARGS((
483 RguHarqStatusInd *harqStatusInd));
484 /** @brief LCID measurement status from RLC to MAC
485 * so as to provide Timing Info in DDatInd */
486 typedef S16 (*RguL2MUlThrpMeasReq) ARGS((
489 RguL2MUlThrpMeasReqInfo *l2mUlThrpMeasReq));
491 #endif /* LTE_L2_MEAS */
495 /** @brief Bind Request from RLC to MAC to bind the interface SAPs
496 * @param pst Pointer to the post structure.
497 * @param suId SAP ID of the service user.
498 * @param spId SAP ID of the service provider.
499 * @return ROK/RFAILED
501 EXTERN S16 RgUiRguBndReq ARGS((Pst* pst,SuId suId,SpId spId));
502 /** @brief Unbind Request from RLC to MAC to unbind the interface SAPs
503 * @param pst Pointer to the post structure.
504 * @param spId SAP ID of the service provider.
505 * @param reason Reason for unbind request.
506 * @return ROK/RFAILED
508 EXTERN S16 RgUiRguUbndReq ARGS((Pst* pst,SpId spId,Reason reason));
509 /** @brief Bind Confirmation from MAC to RLC for the bind and unbind
510 * request for the interface SAPs
511 * @param pst Pointer to the post structure.
512 * @param suId SAP ID of the service user.
513 * @param status Status of the bind request.
514 * @return ROK/RFAILED
516 EXTERN S16 RgUiRguBndCfm ARGS((Pst* pst,SuId suId,U8 status));
517 /** @brief Data Request from RLC to MAC for forwarding SDUs on common
518 * channel for transmission
519 * @param pst Pointer to the post structure.
520 * @param spId SAP ID of the service provider.
521 * @param datReq Data request for common channels (BCCH, PCCH and CCCH).
522 * @return ROK/RFAILED
524 EXTERN S16 RgUiRguCDatReq ARGS((Pst* pst,SpId spId,RguCDatReqInfo *datReq));
525 /** @brief Data Request from RLC to MAC for forwarding SDUs on
526 * dedicated channel for transmission
527 * @param pst Pointer to the post structure.
528 * @param spId SAP ID of the service provider.
529 * @param datReq Data request for dedicated channels (DCCH and DTCH).
530 * @return ROK/RFAILED
532 EXTERN S16 RgUiRguDDatReq ARGS((Pst* pst,SpId spId,RguDDatReqInfo *datReq));
534 /** @brief Data Indication from MAC to RLC to
535 * forward the data received for common channels
536 * @param pst Pointer to the post structure.
537 * @param suId SAP ID of the service user.
538 * @param datInd Data indication on CCCH.
539 * @return ROK/RFAILED
541 EXTERN S16 RgUiRguCDatInd ARGS((Pst* pst,SuId suId,RguCDatIndInfo *datInd));
542 /** @brief Data Indication from MAC to RLC to
543 * forward the data received for dedicated channels
544 * @param pst Pointer to the post structure.
545 * @param suId SAP ID of the service user.
546 * @param datInd Data indication on dedicated channels (DCCH and DTCH).
547 * @return ROK/RFAILED
549 EXTERN S16 RgUiRguDDatInd ARGS((Pst* pst,SuId suId,RguDDatIndInfo *datInd));
550 /** @brief Status Response from RLC to MAC to
551 * inform the BO report for common channels
552 * @param pst Pointer to the post structure.
553 * @param spId SAP ID of the service provider.
554 * @param staRsp Status response for common channels (BCCH, PCCH and CCCH).
555 * @return ROK/RFAILED
557 EXTERN S16 RgUiRguCStaRsp ARGS((Pst* pst,SpId spId,RguCStaRspInfo *staRsp));
558 /** @brief Status Response from RLC to MAC to
559 * inform the BO report for dedicated channels
560 * @param pst Pointer to the post structure.
561 * @param spId SAP ID of the service provider.
562 * @param staRsp Status response for dedicated channels (DCCH and DTCH).
563 * @return ROK/RFAILED
565 EXTERN S16 RgUiRguDStaRsp ARGS((Pst* pst,SpId spId,RguDStaRspInfo *staRsp));
567 /** @brief Status Indication from MAC to RLC
568 * as a response to the staRsp primitive from RLC.
569 * @param pst Pointer to the post structure.
570 * @param suId SAP ID of the service user.
571 * @param staInd Status indication on common channels (BCCH, PCCH and CCCH).
572 * @return ROK/RFAILED
574 EXTERN S16 RgUiRguCStaInd ARGS((Pst* pst,SuId suId,RguCStaIndInfo *staInd));
575 /** @brief Status Indication from MAC to RLC
576 * as a response to the staRsp primitive from RLC.
577 * @param pst Pointer to the post structure.
578 * @param suId SAP ID of the service user.
579 * @param staInd Status indication on dedicated channels (DCCH and DTCH).
580 * @return ROK/RFAILED
582 EXTERN S16 RgUiRguDStaInd ARGS((Pst* pst,SuId suId,RguDStaIndInfo *staInd));
583 /** @brief flow control indication from MAC to RLC */
584 EXTERN S16 RgUiRguFlowCntrlInd ARGS((Pst *pst, SuId suId,
585 RguFlowCntrlInd *flowCntrlInd));
586 /*rgu_x_001.main_3 - ADD - L2M & R9 Support */
588 /** @brief HARQ Status Indication from MAC to RLC
589 * as a response to the Data Req from RLC.
590 * Informs HARQ feedback for the TB with sn mapping info. */
591 EXTERN S16 RgUiRguHqStaInd ARGS((Pst* pst,SuId suId,
592 RguHarqStatusInd *harqStatusInd));
596 /** @brief Request for measuring the timing Info for a LC from RLC to MAC
597 * When the status is ON then Timing Info for data bursts
598 * shall be captured and provided to RLC on DDatInd. */
599 EXTERN S16 RgUiRguL2MUlThrpMeasReq ARGS((Pst* pst,SpId spId,
600 RguL2MUlThrpMeasReqInfo *l2mUlThrpMeasReq));
602 #endif /* LTE_L2_MEAS */
607 /** @brief Request from RLC to MAC to bind the interface saps */
608 EXTERN S16 RlcLiRguBndReq ARGS((
613 /** @brief Request from RLC to MAC to Unbind the interface saps */
614 EXTERN S16 RlcLiRguUbndReq ARGS((
619 /** @brief Confirmation from MAC to RLC for the bind/Unbind
620 * request for the interface saps */
621 EXTERN S16 RlcLiRguBndCfm ARGS((
626 /** @brief Request from RLC to MAC for forwarding SDUs on common
627 * channel for transmission */
628 EXTERN S16 RlcLiRguCDatReq ARGS((
631 RguCDatReqInfo * datReq
634 /** @brief Primitive invoked from RLC to MAC to
635 * inform the BO report for common channels*/
636 EXTERN S16 RlcLiRguCStaRsp ARGS((
639 RguCStaRspInfo * staRsp
643 /** @brief HARQ Status Indication from MAC to RLC
644 * as a response to the Data Req from RLC.
645 * Informs HARQ feedback for the PDU with sn. */
646 EXTERN S16 RlcLiRguHqStaInd ARGS((
649 RguHarqStatusInd *harqStatusInd));
652 /** @brief Request for measuring the timing Info for a LC from RLC to MAC
653 * When the status is ON then Timing Info for data bursts
654 * shall be captured and provided to RLC on DDatInd. */
655 EXTERN S16 RlcLiRguL2MUlThrpMeasReq ARGS((
658 RguL2MUlThrpMeasReqInfo *l2mUlThrpMeasReq));
660 #endif /* LTE_L2_MEAS */
662 /** @brief flowCntrl Indication from MAC to RLC */
663 EXTERN S16 RlcLiRguFlowCntrlInd ARGS((
666 RguFlowCntrlInd *flowCntrlInd
671 /** @brief Request from RLC to MAC to bind the interface saps */
672 EXTERN S16 cmPkRguBndReq ARGS((
677 /** @brief Request from RLC to MAC to bind the interface saps */
678 EXTERN S16 cmUnpkRguBndReq ARGS((
683 /** @brief Request from RLC to MAC to Unbind the interface saps */
684 EXTERN S16 cmPkRguUbndReq ARGS((
689 /** @brief Request from RLC to MAC to Unbind the interface saps */
690 EXTERN S16 cmUnpkRguUbndReq ARGS((
695 /** @brief Confirmation from MAC to RLC for the bind/Unbind
696 * request for the interface saps */
697 EXTERN S16 cmPkRguBndCfm ARGS((
702 /** @brief Confirmation from MAC to RLC for the bind/Unbind
703 * request for the interface saps */
704 EXTERN S16 cmUnpkRguBndCfm ARGS((
709 /** @brief Request from RLC to MAC for forwarding SDUs on common
710 * channel for transmission */
711 EXTERN S16 cmPkRguCDatReq ARGS((
714 RguCDatReqInfo * datReq
716 /** @brief Request from RLC to MAC for forwarding SDUs on common
717 * channel for transmission */
718 EXTERN S16 cmUnpkRguCDatReq ARGS((
724 /** @brief Data Indication from MAC to RLC to
725 * forward the data received for common channels*/
726 EXTERN S16 cmPkRguCDatInd ARGS((
729 RguCDatIndInfo * datInd
731 /** @brief Data Indication from MAC to RLC to
732 * forward the data received for common channels*/
733 EXTERN S16 cmUnpkRguCDatInd ARGS((
739 /** @brief Primitive invoked from RLC to MAC to
740 * inform the BO report for common channels*/
741 EXTERN S16 cmPkRguCStaRsp ARGS((
744 RguCStaRspInfo * staRsp
746 /** @brief Primitive invoked from RLC to MAC to
747 * inform the BO report for common channels*/
748 EXTERN S16 cmUnpkRguCStaRsp ARGS((
754 /** @brief Status Indication from MAC to RLC
755 * as a response to the staRsp primitive from RLC.
756 * Informs RLC of the totalBufferSize and Timing Info
757 * for the transmission on common channels. */
758 EXTERN S16 cmPkRguCStaInd ARGS((
761 RguCStaIndInfo * staInd
763 /** @brief Status Indication from MAC to RLC
764 * as a response to the staRsp primitive from RLC.
765 * Informs RLC of the totalBufferSize and Timing Info
766 * for the transmission on common channels. */
767 EXTERN S16 cmUnpkRguCStaInd ARGS((
773 EXTERN S16 cmPkRguFlowCntrlInfo ARGS((
774 RguFlowCntrlInd *param,
777 EXTERN S16 cmPkRguUeFlowCntrlInfo ARGS((
778 RguUeFlowCntrlInfo *param,
781 EXTERN S16 cmPkRguLcFlowCntrlInfo ARGS((
782 RguLcFlowCntrlInfo *param,
785 EXTERN S16 cmUnpkRguLcFlowCntrlInfo ARGS((
786 RguLcFlowCntrlInfo *param,
789 EXTERN S16 cmUnpkRguUeFlowCntrlInfo ARGS((
790 RguUeFlowCntrlInfo *param,
793 EXTERN S16 cmUnpkRguFlowCntrlInfo ARGS((
794 RguFlowCntrlInd *param,
798 EXTERN S16 cmPkRguPduInfo ARGS((
802 EXTERN S16 cmUnpkRguPduInfo ARGS((
806 EXTERN S16 cmPkRguDBoReport ARGS((
810 EXTERN S16 cmUnpkRguDBoReport ARGS((
815 EXTERN S16 cmPkRguCDatReqInfo ARGS((
816 RguCDatReqInfo *param,
819 EXTERN S16 cmUnpkRguCDatReqInfo ARGS((
820 RguCDatReqInfo *param,
823 EXTERN S16 cmPkRguLchDatReq ARGS((
827 EXTERN S16 cmUnpkRguLchDatReq ARGS((
831 EXTERN S16 cmPkRguDatReqTb ARGS((
835 EXTERN S16 cmPkRguStaIndTb ARGS((
839 EXTERN S16 cmUnpkRguStaIndTb ARGS((
843 /* rgu_x_001.main_3 - ADD - L2M Support */
845 EXTERN S16 cmPkRguDDatReqInfo ARGS((
847 RguDDatReqInfo *param,
850 EXTERN S16 cmUnpkRguDDatReqInfo ARGS((
852 RguDDatReqInfo *param,
855 EXTERN S16 cmUnpkRguDatReqTb ARGS((
861 EXTERN S16 cmPkRguDDatReqInfo ARGS((
862 RguDDatReqInfo *param,
865 EXTERN S16 cmUnpkRguDDatReqInfo ARGS((
866 RguDDatReqInfo *param,
869 EXTERN S16 cmUnpkRguDatReqTb ARGS((
874 EXTERN S16 cmPkRguCDatIndInfo ARGS((
875 RguCDatIndInfo *param,
878 EXTERN S16 cmUnpkRguCDatIndInfo ARGS((
879 RguCDatIndInfo *param,
882 EXTERN S16 cmPkRguLchDatInd ARGS((
886 EXTERN S16 cmUnpkRguLchDatInd ARGS((
891 EXTERN S16 cmPkRguCStaRspInfo ARGS((
892 RguCStaRspInfo *param,
895 EXTERN S16 cmUnpkRguCStaRspInfo ARGS((
896 RguCStaRspInfo *param,
900 EXTERN S16 cmPkRguCStaIndInfo ARGS((
901 RguCStaIndInfo *param,
904 EXTERN S16 cmUnpkRguCStaIndInfo ARGS((
905 RguCStaIndInfo *param,
908 EXTERN S16 cmPkRguLchStaInd ARGS((
912 EXTERN S16 cmUnpkRguLchStaInd ARGS((
917 /*rgu_x_001.main_3 - ADD - L2M & R9 Support */
919 /** @brief Request from MAC to RLC for forwarding HARQ Status */
921 EXTERN S16 cmPkRguHqStaInd ARGS((
924 RguHarqStatusInd *harqStatusInd));
926 /** @brief Request from MAC to RLC forwarding HARQ status */
927 EXTERN S16 cmUnpkRguHqStaInd ARGS((
933 /** @brief Primitive invoked from RLC to MAC to
934 * * inform the On/Off Status of LC Id*/
935 EXTERN S16 cmPkRguL2MUlThrpMeasReq ARGS((
938 RguL2MUlThrpMeasReqInfo* measReq
941 /** @brief Primitive invoked from RLC to MAC to
942 * * inform the On/Off Status of LC Id*/
943 EXTERN S16 cmUnpkRguL2MUlThrpMeasReq ARGS((
944 RguL2MUlThrpMeasReq func,
949 EXTERN S16 cmPkRguL2MUlThrpMeasReqInfo ARGS((
950 RguL2MUlThrpMeasReqInfo *param,
954 EXTERN S16 cmUnpkRguL2MUlThrpMeasReqInfo ARGS((
955 RguL2MUlThrpMeasReqInfo *param,
959 #endif /* LTE_L2_MEAS */
960 EXTERN S16 cmUnpkRguFlowCntrlInd ARGS((
961 RguFlowCntrlIndInfo func,
966 EXTERN S16 cmPkRguFlowCntrlInd ARGS((
969 RguFlowCntrlInd *flowCntrlInd
976 #endif /* __RGUX__ */
978 /********************************************************************30**
981 **********************************************************************/