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: Structures, variables, and typedefs required by the LTE PHY
26 and PHY-User Control (CTF) interface.
30 **********************************************************************/
41 * @brief CTF Interface File.
46 * Configuration transaction identifier.
48 /* Data Structures for CTF */
51 @brief Transaction ID between CTF and User. */
52 typedef struct ctfCfgTransId {
53 uint8_t trans[CTF_CFG_TRANSID_SIZE]; /*!< User transaction ID */
57 /* Enumerations for CTF */
60 * This element enumerates the Bandwidth values for PHY in terms of RBs. */
72 * This element enumerates the duplex mode for the entire system at PHY.
81 * This element enumerates the sub-carrier spacing for configuration at PHY.
85 CTF_SC_SPACING_7DOT5KHZ
90 * This element enumerates the cyclic prefix for use at PHY.
99 * This element enumerates the number of antenna ports for configuration at PHY.
105 } CtfAntennaPortsCount;
108 * @enum ctfPhichDuration
109 * This element enumerates the duration for PHICH configuration at PHY.
112 CTF_PHICH_DUR_NORMAL,
113 CTF_PHICH_DUR_EXTENDED
117 * @enum ctfPhichResource
118 * This element enumerates the resources for PHICH configuration at PHY.
121 CTF_PHICH_RSRC_ONESIXTH,
128 * @enum ctfPuschHoppingMode
129 * This element enumerates the hopping mode for PUSCH configuration at PHY.
132 CTF_PUSCH_HOPMODE_INTER_SUBFRM,
133 CTF_PUSCH_HOPMODE_INTRAANDINTERSUBFRM
134 } CtfPuschHoppingMode;
137 * @enum ctfPucchDeltaShift
138 * This element enumerates the delta shift for PUCCH configuration at PHY.
141 CTF_PUCCH_DELTASHIFT1,
142 CTF_PUCCH_DELTASHIFT2,
143 CTF_PUCCH_DELTASHIFT3
144 } CtfPucchDeltaShift;
147 * @enum ctfPdschPaParam
148 * This element enumerates the parameter PA for PDSCH configuration at PHY.
149 * Each enum value maps to a PA value in dBs.
152 CTF_PDSCH_PA_MINUS_6,
153 CTF_PDSCH_PA_MINUS_4DOT77,
154 CTF_PDSCH_PA_MINUS_3,
155 CTF_PDSCH_PA_MINUS_1DOT77,
163 * @enum CtfCqiRptModeAperiodic
164 * This element enumerates the Aperiodic CQI reporting configuration at PHY.
167 CTF_CQI_RPT_MODE_APERIODIC_RM12, /*!< Corresponds to Mode 1-2 */
168 CTF_CQI_RPT_MODE_APERIODIC_RM20, /*!< Corresponds to Mode 2-0 */
169 CTF_CQI_RPT_MODE_APERIODIC_RM22, /*!< Corresponds to Mode 2-2 */
170 CTF_CQI_RPT_MODE_APERIODIC_RM30, /*!< Corresponds to Mode 3-0 */
171 CTF_CQI_RPT_MODE_APERIODIC_RM31 /*!< Corresponds to Mode 3-1 */
172 } CtfCqiRptModeAperiodic;
175 * @enum CtfUeTxAntSelectType
176 * This element enumerates the UE TX Antenna selection configuration at PHY.
179 CTF_UE_TX_ANT_SELECT_CLOSEDLOOP, /*!< Closed loop selection */
180 CTF_UE_TX_ANT_SELECT_OPENLOOP /*!< Open loop selection */
181 } CtfUeTxAntSelectType;
184 * @enum CtfPucchRepFactor
185 * This element enumerates the repetition factors for PUCCH configuration.
188 CTF_PUCCH_REP_FACTOR_N2, /*!< Pucch repetition factor of 2 */
189 CTF_PUCCH_REP_FACTOR_N4, /*!< Pucch repetition factor of 4 */
190 CTF_PUCCH_REP_FACTOR_N6 /*!< Pucch repetition factor of 6 */
194 /* ctf_x_001.main_4:115549: */
196 * @enum CtfTddAckNackFBMode
197 * This element enumerates the ACK/NACK feedback mode for TDD mode of
198 * PUCCH configuration.
201 CTF_PUCCH_TDD_ACKNACK_FB_MODE_BUNDLING, /*!< Bundling option */
202 CTF_PUCCH_TDD_ACKNACK_FB_MODE_MUXING /*!< Multiplexing option */
203 } CtfTddAckNackFBMode;
204 #endif /* CTF_VER3 */
207 * @enum CtfUeTxAntMode
208 * This element enumerates the UE Transmission mode.
211 CTF_UE_TX_ANT_MODE_TM1, /*!< Transmission Mode 1 */
212 CTF_UE_TX_ANT_MODE_TM2, /*!< Transmission Mode 2 */
213 CTF_UE_TX_ANT_MODE_TM3, /*!< Transmission Mode 3 */
214 CTF_UE_TX_ANT_MODE_TM4, /*!< Transmission Mode 4 */
215 CTF_UE_TX_ANT_MODE_TM5, /*!< Transmission Mode 5 */
216 CTF_UE_TX_ANT_MODE_TM6, /*!< Transmission Mode 6 */
217 CTF_UE_TX_ANT_MODE_TM7 /*!< Transmission Mode 7 */
218 /* ctf_x_001.main_2: Added transmission mode 8*/
220 ,CTF_UE_TX_ANT_MODE_TM8 /*!< Transmission Mode 8 */
223 /* ctf_x_001.main_3:Added enum for CTF reconfiguration */
226 * This element enumerates the CTF reconfiguration type
229 CTF_MAJOR_RECFG, /*!< CTF Major reconfiguration */
230 CTF_MINOR_RECFG /*!< CTF Minor reconfiguration */
237 typedef struct ctfUeInfo {
238 CmLteCellId cellId; /*!< Cell ID */
239 CmLteRnti ueId; /*!< UE ID */
242 /* Data Structures for CTF */
244 * @brief Bandwidth Configuration.
245 * @details This structure contains the uplink and downlink bandwidth
246 * information for configuration at PHY.
248 typedef struct ctfBwCfgInfo {
249 Bool pres; /*!< Present field */
250 CtfBandwidth dlBw; /*!< Downlink Bandwidth in RBs */
251 CtfBandwidth ulBw; /*!< Uplink Bandwidth in RBs */
252 uint8_t eUtraBand; /*!< EUTRA Operating Band - 36.104 (5.5)
253 FDD:(1..14), TDD:(33..40) */
257 * @brief Transmission Scheme Configuration.
258 * @details This structure contains the transmission scheme related information.
260 typedef struct ctfTxSchemeCfg {
261 Bool pres; /*!< Present field */
262 CtfDuplexMode duplexMode; /*!< Duplexing Mode: TDD/FDD */
263 CtfSCSpacing scSpacing; /*!< Sub-carrier spacing */
264 CtfCPCfg cycPfx; /*!< Cyclic prefix */
268 * @brief Antenna Ports configuration.
269 * @details This structure contains the antenna configuration information for
270 * configuration at PHY.
272 typedef struct ctfAntennaCfgInfo {
273 CtfAntennaPortsCount antPortsCnt; /*!< Count of antenna ports */
277 * @brief PRACH configuration.
278 * @details This structure contains the configuration information for PRACH at PHY.
279 * -# PRACH preamble sequences are generated by PHY using Zadoff-Chu
280 * sequences.[Ref: 36.211, 5.7.2]
281 * -# PRACH preamble format is derived from PRACH Configuration Index.
282 * [Ref: 36.211, Table 5.7.1-2]
283 * -# PrachFreqOffset is the first physical resource block allocated to
284 * the PRACH opportunity considered for preamble format 0, 1, 2 and 3.
285 * [Ref: 36.211, 5.7.1]
287 typedef struct ctfPrachCfgInfo {
288 Bool pres; /*!< Indicates the presence of this info */
289 uint16_t rootSequenceIndex; /*!< Range (0..837) */
290 uint8_t prachCfgIndex; /*!< Prach Config Index (0..63) */
291 uint8_t zeroCorrelationZoneCfg; /*!< Used for preamble sequence generation
292 (36.211, 5.7.2); FDD:0..15, TDD:0..6 */
293 Bool highSpeedFlag; /*!< TRUE: Restricted set,
294 FALSE: Unrestricted Set */
295 uint8_t prachFreqOffset; /*!< Range(0..94) */
299 * @brief PDSCH configuration.
300 * @details This structure contains the PDSCH configuration information for
301 * configuration at PHY.
303 typedef struct ctfPdschCfgInfo {
304 Bool pres; /*!< Indicates the presence of this info */
305 S16 refSigPwr; /*!< Provides downlink reference signal EPRE,
307 uint8_t p_b; /*!< Range(0..3) [36.213, 5.2] */
311 * @brief Basic PUSCH configuration.
312 * @details This structure contains the basic PUSCH configuration information for
313 * configuration at PHY.
315 typedef struct ctfPuschCfgBasic {
316 uint8_t noOfsubBands; /*!< Number of sub-bands, (1..4) */
317 CtfPuschHoppingMode hoppingMode; /*!< Hopping Mode */
318 uint8_t hoppingOffset; /*!< Hopping Offset(0..98) */
319 Bool enable64QAM; /*!< 64 QAM,TRUE: enabled,
324 * @brief PUSCH Uplink Reference Signals configuration.
325 * @details This structure contains the PUSCH configuration information for
326 * uplink reference signals configuration at PHY.
328 typedef struct ctfPuschUlRS {
329 Bool grpHopEnabled; /*!< Group hopping, TRUE: enabled, FALSE: disabled */
330 Bool seqHopEnabled; /*!< Sequence hopping, TRUE: enabled, FALSE: disabled */
331 uint8_t grpNum; /*!< Group number (0..29) */
332 uint8_t cycShift; /*!< Cyclic shift(0..7) */
336 * @brief PUSCH configuration.
337 * @details This structure contains the information for PUSCH
338 * configuration at PHY.
340 typedef struct ctfPuschCfgInfo {
341 Bool pres; /*!< Indicates the presence of PUSCH configuration info */
342 CtfPuschCfgBasic puschBasicCfg; /*!< PUSCH basic configuration */
343 CtfPuschUlRS puschUlRS; /*!< PUSCH uplink RS */
347 * @brief PHICH configuration.
348 * @details This structure contains the duration and resource information for
349 * PHICH configuration at PHY.
351 typedef struct ctfPhichCfgInfo {
352 Bool pres; /*!< Indicates the presence of PHICH
353 configuration info */
354 CtfPhichDuration duration; /*!< PHICH duration, normal/extended,
356 CtfPhichResource resource; /*!< PHICH Resource, Ng [36.211, 6.9] */
360 * @brief PUCCH configuration.
361 * @details This structure contains the information for PUCCH
362 * configuration at PHY.
364 typedef struct ctfPucchCfgInfo {
365 Bool pres; /*!< Indicates the presence of PUCCH configuration info */
366 uint8_t nRB; /*!< Number of RBs that are available for use by
367 PUCCH formats (0..98) */
368 uint8_t nCS; /*!< Number of cyclic shifts used for PUCCH formats (0..7) */
369 uint16_t n1PUCCH; /*!< PUCCH resource for transmission of ACK/NACK (0..2047) */
370 CtfPucchDeltaShift deltaShift; /*!< PUCCH delta shift */
374 * @brief SRS uplink configuration.
375 * @details This structure contains the information for setting-up/release
376 * of uplink SRS configuration at PHY.
378 typedef struct ctfSrsUlCfgInfo {
379 Bool pres; /*!< Indicates the presence of UL SRS info */
380 uint8_t srsCfgType; /*!< Setup/Release: The setup structure
381 is valid ,only if srcCfgType is setup. */
384 uint8_t srsBw; /*!< SRS bandwidth config (0..7) */
385 uint8_t sfCfg; /*!< SRS sub-frame config (0..15) */
386 Bool srsANSimultTx; /*!< Simultaneous transmisson
387 of SRS and ACK/NACK */
388 Bool srsMaxUpPts; /*!< SRS MaxUpPTS: TRUE/FALSE,
389 This field is valid only for TDD */
394 * @brief Subframe Configuration for TDD mode.
395 * @details This structure contains the information for setting-up
396 * the subframe for TDD mode at PHY.
398 typedef struct ctfTddSfCfgInfo {
399 Bool pres; /*!< Indicates if this info is valid */
400 uint8_t sfAssignment; /*!< UL-DL subframe assignment : (0..6)
401 36.211 Table 4.2-2 */
402 uint8_t spclSfPatterns; /*!< Special subframe configuration : (0..8)
403 36.211 Table 4.2-1 */
406 /* ctf_x_001.main_4: Added support for vendor specific parameters */
409 * @brief Vendor Specific Parameter
410 * @details This structure contains the Parameters which is spaciftc to
414 typedef struct ctfVendorSpecific{
415 uint16_t buffLen ; /*!< Length of parameters in bytes */
416 uint8_t *paramBuffer ; /*!< parameter Buffer */
419 /* Cell specific configuration parameters */
422 * @brief Unlicensed Cell Configuration Information.
423 * @details This structure contains the information for setting-up
424 * of an unlicensed SDL cell and its associated resources at PHY.
426 typedef struct ctfUnLicnsdCellCfg {
427 uint8_t coExistMethod; /*!< Continuous/LTE-U/LAA */
428 uint8_t lteOnPeriod; /*!< Percentage of time SDL
430 uint8_t ccaMethod; /*!< Clear channel assesment method */
431 Bool adaptiveTx; /*!< Indicates if the duty cycle is
433 uint16_t transPeriod; /*!< Defines the duty cycle */
434 uint16_t listenPrd; /*!< Time duration in us for clear channel
436 S16 energyTh; /*!< Energy threshold in dBFS */
437 uint16_t scanTimePrd; /*!< Time period for RF channel scan */
438 uint16_t activityTh; /*!< Percentage of time for activity detection
439 to select different EARFCN */
440 S32 txPowerLimit; /*! Reference Signal power for Unlicensed Cell */
441 uint8_t numFreq; /*!< Number of unlicensed channels */
442 uint32_t earfcn[CTF_LTEU_MAX_EARFCN]; /*!< Unlicensed channels */
443 } CtfUnLicnsdCfgInfo;
445 typedef struct ctfLaaScanInd {
448 uint32_t earfcn[CTF_LTEU_MAX_EARFCN];
452 typedef struct ctfEmtcCElevelInfoLst {
453 uint8_t firstPreamble; /*!< for each CE mode, starting preamble */
454 uint8_t lastPreamble; /*!< for each CE mode, starting preamble */
455 uint8_t emtcNumRepPerPreambleAtt;/*!< num of repetition per preamble attempt*/
456 }CtfEmtcCElevelInfoLst;
460 * @brief Cell Configuration Information.
461 * @details This structure contains the information for setting-up
462 * of a cell and its associated resources at PHY.
464 typedef struct ctfCellCfgInfo {
465 CmLteCellId cellId; /*!< Cell ID */
466 uint8_t cellIdGrpId;/*!< Cell Identity Group ID (0..167) */
467 SpId macSapId; /*!< MAC SAP Id for Tfu Interface*/
468 SpId schSapId; /*!< Scheduler SAP Id for Tfu Interface */
469 /*ctf_x_001.main_3: Adding the remaining parameters */
470 Bool physCellIdPres ;
471 uint8_t physCellId; /*!< Cell ID (0..2) */
472 CtfBwCfgInfo bwCfg; /*!< Bandwidth configuration */
473 CtfTxSchemeCfg txCfg; /*!< Basic transmission scheme
474 configuration [36.300, 5.1.1] */
475 CtfAntennaCfgInfo antennaCfg; /*!< Antenna configuration */
476 CtfPrachCfgInfo prachCfg; /*!< PRACH configuration */
477 CtfPdschCfgInfo pdschCfg; /*!< PDSCH configuration */
478 CtfPuschCfgInfo puschCfg; /*!< PUSCH configuration */
479 CtfPhichCfgInfo phichCfg; /*!< PHICH configuration */
480 CtfPucchCfgInfo pucchCfg; /*!< PUCCH configuration */
481 CtfSrsUlCfgInfo srsUlCfg; /*!< SRS UL configuration, setup case */
482 CtfTddSfCfgInfo tddSfCfg; /*!< SubFrame configuration for TDD only */
484 /*ctf_x_001.main_3: Adding the remaining parameters */
485 uint16_t syncSigPowOs; /*!< Synchronization signal power offset */
486 Bool syncSigPowOsPres;
487 uint16_t cfiPowOs; /*!< Cfi Power Offset */
489 uint16_t dciPowOs; /*!< Dci Power Offser */
491 uint16_t extWinMargin; /*!< Extraction Window Marin */
492 Bool extWinMarginPres;
493 uint16_t pucchNoiseGamma; /*!< PUCCH Noise Estimation Gamma*/
494 Bool pucchNoiseGammaPres;
495 uint16_t prachPkRatio4; /*!< PRACH Format4 Peak Ratio */
496 Bool prachPkRatio4Pres;
497 uint16_t prachPkRatio0; /*!< PRACH Format0 Peak Ratio */
498 Bool prachPkRatio0Pres;
499 uint16_t srsDopEstFactor; /*!< Doppler Estimation Compensation Power */
500 Bool srsDopEstFactorPres;
501 uint16_t puschProbDtxAck; /*!< Portability Dtx Ack PUSCH */
502 Bool puschProbDtxAckPres;
503 uint16_t pucchProbDtxAck; /*!< Portability Dtx Ack PUCCH Format1 */
504 Bool pucchProbDtxAckPres;
506 uint16_t txAntennaPorts ; /*!< The number of cell specific transmit antenna ports */
507 Bool txAntennaPortsPres;
508 uint16_t rxAntennaPorts ; /*!< The number of cell specific receive antenna ports */
509 Bool rxAntennaPortsPres ;
511 uint16_t phySyncMode; /*!< The method used by the PHY to signal the 1ms subframe */
512 Bool phySyncModePres;
513 uint16_t dataRepMode; /*!< The data report mode for the uplink data */
514 Bool dataRepModePres ;
515 uint16_t rachSrRepMode; /*!< The reporting mode for RACH.indication and SR.indcation */
516 Bool rachSrRepModePres;
517 /* PHY configuration parameters */
525 /*Start Fix for CR ccpu00123185 */
527 /*End Fix for CR ccpu00123185 */
528 /* Added parameter for rgu dynamic delta*/
529 uint8_t numDlUePerTti;
530 Bool unLicnsdCfgPres; /*!< Flag to indicate unlicensed cell config */
531 CtfUnLicnsdCfgInfo lteUCfg; /*!< Unlicensed carrier config */
535 CtfEmtcCElevelInfoLst ceLevelInfo[CTF_MAX_CE_LEVEL];
540 * @enum CtfCellStatus
541 * This element enumerates the Cell Status for configuration at PHY.
544 CTF_CELL_DOWN, /*!< Cell DOWN selection */
545 CTF_CELL_UP /*!< Cell UP selection */
549 * @brief Cell Re-configuration Information.
550 * @details This structure contains the information for reconfiguration
551 * of a cell and its associated resources at PHY.
553 typedef struct ctfCellRecfgInfo {
554 CtfReCfgType ctfReCfgType ;
555 CmLteCellId cellId; /*!< Cell ID */
556 /*ctf_x_001.main_3: Adding the remaining parameters */
557 uint8_t cellIdGrpId;/*!< Cell Identity Group ID (0..167) */
558 Bool physCellIdPres ;
559 uint8_t physCellId; /*!< Cell ID (0..2) */
560 CtfBwCfgInfo bwCfg; /*!< Bandwidth configuration */
561 CtfTxSchemeCfg txCfg; /*!< Basic transmission scheme
562 configuration [36.300, 5.1.1] */
563 CtfAntennaCfgInfo antennaCfg; /*!< Antenna configuration */
564 CmLteTimingInfo actvnTime; /*!< Activation time, only SFN is valid */
565 CtfPrachCfgInfo prachCfg; /*!< PRACH configuration */
566 CtfPdschCfgInfo pdschCfg; /*!< PDSCH configuration */
567 CtfPuschCfgInfo puschCfg; /*!< PUSCH configuration */
568 CtfPhichCfgInfo phichCfg; /*!< PHICH configuration */
569 CtfPucchCfgInfo pucchCfg; /*!< PUCCH configuration */
570 CtfSrsUlCfgInfo srsUlCfg; /*!< SRS UL configuration, setup case */
571 CtfTddSfCfgInfo tddSfCfg; /*!< SubFrame configuration for TDD only */
572 /*ctf_x_001.main_3: Adding the remaining parameters */
573 uint16_t syncSigPowOs; /*!< Synchronization signal power offset */
574 Bool syncSigPowOsPres;
575 uint16_t cfiPowOs; /*!< Cfi Power Offset */
577 uint16_t dciPowOs; /*!< Dci Power Offser */
579 uint16_t extWinMargin; /*!< Extraction Window Marin */
580 Bool extWinMarginPres;
581 uint16_t pucchNoiseGamma; /*!< PUCCH Noise Estimation Gamma*/
582 Bool pucchNoiseGammaPres;
583 uint16_t prachPkRatio4; /*!< PRACH Format4 Peak Ratio */
584 Bool prachPkRatio4Pres;
585 uint16_t prachPkRatio0; /*!< PRACH Format0 Peak Ratio */
586 Bool prachPkRatio0Pres;
587 uint16_t srsDopEstFactor; /*!< Doppler Estimation Compensation Power */
588 Bool srsDopEstFactorPres;
589 uint16_t puschProbDtxAck; /*!< Portability Dtx Ack PUSCH */
590 Bool puschProbDtxAckPres;
591 uint16_t pucchProbDtxAck; /*!< Portability Dtx Ack PUCCH Format1 */
592 Bool pucchProbDtxAckPres;
594 uint16_t txAntennaPorts ; /*!< The number of cell specific transmit antenna ports */
595 Bool txAntennaPortsPres;
596 uint16_t rxAntennaPorts ; /*!< The number of cell specific receive antenna ports */
597 Bool rxAntennaPortsPres ;
599 uint16_t phySyncMode; /*!< The method used by the PHY to signal the 1ms subframe */
600 Bool phySyncModePres;
601 uint16_t dataRepMode; /*!< The data report mode for the uplink data */
602 Bool dataRepModePres ;
603 uint16_t rachSrRepMode; /*!< The reporting mode for RACH.indication and SR.indcation */
604 Bool rachSrRepModePres;
605 /*Start Fix for CR ccpu00123185 */
609 /*End Fix for CR ccpu00123185 */
610 CtfCellStatus ctfCellStatus;
611 #ifdef ENABLE_API_LOG
612 uint8_t enableAPILog;
613 #endif /* ENABLE_API_LOG */
616 /* UE-specific/Dedicated config parameters */
619 * @brief Dedicated PDSCH Configuration.
620 * @details This structure contains the information for PDSCH configuration
623 typedef struct ctfDedPdschCfgInfo {
624 Bool pres; /*!< Indicates the presence of PDSCH configuration info */
625 CtfPdschPaParam pA; /*!< Pa (in dB) */
626 } CtfDedPdschCfgInfo;
629 * @brief Dedicated PUCCH Configuration.
630 * @details This structure contains the information for setting-up/release
631 * PUCCH configuration specific to an UE.
633 typedef struct ctfDedPucchCfgInfo {
634 Bool pres; /*!< Indicates the presence of PUCCH info */
635 uint8_t dedPucchCfgType; /*!< Setup/Release */
639 /* ctf_x_001.main_4:115549: */
640 Bool repFactPres; /*!< Indicates if repetition factor
641 is configured or not */
642 #endif /* CTF_VER3 */
643 CtfPucchRepFactor repFact; /*!< ACK/NACK repetition factor */
644 uint16_t n1PUCCHRep; /*!< PUCCH resource to repeat the
645 transmission of the corresponding
646 ACK/NACK responce [36.213, 10.1] */
649 /* ctf_x_001.main_4:115549: */
650 Bool tddAckNackCfgPres; /*! Present flag for TDD
652 CtfTddAckNackFBMode tddAckNackFBMode; /*!< TDD ACK/NACK Feedback Mode
653 (bundling, multiplexing) */
654 #endif /* CTF_VER3 */
655 } CtfDedPucchCfgInfo;
658 * @brief Dedicated PUSCH Configuration.
659 * @details This structure contains the information for PUCCH
660 * configuration specific to an UE.
662 typedef struct ctfDedPuschCfgInfo {
663 Bool pres; /*!< Indicates the presence of PUSCH info */
664 uint8_t betaOffsetAckIdx; /*!< Beta offset ACK index, (0..15)
665 [36.213, Table 8.6.3.-1] */
666 uint8_t betaOffsetRiIdx; /*!< Beta offset RI index, (0..15)
667 [36.213, Table 8.6.3.-2] */
668 uint8_t betaOffsetCqiIdx; /*!< Beta offset CQI index, (0..15)
669 [36.213, Table 8.6.3.-3] */
670 } CtfDedPuschCfgInfo;
673 /* ctf_x_001.main_2: Added pmiRiRpt and cqiMask*/
676 * @enum ctfPmiRiRptSetup
677 * This element enumerates the CQI PMI Report setup configuration at PHY.
679 typedef enum ctfPmiRiRptSetup
681 CTF_CQI_PMI_RPT_SETUP /*!< PMI Report setup */
685 * @struct ctfPmiRiRpt
686 * This struct contains the CQI PMI Report setup configuration at PHY.
688 typedef struct ctfPmiRiRpt
690 Bool pres; /*!< Indicates presence of Pmi Ri Rpt */
691 CtfPmiRiRptSetup pmiRiRptSetup; /*!< PMI Report setup */
695 * @enum ctfCqiMaskSetup
696 * This element enumerates the CQI reporting setup configuration at PHY.
698 typedef enum ctfCqiMaskSetup
700 CTF_CQI_RPT_SETUP /*!< Cqi report setup */
705 * This struct contains the CQI reporting setup configuration at PHY.
707 typedef struct ctfCqiMask
709 Bool pres; /*!< Presence field */
710 CtfCqiMaskSetup cqiMaskSetup; /*!< Cqi Report Setup */
712 #endif /* CTF_VER1 */
715 /* ctf_x_001.main_2: Moved aPeriodic enum to seperate structure*/
717 /* Moved aPeriodic enum to seperate structure */
719 * @brief APeriodic CQI Report Configuration.
720 * @details This structure contains the information for Aperiodic CQI report
721 * related configuration specific to an UE.
723 typedef struct ctfCqiReportModeAPeriodic {
725 CtfCqiRptModeAperiodic aPeriodicRptMode; /*!<Aperiodic CQI report*/
727 #endif /* CTF_VER2 */
730 * @brief Periodic CQI Report Configuration.
731 * @details This structure contains the information for periodic CQI report
732 * related configuration specific to an UE.
734 typedef struct ctfCqiRptModePeriodic {
737 #endif /* CTF_VER2 */
738 uint8_t cqiPeriodicCfgType; /*!< Configuration type: Setup/Release */
741 uint16_t cqiPUCCHRsrcIndx; /*!< Range (0..1185) */
742 uint16_t cqiPmiCfgIndx; /*!< Range (0..1023) */
743 uint8_t formatIndicator; /*!< Type: Wideband/Subband */
746 uint8_t k; /*!< Range (1..4) */
747 } subbandCqi; /*!< Valid only if formatIndicator is Subband */
749 Bool riCfgPres; /*!< RI Configuration index is present or absent */
750 uint16_t riCfgIndx; /*!< Range (0..1023) */
751 Bool simultaneousAckNack; /*!< Simultaneous ACK/NACK with CQI support
752 TRUE: YES, FALSE: NO */
753 /* ctf_x_001.main_2: Added cqiMask*/
755 CtfCqiMask cqiMask; /*!< cqi mask */
756 #endif /* CTF_VER1 */
757 } cqiSetup; /*!< Valid only if cqiPeriodicCfgType is Setup */
758 } CtfCqiRptModePeriodic;
761 * @brief CQI Report Configuration.
762 * @details This structure contains the information for CQI report
763 * related configuration specific to an UE.
765 typedef struct ctfCqiReportCfgInfo {
766 Bool pres; /*!< Indicates the presence of this info */
767 /* ctf_x_001.main_2: period and aperiodic rpt both can be configured simultaneously*/
771 CtfCqiRptModeAprd aPeriodicRpt;
772 CtfCqiRptModePeriodic periodicRpt;
775 uint8_t reportingMode; /*!< Reporting mode: Periodic/Aperiodic */
778 CtfCqiRptModeAperiodic aPeriodicRpt;
779 CtfCqiRptModePeriodic periodicRpt;
781 #endif /* CTF_VER2 */
782 /* ctf_x_001.main_2: Added PmiRiRpt*/
784 CtfPmiRiRpt pmiRiRpt; /*!< Pmi Ri Report */
785 #endif /* CTF_VER1 */
786 } CtfCqiReportCfgInfo;
789 * @brief Dedicated Uplink SRS Configuration.
790 * @details This structure contains the information for setting-up/release
791 * UL SRS configuration specific to an UE.
793 typedef struct ctfDedSrsUlCfgInfo {
794 Bool pres; /*!< Indicates the presence of SRS UL info */
795 uint8_t dedSrsUlCfgType; /*!< Setup/Release */
798 uint8_t srsBw; /*!< SRS bandwidth(0,1,2,3) */
799 uint8_t srsHopngBw; /*!< SRS hopping bandwidth (0,1,2,3) */
800 uint8_t freqDmnPos; /*!< Frequency domain position (0..23) */
801 Bool duration; /*!< Duration, FALSE: single,
803 uint16_t srsCfgIdx; /*!< SRS config index (0..1023) */
804 uint8_t txComb; /*!< transmission comb (0..1) */
805 uint8_t cyclicShift; /*!< Cyclic shift (0..7) */
807 } CtfDedSrsUlCfgInfo;
810 * @brief Dedicated SR Configuration
811 * @details This structure contains the information for setting-up/release
812 * SR configuration specific to an UE at PHY.
814 typedef struct ctfDedSRCfgInfo {
815 Bool pres; /*!< Indicates the presence of SR info */
816 uint8_t dedSRCfgType; /*!< Setup/Release */
819 uint16_t srPUCCHRi; /*!< SR PUCCH Resource Index, n(1)PUCCH,SRI
821 uint8_t srCfgIdx; /*!< SR config index, Isr (0..155) */
822 } dedSrSetup; /*!< Valid only if dedSRCfgType is setup */
824 #endif /* TFU_UPGRADE */
827 /* ctf_x_001.main_2 : Added enum for Code Book Subset Restriction */
829 * @enum CtfCdBkSubsetRestnType
830 * This element enumerates the Code Book Subset Restriction
831 * configuration at PHY for a UE.
833 typedef enum ctfCdBkSubsetRestnType
835 N2TX_ANT_TM3, /*!< 2 Antenna Ports for transmissiom mode 3*/
836 N4TX_ANT_TM3, /*!< 4 Antenna Ports for transmissiom mode 3*/
837 N2TX_ANT_TM4, /*!< 2 Antenna Ports for transmissiom mode 4*/
838 N4TX_ANT_TM4, /*!< 4 Antenna Ports for transmissiom mode 4*/
839 N2TX_ANT_TM5, /*!< 2 Antenna Ports for transmissiom mode 5*/
840 N4TX_ANT_TM5, /*!< 4 Antenna Ports for transmissiom mode 5*/
841 N2TX_ANT_TM6, /*!< 2 Antenna Ports for transmissiom mode 6*/
842 N4TX_ANT_TM6 /*!< 4 Antenna Ports for transmissiom mode 6*/
843 }CtfCdBkSubsetRestnType;
845 /* nh005.201_LPR2 : Added new structure for Code Book Subset Restriction */
847 * @struct CtfDedAntCodeBkSubsetRes
848 * @brief Code Book Subset Restriction Configuration.
849 * @details This structure contains the information for
850 * codeBookSubsetRestriction configuration specific to
851 * transmission mode of a UE Phy.
853 typedef struct ctfDedAntCodeBookSubsetRestn
855 CtfCdBkSubsetRestnType ctfCdBkRestType;
858 uint8_t n2TxAntTm3; /*!< 2 Antenna Ports for transmissiom mode 3*/
859 uint8_t n4TxAntTm3; /*!< 4 Antenna Ports for transmissiom mode 3*/
860 uint8_t n2TxAntTm4; /*!< 2 Antenna Ports for transmissiom mode 4*/
861 uint8_t n4TxAntTm4[8]; /*!< 4 Antenna Ports for transmissiom mode 4*/
862 uint8_t n2TxAntTm5; /*!< 2 Antenna Ports for transmissiom mode 5*/
863 uint16_t n4TxAntTm5; /*!< 4 Antenna Ports for transmissiom mode 5*/
864 uint8_t n2TxAntTm6; /*!< 2 Antenna Ports for transmissiom mode 6*/
865 uint16_t n4TxAntTm6; /*!< 4 Antenna Ports for transmissiom mode 6*/
866 }codeBookSubsetRestn;
867 }CtfDedAntCodeBkSubsetRes;
868 #endif /* CTF_VER2 */
871 * @brief Dedicated Antenna Configuration.
872 * @details This structure contains the information for antenna related
873 * configuration specific to an UE at PHY.
875 typedef struct ctfDedAntCfgInfo {
876 Bool pres; /*!< Indicates the presence of antenna configuration info */
877 CtfUeTxAntMode txMode; /*!< Transmission Mode: 36.213, 7.1 */
878 struct ueTxAntSelectionS
880 uint8_t cfgType; /*!< Setup/Release */
881 CtfUeTxAntSelectType txAntSelect; /*!< Closed/Open, valid only if
882 cfgType is setup:36.213, 8.7 */
885 /*ctf_x_001.main_2 : Added CodeBookSubsetRestriction Parameter */
886 CtfDedAntCodeBkSubsetRes codeBookSubsetRes;
887 #endif /* CTF_VER2 */
891 * @brief UE Category Configuration.
892 * @details This structure contains the information for configuring
893 * the UE category at PHY.
895 typedef struct ctfUeCatCfgInfo {
896 Bool pres; /*!< TRUE - indicates UE category is present */
897 CmLteUeCategory ueCategory; /*!< UE category */
900 #ifdef TENB_AS_SECURITY
901 typedef struct ctfHdr{
907 * @brief KeNB Information Configuration.
908 * @details This structure contains the input information for
909 * deriving the AS security keys using HMAC-SHA256 KDF.
911 typedef struct ctfKenbCfgInfo{
914 uint8_t secKey[CTF_SEC_KEY_LEN];
920 * @brief Dedicated Configuration Information.
921 * @details This structure contains the information for configuration
922 * of UE-specific physical channel resources at PHY.
924 typedef struct ctfDedCfgInfo {
925 CmLteCellId cellId; /*!< Cell ID */
926 CmLteRnti ueId; /*!< UE ID */
927 CtfUeCatCfgInfo ueCatCfg; /*!< UE Cateogry configuration */
928 CtfDedPdschCfgInfo pdschCfg; /*!< PDSCH configuration */
929 CtfDedPucchCfgInfo pucchCfg; /*!< PUCCH configuration */
930 CtfDedPuschCfgInfo puschCfg; /*!< PUSCH configuration */
932 CtfCqiReportCfgInfo cqiRptCfg; /*!< CQI report configuration */
933 CtfDedSrsUlCfgInfo srsUlCfg; /*!< SRS UL configuration */
934 CtfDedSRCfgInfo dedSRCfg; /*!< SR configuration */
935 #endif /* TFU_UPGRADE */
936 CtfDedAntCfgInfo antInfo; /*!< Antenna configuration */
938 uint8_t isEmtcUe; /*!< UE type is EMTC or not */
942 /** @brief Each Secondary cell configuration Info for a UE*/
943 typedef struct ctfUeSecCellCfgInfo
945 uint8_t sCellIdx; /*!< This will be secondary cell Idx */
946 uint16_t sCellId; /*!< This will be secondary cellId */
947 }CtfUeSecCellCfgInfo;
949 /** @brief Secondary cell action for a UE*/
950 typedef enum ctfScellAction
953 CTF_SCELL_MOD_COMMON,
954 CTF_SCELL_MOD_DEDICATED,
958 /** @brief Secondary Cell Configuration for a UE*/
959 typedef struct ctfSecCellCfgInfo
962 CtfScellAction sCellAction;
963 CtfUeSecCellCfgInfo ueSCellDedCfg[CTF_MAX_SCELL_PER_UE];
967 * @brief Dedicated Re-configuration Information.
968 * @details This structure contains the information for re-configuration
969 * of UE-specific physical channel resources at PHY.
971 typedef struct ctfDedRecfgInfo {
972 CmLteCellId cellId; /*!< Cell ID */
973 CmLteRnti ueId; /*!< Old UE ID */
974 /* ctf_x_001.main_4: ReEst Fix */
976 CmLteRnti newUeId; /*!< If ueId is not getting reconfigured,
977 both ueId and newUeId shell hold same
978 value. If ueId is getting reconfigured
979 then these two value should be different
982 CmLteRnti newUeId; /*!< If ueId is not getting reconfigured,
983 both ueId and newUeId shell hold same
984 value. If ueId is getting reconfigured
985 then these two value should be different
991 CtfUeCatCfgInfo ueCatCfg; /*!< UE Cateogry configuration */
992 CtfDedPdschCfgInfo pdschCfg; /*!< PDSCH configuration */
993 CtfDedPucchCfgInfo pucchCfg; /*!< PUCCH configuration */
994 CtfDedPuschCfgInfo puschCfg; /*!< PUSCH configuration */
996 CtfDedSrsUlCfgInfo srsUlCfg; /*!< SRS UL configuration */
997 CtfDedSRCfgInfo dedSRCfg; /*!< SR configuration */
999 CtfCqiReportCfgInfo cqiRptCfg; /*!< CQI report configuration */
1000 #endif /* TFU_UPGRADE */
1001 CtfDedAntCfgInfo antInfo; /*!< Antenna configuration */
1003 CtfSecCellCfgInfo sCellInfo;
1007 * @brief Cell Release Information.
1008 * @details This structure contains the information for release/removal
1009 * of a cell and its assocated resources at PHY.
1011 typedef struct ctfCellReleaseInfo {
1012 CmLteCellId cellId; /*!< Cell ID */
1013 } CtfCellReleaseInfo;
1016 * @brief Dedicated Release Information
1017 * @details This structure contains the information for release/removal
1018 * of dedicated/UE-specific configuration at PHY.
1020 typedef struct ctfDedReleaseInfo {
1021 CmLteCellId cellId; /*!< Cell ID */
1022 CmLteRnti ueId; /*!< UE ID (rnti) */
1023 CtfSecCellCfgInfo sCellInfo;
1024 } CtfDedReleaseInfo;
1027 * @brief Configuration Information.
1028 * @details This structure contains the information for setting-up
1029 * cell or UE-specific configuration at PHY.
1031 typedef struct ctfCfgInfo {
1032 uint8_t cfgElem; /*!< Configuration element : Cell/UE */
1035 CtfCellCfgInfo cellCfg; /*!< Cell configuration */
1036 CtfDedCfgInfo dedCfg; /*!< UE configuration */
1041 * @brief Re-configuration Information.
1042 * @details This structure contains the information for re-configuring
1043 * cell or UE-specific configuration at PHY.
1045 typedef struct ctfReCfgInfo {
1046 uint8_t cfgElem; /*!< Configuration element: Cell/UE */
1049 CtfCellRecfgInfo cellRecfg; /*!< Cell reconfiguration */
1050 CtfDedRecfgInfo dedRecfg; /*!< UE reconfiguration */
1055 * @brief Release Configuration Information.
1056 * @details This structure contains the information for releasing
1057 * cell or UE-specific configuration at PHY.
1059 typedef struct ctfReleaseInfo {
1060 uint8_t cfgElem; /*!< Configuration element : Cell/UE */
1063 CtfCellReleaseInfo cellRel; /*!< Cell release */
1064 CtfDedReleaseInfo dedRel; /*!< UE release */
1071 * @brief Configuration Request Information.
1072 * @details This is the main structure in the configuration request primitive.
1073 * -# This structure contains the configuration information as given by
1074 * the User to configure PHY layer for common/dedicated resources.
1075 * -# It can contain Config/Reconfig/Release.
1076 * -# The result of configuration is indicated in TfUiCtfCfgCfm.
1078 typedef struct ctfCfgReqInfo {
1079 uint8_t cfgType; /*!< Configuration type: Config/Reconfig/Release */
1082 CtfCfgInfo cfg; /*!< Cell/UE Configuration information */
1083 CtfReCfgInfo reCfg; /*!< Cell/UE Reconfiguration information */
1084 CtfReleaseInfo release; /*!< Cell/UE Release information */
1086 /* ctf_x_001.main_4: Added support for vendor specific parameters */
1088 CtfVendorSpecific vendorParams ; /*!< Vendor Specific Parameter */
1092 #ifdef TENB_AS_SECURITY
1093 /********************************************************************************************************************************/
1094 /*START OF KEY DERIVATION FUNTION (KDF) REQUEST STRUCTURES*/
1095 /********************************************************************************************************************************/
1097 /*AS key generation input information structure*/
1098 typedef struct ctfAsKeyInfo{
1099 uint8_t intgAlgoType; /*!SNOW3g or AES used in key derivation as well */
1100 uint8_t ciphAlgoType; /*!SNOW3g or AES used in key derivation as well */
1101 uint8_t secKey[CTF_SEC_KEY_LEN]; /*!< eNodeB key received in initial context setup */
1104 /*Horizontal keNB derivation input information structure*/
1105 typedef struct ctfKenbStarInfo{
1106 uint16_t dlCarrFreq; /*!< DL UARFCN*/
1107 uint16_t physCellId; /*!< Physical cell ID*/
1108 uint8_t secKey[CTF_SEC_KEY_LEN]; /*!< Current eNodeB key at App used to derive keNB*. Horizontal KD */
1111 /*Vertical keNB derivation input information structure*/
1112 typedef struct ctfNhKeyInfo{
1113 uint16_t dlCarrFreq; /*!< DL UARFCN*/
1114 uint16_t physCellId; /*!< Physical cell ID*/
1115 uint8_t secKey[CTF_SEC_KEY_LEN]; /*!< NH key provided by MME used to derive keNB*. Vertical KD */
1118 typedef struct ctfKdfReqInfo {
1119 uint8_t keyDerType; /*!< Keyderivation type type: for AS security keys/keNB* from keNB/keNB* from NH key */
1122 CtfAsKeyInfo kEnbInf; /*!< eNodeB key for for deriving AS security keys */
1123 CtfKenbStarInfo kEnbStarInf; /*!< eNodeB key for for deriving eNodeB* Key (Horizontal key derivation ref: ts 33.401) */
1124 CtfNhKeyInfo nhKeyInf; /*!< NH key for for deriving eNodeB* Key (Verticall key derivation ref: ts 33.401) */
1128 /********************************************************************************************************************************/
1129 /*END OF REQUEST STRUCTURES*/
1130 /********************************************************************************************************************************/
1133 /********************************************************************************************************************************/
1134 /*START OF KEY DERIVATION FUNTION (KDF) CONFIRM STRUCTURES*/
1135 /********************************************************************************************************************************/
1137 /*AS key generation output information structure*/
1138 typedef struct ctfAskeyCfmInfo{
1139 uint8_t intKey[CTF_SEC_KEY_LEN]; /*!< eNodeB key received in initial context setup */
1140 uint8_t upCiphKey[CTF_SEC_KEY_LEN]; /*!< eNodeB key received in initial context setup */
1141 uint8_t cpCiphKey[CTF_SEC_KEY_LEN]; /*!< eNodeB key received in initial context setup */
1144 /*Horizontal keNB derivation output information structure*/
1145 typedef struct ctfKenbStarCfmInfo{
1146 uint8_t secKey[CTF_SEC_KEY_LEN]; /*!< Current eNodeB key at App used to derive keNB*. Horizontal KD */
1147 }CtfKenbStarCfmInfo;
1149 /*Vertical keNB derivation output information structure*/
1150 typedef struct ctfNhKeyCfmInfo{
1151 uint8_t secKey[CTF_SEC_KEY_LEN]; /*!< NH key provided by MME used to derive keNB*. Vertical KD */
1154 typedef struct ctfKdfCfmInfo {
1155 uint8_t keyDerType; /*!< Keyderivation type type: for AS security keys/keNB* from keNB/keNB* from NH key */
1158 CtfAskeyCfmInfo kEnbInf; /*!< AS security keys */
1159 CtfKenbStarCfmInfo kEnbStarInf; /*!< eNodeB* Key (Horizontal key derivation ref: ts 33.401) */
1160 CtfNhKeyCfmInfo nhKeyInf; /*!< eNodeB* Key (Verticall key derivation ref: ts 33.401) */
1164 /********************************************************************************************************************************/
1165 /*START OF CNM REQUEST STRUCTURES*/
1166 /********************************************************************************************************************************/
1169 typedef struct ctfCnmVendorSpecificInfo{
1170 uint16_t numOfVendorSpecifcParam; /* Number of vendor specific parameters */
1171 uint32_t vendorSpecifcParam[CTF_CNM_MAX_VENDOR_PARAMS]; /*List of vendor specific parameters */
1172 }CtfCnmVendorSpecificInfo;
1176 typedef struct ctfCnmCellSyncReq {
1177 uint16_t nbrEarfcn; /*earfcn of the neighbour to be synced with*/
1178 uint16_t nbrPCellId; /*PCI of the neighbour to be synced with*/
1179 uint8_t nbrTxAntCount; /*Number of Anttennas of the neighbour to be synced with
1180 Possible values 1,2,4 */
1181 uint8_t nbrCellCp; /* Cyclic perifx type of the neighbout cell
1182 * 0 : Normal Cp, 1:Extended Cp */
1183 uint8_t nbrCellNRb; /* Number of Resource blocks of the neighbour cell
1184 * possible values 6,15,25,50,75,100 */
1185 uint8_t nbrSpecSfCfg; /* Special Subframe configuraiton value of the neighbour cell */
1186 CtfCnmVendorSpecificInfo ctfCnmVendorSpecificInfo;
1190 typedef struct ctfCnmInitSyncReq {
1191 uint8_t searchType; /*0: search for all cells.
1192 *1: search for strongest cell.
1193 *2: Search for specific cell. */
1194 uint8_t mibRequest; /*Flag to indicate if MIB information
1195 of the searched cell should be
1196 indicated in cell search response message.*/
1197 uint16_t earfcn; /*earfcn to the searched for */
1198 uint8_t measBandWidth; /*Number of Rb */
1199 uint16_t numOfPciList; /*Number of Pci to be searched for */
1200 CtfCnmCellSyncReq pciList[CTF_CNM_MAX_CELL_SEARCH];
1202 /********************************************************************************************************************************/
1203 /*END OF REQUEST STRUCTURES*/
1204 /********************************************************************************************************************************/
1205 /********************************************************************************************************************************/
1206 /*START OF CNM CONFIRM STRUCTURES*/
1207 /********************************************************************************************************************************/
1209 typedef struct ctfCnmMibInfo {
1210 uint16_t sfn; /* The radio frame the data was received on */
1211 uint8_t numTxAntennas; /* Number of TX antennas of the cell */
1212 uint8_t phichDuration; /* The PHICH duration of the cell 0-Normal 1-Extended*/
1213 uint8_t phichResource; /* 0=1/6, 1=1/2 , 2=1 ,3=2 */
1214 uint8_t dlSystemBandWidht; /*Possible values 6,15,25,50,75,100 */
1219 typedef struct ctfCnmInitSyncInfo {
1220 uint16_t pci; /* Physical cell Id of the Cell */
1221 uint8_t rsrp; /* RSRP of the measured cell */
1222 uint8_t mibValidFlag; /* 1=MIB present 0=MIB not present */
1223 uint16_t localSfn; /* The radio frame data was received on the local cell */
1224 CtfCnmMibInfo ctfCnmMibInfo;/* MIB information */
1225 CtfCnmVendorSpecificInfo ctfCnmVendorSpecificInfo;
1226 }CtfCnmInitSyncInfo;
1229 typedef struct ctfCnmInitSyncRsp {
1230 uint8_t status; /*RFAILURE or ROK */
1231 uint16_t earfcn; /*Frequency channel of the searched cell */
1232 uint8_t numOfNeighbourInfo; /* number of neighboure Cell search Info */
1233 CtfCnmInitSyncInfo ctfCnmInitSyncInfo[CTF_CNM_MAX_CELL_SEARCH];
1236 typedef struct ctfCnmCellSyncRsp {
1237 uint8_t status; /*RFAILURE or ROK */
1240 typedef struct ctfCnmCellSyncInd {
1241 uint8_t status; /*RFAILURE or ROK */
1242 CtfCnmVendorSpecificInfo ctfCnmVendorSpecificInfo;
1245 /* Periodic REM for TPM */
1246 typedef struct ctfPeriodicRemCellInfo {
1251 }CtfPeriodicRemCellInfo;
1253 typedef struct ctfPeriodicRemCellSearchRsp {
1254 uint8_t numCells; /* Number of Cells */
1255 CtfPeriodicRemCellInfo cellInfo[CTF_REM_MAX_CELL_SEARCH];
1256 }CtfPeriodicRemCellSearchRsp;
1257 /* Periodic REM for TPM End */
1259 /********************************************************************************************************************************/
1260 /*END OF CNM CONFIRM STRUCTURES*/
1261 /********************************************************************************************************************************/
1263 * Function Prototypes
1265 /* Request from User to PHY to bind the CTF interface SAP. */
1266 typedef S16 (*CtfBndReq) ARGS((
1271 /* Confirmation from PHY to User for the bind request of the CTF interface SAP.
1273 typedef S16 (*CtfBndCfm) ARGS((
1278 /* Request from User to PHY to Unbind the CTF interface SAP. */
1279 typedef S16 (*CtfUbndReq) ARGS((
1284 /* Configuration Request from User to PHY for cell or dedicated configuration.
1286 typedef S16 (*CtfCfgReq) ARGS((
1289 CtfCfgTransId transId,
1290 CtfCfgReqInfo* cfgReqInfo));
1292 /* Configuration Confirm from PHY to User. */
1293 typedef S16 (*CtfCfgCfm) ARGS((
1296 CtfCfgTransId transId,
1299 /* EnodeB stop indication from PHY to User. */
1300 typedef S16 (*CtfEnbStopInd) ARGS((
1303 CtfCfgTransId transId));
1305 #ifdef TENB_AS_SECURITY
1306 typedef S16 (*CtfKdfReq) ARGS((
1309 CtfCfgTransId transId,
1310 CtfKdfReqInfo* cfgReqInfo));
1312 /* Configuration Confirm from PHY to User. */
1313 typedef S16 (*CtfKdfCfm) ARGS((
1316 CtfCfgTransId transId,
1317 CtfKdfCfmInfo* kdfCfmInfo,
1321 typedef S16 (*CtfCnmInitSyncReqMsg) ARGS((
1324 CtfCfgTransId* transId,
1325 CtfCnmInitSyncReq* cnmInitSyncReq));
1327 typedef S16 (*CtfCnmInitSyncRspMsg) ARGS((
1330 CtfCfgTransId* transId,
1331 CtfCnmInitSyncRsp* cnmInitSyncRsp));
1333 typedef S16 (*CtfCnmCellSyncReqMsg) ARGS((
1336 CtfCfgTransId* transId,
1337 CtfCnmCellSyncReq* cnmCellSyncReq));
1339 typedef S16 (*CtfCnmCellSyncRspMsg) ARGS((
1342 CtfCfgTransId* transId,
1343 CtfCnmCellSyncRsp* cnmCellSyncRsp));
1345 typedef S16 (*CtfCnmCellSyncIndMsg) ARGS((
1348 CtfCfgTransId* transId,
1349 CtfCnmCellSyncInd* cnmCellSyncInd));
1353 /* UE ID Change Request from User to PHY. */
1354 typedef S16 (*CtfUeIdChgReq) ARGS((
1357 CtfCfgTransId transId,
1359 CtfUeInfo * newUeInfo));
1361 /* UE ID Change Confirm from PHY to User. */
1362 typedef S16 (*CtfUeIdChgCfm) ARGS((
1365 CtfCfgTransId transId,
1370 * @brief Bind Request from PHY User to bind the CTF interface SAP.
1372 * @details This primitiveis used to bind a user to the CTF interface.
1373 * -# PHY layer registers this user, allocates a Service Access Point
1374 * for this bind and records the identity of the service user.
1375 * -# PHY issues a @ref TfUiCtfBndCfm to the service user after
1376 * completing a successful bind.
1378 * @param[in] pst Pointer to the post structure. SSI uses pst for loosely
1379 * coupled intertask communication.
1380 * @param[in] suId The service user SAP ID. The service user uses this
1381 * reference number to identify a SAP. The service user provides
1382 * this ID and the service provider retains it. The service
1383 * provider provides this reference number in any further
1384 * primitives that the service provider sends to the service
1386 * @param[in] spId The service provider SAP ID. The service provider uses this
1387 * reference number to identify its SAP. The service user
1388 * provides this reference number in any further primitives
1389 * that the service user sends to the service provider.
1393 * -# RFAILED on failure
1396 S16 TfUiCtfBndReq ARGS((
1403 * @brief Bind Confirm from PHY to User.
1405 * @details This primitive is used to report the status of processing a bind
1406 * request. If the service user does not receive a bind confirm
1407 * primitive, it must stop trying to bind after a limited number of
1408 * retries. The service provider must send a bind confirm upon
1409 * receiving a bind request primitive from the service user. These
1410 * status values are requested:
1411 * - CM_BND_OK: This status is reported when the bind request is
1413 * - CM_BND_NOK: This status is reported when the bind request is unsuccessful.
1415 * @param[in] pst Pointer to the post structure. SSI uses pst for loosely
1416 * coupled intertask communication.
1417 * @param[in] suId The service user SAP ID. The service user uses this
1418 * reference number to identify its lower control block.
1419 * @param[in] status The allowed values of status are:
1428 S16 TfUiCtfBndCfm ARGS((
1435 * @brief Unbind Request from PHY user.
1437 * @details This primitive is used to unbind the user SAP. The SAP is not
1438 * deallocated and hence a new bind request can be issued on this SAP
1439 * (without reconfiguring the SAP in PHY).
1441 * @param[in] pst Pointer to the post structure. SSI uses pst for loosely
1442 * coupled inter-task communication.
1443 * @param[in] spId The service provider SAP ID. The service provider uses this
1444 * this reference number to idenitfy the SAP.
1445 * @param[in] reason Defines the reason for the unbind.
1452 S16 TfUiCtfUbndReq ARGS((
1459 * @brief Configuration Request from User.
1461 * @details This primitive is used by User for the following at PHY:
1462 * - Configure cell-related parameters.
1463 * - Reconfigure cell-related parameters.
1464 * - Release a cell context.
1465 * - Configure UE-specific information.
1466 * - Reconfigure UE-specific information.
1467 * - Release UE-specific configuration.
1468 * The cell-specific configuration is identified using a cell identifier.
1469 * The UE-specific configuration is identified using a cell identifier and
1471 * The configuration request primitive is assocated with a transaction
1472 * identifier to correlate the configuration confirm returned by PHY.
1474 * @param[in] pst Pointer to the service user task configuration structure.
1475 * @param[in] spId The service provider SAP ID.
1476 * @param[in] transId The transaction identifier.
1477 * @param[in] cfgReqInfo Pointer to the PHY(Cell/UE) configuration information.
1484 S16 TfUiCtfCfgReq ARGS((
1487 CtfCfgTransId transId,
1488 CtfCfgReqInfo* cfgReqInfo
1492 * @brief Configuration Confirm from PHY to user.
1494 * @details This primitive is used to indicate to the service user the status of
1495 * configuration done at PHY as a response to configuration request.
1496 * The status field in this primitive carries the status of processing
1497 * this primitive at PHY. A configuration is treated as success, only
1498 * if it is successful at PHY. The primitive is associated with a
1499 * transaction identifier that is received in the request.
1501 * @param[in] pst Pointer to the post structure. SSI uses pst for loosely coupled
1502 * inter-task communication.
1503 * @param[in] suId The service user SAP ID.
1504 * @param[in] transId The transaction identifier associated with the
1505 * configuration request.
1506 * @param[in] status The status of the configuration request processing at PHY.
1507 * -# CTF_CFG_CFM_OK 1
1508 * -# CTF_CFG_CFM_NOK 2
1515 S16 TfUiCtfCfgCfm ARGS((
1518 CtfCfgTransId transId,
1523 * @brief Configuration Request from User.
1525 * @details This primitive is used by User for the following at PHY:
1526 * The cell-specific configuration is identified using a cell identifier.
1527 * The UE-specific configuration is identified using a cell identifier and
1529 * The configuration request primitive is assocated with a transaction
1530 * identifier to correlate the configuration confirm returned by PHY.
1532 * @param[in] pst Pointer to the service user task configuration structure.
1533 * @param[in] spId The service provider SAP ID.
1534 * @param[in] transId The transaction identifier.
1535 * @param[in] cfgReqInfo Pointer to the PHY(Cell/UE) configuration information.
1542 S16 TfUiCtfCnmCellSyncReq ARGS((
1545 CtfCfgTransId * transId,
1546 CtfCnmCellSyncReq* cfgReq
1550 * @brief Configuration Confirm from PHY to user.
1552 * @details This primitive is used to indicate to the service user the status of
1553 * configuration done at PHY as a response to configuration request.
1554 * The status field in this primitive carries the status of processing
1555 * this primitive at PHY. A configuration is treated as success, only
1556 * if it is successful at PHY. The primitive is associated with a
1557 * transaction identifier that is received in the request.
1559 * @param[in] pst Pointer to the post structure. SSI uses pst for loosely coupled
1560 * inter-task communication.
1561 * @param[in] suId The service user SAP ID.
1562 * @param[in] transId The transaction identifier associated with the
1563 * configuration request.
1564 * @param[in] status The status of the configuration request processing at PHY.
1565 * -# CTF_CFG_CFM_OK 1
1566 * -# CTF_CFG_CFM_NOK 2
1573 S16 TfUiCtfCnmCellSyncRsp ARGS((
1576 CtfCfgTransId * transId,
1577 CtfCnmCellSyncRsp * cnmCellSyncRsp
1581 * @brief Configuration Request from User.
1583 * @details This primitive is used by User for the following at PHY:
1584 * The cell-specific configuration is identified using a cell identifier.
1585 * The UE-specific configuration is identified using a cell identifier and
1587 * The configuration request primitive is assocated with a transaction
1588 * identifier to correlate the configuration confirm returned by PHY.
1590 * @param[in] pst Pointer to the service user task configuration structure.
1591 * @param[in] spId The service provider SAP ID.
1592 * @param[in] transId The transaction identifier.
1593 * @param[in] cfgReqInfo Pointer to the PHY(Cell/UE) configuration information.
1600 S16 TfUiCtfCnmInitSyncReq ARGS((
1603 CtfCfgTransId * transId,
1604 CtfCnmInitSyncReq* cfgReq
1608 * @brief Configuration Confirm from PHY to user.
1610 * @details This primitive is used to indicate to the service user the status of
1611 * configuration done at PHY as a response to configuration request.
1612 * The status field in this primitive carries the status of processing
1613 * this primitive at PHY. A configuration is treated as success, only
1614 * if it is successful at PHY. The primitive is associated with a
1615 * transaction identifier that is received in the request.
1617 * @param[in] pst Pointer to the post structure. SSI uses pst for loosely coupled
1618 * inter-task communication.
1619 * @param[in] suId The service user SAP ID.
1620 * @param[in] transId The transaction identifier associated with the
1621 * configuration request.
1622 * @param[in] status The status of the configuration request processing at PHY.
1623 * -# CTF_CFG_CFM_OK 1
1624 * -# CTF_CFG_CFM_NOK 2
1631 S16 TfUiCtfCnmInitSyncRsp ARGS((
1634 CtfCfgTransId * transId,
1635 CtfCnmInitSyncRsp * cnmInitSyncRsp
1639 * @brief Configuration Confirm from PHY to user.
1641 * @details This primitive is used to indicate to the service user the status of
1642 * configuration done at PHY as a response to configuration request.
1643 * The status field in this primitive carries the status of processing
1644 * this primitive at PHY. A configuration is treated as success, only
1645 * if it is successful at PHY. The primitive is associated with a
1646 * transaction identifier that is received in the request.
1648 * @param[in] pst Pointer to the post structure. SSI uses pst for loosely coupled
1649 * inter-task communication.
1650 * @param[in] suId The service user SAP ID.
1651 * @param[in] transId The transaction identifier associated with the
1652 * configuration request.
1653 * @param[in] status The status of the configuration request processing at PHY.
1654 * -# CTF_CFG_CFM_OK 1
1655 * -# CTF_CFG_CFM_NOK 2
1662 S16 TfUiCtfCnmCellSyncInd ARGS((
1665 CtfCfgTransId * transId,
1666 CtfCnmCellSyncInd * cnmCellSyncInd
1670 * @brief UE ID Change Request from User to PHY.
1672 * @details This primitive is used by User for reconfiguring the C-RNTI
1675 * @param[in] pst Pointer to the service user task configuration structure.
1676 * @param[in] spId The service provider SAP ID.
1677 * @param[in] transId The transaction identifier.
1678 * @param[in] ueInfo UE ID (C-RNTI) of the UE.
1679 * @param[in] newUeInfo New UE ID (C-RNTI) for the UE denoted by ueInfo.
1686 S16 TfUiCtfUeIdChgReq ARGS((
1689 CtfCfgTransId transId,
1691 CtfUeInfo * newUeInfo
1695 * @brief UE ID Change Confirm from PHY to user.
1697 * @details This primitive is used to indicate to the service user the status of
1698 * configuration done at PHY as a response to configuration request.
1699 * The status field in this primitive carries the status of processing
1700 * this primitive at PHY. A configuration is treated as success, only
1701 * if it is successful at PHY. The primitive is associated with a
1702 * transaction identifier that is received in the request.
1704 * @param[in] pst Pointer to the post structure. SSI uses pst for loosely coupled
1705 * inter-task communication.
1706 * @param[in] suId The service user SAP ID.
1707 * @param[in] transId The transaction identifier associated with the configuration
1709 * @param[in] status The status of the configuration request processging at PHY.
1710 * -# CTF_CFG_CFM_OK 1
1711 * -# CTF_CFG_CFM_NOK 2
1718 /** UE ID Change Confirm from PHY to User. */
1719 S16 TfUiCtfUeIdChgCfm ARGS((
1722 CtfCfgTransId transId,
1729 /* Request from User to PHY to Bind the CTF interface SAPs. */
1730 S16 NhLiCtfBndReq ARGS((
1735 /* Confirmation from PHY to User for the Bind/Unbind
1736 * Request for the CTF interface SAP. */
1737 S16 NhLiCtfBndCfm ARGS((
1742 /* Request from User to PHY to Unbind the CTF interface SAP. */
1743 S16 NhLiCtfUbndReq ARGS((
1748 /* Configuration Request from User to PHY for
1749 * cell or dedicated configuration. */
1750 S16 NhLiCtfCfgReq ARGS((
1753 CtfCfgTransId transId,
1754 CtfCfgReqInfo* cfgReqInfo
1756 /* Configuration Confirm from PHY to User. */
1757 S16 NhLiCtfCfgCfm ARGS((
1760 CtfCfgTransId transId,
1763 /** UE ID Change Request from User to PHY. */
1764 S16 NhLiCtfUeIdChgReq ARGS((
1767 CtfCfgTransId transId,
1769 CtfUeInfo * newUeInfo
1771 /** UE ID Change Confirm from PHY to user. */
1772 S16 NhLiCtfUeIdChgCfm ARGS((
1775 CtfCfgTransId transId,
1782 /* Request from User to PHY to Bind the CTF interface SAP. */
1783 S16 cmPkCtfBndReq ARGS((
1788 /* Request from User to PHY to Bind the CTF interface SAP. */
1789 S16 cmUnpkCtfBndReq ARGS((
1794 /* Confirmation from PHY to user for the Bind/Unbind
1795 * Request for the CTF interface SAP.
1797 S16 cmPkCtfBndCfm ARGS((
1802 /* Confirmation from PHY to User for the Bind/Unbind
1803 * Request for the CTF interface SAP.
1805 S16 cmUnpkCtfBndCfm ARGS((
1810 /* Request from User to PHY to Unbind the CTF interface SAP. */
1811 S16 cmPkCtfUbndReq ARGS((
1816 /* Request from User to PHY to Unbind the interface SAPs. */
1817 S16 cmUnpkCtfUbndReq ARGS((
1822 /* Configuration Request from User to PHY for
1823 * cell or dedicated configuration.
1826 S16 cmPkCtfCnmCellSyncReq ARGS((
1829 CtfCfgTransId * transId,
1830 CtfCnmCellSyncReq * ctfCnmCellSyncreq
1833 S16 cmUnpkCnmCellSyncReq ARGS((
1834 CtfCnmCellSyncReqMsg func,
1839 S16 cmPkCtfCnmCellSyncRsp ARGS((
1842 CtfCfgTransId * transId,
1843 CtfCnmCellSyncRsp * ctfCnmCellSyncrsp
1846 S16 cmUnpkCnmCellSyncRsp ARGS((
1847 CtfCnmCellSyncRspMsg func,
1853 S16 cmPkCtfCnmCellSyncInd ARGS((
1856 CtfCfgTransId * transId,
1857 CtfCnmCellSyncInd * ctfCnmCellSyncind
1860 S16 cmUnpkCnmCellSyncInd ARGS((
1861 CtfCnmCellSyncIndMsg func,
1866 S16 cmPkCtfCnmInitSyncReq ARGS((
1869 CtfCfgTransId * transId,
1870 CtfCnmInitSyncReq * ctfCnmInitSyncreq
1872 S16 cmUnpkCnmInitSyncReq ARGS((
1873 CtfCnmInitSyncReqMsg func,
1878 S16 cmPkCtfCnmInitSyncRsp ARGS((
1881 CtfCfgTransId * transId,
1882 CtfCnmInitSyncRsp * ctfCnmInitSyncrsp
1885 S16 cmUnpkCnmInitSyncRsp ARGS((
1886 CtfCnmInitSyncRspMsg func,
1893 #ifdef TENB_AS_SECURITY
1894 S16 cmPkCtfKdfReq ARGS((
1897 CtfCfgTransId transId,
1898 CtfKdfReqInfo * kdfReqInfo
1900 /* Configuration Request from User to PHY for
1901 * cell or dedicated configuration.
1903 S16 cmUnpkCtfKdfReq ARGS((
1908 /* Configuration Confirm from PHY to User. */
1909 S16 cmPkCtfkdfCfm ARGS((
1912 CtfCfgTransId transId,
1913 CtfKdfCfmInfo *kdfCfmInfo,
1916 /* Configuration Confirm from PHY to User. */
1917 S16 cmUnpkCtfKdfCfm ARGS((
1924 S16 cmPkCtfCfgReq ARGS((
1927 CtfCfgTransId transId,
1928 CtfCfgReqInfo * cfgReqInfo
1930 /* Configuration Request from User to PHY for
1931 * cell or dedicated configuration.
1933 S16 cmUnpkCtfCfgReq ARGS((
1938 /* Configuration Confirm from PHY to User. */
1939 S16 cmPkCtfCfgCfm ARGS((
1942 CtfCfgTransId transId,
1945 /* ENB-STOP Indication from PHY to User. */
1946 S16 cmPkCtfEnbStopInd ARGS((
1949 CtfCfgTransId transId
1951 /* Configuration Confirm from PHY to User. */
1952 S16 cmUnpkCtfCfgCfm ARGS((
1957 /* unpack ENB-STOP Indication from PHY to User. */
1958 S16 cmUnpkCtfEnbStopInd ARGS((
1963 /** UE ID Change Request from User to PHY. */
1964 S16 cmPkCtfUeIdChgReq ARGS((
1967 CtfCfgTransId transId,
1969 CtfUeInfo * newUeInfo
1971 /** UE ID Change Request from User to PHY. */
1972 S16 cmUnpkCtfUeIdChgReq ARGS((
1977 /** UE ID Change Confirm from PHY to User. */
1978 S16 cmPkCtfUeIdChgCfm ARGS((
1981 CtfCfgTransId transId,
1985 /** UE ID Change Confirm from PHY to User. */
1986 S16 cmUnpkCtfUeIdChgCfm ARGS((
1992 /* Periodic REM Scan changes */
1994 typedef S16 (*CtfPerRemCellSrchRsp) ARGS((
1997 CtfCfgTransId* transId,
1998 CtfPeriodicRemCellSearchRsp* sniffCellRsp));
2000 S16 cmUnpkPerRemCellSrchRsp ARGS ((
2001 CtfPerRemCellSrchRsp func,
2006 S16 cmUnpkCtfPerRemCellSrch ARGS ((
2007 CtfPeriodicRemCellSearchRsp *param,
2011 S16 cmUnpkCtfPerRemScanCellInfo ARGS ((
2012 CtfPeriodicRemCellInfo *param,
2016 S16 cmPkCtfPeriodicCellSearchRsp ARGS ((
2017 CtfPeriodicRemCellSearchRsp *param,
2021 S16 cmPkCtfPeriodicRemCellSearchRsp ARGS ((
2024 CtfCfgTransId *transId,
2025 CtfPeriodicRemCellSearchRsp *CellCfgRsp
2028 S16 cmPkPerRemScanCellInfo ARGS ((
2029 CtfPeriodicRemCellInfo *param,
2033 /* Periodic REM Scan changes End */
2037 /* Request from User to PHY to Bind the CTF interface SAP. */
2038 S16 DmUiCtfBndReq ARGS((
2043 /* Confirmation from PHY to User for the Bind/Unbind
2044 * Request for the CTF interface SAP.
2046 S16 DmUiCtfBndCfm ARGS((
2051 /* Request from User to PHY to Unbind the CTF interface SAP. */
2052 S16 DmUiCtfUbndReq ARGS((
2057 /* Configuration Request from User to PHY for
2058 * cell or dedicated configuration.
2060 S16 DmUiCtfCfgReq ARGS((
2063 CtfCfgTransId transId,
2064 CtfCfgReqInfo* cfgReqInfo
2066 /* Configuration Confirm from PHY to User. */
2067 S16 DmUiCtfCfgCfm ARGS((
2070 CtfCfgTransId transId,
2073 /** UE ID Change Request from User to PHY. */
2074 S16 DmUiCtfUeIdChgReq ARGS((
2077 CtfCfgTransId transId,
2079 CtfUeInfo * newUeInfo
2081 /** UE ID Change Confirm from PHY to user. */
2082 S16 DmUiCtfUeIdChgCfm ARGS((
2085 CtfCfgTransId transId,
2091 /*****************************************************************************
2092 * PACK/UNPACK FUNCTIONS
2093 ****************************************************************************/
2095 S16 cmPkCtfCfgTransId ARGS((
2096 CtfCfgTransId *param,
2099 S16 cmUnpkCtfCfgTransId ARGS((
2100 CtfCfgTransId *param,
2103 S16 cmPkCtfUeInfo ARGS((
2107 S16 cmUnpkCtfUeInfo ARGS((
2111 S16 cmPkCtfBwCfgInfo ARGS((
2112 CtfBwCfgInfo *param,
2115 S16 cmUnpkCtfBwCfgInfo ARGS((
2116 CtfBwCfgInfo *param,
2119 S16 cmPkCtfTxSchemeCfg ARGS((
2120 CtfTxSchemeCfg *param,
2123 S16 cmUnpkCtfTxSchemeCfg ARGS((
2124 CtfTxSchemeCfg *param,
2127 S16 cmPkCtfAntennaCfgInfo ARGS((
2128 CtfAntennaCfgInfo *param,
2131 S16 cmUnpkCtfAntennaCfgInfo ARGS((
2132 CtfAntennaCfgInfo *param,
2135 S16 cmPkCtfPrachCfgInfo ARGS((
2136 CtfPrachCfgInfo *param,
2139 S16 cmUnpkCtfPrachCfgInfo ARGS((
2140 CtfPrachCfgInfo *param,
2143 S16 cmPkCtfPdschCfgInfo ARGS((
2144 CtfPdschCfgInfo *param,
2147 S16 cmUnpkCtfPdschCfgInfo ARGS((
2148 CtfPdschCfgInfo *param,
2151 S16 cmPkCtfPuschCfgBasic ARGS((
2152 CtfPuschCfgBasic *param,
2155 S16 cmUnpkCtfPuschCfgBasic ARGS((
2156 CtfPuschCfgBasic *param,
2159 S16 cmPkCtfPuschUlRS ARGS((
2160 CtfPuschUlRS *param,
2163 S16 cmUnpkCtfPuschUlRS ARGS((
2164 CtfPuschUlRS *param,
2167 S16 cmPkCtfPuschCfgInfo ARGS((
2168 CtfPuschCfgInfo *param,
2171 S16 cmUnpkCtfPuschCfgInfo ARGS((
2172 CtfPuschCfgInfo *param,
2175 S16 cmPkCtfPhichCfgInfo ARGS((
2176 CtfPhichCfgInfo *param,
2179 S16 cmUnpkCtfPhichCfgInfo ARGS((
2180 CtfPhichCfgInfo *param,
2183 S16 cmPkCtfPucchCfgInfo ARGS((
2184 CtfPucchCfgInfo *param,
2187 S16 cmUnpkCtfPucchCfgInfo ARGS((
2188 CtfPucchCfgInfo *param,
2191 S16 cmPkCtfSrsUlCfgInfo ARGS((
2192 CtfSrsUlCfgInfo *param,
2195 S16 cmUnpkCtfSrsUlCfgInfo ARGS((
2196 CtfSrsUlCfgInfo *param,
2199 S16 cmPkCtfTddSfCfgInfo ARGS((
2200 CtfTddSfCfgInfo *param,
2203 S16 cmUnpkCtfTddSfCfgInfo ARGS((
2204 CtfTddSfCfgInfo *param,
2207 S16 cmPkCtfCellCfgInfo ARGS((
2208 CtfCellCfgInfo *param,
2211 S16 cmUnpkCtfCellCfgInfo ARGS((
2212 CtfCellCfgInfo *param,
2215 S16 cmPkCtfCellRecfgInfo ARGS((
2216 CtfCellRecfgInfo *param,
2219 S16 cmUnpkCtfCellRecfgInfo ARGS((
2220 CtfCellRecfgInfo *param,
2223 S16 cmPkCtfDedPdschCfgInfo ARGS((
2224 CtfDedPdschCfgInfo *param,
2227 S16 cmUnpkCtfDedPdschCfgInfo ARGS((
2228 CtfDedPdschCfgInfo *param,
2231 S16 cmPkCtfDedPucchCfgInfo ARGS((
2232 CtfDedPucchCfgInfo *param,
2235 S16 cmUnpkCtfDedPucchCfgInfo ARGS((
2236 CtfDedPucchCfgInfo *param,
2239 S16 cmPkCtfDedPuschCfgInfo ARGS((
2240 CtfDedPuschCfgInfo *param,
2243 S16 cmUnpkCtfDedPuschCfgInfo ARGS((
2244 CtfDedPuschCfgInfo *param,
2248 S16 cmPkCtfCqiRptModePeriodic ARGS((
2249 CtfCqiRptModePeriodic *param,
2252 S16 cmUnpkCtfCqiRptModePeriodic ARGS((
2253 CtfCqiRptModePeriodic *param,
2256 S16 cmPkCtfCqiReportCfgInfo ARGS((
2257 CtfCqiReportCfgInfo *param,
2260 S16 cmUnpkCtfCqiReportCfgInfo ARGS((
2261 CtfCqiReportCfgInfo *param,
2264 S16 cmPkCtfDedSrsUlCfgInfo ARGS((
2265 CtfDedSrsUlCfgInfo *param,
2268 S16 cmUnpkCtfDedSrsUlCfgInfo ARGS((
2269 CtfDedSrsUlCfgInfo *param,
2272 S16 cmPkCtfDedSRCfgInfo ARGS((
2273 CtfDedSRCfgInfo *param,
2276 S16 cmUnpkCtfDedSRCfgInfo ARGS((
2277 CtfDedSRCfgInfo *param,
2280 #endif /* TFU_UPGRADE */
2281 S16 cmPkCtfDedAntCfgInfo ARGS((
2282 CtfDedAntCfgInfo *param,
2285 S16 cmUnpkCtfDedAntCfgInfo ARGS((
2286 CtfDedAntCfgInfo *param,
2290 S16 cmPkCtfUeSecCellCfgInfo ARGS((
2291 CtfUeSecCellCfgInfo *param,
2295 S16 cmPkCtfSecCellCfgInfo ARGS((
2296 CtfSecCellCfgInfo *param,
2300 S16 cmUnpkCtfUeSecCellCfgInfo ARGS((
2301 CtfUeSecCellCfgInfo *param,
2305 S16 cmUnpkCtfSecCellCfgInfo ARGS((
2306 CtfSecCellCfgInfo *param,
2310 S16 cmPkCtfUeCatCfgInfo ARGS((
2311 CtfUeCatCfgInfo *param,
2314 S16 cmUnpkCtfUeCatCfgInfo ARGS((
2315 CtfUeCatCfgInfo *param,
2318 S16 cmPkCtfDedCfgInfo ARGS((
2319 CtfDedCfgInfo *param,
2322 S16 cmUnpkCtfDedCfgInfo ARGS((
2323 CtfDedCfgInfo *param,
2326 S16 cmPkCtfDedRecfgInfo ARGS((
2327 CtfDedRecfgInfo *param,
2330 S16 cmUnpkCtfDedRecfgInfo ARGS((
2331 CtfDedRecfgInfo *param,
2334 S16 cmPkCtfCellReleaseInfo ARGS((
2335 CtfCellReleaseInfo *param,
2338 S16 cmUnpkCtfCellReleaseInfo ARGS((
2339 CtfCellReleaseInfo *param,
2342 S16 cmPkCtfDedReleaseInfo ARGS((
2343 CtfDedReleaseInfo *param,
2346 S16 cmUnpkCtfDedReleaseInfo ARGS((
2347 CtfDedReleaseInfo *param,
2350 S16 cmPkCtfCfgInfo ARGS((
2354 S16 cmUnpkCtfCfgInfo ARGS((
2358 S16 cmPkCtfReCfgInfo ARGS((
2359 CtfReCfgInfo *param,
2362 S16 cmUnpkCtfReCfgInfo ARGS((
2363 CtfReCfgInfo *param,
2366 S16 cmPkCtfReleaseInfo ARGS((
2367 CtfReleaseInfo *param,
2370 S16 cmUnpkCtfReleaseInfo ARGS((
2371 CtfReleaseInfo *param,
2374 S16 cmPkCtfCfgReqInfo ARGS((
2375 CtfCfgReqInfo *param,
2378 /* ctf_x_001.main_4: Added support for vendor specific parameters */
2379 S16 cmUnpkCtfCfgReqInfo ARGS((
2381 CtfCfgReqInfo *param,
2386 S16 cmPkCtfVendorSpecParams ARGS((
2387 CtfVendorSpecific *param,
2391 S16 cmUnpkCtfVendorSpecParams ARGS((
2393 CtfVendorSpecific *param,
2396 #endif /* CTF_VER3*/
2398 /* Starts - Fix for CR ccpu00123185 */
2399 S16 cmPkCtfCellPwrcfgInfo ARGS((
2401 CtfCellRecfgInfo *param,
2405 S16 cmPkCtfCellStop ARGS((
2406 CtfCellRecfgInfo *param,
2410 S16 cmUnpkCtfCellPwrcfgInfo ARGS((
2411 CtfCellRecfgInfo *param,
2414 S16 cmUnpkCtfCellStop ARGS((
2415 CtfCellRecfgInfo *param,
2418 /* Ends - Fix for CR ccpu00123185 */
2419 #ifdef TENB_AS_SECURITY
2420 S16 cmPkCtfNhKeyInfo ARGS(
2422 CtfNhKeyInfo *param,
2425 S16 cmPkCtfKenbStarInfo ARGS(
2427 CtfKenbStarInfo *param,
2430 S16 cmPkCtfAskeyInfo ARGS(
2432 CtfAsKeyInfo *param,
2435 S16 cmPkCtfKdfReqInfo ARGS(
2437 CtfKdfReqInfo *param,
2440 S16 cmPkCtfKdfReq ARGS(
2444 CtfCfgTransId transId,
2445 CtfKdfReqInfo* kdfReqInfo
2447 S16 cmUnpkCtfNhKeyInfo ARGS(
2449 CtfNhKeyInfo *param,
2452 S16 cmUnpkCtfKenbStarInfo ARGS(
2454 CtfKenbStarInfo *param,
2457 S16 cmUnpkCtfAskeyInfo ARGS(
2459 CtfAsKeyInfo *param,
2462 S16 cmUnpkCtfKdfReqInfo ARGS(
2464 CtfKdfReqInfo *param,
2467 S16 cmUnpkCtfKdfReq ARGS(
2473 S16 cmPkCtfNhKeyCfmInfo ARGS(
2475 CtfNhKeyCfmInfo *param,
2478 S16 cmPkCtfKenbStarCfmInfo ARGS(
2480 CtfKenbStarCfmInfo *param,
2483 S16 cmPkCtfAskeyCfmInfo ARGS(
2485 CtfAskeyCfmInfo *param,
2488 S16 cmPkCtfKdfCfmInfo ARGS(
2490 CtfKdfCfmInfo *param,
2493 S16 cmPkCtfKdfCfm ARGS(
2497 CtfCfgTransId transId,
2498 CtfKdfCfmInfo *kdfCfmInfo,
2501 S16 cmUnpkCtfNhKeyCfmInfo ARGS(
2503 CtfNhKeyCfmInfo *param,
2506 S16 cmUnpkCtfKenbStarCfmInfo ARGS(
2508 CtfKenbStarCfmInfo *param,
2511 S16 cmUnpkCtfAskeyCfmInfo ARGS(
2513 CtfAskeyCfmInfo *param,
2516 S16 cmUnpkCtfKdfCfmInfo ARGS(
2518 CtfKdfCfmInfo *param,
2521 S16 cmUnpkCtfKdfCfm ARGS(
2530 S16 UrUiCtfHandleSnfMsgs ARGS((
2535 S16 cmPkCtfCnmVendorSpecificInfo ARGS((
2536 CtfCnmVendorSpecificInfo *param,
2540 S16 cmPkCtfCtfCnmCellSyncReq ARGS((
2541 CtfCnmCellSyncReq *param,
2545 S16 cmUnpkCtfCnmVendorSpecificInfo ARGS((
2546 CtfCnmVendorSpecificInfo *param,
2550 S16 cmUnpkCtfCtfCnmCellSyncReq ARGS((
2551 CtfCnmCellSyncReq *param,
2555 S16 cmPkCtfCnmCellSyncReq ARGS((
2558 CtfCfgTransId *transId,
2559 CtfCnmCellSyncReq * cfgReqInfo
2562 S16 cmUnpkCtfCnmCellSyncReq ARGS((
2563 CtfCnmCellSyncReqMsg func,
2568 S16 cmPkCtfCnmInitSyncReq ARGS((
2571 CtfCfgTransId *transId,
2572 CtfCnmInitSyncReq * cfgReqInfo
2575 S16 cmUnpkCtfCnmInitSyncReq ARGS((
2576 CtfCnmInitSyncReqMsg func,
2581 S16 cmPkCtfctfCnmMibInfo ARGS((
2582 CtfCnmMibInfo *param,
2586 S16 cmPkCtfctfCnmInitSyncInfo ARGS((
2587 CtfCnmInitSyncInfo *param,
2591 S16 cmPkCtfCnmInitSyncRsp ARGS((
2594 CtfCfgTransId *transId,
2595 CtfCnmInitSyncRsp * cfgRspInfo
2598 S16 cmUnpkCtfctfCnmMibInfo ARGS((
2599 CtfCnmMibInfo *param,
2603 S16 cmUnpkctfCnmInitSyncInfo ARGS((
2604 CtfCnmInitSyncInfo *param,
2608 S16 cmUnpkCtfCnmInitSyncRspMsg ARGS((
2609 CtfCnmInitSyncRsp *param,
2613 S16 cmUnpkCtfCnmInitSyncRsp ARGS((
2614 CtfCnmInitSyncRspMsg func,
2619 S16 cmPkCtfCnmCellSyncRsp ARGS((
2622 CtfCfgTransId *transId,
2623 CtfCnmCellSyncRsp * cfgRspInfo
2626 S16 cmUnpkCtfCnmSyncRspMsg ARGS((
2627 CtfCnmCellSyncRsp *param,
2631 S16 cmUnpkCtfCnmCellSyncRsp ARGS((
2632 CtfCnmCellSyncRspMsg func,
2637 S16 cmPkCtfCnmCellSyncInd ARGS((
2640 CtfCfgTransId *transId,
2641 CtfCnmCellSyncInd * cfgIndInfo
2644 S16 cmUnpkCtfCnmSyncIndMsg ARGS((
2645 CtfCnmCellSyncInd *param,
2649 S16 cmUnpkCtfCnmCellSyncInd ARGS((
2650 CtfCnmCellSyncIndMsg func,
2655 S16 cmPkCtfcfgReqInfo ARGS((
2656 CtfCnmInitSyncReq *param,
2660 S16 cmUnpkCtfsyncReqInfo ARGS((
2661 CtfCnmInitSyncReq *param,
2665 S16 cmPkCtfcfgRspInfo ARGS((
2666 CtfCnmInitSyncRsp *param,
2670 S16 cmPkCtfCellSyncRsp ARGS((
2671 CtfCnmCellSyncRsp *param,
2675 S16 cmPkCtfcfgIndInfo ARGS((
2676 CtfCnmCellSyncInd *param,
2683 #endif /* __CTF_X__ */
2685 /**********************************************************************
2687 **********************************************************************/