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 /************************************************************************
25 Desc: C source code for portable definitions for Layer Manager
30 **********************************************************************/
33 @brief This file contains the definitions for Layer Manager
34 Interface primitives that are invoked from MAC to Layer Manager
35 (Confirmations and Indications) Portable functions corresponding
36 to these primitives are also defined.
39 /* header include files (.h) */
40 #include "envopt.h" /* environment options */
41 #include "envdep.h" /* environment dependent */
42 #include "envind.h" /* environment independent */
43 #include "gen.h" /* general */
44 #include "ssi.h" /* system services */
45 #include "cm_tkns.h" /* Common Token Defines */
46 #include "cm_llist.h" /* Common Link List Defines */
47 #include "cm_hash.h" /* Common Hash List Defines */
48 #include "cm_lte.h" /* Common LTE Defines */
49 #include "lrg.h" /* LRG Interface defines */
51 /* header/extern include files (.x) */
52 #include "gen.x" /* general */
53 #include "ssi.x" /* system services */
54 #include "cm_tkns.x" /* Common Token Definitions */
55 #include "cm_llist.x" /* Common Link List Definitions */
56 #include "cm_lib.x" /* Common Library Definitions */
57 #include "cm_hash.x" /* Common Hash List Definitions */
58 #include "cm_lte.x" /* Common LTE Defines */
59 #include "lrg.x" /* LRG Interface includes */
63 #endif /* __cplusplus */
65 #if !(defined(LCRGMILRG) && defined(SM))
69 #define RG_MAX_LRG_USR 2
71 /* portable functions at LRG interface */
73 EXTERN S16 PtMiLrgCfgCfm ARGS((Pst *pst, RgMngmt *cfm));
74 EXTERN S16 PtMiLrgSchCfgCfm ARGS((Pst *pst, RgMngmt *cfm));
75 EXTERN S16 PtMiLrgStsCfm ARGS((Pst *pst, RgMngmt *cfm));
76 EXTERN S16 PtMiLrgStaCfm ARGS((Pst *pst, RgMngmt *cfm));
77 EXTERN S16 PtMiLrgStaInd ARGS((Pst *pst, RgMngmt *usta));
78 EXTERN S16 PtMiLrgSchStaInd ARGS((Pst *pst, RgMngmt *usta));
79 EXTERN S16 PtMiLrgCntrlCfm ARGS((Pst *pst, RgMngmt *cfm));
80 EXTERN S16 PtMiLrgSchCntrlCfm ARGS((Pst *pst, RgMngmt *cfm));
81 EXTERN S16 PtMiLrgTrcInd ARGS((Pst *pst, RgMngmt *trc,Buffer *mBuf));
83 EXTERN S16 PtMiLrgSchL2MeasCfm ARGS((Pst *pst, LrgSchMeasCfmInfo *cfm));
84 EXTERN S16 PtMiLrgSchL2MeasStopCfm ARGS((Pst *pst,LrgSchMeasCfmInfo *cfm ));
88 /* ***********LRG interface Mapping matrices ********************/
90 /** @brief Configuration Confirm primitive Matrix
91 * This matrix defines the mapping between the configuration confirm
92 * primitive called by the upper interface of MAC layer and the
93 * corresponding primitives of the MAC layer service user(s).
95 * The parameter RG_MAX_LRG_USR defines the maximum number of Layer
96 * managers of MAC at the LRG interface. This is an array of functions
97 * per primitive invoked by MAC whose size is RG_MAX_LRG_USR.
99 * The dispatching is performed by the configurable variable: selector.
100 * The selector is configured on a per SAP basis. The selectors are:
102 * LCRGMILRG - loosely coupled LMK interface
103 * TCRGMILRG - Tightly coupled LMK interface
105 * In a similar fashion, the matrices for Status, Statistics and
106 * Control confirms and, Status and trace indications are defined.
108 PRIVATE CONSTANT LrgCfgCfm RgMiLrgCfgCfmMt[RG_MAX_LRG_USR] =
111 cmPkLrgCfgCfm, /* 0 - loosely coupled */
113 PtMiLrgCfgCfm, /* 0 - loosely coupled */
116 SmMiLrgCfgCfm, /* 1 - Tightly coupled SM */
118 PtMiLrgCfgCfm, /* 1 - Tightly coupled SM */
122 /** @brief Scheduler Config Confirm primitive Matrix */
123 PRIVATE CONSTANT LrgSchCfgCfm RgMiLrgSchCfgCfmMt[RG_MAX_LRG_USR] =
126 cmPkLrgSchCfgCfm, /* 0 - loosely coupled */
128 PtMiLrgSchCfgCfm, /* 0 - loosely coupled */
131 SmMiLrgSchCfgCfm, /* 1 - Tightly coupled SM */
133 PtMiLrgSchCfgCfm, /* 1 - Tightly coupled SM */
137 /** @brief Statistics Confirm primitive Matrix */
138 PRIVATE CONSTANT LrgStsCfm RgMiLrgStsCfmMt[RG_MAX_LRG_USR] =
141 cmPkLrgStsCfm, /* 0 - loosely coupled */
143 PtMiLrgStsCfm, /* 0 - loosely coupled */
146 SmMiLrgStsCfm, /* 1 - Tightly coupled SM */
148 PtMiLrgStsCfm, /* 1 - Tightly coupled SM */
152 /** @brief Status Confirm primitive Matrix */
153 PRIVATE CONSTANT LrgStaCfm RgMiLrgStaCfmMt[RG_MAX_LRG_USR] =
156 cmPkLrgStaCfm, /* 0 - loosely coupled */
158 PtMiLrgStaCfm, /* 0 - loosely coupled */
161 SmMiLrgStaCfm, /* 1 - Tightly coupled SM */
163 PtMiLrgStaCfm, /* 1 - Tightly coupled SM */
168 /** @brief Status Indication primitive Matrix */
169 PRIVATE CONSTANT LrgStaInd RgMiLrgStaIndMt[RG_MAX_LRG_USR] =
172 cmPkLrgStaInd, /* 0 - loosely coupled */
174 PtMiLrgStaInd, /* 0 - loosely coupled */
177 SmMiLrgStaInd, /* 1 - Tightly coupled SM */
179 PtMiLrgStaInd, /* 1 - Tightly coupled SM */
183 /** @brief Scheduler Status Indication primitive Matrix */
184 PRIVATE CONSTANT LrgSchStaInd RgMiLrgSchStaIndMt[RG_MAX_LRG_USR] =
187 cmPkLrgSchStaInd, /* 0 - loosely coupled */
189 PtMiLrgSchStaInd, /* 0 - loosely coupled */
192 SmMiLrgSchStaInd, /* 1 - Tightly coupled SM */
194 PtMiLrgSchStaInd, /* 1 - Tightly coupled SM */
199 /** @brief Control Confirm primitive Matrix */
200 PRIVATE CONSTANT LrgCntrlCfm RgMiLrgCntrlCfmMt[RG_MAX_LRG_USR] =
203 cmPkLrgCntrlCfm, /* 0 - loosely coupled */
205 PtMiLrgCntrlCfm, /* 0 - loosely coupled */
208 SmMiLrgCntrlCfm, /* 1 - Tightly coupled SM */
210 PtMiLrgCntrlCfm, /* 1 - Tightly coupled SM */
214 /** @brief Scheduler Control Confirm primitive Matrix */
215 PRIVATE CONSTANT LrgSchCntrlCfm RgMiLrgSchCntrlCfmMt[RG_MAX_LRG_USR] =
218 cmPkLrgSchCntrlCfm, /* 0 - loosely coupled */
220 PtMiLrgSchCntrlCfm, /* 0 - loosely coupled */
223 SmMiLrgSchCntrlCfm, /* 1 - Tightly coupled SM */
225 PtMiLrgSchCntrlCfm, /* 1 - Tightly coupled SM */
229 /** @brief Trace Indication primitive Matrix */
230 PRIVATE CONSTANT LrgTrcInd RgMiLrgTrcIndMt[RG_MAX_LRG_USR] =
233 cmPkLrgTrcInd, /* 0 - loosely coupled */
235 PtMiLrgTrcInd, /* 0 - loosely coupled */
238 SmMiLrgTrcInd, /* 1 - Tightly coupled SM */
240 PtMiLrgTrcInd, /* 1 - Tightly coupled SM */
244 /** @brief L2 Meas Cfm primitive Matrix */
245 PRIVATE CONSTANT LrgSchL2MeasCfm RgMiLrgSchL2mMeasCfmMt[RG_MAX_LRG_USR] =
248 cmPkLrgSchL2MeasCfm, /* 0 - loosely coupled */
250 PtMiLrgSchL2MeasCfm, /* 0 - loosely coupled */
253 SmMiLrgSchL2MeasCfm, /* 1 - Tightly coupled SM */
255 PtMiLrgSchL2MeasCfm, /* 1 - loosely coupled */
258 /** @brief L2 Meas Stop Cfm primitive Matrix */
259 PRIVATE CONSTANT LrgSchL2MeasStopCfm RgMiLrgSchL2mMeasStopCfmMt[RG_MAX_LRG_USR] =
262 cmPkLrgSchL2MeasStopCfm, /* 0 - loosely coupled */
264 PtMiLrgSchL2MeasStopCfm, /* 0 - loosely coupled */
267 SmMiLrgSchL2MeasStopCfm, /* 1 - Tightly coupled SM */
269 PtMiLrgSchL2MeasStopCfm, /* 1 - loosely coupled */
272 #endif /* LTE_L2_MEAS */
276 #endif /* __cplusplus */
282 * @brief Layer Manager Configuration confirm handler.
286 * Function : RgMiLrgCfgCfm
288 * This function handles the configuration
289 * confirm invoked by MAC to Layer Manager.
290 * -# Based on the pst->selector value it invokes one of the
291 * functions cmPkLrgCfgCfm() or SmMiLrgCfgCfm().
293 * @param[in] Pst *pst, the post structure
294 * @param[in] RgMngmt *cfm, the configuration confirm structure
299 PUBLIC S16 RgMiLrgCfgCfm
301 Pst *pst, /* post structure */
302 RgMngmt *cfm /* config confirm structure */
305 PUBLIC S16 RgMiLrgCfgCfm(pst, cfm)
306 Pst *pst; /* post structure */
307 RgMngmt *cfm; /* config confirm structure */
313 (*RgMiLrgCfgCfmMt[pst->selector])(pst, cfm);
317 }/*-- RgMiLrgCfgCfm --*/
320 * @brief Layer Manager scheduler Configuration confirm handler.
324 * Function : RgMiLrgSchCfgCfm
326 * This function handles the configuration
327 * confirm invoked by Scheduler to Layer Manager.
328 * -# Based on the pst->selector value it invokes one of the
329 * functions cmPkLrgSchCfgCfm() or SmMiLrgSchCfgCfm().
331 * @param[in] Pst *pst, the post structure
332 * @param[in] RgMngmt *cfm, the configuration confirm structure
337 PUBLIC S16 RgMiLrgSchCfgCfm
339 Pst *pst, /* post structure */
340 RgMngmt *cfm /* config confirm structure */
343 PUBLIC S16 RgMiLrgSchCfgCfm(pst, cfm)
344 Pst *pst; /* post structure */
345 RgMngmt *cfm; /* config confirm structure */
349 TRC3(RgMiLrgSchCfgCfm);
351 (*RgMiLrgSchCfgCfmMt[pst->selector])(pst, cfm);
355 }/*-- RgMiLrgSchCfgCfm --*/
360 * @brief Layer Manager Statistics confirm handler.
364 * Function : RgMiLrgStsCfm
366 * This function handles the statistics
367 * confirm invoked by MAC to Layer Manager.
368 * -# Based on the pst->selector value it invokes one of the
369 * functions cmPkLrgStsCfm() or SmMiLrgStsCfm().
371 * @param[in] Pst *pst, the post structure
372 * @param[in] RgMngmt *cfm, the statistics confirm structure
377 PUBLIC S16 RgMiLrgStsCfm
379 Pst *pst, /* post structure */
380 RgMngmt *cfm /* statistics confirm structure */
383 PUBLIC S16 RgMiLrgStsCfm(pst, cfm)
384 Pst *pst; /* post structure */
385 RgMngmt *cfm; /* statistics confirm structure */
391 (*RgMiLrgStsCfmMt[pst->selector])(pst, cfm);
395 }/*-- RgMiLrgStsCfm --*/
399 * @brief Layer Manager Status confirm handler.
403 * Function : RgMiLrgStaCfm
405 * This function handles the status
406 * confirm invoked by MAC to Layer Manager.
407 * -# Based on the pst->selector value it invokes one of the
408 * functions cmPkLrgStaCfm() or SmMiLrgStaCfm().
410 * @param[in] Pst *pst, the post structure
411 * @param[in] RgMngmt *cfm, the status confirm structure
416 PUBLIC S16 RgMiLrgStaCfm
418 Pst *pst, /* post structure */
419 RgMngmt *cfm /* status confirm structure */
422 PUBLIC S16 RgMiLrgStaCfm(pst, cfm)
423 Pst *pst; /* post structure */
424 RgMngmt *cfm; /* status confirm structure */
430 (*RgMiLrgStaCfmMt[pst->selector])(pst,cfm);
434 }/*-- RgMiLrgStaCfm --*/
438 * @brief Layer Manager Control confirm handler.
442 * Function : RgMiLrgCntrlCfm
444 * This function handles the control
445 * confirm invoked by MAC to Layer Manager.
446 * -# Based on the pst->selector value it invokes one of the
447 * functions cmPkLrgCntrlCfm() or SmMiLrgCntrlCfm().
449 * @param[in] Pst *pst, the post structure
450 * @param[in] RgMngmt *cfm, the control confirm structure
455 PUBLIC S16 RgMiLrgCntrlCfm
457 Pst *pst, /* post structure */
458 RgMngmt *cfm /* control confirm structure */
461 PUBLIC S16 RgMiLrgCntrlCfm(pst, cfm)
462 Pst *pst; /* post structure */
463 RgMngmt *cfm; /* control confirm structure */
467 TRC3(RgMiLrgCntrlCfm);
469 (*RgMiLrgCntrlCfmMt[pst->selector])(pst,cfm);
473 }/*-- RgMiLrgCntrlCfm --*/
476 * @brief Layer Manager scheduler Control confirm handler.
480 * Function : RgMiLrgSchCntrlCfm
482 * This function handles the control
483 * confirm invoked by scheduler to Layer Manager.
484 * -# Based on the pst->selector value it invokes one of the
485 * functions cmPkLrgSchCntrlCfm() or SmMiLrgSchCntrlCfm().
487 * @param[in] Pst *pst, the post structure
488 * @param[in] RgMngmt *cfm, the control confirm structure
493 PUBLIC S16 RgMiLrgSchCntrlCfm
495 Pst *pst, /* post structure */
496 RgMngmt *cfm /* control confirm structure */
499 PUBLIC S16 RgMiLrgSchCntrlCfm(pst, cfm)
500 Pst *pst; /* post structure */
501 RgMngmt *cfm; /* control confirm structure */
505 TRC3(RgMiLrgSchCntrlCfm);
507 (*RgMiLrgSchCntrlCfmMt[pst->selector])(pst,cfm);
511 }/*-- RgMiLrgSchCntrlCfm --*/
515 * @brief Layer Manager Unsolicited Status Indication handler.
519 * Function : RgMiLrgStaInd
521 * This function handles the unsolicited status
522 * Indication invoked by MAC to Layer Manager.
523 * -# Based on the pst->selector value it invokes one of the
524 * functions cmPkLrgStaInd() or SmMiLrgStaInd().
526 * @param[in] Pst *pst, the post structure
527 * @param[in] RgMngmt *usta, the status indication structure
532 PUBLIC S16 RgMiLrgStaInd
534 Pst *pst, /* post structure */
535 RgMngmt *usta /* status indication structure */
538 PUBLIC S16 RgMiLrgStaInd(pst, usta)
539 Pst *pst; /* post structure */
540 RgMngmt *usta; /* status indication structure */
546 (*RgMiLrgStaIndMt[pst->selector])(pst,usta);
550 }/*-- RgMiLrgStaInd --*/
553 * @brief Layer Manager Unsolicited Status Indication handler from scheduler
557 * Function : RgMiLrgSchStaInd
559 * This function handles the unsolicited status
560 * Indication invoked by Scheduler to Layer Manager.
561 * -# Based on the pst->selector value it invokes one of the
562 * functions cmPkLrgSchStaInd() or SmMiLrgSchStaInd().
564 * @param[in] Pst *pst, the post structure
565 * @param[in] RgMngmt *usta, the status indication structure
570 PUBLIC S16 RgMiLrgSchStaInd
572 Pst *pst, /* post structure */
573 RgMngmt *usta /* status indication structure */
576 PUBLIC S16 RgMiLrgSchStaInd(pst, usta)
577 Pst *pst; /* post structure */
578 RgMngmt *usta; /* status indication structure */
582 TRC3(RgMiLrgSchStaInd);
584 (*RgMiLrgSchStaIndMt[pst->selector])(pst,usta);
588 }/*-- RgMiLrgSchStaInd --*/
592 * @brief Layer Manager Trace Indication handler.
596 * Function : RgMiLrgTrcInd
598 * This function handles the trace
599 * Indication invoked by MAC to Layer Manager.
600 * -# Based on the pst->selector value it invokes one of the
601 * functions cmPkLrgTrcInd() or SmMiLrgTrcInd().
603 * @param[in] Pst *pst, the post structure
604 * @param[in] RgMngmt *trc, the trace event
605 * @param[in] Buffer *mBuf, the trace message
610 PUBLIC S16 RgMiLrgTrcInd
612 Pst *pst, /* post structure */
613 RgMngmt *trc, /* Trace event */
614 Buffer *mBuf /* Trace message */
617 PUBLIC S16 RgMiLrgTrcInd(pst, trc, mBuf)
618 Pst *pst; /* post structure */
619 RgMngmt *trc; /* Trace event */
620 Buffer *mBuf; /* Trace message */
626 (*RgMiLrgTrcIndMt[pst->selector])(pst,trc,mBuf);
630 }/*-- RgMiLrgTrcInd --*/
634 /* TODO: Function header */
636 PUBLIC S16 RgMiLrgSchL2MeasCfm
638 Pst *pst, /* post structure */
639 LrgSchMeasCfmInfo *cfm /* Meas Cfm Info */
642 PUBLIC S16 RgMiLrgSchL2MeasCfm(pst, cfm)
643 Pst *pst; /* post structure */
644 LrgSchMeasCfmInfo *cfm; /* Meas Cfm Info */
647 TRC3(RgMiLrgSchL2MeasCfm)
649 (*RgMiLrgSchL2mMeasCfmMt[pst->selector])(pst,cfm);
653 } /* RgMiLrgSchL2MeasCfm */
656 * @brief This function used to send L2 measurement stop confirmation
662 * Function : RgMiLrgSchL2MeasStopCfm
663 * This function sends reposnes to L2 Measurement stop request
666 * @param[in] Pst *pst, the post structure
667 * @param[in] LrgSchMeasCfmInfo *cfm, theconfirm structure
673 PUBLIC S16 RgMiLrgSchL2MeasStopCfm
675 Pst *pst, /* post structure */
676 LrgSchMeasCfmInfo *cfm /* Meas Cfm Info */
679 PUBLIC S16 RgMiLrgSchL2MeasStopCfm(pst, cfm)
680 Pst *pst; /* post structure */
681 LrgSchMeasCfmInfo *cfm; /* Meas Cfm Info */
684 TRC3(RgMiLrgSchL2MeasStopCfm)
686 (*RgMiLrgSchL2mMeasStopCfmMt[pst->selector])(pst,cfm);
690 } /* RgMiLrgSchL2MeasStopCfm */
692 #endif /* LTE_L2_MEAS */
699 * @brief Portable Function definition for Layer Manager Configuration
704 * Function : PtMiLrgCfgCfm
706 * This function handles the configuration
707 * confirm invoked by MAC to Layer Manager.
708 * Users of MAC who intend to provide a glue logic
709 * for portability of Configuration Confirm are expected
710 * to fill in the code in this function definition.
712 * @param[in] Pst *pst, the post structure
713 * @param[in] RgMngmt *cfm, the configuration confirm structure
718 PUBLIC S16 PtMiLrgCfgCfm
720 Pst *pst, /* post structure */
721 RgMngmt *cfm /* Config Confirm */
724 PUBLIC S16 PtMiLrgCfgCfm (pst, cfm)
725 Pst *pst; /* post structure */
726 RgMngmt *cfm; /* Config Confirm */
732 }/* end of PtMiLrgCfgCfm */
735 * @brief Portable Function definition for Layer Manager Configuration
740 * Function : PtMiLrgSchCfgCfm
742 * This function handles the configuration
743 * confirm invoked by scheduler to Layer Manager.
744 * Users of MAC who intend to provide a glue logic
745 * for portability of Configuration Confirm are expected
746 * to fill in the code in this function definition.
748 * @param[in] Pst *pst, the post structure
749 * @param[in] RgMngmt *cfm, the configuration confirm structure
754 PUBLIC S16 PtMiLrgSchCfgCfm
756 Pst *pst, /* post structure */
757 RgMngmt *cfm /* Config Confirm */
760 PUBLIC S16 PtMiLrgSchCfgCfm (pst, cfm)
761 Pst *pst; /* post structure */
762 RgMngmt *cfm; /* Config Confirm */
765 TRC3(PtMiLrgSchCfgCfm)
768 }/* end of PtMiLrgSchCfgCfm */
773 * @brief Portable Function definition for Layer Manager Statistics
778 * Function : PtMiLrgStsCfm
780 * This function handles the statistics
781 * confirm invoked by MAC to Layer Manager.
782 * Users of MAC who intend to provide a glue logic
783 * for portability of statistics Confirm are expected
784 * to fill in the code in this function definition.
786 * @param[in] Pst *pst, the post structure
787 * @param[in] RgMngmt *cfm, the statistics confirm structure
792 PUBLIC S16 PtMiLrgStsCfm
794 Pst *pst, /* post structure */
795 RgMngmt *cfm /* Statistics Confirm */
798 PUBLIC S16 PtMiLrgStsCfm (pst, cfm)
799 Pst *pst; /* post structure */
800 RgMngmt *cfm; /* Statistics Confirm */
806 }/* end of PtMiLrgStsCfm */
811 * @brief Portable Function definition for Layer Manager Status
816 * Function : PtMiLrgStaCfm
818 * This function handles the status
819 * confirm invoked by MAC to Layer Manager.
820 * Users of MAC who intend to provide a glue logic
821 * for portability of status Confirm are expected
822 * to fill in the code in this function definition.
824 * @param[in] Pst *pst, the post structure
825 * @param[in] RgMngmt *cfm, the status confirm structure
830 PUBLIC S16 PtMiLrgStaCfm
832 Pst *pst, /* post structure */
833 RgMngmt *cfm /* Status Confirm */
836 PUBLIC S16 PtMiLrgStaCfm (pst, cfm)
837 Pst *pst; /* post structure */
838 RgMngmt *cfm; /* Status Confirm */
843 }/* end of PtMiLrgStaCfm */
848 * @brief Portable Function definition for Layer Manager Status
849 * Indication handler.
853 * Function : PtMiLrgStaInd
855 * This function handles the status
856 * indication invoked by MAC to Layer Manager.
857 * Users of MAC who intend to provide a glue logic
858 * for portability of status indication are expected
859 * to fill in the code in this function definition.
861 * @param[in] Pst *pst, the post structure
862 * @param[in] RgMngmt *cfm, the status indication structure
867 PUBLIC S16 PtMiLrgStaInd
869 Pst *pst, /* post structure */
870 RgMngmt *usta /* Status Indication */
873 PUBLIC S16 PtMiLrgStaInd (pst, usta)
874 Pst *pst; /* post structure */
875 RgMngmt *usta; /* Status indication */
880 }/* end of PtMiLrgStaInd */
883 * @brief Portable Function definition for Layer Manager Status
884 * Indication handler.
888 * Function : PtMiLrgSchStaInd
890 * This function handles the status
891 * indication invoked by Scheduler to Layer Manager.
892 * Users of MAC who intend to provide a glue logic
893 * for portability of status indication are expected
894 * to fill in the code in this function definition.
896 * @param[in] Pst *pst, the post structure
897 * @param[in] RgMngmt *cfm, the status indication structure
902 PUBLIC S16 PtMiLrgSchStaInd
904 Pst *pst, /* post structure */
905 RgMngmt *usta /* Status Indication */
908 PUBLIC S16 PtMiLrgSchStaInd (pst, usta)
909 Pst *pst; /* post structure */
910 RgMngmt *usta; /* Status indication */
913 TRC3(PtMiLrgSchStaInd)
915 }/* end of PtMiLrgSchStaInd */
919 * @brief Portable Function definition for Layer Manager Control
924 * Function : PtMiLrgCntrlCfm
926 * This function handles the control
927 * confirm invoked by MAC to Layer Manager.
928 * Users of MAC who intend to provide a glue logic
929 * for portability of control Confirm are expected
930 * to fill in the code in this function definition.
932 * @param[in] Pst *pst, the post structure
933 * @param[in] RgMngmt *cfm, the control confirm structure
938 PUBLIC S16 PtMiLrgCntrlCfm
940 Pst *pst, /* post structure */
941 RgMngmt *cfm /* Control Confirm */
944 PUBLIC S16 PtMiLrgCntrlCfm (pst, cfm)
945 Pst *pst; /* post structure */
946 RgMngmt *cfm; /* Control Confirm */
949 TRC3(PtMiLrgCntrlCfm)
951 }/* end of PtMiLrgCntrlCfm */
954 * @brief Portable Function definition for Layer Manager Control
959 * Function : PtMiLrgSchCntrlCfm
961 * This function handles the control
962 * confirm invoked by scheduler to Layer Manager.
963 * Users of MAC who intend to provide a glue logic
964 * for portability of control Confirm are expected
965 * to fill in the code in this function definition.
967 * @param[in] Pst *pst, the post structure
968 * @param[in] RgMngmt *cfm, the control confirm structure
973 PUBLIC S16 PtMiLrgSchCntrlCfm
975 Pst *pst, /* post structure */
976 RgMngmt *cfm /* Control Confirm */
979 PUBLIC S16 PtMiLrgSchCntrlCfm (pst, cfm)
980 Pst *pst; /* post structure */
981 RgMngmt *cfm; /* Control Confirm */
984 TRC3(PtMiLrgSchCntrlCfm)
986 }/* end of PtMiLrgSchCntrlCfm */
990 * @brief Portable Function definition for Layer Manager Trace
991 * Indication handler.
995 * Function : PtMiLrgTrcInd
997 * This function handles the trace
998 * indication invoked by MAC to Layer Manager.
999 * Users of MAC who intend to provide a glue logic
1000 * for portability of trace indication are expected
1001 * to fill in the code in this function definition.
1003 * @param[in] Pst *pst, the post structure
1004 * @param[in] RgMngmt *cfm, the trace indication structure
1009 PUBLIC S16 PtMiLrgTrcInd
1011 Pst *pst, /* post structure */
1012 RgMngmt *trc, /* Trace Event */
1013 Buffer *mBuf /* Trace message */
1016 PUBLIC S16 PtMiLrgTrcInd (pst, trc,mBuf)
1017 Pst *pst; /* post structure */
1018 RgMngmt *trc; /* Trace Event */
1019 Buffer *mBuf; /* Trace message */
1024 }/* end of PtMiLrgTrcInd */
1027 * @brief Portable Function definition for L2 Measurement Configuration
1032 * Function : PtMiLrgSchL2MeasCfm
1035 * @param[in] Pst *pst, the post structure
1036 * @param[in] *cfm, the measurement confirm structure
1041 PUBLIC S16 PtMiLrgSchL2MeasCfm
1043 Pst *pst, /* post structure */
1044 LrgSchMeasCfmInfo *cfm /* Measurement Confirm */
1047 PUBLIC S16 PtMiLrgSchL2MeasCfm(pst, cfm)
1048 Pst *pst; /* post structure */
1049 LrgSchMeasCfmInfo *cfm; /* Measurement Confirm */
1052 TRC3(PtMiLrgSchL2MeasCfm)
1055 }/* end of PtMiLrgSchL2MeasCfm */
1058 * @brief Portable Function definition for L2 Measurement stop
1063 * Function : PtMiLrgSchL2MeasStopCfm
1066 * @param[in] Pst *pst, the post structure
1067 * @param[in] *cfm, the measurement confirm structure
1072 PUBLIC S16 PtMiLrgSchL2MeasStopCfm
1074 Pst *pst, /* post structure */
1075 LrgSchMeasCfmInfo *cfm /* Measurement Confirm */
1078 PUBLIC S16 PtMiLrgSchL2MeasStopCfm(pst, cfm)
1079 Pst *pst; /* post structure */
1080 LrgSchMeasCfmInfo *cfm; /* Measurement Confirm */
1083 TRC3(PtMiLrgSchL2MeasStopCfm)
1086 }/* end of PtMiLrgSchL2MeasStopCfm */
1088 #endif /*--PTRGMILRG--*/
1091 /**********************************************************************
1094 **********************************************************************/