update F1AP to R16.3.1. testing with OTA eNB

This commit is contained in:
Raymond Knopp
2021-01-01 21:45:23 +01:00
parent d00b966d14
commit 1b95baaf4c
25 changed files with 21755 additions and 330 deletions
-12
View File
@@ -86,18 +86,6 @@
#define MAX_gNB 2
#endif
#define NUMBER_OF_DLSCH_MAX 16
#define NUMBER_OF_ULSCH_MAX 16
#define NUMBER_OF_SCH_STATS_MAX 16
#define NUMBER_OF_NR_DLSCH_MAX 2//16
#define NUMBER_OF_NR_ULSCH_MAX 2//16
#define NUMBER_OF_NR_SCH_STATS_MAX 16
#define NUMBER_OF_NR_PUCCH_MAX 16
#define NUMBER_OF_NR_SR_MAX 16
#define NUMBER_OF_NR_PDCCH_MAX 16
#define MAX_MANAGED_ENB_PER_MOBILE 2
#define MAX_MANAGED_GNB_PER_MOBILE 2
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,32 @@
-- **************************************************************
--
-- Common definitions
--
-- **************************************************************
F1AP-CommonDataTypes {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-access (22) modules (3) f1ap (3) version1 (1) f1ap-CommonDataTypes (3) }
DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
Criticality ::= ENUMERATED { reject, ignore, notify }
Presence ::= ENUMERATED { optional, conditional, mandatory }
PrivateIE-ID ::= CHOICE {
local INTEGER (0..65535),
global OBJECT IDENTIFIER
}
ProcedureCode ::= INTEGER (0..255)
ProtocolExtensionID ::= INTEGER (0..65535)
ProtocolIE-ID ::= INTEGER (0..65535)
TriggeringMessage ::= ENUMERATED { initiating-message, successful-outcome, unsuccessful-outcome }
END
@@ -0,0 +1,622 @@
-- **************************************************************
--
-- Constant definitions
--
-- **************************************************************
F1AP-Constants {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-access (22) modules (3) f1ap (3) version1 (1) f1ap-Constants (4) }
DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
-- **************************************************************
--
-- IE parameter types from other modules.
--
-- **************************************************************
IMPORTS
ProcedureCode,
ProtocolIE-ID
FROM F1AP-CommonDataTypes;
-- **************************************************************
--
-- Elementary Procedures
--
-- **************************************************************
id-Reset ProcedureCode ::= 0
id-F1Setup ProcedureCode ::= 1
id-ErrorIndication ProcedureCode ::= 2
id-gNBDUConfigurationUpdate ProcedureCode ::= 3
id-gNBCUConfigurationUpdate ProcedureCode ::= 4
id-UEContextSetup ProcedureCode ::= 5
id-UEContextRelease ProcedureCode ::= 6
id-UEContextModification ProcedureCode ::= 7
id-UEContextModificationRequired ProcedureCode ::= 8
id-UEMobilityCommand ProcedureCode ::= 9
id-UEContextReleaseRequest ProcedureCode ::= 10
id-InitialULRRCMessageTransfer ProcedureCode ::= 11
id-DLRRCMessageTransfer ProcedureCode ::= 12
id-ULRRCMessageTransfer ProcedureCode ::= 13
id-privateMessage ProcedureCode ::= 14
id-UEInactivityNotification ProcedureCode ::= 15
id-GNBDUResourceCoordination ProcedureCode ::= 16
id-SystemInformationDeliveryCommand ProcedureCode ::= 17
id-Paging ProcedureCode ::= 18
id-Notify ProcedureCode ::= 19
id-WriteReplaceWarning ProcedureCode ::= 20
id-PWSCancel ProcedureCode ::= 21
id-PWSRestartIndication ProcedureCode ::= 22
id-PWSFailureIndication ProcedureCode ::= 23
id-GNBDUStatusIndication ProcedureCode ::= 24
id-RRCDeliveryReport ProcedureCode ::= 25
id-F1Removal ProcedureCode ::= 26
id-NetworkAccessRateReduction ProcedureCode ::= 27
id-TraceStart ProcedureCode ::= 28
id-DeactivateTrace ProcedureCode ::= 29
id-DUCURadioInformationTransfer ProcedureCode ::= 30
id-CUDURadioInformationTransfer ProcedureCode ::= 31
id-BAPMappingConfiguration ProcedureCode ::= 32
id-GNBDUResourceConfiguration ProcedureCode ::= 33
id-IABTNLAddressAllocation ProcedureCode ::= 34
id-IABUPConfigurationUpdate ProcedureCode ::= 35
id-resourceStatusReportingInitiation ProcedureCode ::= 36
id-resourceStatusReporting ProcedureCode ::= 37
id-accessAndMobilityIndication ProcedureCode ::= 38
id-accessSuccess ProcedureCode ::= 39
id-cellTrafficTrace ProcedureCode ::= 40
id-PositioningMeasurementExchange ProcedureCode ::= 41
id-PositioningAssistanceInformationControl ProcedureCode ::= 42
id-PositioningAssistanceInformationFeedback ProcedureCode ::= 43
id-PositioningMeasurementReport ProcedureCode ::= 44
id-PositioningMeasurementAbort ProcedureCode ::= 45
id-PositioningMeasurementFailureIndication ProcedureCode ::= 46
id-PositioningMeasurementUpdate ProcedureCode ::= 47
id-TRPInformationExchange ProcedureCode ::= 48
id-PositioningInformationExchange ProcedureCode ::= 49
id-PositioningActivation ProcedureCode ::= 50
id-PositioningDeactivation ProcedureCode ::= 51
id-E-CIDMeasurementInitiation ProcedureCode ::= 52
id-E-CIDMeasurementFailureIndication ProcedureCode ::= 53
id-E-CIDMeasurementReport ProcedureCode ::= 54
id-E-CIDMeasurementTermination ProcedureCode ::= 55
id-PositioningInformationUpdate ProcedureCode ::= 56
id-ReferenceTimeInformationReport ProcedureCode ::= 57
id-ReferenceTimeInformationReportingControl ProcedureCode ::= 58
-- **************************************************************
--
-- Extension constants
--
-- **************************************************************
maxPrivateIEs INTEGER ::= 65535
maxProtocolExtensions INTEGER ::= 65535
maxProtocolIEs INTEGER ::= 65535
-- **************************************************************
--
-- Lists
--
-- **************************************************************
maxNRARFCN INTEGER ::= 3279165
maxnoofErrors INTEGER ::= 256
maxnoofIndividualF1ConnectionsToReset INTEGER ::= 65536
maxCellingNBDU INTEGER ::= 512
maxnoofSCells INTEGER ::= 32
maxnoofSRBs INTEGER ::= 8
maxnoofDRBs INTEGER ::= 64
maxnoofULUPTNLInformation INTEGER ::= 2
maxnoofDLUPTNLInformation INTEGER ::= 2
maxnoofBPLMNs INTEGER ::= 6
maxnoofCandidateSpCells INTEGER ::= 64
maxnoofPotentialSpCells INTEGER ::= 64
maxnoofNrCellBands INTEGER ::= 32
maxnoofSIBTypes INTEGER ::= 32
maxnoofSITypes INTEGER ::= 32
maxnoofPagingCells INTEGER ::= 512
maxnoofTNLAssociations INTEGER ::= 32
maxnoofQoSFlows INTEGER ::= 64
maxnoofSliceItems INTEGER ::= 1024
maxCellineNB INTEGER ::= 256
maxnoofExtendedBPLMNs INTEGER ::= 6
maxnoofUEIDs INTEGER ::= 65536
maxnoofBPLMNsNR INTEGER ::= 12
maxnoofUACPLMNs INTEGER ::= 12
maxnoofUACperPLMN INTEGER ::= 64
maxnoofAdditionalSIBs INTEGER ::= 63
maxnoofslots INTEGER ::= 5120
maxnoofTLAs INTEGER ::= 16
maxnoofGTPTLAs INTEGER ::= 16
maxnoofBHRLCChannels INTEGER ::= 65536
maxnoofRoutingEntries INTEGER ::= 1024
maxnoofIABSTCInfo INTEGER ::= 45
maxnoofSymbols INTEGER ::= 14
maxnoofServingCells INTEGER ::= 32
maxnoofDUFSlots INTEGER ::= 320
maxnoofHSNASlots INTEGER ::= 5120
maxnoofServedCellsIAB INTEGER ::= 512
maxnoofChildIABNodes INTEGER ::= 1024
maxnoofNonUPTrafficMappings INTEGER ::= 32
maxnoofTLAsIAB INTEGER ::= 1024
maxnoofMappingEntries INTEGER ::= 67108864
maxnoofDSInfo INTEGER ::= 64
maxnoofEgressLinks INTEGER ::= 2
maxnoofULUPTNLInformationforIAB INTEGER ::= 32678
maxnoofUPTNLAddresses INTEGER ::= 8
maxnoofSLDRBs INTEGER ::= 512
maxnoofQoSParaSets INTEGER ::= 8
maxnoofPC5QoSFlows INTEGER ::= 2048
maxnoofSSBAreas INTEGER ::= 64
maxnoofPhysicalResourceBlocks INTEGER ::= 275
maxnoofPhysicalResourceBlocks-1 INTEGER ::= 274
maxnoofPRACHconfigs INTEGER ::= 16
maxnoofRACHReports INTEGER ::= 64
maxnoofRLFReports INTEGER ::= 64
maxnoofAdditionalPDCPDuplicationTNL INTEGER ::= 2
maxnoofRLCDuplicationState INTEGER ::= 3
maxnoofCHOcells INTEGER ::= 8
maxnoofMDTPLMNs INTEGER ::= 16
maxnoofCAGsupported INTEGER ::= 12
maxnoofNIDsupported INTEGER ::= 12
maxnoofNRSCSs INTEGER ::= 5
maxnoofExtSliceItems INTEGER ::= 65535
maxnoofPosMeas INTEGER ::= 16384
maxnoofTRPInfoTypes INTEGER ::= 64
maxnoofTRPs INTEGER ::= 65535
maxnoofSRSTriggerStates INTEGER ::= 3
maxnoofSpatialRelations INTEGER ::= 64
maxnoBcastCell INTEGER ::= 16384
maxnoofAngleInfo INTEGER ::= 65535
maxnooflcs-gcs-translation INTEGER ::= 3
maxnoofPath INTEGER ::= 2
maxnoofMeasE-CID INTEGER ::= 64
maxnoofSSBs INTEGER ::= 255
maxnoSRS-ResourceSets INTEGER ::= 16
maxnoSRS-ResourcePerSet INTEGER ::= 16
maxnoSRS-Carriers INTEGER ::= 32
maxnoSCSs INTEGER ::= 5
maxnoSRS-Resources INTEGER ::= 64
maxnoSRS-PosResources INTEGER ::= 64
maxnoSRS-PosResourceSets INTEGER ::= 16
maxnoSRS-PosResourcePerSet INTEGER ::= 16
maxnoofPRS-ResourceSets INTEGER ::= 2
maxnoofPRS-ResourcesPerSet INTEGER ::= 64
maxNoOfMeasTRPs INTEGER ::= 64
maxnoofPRSresourceSets INTEGER ::= 8
maxnoofPRSresources INTEGER ::= 64
-- **************************************************************
--
-- IEs
--
-- **************************************************************
id-Cause ProtocolIE-ID ::= 0
id-Cells-Failed-to-be-Activated-List ProtocolIE-ID ::= 1
id-Cells-Failed-to-be-Activated-List-Item ProtocolIE-ID ::= 2
id-Cells-to-be-Activated-List ProtocolIE-ID ::= 3
id-Cells-to-be-Activated-List-Item ProtocolIE-ID ::= 4
id-Cells-to-be-Deactivated-List ProtocolIE-ID ::= 5
id-Cells-to-be-Deactivated-List-Item ProtocolIE-ID ::= 6
id-CriticalityDiagnostics ProtocolIE-ID ::= 7
id-CUtoDURRCInformation ProtocolIE-ID ::= 9
id-DRBs-FailedToBeModified-Item ProtocolIE-ID ::= 12
id-DRBs-FailedToBeModified-List ProtocolIE-ID ::= 13
id-DRBs-FailedToBeSetup-Item ProtocolIE-ID ::= 14
id-DRBs-FailedToBeSetup-List ProtocolIE-ID ::= 15
id-DRBs-FailedToBeSetupMod-Item ProtocolIE-ID ::= 16
id-DRBs-FailedToBeSetupMod-List ProtocolIE-ID ::= 17
id-DRBs-ModifiedConf-Item ProtocolIE-ID ::= 18
id-DRBs-ModifiedConf-List ProtocolIE-ID ::= 19
id-DRBs-Modified-Item ProtocolIE-ID ::= 20
id-DRBs-Modified-List ProtocolIE-ID ::= 21
id-DRBs-Required-ToBeModified-Item ProtocolIE-ID ::= 22
id-DRBs-Required-ToBeModified-List ProtocolIE-ID ::= 23
id-DRBs-Required-ToBeReleased-Item ProtocolIE-ID ::= 24
id-DRBs-Required-ToBeReleased-List ProtocolIE-ID ::= 25
id-DRBs-Setup-Item ProtocolIE-ID ::= 26
id-DRBs-Setup-List ProtocolIE-ID ::= 27
id-DRBs-SetupMod-Item ProtocolIE-ID ::= 28
id-DRBs-SetupMod-List ProtocolIE-ID ::= 29
id-DRBs-ToBeModified-Item ProtocolIE-ID ::= 30
id-DRBs-ToBeModified-List ProtocolIE-ID ::= 31
id-DRBs-ToBeReleased-Item ProtocolIE-ID ::= 32
id-DRBs-ToBeReleased-List ProtocolIE-ID ::= 33
id-DRBs-ToBeSetup-Item ProtocolIE-ID ::= 34
id-DRBs-ToBeSetup-List ProtocolIE-ID ::= 35
id-DRBs-ToBeSetupMod-Item ProtocolIE-ID ::= 36
id-DRBs-ToBeSetupMod-List ProtocolIE-ID ::= 37
id-DRXCycle ProtocolIE-ID ::= 38
id-DUtoCURRCInformation ProtocolIE-ID ::= 39
id-gNB-CU-UE-F1AP-ID ProtocolIE-ID ::= 40
id-gNB-DU-UE-F1AP-ID ProtocolIE-ID ::= 41
id-gNB-DU-ID ProtocolIE-ID ::= 42
id-GNB-DU-Served-Cells-Item ProtocolIE-ID ::= 43
id-gNB-DU-Served-Cells-List ProtocolIE-ID ::= 44
id-gNB-DU-Name ProtocolIE-ID ::= 45
id-NRCellID ProtocolIE-ID ::= 46
id-oldgNB-DU-UE-F1AP-ID ProtocolIE-ID ::= 47
id-ResetType ProtocolIE-ID ::= 48
id-ResourceCoordinationTransferContainer ProtocolIE-ID ::= 49
id-RRCContainer ProtocolIE-ID ::= 50
id-SCell-ToBeRemoved-Item ProtocolIE-ID ::= 51
id-SCell-ToBeRemoved-List ProtocolIE-ID ::= 52
id-SCell-ToBeSetup-Item ProtocolIE-ID ::= 53
id-SCell-ToBeSetup-List ProtocolIE-ID ::= 54
id-SCell-ToBeSetupMod-Item ProtocolIE-ID ::= 55
id-SCell-ToBeSetupMod-List ProtocolIE-ID ::= 56
id-Served-Cells-To-Add-Item ProtocolIE-ID ::= 57
id-Served-Cells-To-Add-List ProtocolIE-ID ::= 58
id-Served-Cells-To-Delete-Item ProtocolIE-ID ::= 59
id-Served-Cells-To-Delete-List ProtocolIE-ID ::= 60
id-Served-Cells-To-Modify-Item ProtocolIE-ID ::= 61
id-Served-Cells-To-Modify-List ProtocolIE-ID ::= 62
id-SpCell-ID ProtocolIE-ID ::= 63
id-SRBID ProtocolIE-ID ::= 64
id-SRBs-FailedToBeSetup-Item ProtocolIE-ID ::= 65
id-SRBs-FailedToBeSetup-List ProtocolIE-ID ::= 66
id-SRBs-FailedToBeSetupMod-Item ProtocolIE-ID ::= 67
id-SRBs-FailedToBeSetupMod-List ProtocolIE-ID ::= 68
id-SRBs-Required-ToBeReleased-Item ProtocolIE-ID ::= 69
id-SRBs-Required-ToBeReleased-List ProtocolIE-ID ::= 70
id-SRBs-ToBeReleased-Item ProtocolIE-ID ::= 71
id-SRBs-ToBeReleased-List ProtocolIE-ID ::= 72
id-SRBs-ToBeSetup-Item ProtocolIE-ID ::= 73
id-SRBs-ToBeSetup-List ProtocolIE-ID ::= 74
id-SRBs-ToBeSetupMod-Item ProtocolIE-ID ::= 75
id-SRBs-ToBeSetupMod-List ProtocolIE-ID ::= 76
id-TimeToWait ProtocolIE-ID ::= 77
id-TransactionID ProtocolIE-ID ::= 78
id-TransmissionActionIndicator ProtocolIE-ID ::= 79
id-UE-associatedLogicalF1-ConnectionItem ProtocolIE-ID ::= 80
id-UE-associatedLogicalF1-ConnectionListResAck ProtocolIE-ID ::= 81
id-gNB-CU-Name ProtocolIE-ID ::= 82
id-SCell-FailedtoSetup-List ProtocolIE-ID ::= 83
id-SCell-FailedtoSetup-Item ProtocolIE-ID ::= 84
id-SCell-FailedtoSetupMod-List ProtocolIE-ID ::= 85
id-SCell-FailedtoSetupMod-Item ProtocolIE-ID ::= 86
id-RRCReconfigurationCompleteIndicator ProtocolIE-ID ::= 87
id-Cells-Status-Item ProtocolIE-ID ::= 88
id-Cells-Status-List ProtocolIE-ID ::= 89
id-Candidate-SpCell-List ProtocolIE-ID ::= 90
id-Candidate-SpCell-Item ProtocolIE-ID ::= 91
id-Potential-SpCell-List ProtocolIE-ID ::= 92
id-Potential-SpCell-Item ProtocolIE-ID ::= 93
id-FullConfiguration ProtocolIE-ID ::= 94
id-C-RNTI ProtocolIE-ID ::= 95
id-SpCellULConfigured ProtocolIE-ID ::= 96
id-InactivityMonitoringRequest ProtocolIE-ID ::= 97
id-InactivityMonitoringResponse ProtocolIE-ID ::= 98
id-DRB-Activity-Item ProtocolIE-ID ::= 99
id-DRB-Activity-List ProtocolIE-ID ::= 100
id-EUTRA-NR-CellResourceCoordinationReq-Container ProtocolIE-ID ::= 101
id-EUTRA-NR-CellResourceCoordinationReqAck-Container ProtocolIE-ID ::= 102
id-Protected-EUTRA-Resources-List ProtocolIE-ID ::= 105
id-RequestType ProtocolIE-ID ::= 106
id-ServCellIndex ProtocolIE-ID ::= 107
id-RAT-FrequencyPriorityInformation ProtocolIE-ID ::= 108
id-ExecuteDuplication ProtocolIE-ID ::= 109
id-NRCGI ProtocolIE-ID ::= 111
id-PagingCell-Item ProtocolIE-ID ::= 112
id-PagingCell-List ProtocolIE-ID ::= 113
id-PagingDRX ProtocolIE-ID ::= 114
id-PagingPriority ProtocolIE-ID ::= 115
id-SItype-List ProtocolIE-ID ::= 116
id-UEIdentityIndexValue ProtocolIE-ID ::= 117
id-gNB-CUSystemInformation ProtocolIE-ID ::= 118
id-HandoverPreparationInformation ProtocolIE-ID ::= 119
id-GNB-CU-TNL-Association-To-Add-Item ProtocolIE-ID ::= 120
id-GNB-CU-TNL-Association-To-Add-List ProtocolIE-ID ::= 121
id-GNB-CU-TNL-Association-To-Remove-Item ProtocolIE-ID ::= 122
id-GNB-CU-TNL-Association-To-Remove-List ProtocolIE-ID ::= 123
id-GNB-CU-TNL-Association-To-Update-Item ProtocolIE-ID ::= 124
id-GNB-CU-TNL-Association-To-Update-List ProtocolIE-ID ::= 125
id-MaskedIMEISV ProtocolIE-ID ::= 126
id-PagingIdentity ProtocolIE-ID ::= 127
id-DUtoCURRCContainer ProtocolIE-ID ::= 128
id-Cells-to-be-Barred-List ProtocolIE-ID ::= 129
id-Cells-to-be-Barred-Item ProtocolIE-ID ::= 130
id-TAISliceSupportList ProtocolIE-ID ::= 131
id-GNB-CU-TNL-Association-Setup-List ProtocolIE-ID ::= 132
id-GNB-CU-TNL-Association-Setup-Item ProtocolIE-ID ::= 133
id-GNB-CU-TNL-Association-Failed-To-Setup-List ProtocolIE-ID ::= 134
id-GNB-CU-TNL-Association-Failed-To-Setup-Item ProtocolIE-ID ::= 135
id-DRB-Notify-Item ProtocolIE-ID ::= 136
id-DRB-Notify-List ProtocolIE-ID ::= 137
id-NotficationControl ProtocolIE-ID ::= 138
id-RANAC ProtocolIE-ID ::= 139
id-PWSSystemInformation ProtocolIE-ID ::= 140
id-RepetitionPeriod ProtocolIE-ID ::= 141
id-NumberofBroadcastRequest ProtocolIE-ID ::= 142
id-Cells-To-Be-Broadcast-List ProtocolIE-ID ::= 144
id-Cells-To-Be-Broadcast-Item ProtocolIE-ID ::= 145
id-Cells-Broadcast-Completed-List ProtocolIE-ID ::= 146
id-Cells-Broadcast-Completed-Item ProtocolIE-ID ::= 147
id-Broadcast-To-Be-Cancelled-List ProtocolIE-ID ::= 148
id-Broadcast-To-Be-Cancelled-Item ProtocolIE-ID ::= 149
id-Cells-Broadcast-Cancelled-List ProtocolIE-ID ::= 150
id-Cells-Broadcast-Cancelled-Item ProtocolIE-ID ::= 151
id-NR-CGI-List-For-Restart-List ProtocolIE-ID ::= 152
id-NR-CGI-List-For-Restart-Item ProtocolIE-ID ::= 153
id-PWS-Failed-NR-CGI-List ProtocolIE-ID ::= 154
id-PWS-Failed-NR-CGI-Item ProtocolIE-ID ::= 155
id-ConfirmedUEID ProtocolIE-ID ::= 156
id-Cancel-all-Warning-Messages-Indicator ProtocolIE-ID ::= 157
id-GNB-DU-UE-AMBR-UL ProtocolIE-ID ::= 158
id-DRXConfigurationIndicator ProtocolIE-ID ::= 159
id-RLC-Status ProtocolIE-ID ::= 160
id-DLPDCPSNLength ProtocolIE-ID ::= 161
id-GNB-DUConfigurationQuery ProtocolIE-ID ::= 162
id-MeasurementTimingConfiguration ProtocolIE-ID ::= 163
id-DRB-Information ProtocolIE-ID ::= 164
id-ServingPLMN ProtocolIE-ID ::= 165
id-Protected-EUTRA-Resources-Item ProtocolIE-ID ::= 168
id-GNB-CU-RRC-Version ProtocolIE-ID ::= 170
id-GNB-DU-RRC-Version ProtocolIE-ID ::= 171
id-GNBDUOverloadInformation ProtocolIE-ID ::= 172
id-CellGroupConfig ProtocolIE-ID ::= 173
id-RLCFailureIndication ProtocolIE-ID ::= 174
id-UplinkTxDirectCurrentListInformation ProtocolIE-ID ::= 175
id-DC-Based-Duplication-Configured ProtocolIE-ID ::= 176
id-DC-Based-Duplication-Activation ProtocolIE-ID ::= 177
id-SULAccessIndication ProtocolIE-ID ::= 178
id-AvailablePLMNList ProtocolIE-ID ::= 179
id-PDUSessionID ProtocolIE-ID ::= 180
id-ULPDUSessionAggregateMaximumBitRate ProtocolIE-ID ::= 181
id-ServingCellMO ProtocolIE-ID ::= 182
id-QoSFlowMappingIndication ProtocolIE-ID ::= 183
id-RRCDeliveryStatusRequest ProtocolIE-ID ::= 184
id-RRCDeliveryStatus ProtocolIE-ID ::= 185
id-BearerTypeChange ProtocolIE-ID ::= 186
id-RLCMode ProtocolIE-ID ::= 187
id-Duplication-Activation ProtocolIE-ID ::= 188
id-Dedicated-SIDelivery-NeededUE-List ProtocolIE-ID ::= 189
id-Dedicated-SIDelivery-NeededUE-Item ProtocolIE-ID ::= 190
id-DRX-LongCycleStartOffset ProtocolIE-ID ::= 191
id-ULPDCPSNLength ProtocolIE-ID ::= 192
id-SelectedBandCombinationIndex ProtocolIE-ID ::= 193
id-SelectedFeatureSetEntryIndex ProtocolIE-ID ::= 194
id-ResourceCoordinationTransferInformation ProtocolIE-ID ::= 195
id-ExtendedServedPLMNs-List ProtocolIE-ID ::= 196
id-ExtendedAvailablePLMN-List ProtocolIE-ID ::= 197
id-Associated-SCell-List ProtocolIE-ID ::= 198
id-latest-RRC-Version-Enhanced ProtocolIE-ID ::= 199
id-Associated-SCell-Item ProtocolIE-ID ::= 200
id-Cell-Direction ProtocolIE-ID ::= 201
id-SRBs-Setup-List ProtocolIE-ID ::= 202
id-SRBs-Setup-Item ProtocolIE-ID ::= 203
id-SRBs-SetupMod-List ProtocolIE-ID ::= 204
id-SRBs-SetupMod-Item ProtocolIE-ID ::= 205
id-SRBs-Modified-List ProtocolIE-ID ::= 206
id-SRBs-Modified-Item ProtocolIE-ID ::= 207
id-Ph-InfoSCG ProtocolIE-ID ::= 208
id-RequestedBandCombinationIndex ProtocolIE-ID ::= 209
id-RequestedFeatureSetEntryIndex ProtocolIE-ID ::= 210
id-RequestedP-MaxFR2 ProtocolIE-ID ::= 211
id-DRX-Config ProtocolIE-ID ::= 212
id-IgnoreResourceCoordinationContainer ProtocolIE-ID ::= 213
id-UEAssistanceInformation ProtocolIE-ID ::= 214
id-NeedforGap ProtocolIE-ID ::= 215
id-PagingOrigin ProtocolIE-ID ::= 216
id-new-gNB-CU-UE-F1AP-ID ProtocolIE-ID ::= 217
id-RedirectedRRCmessage ProtocolIE-ID ::= 218
id-new-gNB-DU-UE-F1AP-ID ProtocolIE-ID ::= 219
id-NotificationInformation ProtocolIE-ID ::= 220
id-PLMNAssistanceInfoForNetShar ProtocolIE-ID ::= 221
id-UEContextNotRetrievable ProtocolIE-ID ::= 222
id-BPLMN-ID-Info-List ProtocolIE-ID ::= 223
id-SelectedPLMNID ProtocolIE-ID ::= 224
id-UAC-Assistance-Info ProtocolIE-ID ::= 225
id-RANUEID ProtocolIE-ID ::= 226
id-GNB-DU-TNL-Association-To-Remove-Item ProtocolIE-ID ::= 227
id-GNB-DU-TNL-Association-To-Remove-List ProtocolIE-ID ::= 228
id-TNLAssociationTransportLayerAddressgNBDU ProtocolIE-ID ::= 229
id-portNumber ProtocolIE-ID ::= 230
id-AdditionalSIBMessageList ProtocolIE-ID ::= 231
id-Cell-Type ProtocolIE-ID ::= 232
id-IgnorePRACHConfiguration ProtocolIE-ID ::= 233
id-CG-Config ProtocolIE-ID ::= 234
id-PDCCH-BlindDetectionSCG ProtocolIE-ID ::= 235
id-Requested-PDCCH-BlindDetectionSCG ProtocolIE-ID ::= 236
id-Ph-InfoMCG ProtocolIE-ID ::= 237
id-MeasGapSharingConfig ProtocolIE-ID ::= 238
id-systemInformationAreaID ProtocolIE-ID ::= 239
id-areaScope ProtocolIE-ID ::= 240
id-RRCContainer-RRCSetupComplete ProtocolIE-ID ::= 241
id-TraceActivation ProtocolIE-ID ::= 242
id-TraceID ProtocolIE-ID ::= 243
id-Neighbour-Cell-Information-List ProtocolIE-ID ::= 244
id-SymbolAllocInSlot ProtocolIE-ID ::= 246
id-NumDLULSymbols ProtocolIE-ID ::= 247
id-AdditionalRRMPriorityIndex ProtocolIE-ID ::= 248
id-DUCURadioInformationType ProtocolIE-ID ::= 249
id-CUDURadioInformationType ProtocolIE-ID ::= 250
id-AggressorgNBSetID ProtocolIE-ID ::= 251
id-VictimgNBSetID ProtocolIE-ID ::= 252
id-LowerLayerPresenceStatusChange ProtocolIE-ID ::= 253
id-Transport-Layer-Address-Info ProtocolIE-ID ::= 254
id-Neighbour-Cell-Information-Item ProtocolIE-ID ::= 255
id-IntendedTDD-DL-ULConfig ProtocolIE-ID ::= 256
id-QosMonitoringRequest ProtocolIE-ID ::= 257
id-BHChannels-ToBeSetup-List ProtocolIE-ID ::= 258
id-BHChannels-ToBeSetup-Item ProtocolIE-ID ::= 259
id-BHChannels-Setup-List ProtocolIE-ID ::= 260
id-BHChannels-Setup-Item ProtocolIE-ID ::= 261
id-BHChannels-ToBeModified-Item ProtocolIE-ID ::= 262
id-BHChannels-ToBeModified-List ProtocolIE-ID ::= 263
id-BHChannels-ToBeReleased-Item ProtocolIE-ID ::= 264
id-BHChannels-ToBeReleased-List ProtocolIE-ID ::= 265
id-BHChannels-ToBeSetupMod-Item ProtocolIE-ID ::= 266
id-BHChannels-ToBeSetupMod-List ProtocolIE-ID ::= 267
id-BHChannels-FailedToBeModified-Item ProtocolIE-ID ::= 268
id-BHChannels-FailedToBeModified-List ProtocolIE-ID ::= 269
id-BHChannels-FailedToBeSetupMod-Item ProtocolIE-ID ::= 270
id-BHChannels-FailedToBeSetupMod-List ProtocolIE-ID ::= 271
id-BHChannels-Modified-Item ProtocolIE-ID ::= 272
id-BHChannels-Modified-List ProtocolIE-ID ::= 273
id-BHChannels-SetupMod-Item ProtocolIE-ID ::= 274
id-BHChannels-SetupMod-List ProtocolIE-ID ::= 275
id-BHChannels-Required-ToBeReleased-Item ProtocolIE-ID ::= 276
id-BHChannels-Required-ToBeReleased-List ProtocolIE-ID ::= 277
id-BHChannels-FailedToBeSetup-Item ProtocolIE-ID ::= 278
id-BHChannels-FailedToBeSetup-List ProtocolIE-ID ::= 279
id-BHInfo ProtocolIE-ID ::= 280
id-BAPAddress ProtocolIE-ID ::= 281
id-ConfiguredBAPAddress ProtocolIE-ID ::= 282
id-BH-Routing-Information-Added-List ProtocolIE-ID ::= 283
id-BH-Routing-Information-Added-List-Item ProtocolIE-ID ::= 284
id-BH-Routing-Information-Removed-List ProtocolIE-ID ::= 285
id-BH-Routing-Information-Removed-List-Item ProtocolIE-ID ::= 286
id-UL-BH-Non-UP-Traffic-Mapping ProtocolIE-ID ::= 287
id-Activated-Cells-to-be-Updated-List ProtocolIE-ID ::= 288
id-Child-Nodes-List ProtocolIE-ID ::= 289
id-IAB-Info-IAB-DU ProtocolIE-ID ::= 290
id-IAB-Info-IAB-donor-CU ProtocolIE-ID ::= 291
id-IAB-TNL-Addresses-To-Remove-List ProtocolIE-ID ::= 292
id-IAB-TNL-Addresses-To-Remove-Item ProtocolIE-ID ::= 293
id-IAB-Allocated-TNL-Address-List ProtocolIE-ID ::= 294
id-IAB-Allocated-TNL-Address-Item ProtocolIE-ID ::= 295
id-IABIPv6RequestType ProtocolIE-ID ::= 296
id-IABv4AddressesRequested ProtocolIE-ID ::= 297
id-IAB-Barred ProtocolIE-ID ::= 298
id-TrafficMappingInformation ProtocolIE-ID ::= 299
id-UL-UP-TNL-Information-to-Update-List ProtocolIE-ID ::= 300
id-UL-UP-TNL-Information-to-Update-List-Item ProtocolIE-ID ::= 301
id-UL-UP-TNL-Address-to-Update-List ProtocolIE-ID ::= 302
id-UL-UP-TNL-Address-to-Update-List-Item ProtocolIE-ID ::= 303
id-DL-UP-TNL-Address-to-Update-List ProtocolIE-ID ::= 304
id-DL-UP-TNL-Address-to-Update-List-Item ProtocolIE-ID ::= 305
id-NRV2XServicesAuthorized ProtocolIE-ID ::= 306
id-LTEV2XServicesAuthorized ProtocolIE-ID ::= 307
id-NRUESidelinkAggregateMaximumBitrate ProtocolIE-ID ::= 308
id-LTEUESidelinkAggregateMaximumBitrate ProtocolIE-ID ::= 309
id-SIB12-message ProtocolIE-ID ::= 310
id-SIB13-message ProtocolIE-ID ::= 311
id-SIB14-message ProtocolIE-ID ::= 312
id-SLDRBs-FailedToBeModified-Item ProtocolIE-ID ::= 313
id-SLDRBs-FailedToBeModified-List ProtocolIE-ID ::= 314
id-SLDRBs-FailedToBeSetup-Item ProtocolIE-ID ::= 315
id-SLDRBs-FailedToBeSetup-List ProtocolIE-ID ::= 316
id-SLDRBs-Modified-Item ProtocolIE-ID ::= 317
id-SLDRBs-Modified-List ProtocolIE-ID ::= 318
id-SLDRBs-Required-ToBeModified-Item ProtocolIE-ID ::= 319
id-SLDRBs-Required-ToBeModified-List ProtocolIE-ID ::= 320
id-SLDRBs-Required-ToBeReleased-Item ProtocolIE-ID ::= 321
id-SLDRBs-Required-ToBeReleased-List ProtocolIE-ID ::= 322
id-SLDRBs-Setup-Item ProtocolIE-ID ::= 323
id-SLDRBs-Setup-List ProtocolIE-ID ::= 324
id-SLDRBs-ToBeModified-Item ProtocolIE-ID ::= 325
id-SLDRBs-ToBeModified-List ProtocolIE-ID ::= 326
id-SLDRBs-ToBeReleased-Item ProtocolIE-ID ::= 327
id-SLDRBs-ToBeReleased-List ProtocolIE-ID ::= 328
id-SLDRBs-ToBeSetup-Item ProtocolIE-ID ::= 329
id-SLDRBs-ToBeSetup-List ProtocolIE-ID ::= 330
id-SLDRBs-ToBeSetupMod-Item ProtocolIE-ID ::= 331
id-SLDRBs-ToBeSetupMod-List ProtocolIE-ID ::= 332
id-SLDRBs-SetupMod-List ProtocolIE-ID ::= 333
id-SLDRBs-FailedToBeSetupMod-List ProtocolIE-ID ::= 334
id-SLDRBs-SetupMod-Item ProtocolIE-ID ::= 335
id-SLDRBs-FailedToBeSetupMod-Item ProtocolIE-ID ::= 336
id-SLDRBs-ModifiedConf-List ProtocolIE-ID ::= 337
id-SLDRBs-ModifiedConf-Item ProtocolIE-ID ::= 338
id-UEAssistanceInformationEUTRA ProtocolIE-ID ::= 339
id-PC5LinkAMBR ProtocolIE-ID ::= 340
id-SL-PHY-MAC-RLC-Config ProtocolIE-ID ::= 341
id-SL-ConfigDedicatedEUTRA ProtocolIE-ID ::= 342
id-AlternativeQoSParaSetList ProtocolIE-ID ::= 343
id-CurrentQoSParaSetIndex ProtocolIE-ID ::= 344
id-gNBCUMeasurementID ProtocolIE-ID ::= 345
id-gNBDUMeasurementID ProtocolIE-ID ::= 346
id-RegistrationRequest ProtocolIE-ID ::= 347
id-ReportCharacteristics ProtocolIE-ID ::= 348
id-CellToReportList ProtocolIE-ID ::= 349
id-CellMeasurementResultList ProtocolIE-ID ::= 350
id-HardwareLoadIndicator ProtocolIE-ID ::= 351
id-ReportingPeriodicity ProtocolIE-ID ::= 352
id-TNLCapacityIndicator ProtocolIE-ID ::= 353
id-CarrierList ProtocolIE-ID ::= 354
id-ULCarrierList ProtocolIE-ID ::= 355
id-FrequencyShift7p5khz ProtocolIE-ID ::= 356
id-SSB-PositionsInBurst ProtocolIE-ID ::= 357
id-NRPRACHConfig ProtocolIE-ID ::= 358
id-RACHReportInformationList ProtocolIE-ID ::= 359
id-RLFReportInformationList ProtocolIE-ID ::= 360
id-TDD-UL-DLConfigCommonNR ProtocolIE-ID ::= 361
id-CNPacketDelayBudgetDownlink ProtocolIE-ID ::= 362
id-ExtendedPacketDelayBudget ProtocolIE-ID ::= 363
id-TSCTrafficCharacteristics ProtocolIE-ID ::= 364
id-ReportingRequestType ProtocolIE-ID ::= 365
id-TimeReferenceInformation ProtocolIE-ID ::= 366
id-CNPacketDelayBudgetUplink ProtocolIE-ID ::= 369
id-AdditionalPDCPDuplicationTNL-List ProtocolIE-ID ::= 370
id-RLCDuplicationInformation ProtocolIE-ID ::= 371
id-AdditionalDuplicationIndication ProtocolIE-ID ::= 372
id-ConditionalInterDUMobilityInformation ProtocolIE-ID ::= 373
id-ConditionalIntraDUMobilityInformation ProtocolIE-ID ::= 374
id-targetCellsToCancel ProtocolIE-ID ::= 375
id-requestedTargetCellGlobalID ProtocolIE-ID ::= 376
id-ManagementBasedMDTPLMNList ProtocolIE-ID ::= 377
id-TraceCollectionEntityIPAddress ProtocolIE-ID ::= 378
id-PrivacyIndicator ProtocolIE-ID ::= 379
id-TraceCollectionEntityURI ProtocolIE-ID ::= 380
id-mdtConfiguration ProtocolIE-ID ::= 381
id-ServingNID ProtocolIE-ID ::= 382
id-NPNBroadcastInformation ProtocolIE-ID ::= 383
id-NPNSupportInfo ProtocolIE-ID ::= 384
id-NID ProtocolIE-ID ::= 385
id-AvailableSNPN-ID-List ProtocolIE-ID ::= 386
id-SIB10-message ProtocolIE-ID ::= 387
id-DLCarrierList ProtocolIE-ID ::= 389
id-ExtendedTAISliceSupportList ProtocolIE-ID ::= 390
id-RequestedSRSTransmissionCharacteristics ProtocolIE-ID ::= 391
id-PosAssistance-Information ProtocolIE-ID ::= 392
id-PosBroadcast ProtocolIE-ID ::= 393
id-RoutingID ProtocolIE-ID ::= 394
id-PosAssistanceInformationFailureList ProtocolIE-ID ::= 395
id-PosMeasurementQuantities ProtocolIE-ID ::= 396
id-PosMeasurementResultList ProtocolIE-ID ::= 397
id-TRPInformationTypeListTRPReq ProtocolIE-ID ::= 398
id-TRPInformationTypeItem ProtocolIE-ID ::= 399
id-TRPInformationListTRPResp ProtocolIE-ID ::= 400
id-TRPInformationItem ProtocolIE-ID ::= 401
id-LMF-MeasurementID ProtocolIE-ID ::= 402
id-SRSType ProtocolIE-ID ::= 403
id-ActivationTime ProtocolIE-ID ::= 404
id-AbortTransmission ProtocolIE-ID ::= 405
id-PositioningBroadcastCells ProtocolIE-ID ::= 406
id-SRSConfiguration ProtocolIE-ID ::= 407
id-PosReportCharacteristics ProtocolIE-ID ::= 408
id-PosMeasurementPeriodicity ProtocolIE-ID ::= 409
id-TRPList ProtocolIE-ID ::= 410
id-RAN-MeasurementID ProtocolIE-ID ::= 411
id-LMF-UE-MeasurementID ProtocolIE-ID ::= 412
id-RAN-UE-MeasurementID ProtocolIE-ID ::= 413
id-E-CID-MeasurementQuantities ProtocolIE-ID ::= 414
id-E-CID-MeasurementQuantities-Item ProtocolIE-ID ::= 415
id-E-CID-MeasurementPeriodicity ProtocolIE-ID ::= 416
id-E-CID-MeasurementResult ProtocolIE-ID ::= 417
id-Cell-Portion-ID ProtocolIE-ID ::= 418
id-SFNInitialisationTime ProtocolIE-ID ::= 419
id-SystemFrameNumber ProtocolIE-ID ::= 420
id-SlotNumber ProtocolIE-ID ::= 421
id-TRP-MeasurementRequestList ProtocolIE-ID ::= 422
id-MeasurementBeamInfoRequest ProtocolIE-ID ::= 423
id-E-CID-ReportCharacteristics ProtocolIE-ID ::= 424
id-ConfiguredTACIndication ProtocolIE-ID ::= 425
id-Extended-GNB-DU-Name ProtocolIE-ID ::= 426
id-Extended-GNB-CU-Name ProtocolIE-ID ::= 427
END
@@ -0,0 +1,178 @@
F1AP-Containers {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-access (22) modules (3) f1ap (3) version1 (1) f1ap-Containers (5) }
DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
-- **************************************************************
--
-- IE parameter types from other modules.
--
-- **************************************************************
IMPORTS
Criticality,
Presence,
PrivateIE-ID,
ProtocolExtensionID,
ProtocolIE-ID
FROM F1AP-CommonDataTypes
maxPrivateIEs,
maxProtocolExtensions,
maxProtocolIEs
FROM F1AP-Constants;
-- **************************************************************
--
-- Class Definition for Protocol IEs
--
-- **************************************************************
F1AP-PROTOCOL-IES ::= CLASS {
&id ProtocolIE-ID UNIQUE,
&criticality Criticality,
&Value,
&presence Presence
}
WITH SYNTAX {
ID &id
CRITICALITY &criticality
TYPE &Value
PRESENCE &presence
}
-- **************************************************************
--
-- Class Definition for Protocol IEs
--
-- **************************************************************
F1AP-PROTOCOL-IES-PAIR ::= CLASS {
&id ProtocolIE-ID UNIQUE,
&firstCriticality Criticality,
&FirstValue,
&secondCriticality Criticality,
&SecondValue,
&presence Presence
}
WITH SYNTAX {
ID &id
FIRST CRITICALITY &firstCriticality
FIRST TYPE &FirstValue
SECOND CRITICALITY &secondCriticality
SECOND TYPE &SecondValue
PRESENCE &presence
}
-- **************************************************************
--
-- Class Definition for Protocol Extensions
--
-- **************************************************************
F1AP-PROTOCOL-EXTENSION ::= CLASS {
&id ProtocolExtensionID UNIQUE,
&criticality Criticality,
&Extension,
&presence Presence
}
WITH SYNTAX {
ID &id
CRITICALITY &criticality
EXTENSION &Extension
PRESENCE &presence
}
-- **************************************************************
--
-- Class Definition for Private IEs
--
-- **************************************************************
F1AP-PRIVATE-IES ::= CLASS {
&id PrivateIE-ID,
&criticality Criticality,
&Value,
&presence Presence
}
WITH SYNTAX {
ID &id
CRITICALITY &criticality
TYPE &Value
PRESENCE &presence
}
-- **************************************************************
--
-- Container for Protocol IEs
--
-- **************************************************************
ProtocolIE-Container {F1AP-PROTOCOL-IES : IEsSetParam} ::=
SEQUENCE (SIZE (0..maxProtocolIEs)) OF
ProtocolIE-Field {{IEsSetParam}}
ProtocolIE-SingleContainer {F1AP-PROTOCOL-IES : IEsSetParam} ::=
ProtocolIE-Field {{IEsSetParam}}
ProtocolIE-Field {F1AP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {
id F1AP-PROTOCOL-IES.&id ({IEsSetParam}),
criticality F1AP-PROTOCOL-IES.&criticality ({IEsSetParam}{@id}),
value F1AP-PROTOCOL-IES.&Value ({IEsSetParam}{@id})
}
-- **************************************************************
--
-- Container for Protocol IE Pairs
--
-- **************************************************************
ProtocolIE-ContainerPair {F1AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
SEQUENCE (SIZE (0..maxProtocolIEs)) OF
ProtocolIE-FieldPair {{IEsSetParam}}
ProtocolIE-FieldPair {F1AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= SEQUENCE {
id F1AP-PROTOCOL-IES-PAIR.&id ({IEsSetParam}),
firstCriticality F1AP-PROTOCOL-IES-PAIR.&firstCriticality ({IEsSetParam}{@id}),
firstValue F1AP-PROTOCOL-IES-PAIR.&FirstValue ({IEsSetParam}{@id}),
secondCriticality F1AP-PROTOCOL-IES-PAIR.&secondCriticality ({IEsSetParam}{@id}),
secondValue F1AP-PROTOCOL-IES-PAIR.&SecondValue ({IEsSetParam}{@id})
}
-- **************************************************************
--
-- Container for Protocol Extensions
--
-- **************************************************************
ProtocolExtensionContainer {F1AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
SEQUENCE (SIZE (1..maxProtocolExtensions)) OF
ProtocolExtensionField {{ExtensionSetParam}}
ProtocolExtensionField {F1AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENCE {
id F1AP-PROTOCOL-EXTENSION.&id ({ExtensionSetParam}),
criticality F1AP-PROTOCOL-EXTENSION.&criticality ({ExtensionSetParam}{@id}),
extensionValue F1AP-PROTOCOL-EXTENSION.&Extension ({ExtensionSetParam}{@id})
}
-- **************************************************************
--
-- Container for Private IEs
--
-- **************************************************************
PrivateIE-Container {F1AP-PRIVATE-IES : IEsSetParam } ::=
SEQUENCE (SIZE (1.. maxPrivateIEs)) OF
PrivateIE-Field {{IEsSetParam}}
PrivateIE-Field {F1AP-PRIVATE-IES : IEsSetParam} ::= SEQUENCE {
id F1AP-PRIVATE-IES.&id ({IEsSetParam}),
criticality F1AP-PRIVATE-IES.&criticality ({IEsSetParam}{@id}),
value F1AP-PRIVATE-IES.&Value ({IEsSetParam}{@id})
}
END
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,723 @@
-- **************************************************************
--
-- Elementary Procedure definitions
--
-- **************************************************************
F1AP-PDU-Descriptions {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
ngran-access (22) modules (3) f1ap (3) version1 (1) f1ap-PDU-Descriptions (0)}
DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
-- **************************************************************
--
-- IE parameter types from other modules.
--
-- **************************************************************
IMPORTS
Criticality,
ProcedureCode
FROM F1AP-CommonDataTypes
Reset,
ResetAcknowledge,
F1SetupRequest,
F1SetupResponse,
F1SetupFailure,
GNBDUConfigurationUpdate,
GNBDUConfigurationUpdateAcknowledge,
GNBDUConfigurationUpdateFailure,
GNBCUConfigurationUpdate,
GNBCUConfigurationUpdateAcknowledge,
GNBCUConfigurationUpdateFailure,
UEContextSetupRequest,
UEContextSetupResponse,
UEContextSetupFailure,
UEContextReleaseCommand,
UEContextReleaseComplete,
UEContextModificationRequest,
UEContextModificationResponse,
UEContextModificationFailure,
UEContextModificationRequired,
UEContextModificationConfirm,
ErrorIndication,
UEContextReleaseRequest,
DLRRCMessageTransfer,
ULRRCMessageTransfer,
GNBDUResourceCoordinationRequest,
GNBDUResourceCoordinationResponse,
PrivateMessage,
UEInactivityNotification,
InitialULRRCMessageTransfer,
SystemInformationDeliveryCommand,
Paging,
Notify,
WriteReplaceWarningRequest,
WriteReplaceWarningResponse,
PWSCancelRequest,
PWSCancelResponse,
PWSRestartIndication,
PWSFailureIndication,
GNBDUStatusIndication,
RRCDeliveryReport,
UEContextModificationRefuse,
F1RemovalRequest,
F1RemovalResponse,
F1RemovalFailure,
NetworkAccessRateReduction,
TraceStart,
DeactivateTrace,
DUCURadioInformationTransfer,
CUDURadioInformationTransfer,
BAPMappingConfiguration,
BAPMappingConfigurationAcknowledge,
GNBDUResourceConfiguration,
GNBDUResourceConfigurationAcknowledge,
IABTNLAddressRequest,
IABTNLAddressResponse,
IABUPConfigurationUpdateRequest,
IABUPConfigurationUpdateResponse,
IABUPConfigurationUpdateFailure,
ResourceStatusRequest,
ResourceStatusResponse,
ResourceStatusFailure,
ResourceStatusUpdate,
AccessAndMobilityIndication,
ReferenceTimeInformationReportingControl,
ReferenceTimeInformationReport,
AccessSuccess,
CellTrafficTrace,
PositioningMeasurementRequest,
PositioningMeasurementResponse,
PositioningMeasurementFailure,
PositioningAssistanceInformationControl,
PositioningAssistanceInformationFeedback,
PositioningMeasurementReport,
PositioningMeasurementAbort,
PositioningMeasurementFailureIndication,
PositioningMeasurementUpdate,
TRPInformationRequest,
TRPInformationResponse,
TRPInformationFailure,
PositioningInformationRequest,
PositioningInformationResponse,
PositioningInformationFailure,
PositioningActivationRequest,
PositioningActivationResponse,
PositioningActivationFailure,
PositioningDeactivation,
PositioningInformationUpdate,
E-CIDMeasurementInitiationRequest,
E-CIDMeasurementInitiationResponse,
E-CIDMeasurementInitiationFailure,
E-CIDMeasurementFailureIndication,
E-CIDMeasurementReport,
E-CIDMeasurementTerminationCommand
FROM F1AP-PDU-Contents
id-Reset,
id-F1Setup,
id-gNBDUConfigurationUpdate,
id-gNBCUConfigurationUpdate,
id-UEContextSetup,
id-UEContextRelease,
id-UEContextModification,
id-UEContextModificationRequired,
id-ErrorIndication,
id-UEContextReleaseRequest,
id-DLRRCMessageTransfer,
id-ULRRCMessageTransfer,
id-GNBDUResourceCoordination,
id-privateMessage,
id-UEInactivityNotification,
id-InitialULRRCMessageTransfer,
id-SystemInformationDeliveryCommand,
id-Paging,
id-Notify,
id-WriteReplaceWarning,
id-PWSCancel,
id-PWSRestartIndication,
id-PWSFailureIndication,
id-GNBDUStatusIndication,
id-RRCDeliveryReport,
id-F1Removal,
id-NetworkAccessRateReduction,
id-TraceStart,
id-DeactivateTrace,
id-DUCURadioInformationTransfer,
id-CUDURadioInformationTransfer,
id-BAPMappingConfiguration,
id-GNBDUResourceConfiguration,
id-IABTNLAddressAllocation,
id-IABUPConfigurationUpdate,
id-resourceStatusReportingInitiation,
id-resourceStatusReporting,
id-accessAndMobilityIndication,
id-ReferenceTimeInformationReportingControl,
id-ReferenceTimeInformationReport,
id-accessSuccess,
id-cellTrafficTrace,
id-PositioningMeasurementExchange,
id-PositioningAssistanceInformationControl,
id-PositioningAssistanceInformationFeedback,
id-PositioningMeasurementReport,
id-PositioningMeasurementAbort,
id-PositioningMeasurementFailureIndication,
id-PositioningMeasurementUpdate,
id-TRPInformationExchange,
id-PositioningInformationExchange,
id-PositioningActivation,
id-PositioningDeactivation,
id-PositioningInformationUpdate,
id-E-CIDMeasurementInitiation,
id-E-CIDMeasurementFailureIndication,
id-E-CIDMeasurementReport,
id-E-CIDMeasurementTermination
FROM F1AP-Constants
ProtocolIE-SingleContainer{},
F1AP-PROTOCOL-IES
FROM F1AP-Containers;
-- **************************************************************
--
-- Interface Elementary Procedure Class
--
-- **************************************************************
F1AP-ELEMENTARY-PROCEDURE ::= CLASS {
&InitiatingMessage ,
&SuccessfulOutcome OPTIONAL,
&UnsuccessfulOutcome OPTIONAL,
&procedureCode ProcedureCode UNIQUE,
&criticality Criticality DEFAULT ignore
}
WITH SYNTAX {
INITIATING MESSAGE &InitiatingMessage
[SUCCESSFUL OUTCOME &SuccessfulOutcome]
[UNSUCCESSFUL OUTCOME &UnsuccessfulOutcome]
PROCEDURE CODE &procedureCode
[CRITICALITY &criticality]
}
-- **************************************************************
--
-- Interface PDU Definition
--
-- **************************************************************
F1AP-PDU ::= CHOICE {
initiatingMessage InitiatingMessage,
successfulOutcome SuccessfulOutcome,
unsuccessfulOutcome UnsuccessfulOutcome,
choice-extension ProtocolIE-SingleContainer { { F1AP-PDU-ExtIEs} }
}
F1AP-PDU-ExtIEs F1AP-PROTOCOL-IES ::= { -- this extension is not used
...
}
InitiatingMessage ::= SEQUENCE {
procedureCode F1AP-ELEMENTARY-PROCEDURE.&procedureCode ({F1AP-ELEMENTARY-PROCEDURES}),
criticality F1AP-ELEMENTARY-PROCEDURE.&criticality ({F1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
value F1AP-ELEMENTARY-PROCEDURE.&InitiatingMessage ({F1AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}
SuccessfulOutcome ::= SEQUENCE {
procedureCode F1AP-ELEMENTARY-PROCEDURE.&procedureCode ({F1AP-ELEMENTARY-PROCEDURES}),
criticality F1AP-ELEMENTARY-PROCEDURE.&criticality ({F1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
value F1AP-ELEMENTARY-PROCEDURE.&SuccessfulOutcome ({F1AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}
UnsuccessfulOutcome ::= SEQUENCE {
procedureCode F1AP-ELEMENTARY-PROCEDURE.&procedureCode ({F1AP-ELEMENTARY-PROCEDURES}),
criticality F1AP-ELEMENTARY-PROCEDURE.&criticality ({F1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
value F1AP-ELEMENTARY-PROCEDURE.&UnsuccessfulOutcome ({F1AP-ELEMENTARY-PROCEDURES}{@procedureCode})
}
-- **************************************************************
--
-- Interface Elementary Procedure List
--
-- **************************************************************
F1AP-ELEMENTARY-PROCEDURES F1AP-ELEMENTARY-PROCEDURE ::= {
F1AP-ELEMENTARY-PROCEDURES-CLASS-1 |
F1AP-ELEMENTARY-PROCEDURES-CLASS-2,
...
}
F1AP-ELEMENTARY-PROCEDURES-CLASS-1 F1AP-ELEMENTARY-PROCEDURE ::= {
reset |
f1Setup |
gNBDUConfigurationUpdate |
gNBCUConfigurationUpdate |
uEContextSetup |
uEContextRelease |
uEContextModification |
uEContextModificationRequired |
writeReplaceWarning |
pWSCancel |
gNBDUResourceCoordination |
f1Removal |
bAPMappingConfiguration |
gNBDUResourceConfiguration |
iABTNLAddressAllocation |
iABUPConfigurationUpdate |
resourceStatusReportingInitiation |
positioningMeasurementExchange |
tRPInformationExchange |
positioningInformationExchange |
positioningActivation |
e-CIDMeasurementInitiation,
...
}
F1AP-ELEMENTARY-PROCEDURES-CLASS-2 F1AP-ELEMENTARY-PROCEDURE ::= {
errorIndication |
uEContextReleaseRequest |
dLRRCMessageTransfer |
uLRRCMessageTransfer |
uEInactivityNotification |
privateMessage |
initialULRRCMessageTransfer |
systemInformationDelivery |
paging |
notify |
pWSRestartIndication |
pWSFailureIndication |
gNBDUStatusIndication |
rRCDeliveryReport |
networkAccessRateReduction |
traceStart |
deactivateTrace |
dUCURadioInformationTransfer |
cUDURadioInformationTransfer |
resourceStatusReporting |
accessAndMobilityIndication |
referenceTimeInformationReportingControl|
referenceTimeInformationReport |
accessSuccess |
cellTrafficTrace |
positioningAssistanceInformationControl |
positioningAssistanceInformationFeedback |
positioningMeasurementReport |
positioningMeasurementAbort |
positioningMeasurementFailureIndication |
positioningMeasurementUpdate |
positioningDeactivation |
e-CIDMeasurementFailureIndication |
e-CIDMeasurementReport |
e-CIDMeasurementTermination |
positioningInformationUpdate,
...
}
-- **************************************************************
--
-- Interface Elementary Procedures
--
-- **************************************************************
reset F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE Reset
SUCCESSFUL OUTCOME ResetAcknowledge
PROCEDURE CODE id-Reset
CRITICALITY reject
}
f1Setup F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE F1SetupRequest
SUCCESSFUL OUTCOME F1SetupResponse
UNSUCCESSFUL OUTCOME F1SetupFailure
PROCEDURE CODE id-F1Setup
CRITICALITY reject
}
gNBDUConfigurationUpdate F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE GNBDUConfigurationUpdate
SUCCESSFUL OUTCOME GNBDUConfigurationUpdateAcknowledge
UNSUCCESSFUL OUTCOME GNBDUConfigurationUpdateFailure
PROCEDURE CODE id-gNBDUConfigurationUpdate
CRITICALITY reject
}
gNBCUConfigurationUpdate F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE GNBCUConfigurationUpdate
SUCCESSFUL OUTCOME GNBCUConfigurationUpdateAcknowledge
UNSUCCESSFUL OUTCOME GNBCUConfigurationUpdateFailure
PROCEDURE CODE id-gNBCUConfigurationUpdate
CRITICALITY reject
}
uEContextSetup F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE UEContextSetupRequest
SUCCESSFUL OUTCOME UEContextSetupResponse
UNSUCCESSFUL OUTCOME UEContextSetupFailure
PROCEDURE CODE id-UEContextSetup
CRITICALITY reject
}
uEContextRelease F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE UEContextReleaseCommand
SUCCESSFUL OUTCOME UEContextReleaseComplete
PROCEDURE CODE id-UEContextRelease
CRITICALITY reject
}
uEContextModification F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE UEContextModificationRequest
SUCCESSFUL OUTCOME UEContextModificationResponse
UNSUCCESSFUL OUTCOME UEContextModificationFailure
PROCEDURE CODE id-UEContextModification
CRITICALITY reject
}
uEContextModificationRequired F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE UEContextModificationRequired
SUCCESSFUL OUTCOME UEContextModificationConfirm
UNSUCCESSFUL OUTCOME UEContextModificationRefuse
PROCEDURE CODE id-UEContextModificationRequired
CRITICALITY reject
}
writeReplaceWarning F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE WriteReplaceWarningRequest
SUCCESSFUL OUTCOME WriteReplaceWarningResponse
PROCEDURE CODE id-WriteReplaceWarning
CRITICALITY reject
}
pWSCancel F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE PWSCancelRequest
SUCCESSFUL OUTCOME PWSCancelResponse
PROCEDURE CODE id-PWSCancel
CRITICALITY reject
}
errorIndication F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE ErrorIndication
PROCEDURE CODE id-ErrorIndication
CRITICALITY ignore
}
uEContextReleaseRequest F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE UEContextReleaseRequest
PROCEDURE CODE id-UEContextReleaseRequest
CRITICALITY ignore
}
initialULRRCMessageTransfer F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE InitialULRRCMessageTransfer
PROCEDURE CODE id-InitialULRRCMessageTransfer
CRITICALITY ignore
}
dLRRCMessageTransfer F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE DLRRCMessageTransfer
PROCEDURE CODE id-DLRRCMessageTransfer
CRITICALITY ignore
}
uLRRCMessageTransfer F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE ULRRCMessageTransfer
PROCEDURE CODE id-ULRRCMessageTransfer
CRITICALITY ignore
}
uEInactivityNotification F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE UEInactivityNotification
PROCEDURE CODE id-UEInactivityNotification
CRITICALITY ignore
}
gNBDUResourceCoordination F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE GNBDUResourceCoordinationRequest
SUCCESSFUL OUTCOME GNBDUResourceCoordinationResponse
PROCEDURE CODE id-GNBDUResourceCoordination
CRITICALITY reject
}
privateMessage F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE PrivateMessage
PROCEDURE CODE id-privateMessage
CRITICALITY ignore
}
systemInformationDelivery F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE SystemInformationDeliveryCommand
PROCEDURE CODE id-SystemInformationDeliveryCommand
CRITICALITY ignore
}
paging F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE Paging
PROCEDURE CODE id-Paging
CRITICALITY ignore
}
notify F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE Notify
PROCEDURE CODE id-Notify
CRITICALITY ignore
}
networkAccessRateReduction F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE NetworkAccessRateReduction
PROCEDURE CODE id-NetworkAccessRateReduction
CRITICALITY ignore
}
pWSRestartIndication F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE PWSRestartIndication
PROCEDURE CODE id-PWSRestartIndication
CRITICALITY ignore
}
pWSFailureIndication F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE PWSFailureIndication
PROCEDURE CODE id-PWSFailureIndication
CRITICALITY ignore
}
gNBDUStatusIndication F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE GNBDUStatusIndication
PROCEDURE CODE id-GNBDUStatusIndication
CRITICALITY ignore
}
rRCDeliveryReport F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE RRCDeliveryReport
PROCEDURE CODE id-RRCDeliveryReport
CRITICALITY ignore
}
f1Removal F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE F1RemovalRequest
SUCCESSFUL OUTCOME F1RemovalResponse
UNSUCCESSFUL OUTCOME F1RemovalFailure
PROCEDURE CODE id-F1Removal
CRITICALITY reject
}
traceStart F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE TraceStart
PROCEDURE CODE id-TraceStart
CRITICALITY ignore
}
deactivateTrace F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE DeactivateTrace
PROCEDURE CODE id-DeactivateTrace
CRITICALITY ignore
}
dUCURadioInformationTransfer F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE DUCURadioInformationTransfer
PROCEDURE CODE id-DUCURadioInformationTransfer
CRITICALITY ignore
}
cUDURadioInformationTransfer F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE CUDURadioInformationTransfer
PROCEDURE CODE id-CUDURadioInformationTransfer
CRITICALITY ignore
}
bAPMappingConfiguration F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE BAPMappingConfiguration
SUCCESSFUL OUTCOME BAPMappingConfigurationAcknowledge
PROCEDURE CODE id-BAPMappingConfiguration
CRITICALITY reject
}
gNBDUResourceConfiguration F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE GNBDUResourceConfiguration
SUCCESSFUL OUTCOME GNBDUResourceConfigurationAcknowledge
PROCEDURE CODE id-GNBDUResourceConfiguration
CRITICALITY reject
}
iABTNLAddressAllocation F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE IABTNLAddressRequest
SUCCESSFUL OUTCOME IABTNLAddressResponse
PROCEDURE CODE id-IABTNLAddressAllocation
CRITICALITY reject
}
iABUPConfigurationUpdate F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE IABUPConfigurationUpdateRequest
SUCCESSFUL OUTCOME IABUPConfigurationUpdateResponse
UNSUCCESSFUL OUTCOME IABUPConfigurationUpdateFailure
PROCEDURE CODE id-IABUPConfigurationUpdate
CRITICALITY reject
}
resourceStatusReportingInitiation F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE ResourceStatusRequest
SUCCESSFUL OUTCOME ResourceStatusResponse
UNSUCCESSFUL OUTCOME ResourceStatusFailure
PROCEDURE CODE id-resourceStatusReportingInitiation
CRITICALITY reject
}
resourceStatusReporting F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE ResourceStatusUpdate
PROCEDURE CODE id-resourceStatusReporting
CRITICALITY ignore
}
accessAndMobilityIndication F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE AccessAndMobilityIndication
PROCEDURE CODE id-accessAndMobilityIndication
CRITICALITY ignore
}
referenceTimeInformationReportingControl F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE ReferenceTimeInformationReportingControl
PROCEDURE CODE id-ReferenceTimeInformationReportingControl
CRITICALITY ignore
}
referenceTimeInformationReport F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE ReferenceTimeInformationReport
PROCEDURE CODE id-ReferenceTimeInformationReport
CRITICALITY ignore
}
accessSuccess F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE AccessSuccess
PROCEDURE CODE id-accessSuccess
CRITICALITY ignore
}
cellTrafficTrace F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE CellTrafficTrace
PROCEDURE CODE id-cellTrafficTrace
CRITICALITY ignore
}
positioningAssistanceInformationControl F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE PositioningAssistanceInformationControl
PROCEDURE CODE id-PositioningAssistanceInformationControl
CRITICALITY ignore
}
positioningAssistanceInformationFeedback F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE PositioningAssistanceInformationFeedback
PROCEDURE CODE id-PositioningAssistanceInformationFeedback
CRITICALITY ignore
}
positioningMeasurementExchange F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE PositioningMeasurementRequest
SUCCESSFUL OUTCOME PositioningMeasurementResponse
UNSUCCESSFUL OUTCOME PositioningMeasurementFailure
PROCEDURE CODE id-PositioningMeasurementExchange
CRITICALITY reject
}
positioningMeasurementReport F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE PositioningMeasurementReport
PROCEDURE CODE id-PositioningMeasurementReport
CRITICALITY ignore
}
positioningMeasurementAbort F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE PositioningMeasurementAbort
PROCEDURE CODE id-PositioningMeasurementAbort
CRITICALITY ignore
}
positioningMeasurementFailureIndication F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE PositioningMeasurementFailureIndication
PROCEDURE CODE id-PositioningMeasurementFailureIndication
CRITICALITY ignore
}
positioningMeasurementUpdate F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE PositioningMeasurementUpdate
PROCEDURE CODE id-PositioningMeasurementUpdate
CRITICALITY ignore
}
tRPInformationExchange F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE TRPInformationRequest
SUCCESSFUL OUTCOME TRPInformationResponse
UNSUCCESSFUL OUTCOME TRPInformationFailure
PROCEDURE CODE id-TRPInformationExchange
CRITICALITY reject
}
positioningInformationExchange F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE PositioningInformationRequest
SUCCESSFUL OUTCOME PositioningInformationResponse
UNSUCCESSFUL OUTCOME PositioningInformationFailure
PROCEDURE CODE id-PositioningInformationExchange
CRITICALITY reject
}
positioningActivation F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE PositioningActivationRequest
SUCCESSFUL OUTCOME PositioningActivationResponse
UNSUCCESSFUL OUTCOME PositioningActivationFailure
PROCEDURE CODE id-PositioningActivation
CRITICALITY reject
}
positioningDeactivation F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE PositioningDeactivation
PROCEDURE CODE id-PositioningDeactivation
CRITICALITY ignore
}
e-CIDMeasurementInitiation F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE E-CIDMeasurementInitiationRequest
SUCCESSFUL OUTCOME E-CIDMeasurementInitiationResponse
UNSUCCESSFUL OUTCOME E-CIDMeasurementInitiationFailure
PROCEDURE CODE id-E-CIDMeasurementInitiation
CRITICALITY reject
}
e-CIDMeasurementFailureIndication F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE E-CIDMeasurementFailureIndication
PROCEDURE CODE id-E-CIDMeasurementFailureIndication
CRITICALITY ignore
}
e-CIDMeasurementReport F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE E-CIDMeasurementReport
PROCEDURE CODE id-E-CIDMeasurementReport
CRITICALITY ignore
}
e-CIDMeasurementTermination F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE E-CIDMeasurementTerminationCommand
PROCEDURE CODE id-E-CIDMeasurementTermination
CRITICALITY ignore
}
positioningInformationUpdate F1AP-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE PositioningInformationUpdate
PROCEDURE CODE id-PositioningInformationUpdate
CRITICALITY ignore
}
END
+3 -12
View File
@@ -46,7 +46,6 @@
inline void ASN_DEBUG(const char *fmt, ...);
#endif
#include "F1AP_Active-Cells-List.h"
#include "F1AP_RAT-FrequencyPriorityInformation.h"
#include "F1AP_DLUPTNLInformation-ToBeSetup-Item.h"
#include "F1AP_PrivateMessage.h"
@@ -55,6 +54,7 @@ inline void ASN_DEBUG(const char *fmt, ...);
#include "F1AP_NRPCI.h"
#include "F1AP_Transmission-Bandwidth.h"
#include "F1AP_SIB1-message.h"
#include "F1AP_SibtypetobeupdatedListItem.h"
#include "F1AP_GNBCUConfigurationUpdateAcknowledge.h"
#include "F1AP_DRBs-Setup-Item.h"
#include "F1AP_EUTRA-NR-CellResourceCoordinationReqAck-Container.h"
@@ -75,7 +75,6 @@ inline void ASN_DEBUG(const char *fmt, ...);
#include "F1AP_DRBs-Required-ToBeModified-Item.h"
#include "F1AP_BitRate.h"
#include "F1AP_SRBs-ToBeSetup-List.h"
#include "F1AP_ConcurrentWarningMessageIndicator.h"
#include "F1AP_CriticalityDiagnostics-IE-Item.h"
#include "F1AP_GNB-CU-TNL-Association-To-Update-List.h"
#include "F1AP_DRB-Notify-List.h"
@@ -85,6 +84,7 @@ inline void ASN_DEBUG(const char *fmt, ...);
#include "F1AP_PWS-Failed-NR-CGI-List.h"
#include "F1AP_InitialULRRCMessageTransfer.h"
#include "F1AP_Served-Cell-Information.h"
#include "F1AP_ServedPLMNs-Item.h"
#include "F1AP_Served-EUTRA-Cells-Information.h"
#include "F1AP_Cells-Broadcast-Cancelled-Item.h"
#include "F1AP_F1SetupRequest.h"
@@ -128,13 +128,11 @@ inline void ASN_DEBUG(const char *fmt, ...);
#include "F1AP_TransactionID.h"
#include "F1AP_AllocationAndRetentionPriority.h"
#include "F1AP_ShortDRXCycleLength.h"
#include "F1AP_BroadcastPLMNs-Item.h"
#include "F1AP_DRB-Information.h"
#include "F1AP_TimeToWait.h"
#include "F1AP_NonDynamic5QIDescriptor.h"
#include "F1AP_C-RNTI.h"
#include "F1AP_MIB-message.h"
#include "F1AP_SIBtype-Item.h"
#include "F1AP_Served-Cells-To-Modify-List.h"
#include "F1AP_NRCGI.h"
#include "F1AP_DuplicationActivation.h"
@@ -187,6 +185,7 @@ inline void ASN_DEBUG(const char *fmt, ...);
#include "F1AP_CellULConfigured.h"
#include "F1AP_DRB-Activity.h"
#include "F1AP_GNB-CU-TNL-Association-Failed-To-Setup-Item.h"
#include "F1AP_ProtocolIE-ID.h"
#include "F1AP_PrivateIE-ID.h"
#include "F1AP_WriteReplaceWarningResponse.h"
#include "F1AP_CauseMisc.h"
@@ -231,9 +230,7 @@ inline void ASN_DEBUG(const char *fmt, ...);
#include "F1AP_SUL-Information.h"
#include "F1AP_CriticalityDiagnostics-IE-List.h"
#include "F1AP_EUTRA-FDD-Info.h"
#include "F1AP_BroadcastPLMNs-List.h"
#include "F1AP_Served-Cells-To-Delete-Item.h"
#include "F1AP_ListofEUTRACellsinGNBDUCoordination.h"
#include "F1AP_Candidate-SpCell-Item.h"
#include "F1AP_Cells-To-Be-Broadcast-List.h"
#include "F1AP_ULRRCMessageTransfer.h"
@@ -255,7 +252,6 @@ inline void ASN_DEBUG(const char *fmt, ...);
#include "F1AP_SRBs-ToBeReleased-List.h"
#include "F1AP_MeasGapConfig.h"
#include "F1AP_NR-Mode-Info.h"
#include "F1AP_Active-Cells-Item.h"
#include "F1AP_Protected-EUTRA-Resources-List.h"
#include "F1AP_SRBs-FailedToBeSetup-Item.h"
#include "F1AP_ResetAll.h"
@@ -287,7 +283,6 @@ inline void ASN_DEBUG(const char *fmt, ...);
#include "F1AP_UEContextReleaseRequest.h"
#include "F1AP_GNB-DU-Name.h"
#include "F1AP_DRBs-ToBeModified-Item.h"
#include "F1AP_SIBtype-List.h"
#include "F1AP_EUTRA-NR-CellResourceCoordinationReq-Container.h"
#include "F1AP_DRBs-SetupMod-List.h"
#include "F1AP_DRBs-Required-ToBeModified-List.h"
@@ -296,7 +291,6 @@ inline void ASN_DEBUG(const char *fmt, ...);
#include "F1AP_PacketDelayBudget.h"
#include "F1AP_GNBCUConfigurationUpdate.h"
#include "F1AP_Cells-Broadcast-Completed-Item.h"
#include "F1AP_RRCRconfigurationCompleteIndicator.h"
#include "F1AP_PagingPriority.h"
#include "F1AP_Cells-Failed-to-be-Activated-List.h"
#include "F1AP_Endpoint-IP-address-and-port.h"
@@ -306,7 +300,6 @@ inline void ASN_DEBUG(const char *fmt, ...);
#include "F1AP_ResetType.h"
#include "F1AP_FDD-Info.h"
#include "F1AP_DLUPTNLInformation-ToBeSetup-List.h"
#include "F1AP_QoSFlowIndicator.h"
#include "F1AP_NR-CGI-List-For-Restart-List.h"
#include "F1AP_F1SetupResponse.h"
#include "F1AP_UEContextSetupResponse.h"
@@ -325,7 +318,6 @@ inline void ASN_DEBUG(const char *fmt, ...);
#include "F1AP_Cells-to-be-Barred-List.h"
#include "F1AP_Presence.h"
#include "F1AP_CellBarred.h"
#include "F1AP_SIBtype.h"
#include "F1AP_RequestType.h"
#include "F1AP_NRFreqInfo.h"
#include "F1AP_Potential-SpCell-Item.h"
@@ -348,7 +340,6 @@ inline void ASN_DEBUG(const char *fmt, ...);
#include "F1AP_GBR-QoSFlowInformation.h"
#include "F1AP_SCellIndex.h"
#include "F1AP_DRBs-SetupMod-Item.h"
#include "F1AP_TransmissionStopIndicator.h"
#include "F1AP_UEContextSetupFailure.h"
#include "F1AP_DRBs-FailedToBeModified-List.h"
#include "F1AP_DRBs-FailedToBeSetupMod-Item.h"
+29 -21
View File
@@ -139,10 +139,11 @@ int CU_handle_F1_SETUP_REQUEST(instance_t instance,
served_celles_item_p = &(((F1AP_GNB_DU_Served_Cells_ItemIEs_t *)ie->value.choice.GNB_DU_Served_Cells_List.list.array[i])->value.choice.GNB_DU_Served_Cells_Item);
/* tac */
OCTET_STRING_TO_INT16(&(served_celles_item_p->served_Cell_Information.fiveGS_TAC), F1AP_SETUP_REQ(message_p).tac[i]);
LOG_D(F1AP, "F1AP_SETUP_REQ(message_p).tac[%d] %d \n",
i, F1AP_SETUP_REQ(message_p).tac[i]);
if (served_celles_item_p->served_Cell_Information.fiveGS_TAC) {
OCTET_STRING_TO_INT16(served_celles_item_p->served_Cell_Information.fiveGS_TAC, F1AP_SETUP_REQ(message_p).tac[i]);
LOG_D(F1AP, "F1AP_SETUP_REQ(message_p).tac[%d] %d \n",
i, F1AP_SETUP_REQ(message_p).tac[i]);
}
/* - nRCGI */
TBCD_TO_MCC_MNC(&(served_celles_item_p->served_Cell_Information.nRCGI.pLMN_Identity), F1AP_SETUP_REQ(message_p).mcc[i],
F1AP_SETUP_REQ(message_p).mnc[i],
@@ -356,20 +357,30 @@ int CU_send_F1_SETUP_RESPONSE(instance_t instance,
//for (int n = 0; n < f1ap_setup_resp->SI_container_length[i][0]; n++)
// printf("%02x ", f1ap_setup_resp->SI_container[i][0][n]);
//printf("\n");
OCTET_STRING_fromBuf(&gNB_CUSystemInformation->sImessage,
(const char*)f1ap_setup_resp->SI_container[i][0],
f1ap_setup_resp->SI_container_length[i][0]);
LOG_D(F1AP, "f1ap_setup_resp->SI_container_length = %d \n", f1ap_setup_resp->SI_container_length[0][0]);
for (int sIBtype=2;sIBtype<33;sIBtype++) {
if (f1ap_setup_resp->SI_container[i][sIBtype]!=NULL) {
AssertFatal(sIBtype < 6 || sIBtype == 9, "Illegal SI type %d\n",sIBtype);
F1AP_SibtypetobeupdatedListItem_t *sib_item = calloc(1,sizeof(*sib_item));
memset((void*)sib_item,0,sizeof(*sib_item));
sib_item->sIBtype = sIBtype;
OCTET_STRING_fromBuf(&sib_item->sIBmessage,
(const char*)f1ap_setup_resp->SI_container[i][sIBtype],
f1ap_setup_resp->SI_container_length[i][sIBtype]);
LOG_D(F1AP, "f1ap_setup_resp->SI_container_length[%d][%d] = %d \n", i,sIBtype,f1ap_setup_resp->SI_container_length[i][sIBtype]);
ASN_SEQUENCE_ADD(&gNB_CUSystemInformation->sibtypetobeupdatedlist.list,sib_item);
}
}
cells_to_be_activated_list_itemExtIEs->extensionValue.choice.GNB_CUSystemInformation = *gNB_CUSystemInformation;
F1AP_ProtocolExtensionContainer_160P9_t p_160P9_t;
memset((void *)&p_160P9_t, 0, sizeof(F1AP_ProtocolExtensionContainer_160P9_t));
F1AP_ProtocolExtensionContainer_154P112_t p_154P112_t;
memset((void *)&p_154P112_t, 0, sizeof(F1AP_ProtocolExtensionContainer_154P112_t));
ASN_SEQUENCE_ADD(&p_160P9_t.list,
ASN_SEQUENCE_ADD(&p_154P112_t.list,
cells_to_be_activated_list_itemExtIEs);
cells_to_be_activated_list_item.iE_Extensions = (struct F1AP_ProtocolExtensionContainer*)&p_160P9_t;
cells_to_be_activated_list_item.iE_Extensions = (struct F1AP_ProtocolExtensionContainer*)&p_154P112_t;
free(gNB_CUSystemInformation);
gNB_CUSystemInformation = NULL;
@@ -829,17 +840,13 @@ int CU_send_gNB_CU_CONFIGURATION_UPDATE(instance_t instance, module_id_t du_mod_
protected_eutra_resources_item_ies = (F1AP_Protected_EUTRA_Resources_ItemIEs_t *)calloc(1, sizeof(F1AP_Protected_EUTRA_Resources_ItemIEs_t));
protected_eutra_resources_item_ies->id = F1AP_ProtocolIE_ID_id_Protected_EUTRA_Resources_List;
protected_eutra_resources_item_ies->criticality = F1AP_Criticality_reject;
protected_eutra_resources_item_ies->value.present = F1AP_Protected_EUTRA_Resources_ItemIEs__value_PR_SpectrumSharingGroupID;
protected_eutra_resources_item_ies->value.choice.SpectrumSharingGroupID = 1L;
protected_eutra_resources_item_ies->value.present = F1AP_Protected_EUTRA_Resources_ItemIEs__value_PR_Protected_EUTRA_Resources_Item;
((F1AP_Protected_EUTRA_Resources_Item_t*)&protected_eutra_resources_item_ies->value.choice.Protected_EUTRA_Resources_Item)->spectrumSharingGroupID = 123L;
memset(&protected_eutra_resources_item_ies->value.choice.Protected_EUTRA_Resources_Item,0,
sizeof(F1AP_Protected_EUTRA_Resources_Item_t));
ASN_SEQUENCE_ADD(&ie->value.choice.Protected_EUTRA_Resources_List.list, protected_eutra_resources_item_ies);
/* 8.2 ListofEUTRACellsinGNBDUCoordination */
protected_eutra_resources_item_ies = (F1AP_Protected_EUTRA_Resources_ItemIEs_t *)calloc(1, sizeof(F1AP_Protected_EUTRA_Resources_ItemIEs_t));
protected_eutra_resources_item_ies->id = F1AP_ProtocolIE_ID_id_Protected_EUTRA_Resources_List;
protected_eutra_resources_item_ies->criticality = F1AP_Criticality_reject;
protected_eutra_resources_item_ies->value.present = F1AP_Protected_EUTRA_Resources_ItemIEs__value_PR_ListofEUTRACellsinGNBDUCoordination;
/*
F1AP_Served_EUTRA_Cells_Information_t served_eutra_cells_information;
memset((void *)&served_eutra_cells_information, 0, sizeof(F1AP_Served_EUTRA_Cells_Information_t));
@@ -870,6 +877,7 @@ int CU_send_gNB_CU_CONFIGURATION_UPDATE(instance_t instance, module_id_t du_mod_
ASN_SEQUENCE_ADD(&protected_eutra_resources_item_ies->value.choice.ListofEUTRACellsinGNBDUCoordination.list, &served_eutra_cells_information);
ASN_SEQUENCE_ADD(&ie->value.choice.Protected_EUTRA_Resources_List.list, protected_eutra_resources_item_ies);
*/
}
ASN_SEQUENCE_ADD(&out->protocolIEs.list, ie);
+15 -12
View File
@@ -109,7 +109,7 @@ int CU_handle_INITIAL_UL_RRC_MESSAGE_TRANSFER(instance_t instance,
/* RNTI */
F1AP_FIND_PROTOCOLIE_BY_ID(F1AP_InitialULRRCMessageTransferIEs_t, ie, container,
F1AP_ProtocolIE_ID_id_C_RNTI, true);
BUFFER_TO_INT16(ie->value.choice.C_RNTI.buf, rnti);
rnti = ie->value.choice.C_RNTI;
/* RRC Container */
F1AP_FIND_PROTOCOLIE_BY_ID(F1AP_InitialULRRCMessageTransferIEs_t, ie, container,
@@ -260,19 +260,22 @@ int CU_send_DL_RRC_MESSAGE_TRANSFER(instance_t instance,
/* optional */
/* c7. RAT_FrequencyPriorityInformation */
/* TODO */
if (0) {
ie = (F1AP_DLRRCMessageTransferIEs_t *)calloc(1, sizeof(F1AP_DLRRCMessageTransferIEs_t));
ie->id = F1AP_ProtocolIE_ID_id_RAT_FrequencyPriorityInformation;
ie->criticality = F1AP_Criticality_reject;
ie->value.present = F1AP_DLRRCMessageTransferIEs__value_PR_RAT_FrequencyPriorityInformation;
ie->value.choice.RAT_FrequencyPriorityInformation.present = F1AP_RAT_FrequencyPriorityInformation_PR_subscriberProfileIDforRFP;
ie->value.choice.RAT_FrequencyPriorityInformation.choice.subscriberProfileIDforRFP = 123L;
int endc=1;
ie = (F1AP_DLRRCMessageTransferIEs_t *)calloc(1, sizeof(F1AP_DLRRCMessageTransferIEs_t));
ie->id = F1AP_ProtocolIE_ID_id_RAT_FrequencyPriorityInformation;
ie->criticality = F1AP_Criticality_reject;
ie->value.present = F1AP_DLRRCMessageTransferIEs__value_PR_RAT_FrequencyPriorityInformation;
if (endc==1) {
ie->value.choice.RAT_FrequencyPriorityInformation.present = F1AP_RAT_FrequencyPriorityInformation_PR_eNDC;
ie->value.choice.RAT_FrequencyPriorityInformation.choice.eNDC = 123L;
}
else {
ie->value.choice.RAT_FrequencyPriorityInformation.present = F1AP_RAT_FrequencyPriorityInformation_PR_nGRAN;
ie->value.choice.RAT_FrequencyPriorityInformation.choice.nGRAN = 11L;
}
//ie->value.choice.RAT_FrequencyPriorityInformation.present = F1AP_RAT_FrequencyPriorityInformation_PR_rAT_FrequencySelectionPriority;
//ie->value.choice.RAT_FrequencyPriorityInformation.choice.rAT_FrequencySelectionPriority = 123L;
ASN_SEQUENCE_ADD(&out->protocolIEs.list, ie);
}
ASN_SEQUENCE_ADD(&out->protocolIEs.list, ie);
/* encode */
if (f1ap_encode_pdu(&pdu, &buffer, &len) < 0) {
+79 -67
View File
@@ -108,7 +108,7 @@ int CU_send_UE_CONTEXT_SETUP_REQUEST(instance_t instance,
/* mandatory */
/* c4. ServCellIndex */
ie = (F1AP_UEContextSetupRequestIEs_t *)calloc(1, sizeof(F1AP_UEContextSetupRequestIEs_t));
ie->id = F1AP_ProtocolIE_ID_id_ServCellndex;
ie->id = F1AP_ProtocolIE_ID_id_ServCellIndex;
ie->criticality = F1AP_Criticality_reject;
ie->value.present = F1AP_UEContextSetupRequestIEs__value_PR_ServCellIndex;
ie->value.choice.ServCellIndex = 2;
@@ -379,75 +379,86 @@ int CU_send_UE_CONTEXT_SETUP_REQUEST(instance_t instance,
}
} else {
/* 12.1.2 dRB_Information */
drbs_toBeSetup_item.qoSInformation.present = F1AP_QoSInformation_PR_dRB_Information;
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information = (F1AP_DRB_Information_t *)calloc(1, sizeof(F1AP_DRB_Information_t));
/* 12.1.2 DRB_Information */
drbs_toBeSetup_item.qoSInformation.present = F1AP_QoSInformation_PR_choice_extension;
F1AP_QoSInformation_ExtIEs_t *ie;
ie = (F1AP_QoSInformation_ExtIEs_t *)calloc(1, sizeof(F1AP_QoS_Characteristics_ExtIEs_t));
ie->id = F1AP_ProtocolIE_ID_id_DRB_Information;
ie->criticality = F1AP_Criticality_reject;
ie->value.present = F1AP_QoSInformation_ExtIEs__value_PR_DRB_Information;
F1AP_DRB_Information_t *DRB_Information = &ie->value.choice.DRB_Information;
drbs_toBeSetup_item.qoSInformation.choice.choice_extension = (struct F1AP_ProtocolIE_SingleContainer*)ie;
/* 12.1.2.1 dRB_QoS */
{
/* qoS_Characteristics */
{
int some_decide_qoS_characteristics = 1; // BK: Need Check
if (some_decide_qoS_characteristics) {
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.present = F1AP_QoS_Characteristics_PR_non_Dynamic_5QI;
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.non_Dynamic_5QI = (F1AP_NonDynamic5QIDescriptor_t *)calloc(1, sizeof(F1AP_NonDynamic5QIDescriptor_t));
DRB_Information->dRB_QoS.qoS_Characteristics.present = F1AP_QoS_Characteristics_PR_non_Dynamic_5QI;
DRB_Information->dRB_QoS.qoS_Characteristics.choice.non_Dynamic_5QI = (F1AP_NonDynamic5QIDescriptor_t *)calloc(1, sizeof(F1AP_NonDynamic5QIDescriptor_t));
/* fiveQI */
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.non_Dynamic_5QI->fiveQI = 1L;
DRB_Information->dRB_QoS.qoS_Characteristics.choice.non_Dynamic_5QI->fiveQI = 1L;
/* OPTIONAL */
/* qoSPriorityLevel */
if (0) {
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.non_Dynamic_5QI->qoSPriorityLevel = (long *)calloc(1, sizeof(long));
*drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.non_Dynamic_5QI->qoSPriorityLevel = 1L;
DRB_Information->dRB_QoS.qoS_Characteristics.choice.non_Dynamic_5QI->qoSPriorityLevel = (long *)calloc(1, sizeof(long));
*DRB_Information->dRB_QoS.qoS_Characteristics.choice.non_Dynamic_5QI->qoSPriorityLevel = 1L;
}
/* OPTIONAL */
/* averagingWindow */
if (0) {
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.non_Dynamic_5QI->averagingWindow = (F1AP_AveragingWindow_t *)calloc(1, sizeof(F1AP_AveragingWindow_t));
*drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.non_Dynamic_5QI->averagingWindow = 1L;
DRB_Information->dRB_QoS.qoS_Characteristics.choice.non_Dynamic_5QI->averagingWindow = (F1AP_AveragingWindow_t *)calloc(1, sizeof(F1AP_AveragingWindow_t));
*DRB_Information->dRB_QoS.qoS_Characteristics.choice.non_Dynamic_5QI->averagingWindow = 1L;
}
/* OPTIONAL */
/* maxDataBurstVolume */
if (0) {
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.non_Dynamic_5QI->maxDataBurstVolume = (F1AP_MaxDataBurstVolume_t *)calloc(1, sizeof(F1AP_MaxDataBurstVolume_t));
*drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.non_Dynamic_5QI->maxDataBurstVolume = 1L;
DRB_Information->dRB_QoS.qoS_Characteristics.choice.non_Dynamic_5QI->maxDataBurstVolume = (F1AP_MaxDataBurstVolume_t *)calloc(1, sizeof(F1AP_MaxDataBurstVolume_t));
*DRB_Information->dRB_QoS.qoS_Characteristics.choice.non_Dynamic_5QI->maxDataBurstVolume = 1L;
}
} else {
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.present = F1AP_QoS_Characteristics_PR_dynamic_5QI;
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI = (F1AP_Dynamic5QIDescriptor_t *)calloc(1, sizeof(F1AP_Dynamic5QIDescriptor_t));
DRB_Information->dRB_QoS.qoS_Characteristics.present = F1AP_QoS_Characteristics_PR_dynamic_5QI;
DRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI = (F1AP_Dynamic5QIDescriptor_t *)calloc(1, sizeof(F1AP_Dynamic5QIDescriptor_t));
/* qoSPriorityLevel */
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->qoSPriorityLevel = 1L;
DRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->qoSPriorityLevel = 1L;
/* packetDelayBudget */
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->packetDelayBudget = 1L;
DRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->packetDelayBudget = 1L;
/* packetErrorRate */
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->packetErrorRate = 1L;
DRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->packetErrorRate.pER_Scalar = 1L;
DRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->packetErrorRate.pER_Exponent = 6L;
/* OPTIONAL */
/* delayCritical */
if (0) {
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->delayCritical = (long *)calloc(1, sizeof(long));
*drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->delayCritical = 1L;
DRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->delayCritical = (long *)calloc(1, sizeof(long));
*DRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->delayCritical = 1L;
}
/* OPTIONAL */
/* averagingWindow */
if (0) {
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->averagingWindow = (F1AP_AveragingWindow_t *)calloc(1, sizeof(F1AP_AveragingWindow_t));
*drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->averagingWindow = 1L;
DRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->averagingWindow = (F1AP_AveragingWindow_t *)calloc(1, sizeof(F1AP_AveragingWindow_t));
*DRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->averagingWindow = 1L;
}
/* OPTIONAL */
/* maxDataBurstVolume */
if (0) {
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->maxDataBurstVolume = (F1AP_MaxDataBurstVolume_t *)calloc(1, sizeof(F1AP_MaxDataBurstVolume_t));
*drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->maxDataBurstVolume = 1L;
DRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->maxDataBurstVolume = (F1AP_MaxDataBurstVolume_t *)calloc(1, sizeof(F1AP_MaxDataBurstVolume_t));
*DRB_Information->dRB_QoS.qoS_Characteristics.choice.dynamic_5QI->maxDataBurstVolume = 1L;
}
} // if some_decide_qoS_characteristics
@@ -456,32 +467,32 @@ int CU_send_UE_CONTEXT_SETUP_REQUEST(instance_t instance,
/* nGRANallocationRetentionPriority */
{
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.nGRANallocationRetentionPriority.priorityLevel = F1AP_PriorityLevel_highest; // enum
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.nGRANallocationRetentionPriority.pre_emptionCapability = F1AP_Pre_emptionCapability_shall_not_trigger_pre_emption; // enum
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.nGRANallocationRetentionPriority.pre_emptionVulnerability = F1AP_Pre_emptionVulnerability_not_pre_emptable; // enum
DRB_Information->dRB_QoS.nGRANallocationRetentionPriority.priorityLevel = F1AP_PriorityLevel_highest; // enum
DRB_Information->dRB_QoS.nGRANallocationRetentionPriority.pre_emptionCapability = F1AP_Pre_emptionCapability_shall_not_trigger_pre_emption; // enum
DRB_Information->dRB_QoS.nGRANallocationRetentionPriority.pre_emptionVulnerability = F1AP_Pre_emptionVulnerability_not_pre_emptable; // enum
} // nGRANallocationRetentionPriority
/* OPTIONAL */
/* gBR_QoS_Flow_Information */
if (0) {
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.gBR_QoS_Flow_Information = (F1AP_GBR_QoSFlowInformation_t *)calloc(1, sizeof(F1AP_GBR_QoSFlowInformation_t));
asn_long2INTEGER(&drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.gBR_QoS_Flow_Information->maxFlowBitRateDownlink, 1L);
asn_long2INTEGER(&drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.gBR_QoS_Flow_Information->maxFlowBitRateUplink, 1L);
asn_long2INTEGER(&drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.gBR_QoS_Flow_Information->guaranteedFlowBitRateDownlink, 1L);
asn_long2INTEGER(&drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.gBR_QoS_Flow_Information->guaranteedFlowBitRateUplink, 1L);
DRB_Information->dRB_QoS.gBR_QoS_Flow_Information = (F1AP_GBR_QoSFlowInformation_t *)calloc(1, sizeof(F1AP_GBR_QoSFlowInformation_t));
asn_long2INTEGER(&DRB_Information->dRB_QoS.gBR_QoS_Flow_Information->maxFlowBitRateDownlink, 1L);
asn_long2INTEGER(&DRB_Information->dRB_QoS.gBR_QoS_Flow_Information->maxFlowBitRateUplink, 1L);
asn_long2INTEGER(&DRB_Information->dRB_QoS.gBR_QoS_Flow_Information->guaranteedFlowBitRateDownlink, 1L);
asn_long2INTEGER(&DRB_Information->dRB_QoS.gBR_QoS_Flow_Information->guaranteedFlowBitRateUplink, 1L);
/* OPTIONAL */
/* maxPacketLossRateDownlink */
if (0) {
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.gBR_QoS_Flow_Information->maxPacketLossRateDownlink = (F1AP_MaxPacketLossRate_t *)calloc(1, sizeof(F1AP_MaxPacketLossRate_t));
*drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.gBR_QoS_Flow_Information->maxPacketLossRateDownlink = 1L;
DRB_Information->dRB_QoS.gBR_QoS_Flow_Information->maxPacketLossRateDownlink = (F1AP_MaxPacketLossRate_t *)calloc(1, sizeof(F1AP_MaxPacketLossRate_t));
*DRB_Information->dRB_QoS.gBR_QoS_Flow_Information->maxPacketLossRateDownlink = 1L;
}
/* OPTIONAL */
/* maxPacketLossRateUplink */
if (0) {
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.gBR_QoS_Flow_Information->maxPacketLossRateUplink = (F1AP_MaxPacketLossRate_t *)calloc(1, sizeof(F1AP_MaxPacketLossRate_t));
*drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.gBR_QoS_Flow_Information->maxPacketLossRateUplink = 1L;
DRB_Information->dRB_QoS.gBR_QoS_Flow_Information->maxPacketLossRateUplink = (F1AP_MaxPacketLossRate_t *)calloc(1, sizeof(F1AP_MaxPacketLossRate_t));
*DRB_Information->dRB_QoS.gBR_QoS_Flow_Information->maxPacketLossRateUplink = 1L;
}
}
@@ -489,8 +500,8 @@ int CU_send_UE_CONTEXT_SETUP_REQUEST(instance_t instance,
/* OPTIONAL */
/* reflective_QoS_Attribute */
if (0) {
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.reflective_QoS_Attribute = (long *)calloc(1, sizeof(long));
*drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->dRB_QoS.reflective_QoS_Attribute = 1L;
DRB_Information->dRB_QoS.reflective_QoS_Attribute = (long *)calloc(1, sizeof(long));
*DRB_Information->dRB_QoS.reflective_QoS_Attribute = 1L;
}
} // dRB_QoS
@@ -498,21 +509,21 @@ int CU_send_UE_CONTEXT_SETUP_REQUEST(instance_t instance,
/* 12.1.2.2 sNSSAI */
{
/* sST */
OCTET_STRING_fromBuf(&drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->sNSSAI.sST, "asdsa1d32sa1d31asd31as",
OCTET_STRING_fromBuf(&DRB_Information->sNSSAI.sST, "asdsa1d32sa1d31asd31as",
strlen("asdsa1d32sa1d31asd31as"));
/* OPTIONAL */
/* sD */
if (0) {
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->sNSSAI.sD = (OCTET_STRING_t *)calloc(1, sizeof(OCTET_STRING_t));
OCTET_STRING_fromBuf(drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->sNSSAI.sD, "asdsa1d32sa1d31asd31as",
DRB_Information->sNSSAI.sD = (OCTET_STRING_t *)calloc(1, sizeof(OCTET_STRING_t));
OCTET_STRING_fromBuf(DRB_Information->sNSSAI.sD, "asdsa1d32sa1d31asd31as",
strlen("asdsa1d32sa1d31asd31as"));
}
}
/* OPTIONAL */
/* 12.1.2.3 notificationControl */
if (0) {
drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->notificationControl = (F1AP_NotificationControl_t *)calloc(1, sizeof(F1AP_NotificationControl_t));
*drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->notificationControl = F1AP_NotificationControl_active; // enum
DRB_Information->notificationControl = (F1AP_NotificationControl_t *)calloc(1, sizeof(F1AP_NotificationControl_t));
*DRB_Information->notificationControl = F1AP_NotificationControl_active; // enum
}
/* 12.1.2.4 flows_Mapped_To_DRB_List */ // BK: need verifiy
@@ -523,7 +534,7 @@ int CU_send_UE_CONTEXT_SETUP_REQUEST(instance_t instance,
memset((void *)&flows_mapped_to_drb_item, 0, sizeof(F1AP_Flows_Mapped_To_DRB_Item_t));
/* qoSFlowIndicator */
flows_mapped_to_drb_item.qoSFlowIndicator = 1L;
flows_mapped_to_drb_item.qoSFlowIdentifier = 1L;
/* qoSFlowLevelQoSParameters */
{
@@ -569,8 +580,8 @@ int CU_send_UE_CONTEXT_SETUP_REQUEST(instance_t instance,
flows_mapped_to_drb_item.qoSFlowLevelQoSParameters.qoS_Characteristics.choice.dynamic_5QI->packetDelayBudget = 1L;
/* packetErrorRate */
flows_mapped_to_drb_item.qoSFlowLevelQoSParameters.qoS_Characteristics.choice.dynamic_5QI->packetErrorRate = 1L;
flows_mapped_to_drb_item.qoSFlowLevelQoSParameters.qoS_Characteristics.choice.dynamic_5QI->packetErrorRate.pER_Scalar = 1L;
flows_mapped_to_drb_item.qoSFlowLevelQoSParameters.qoS_Characteristics.choice.dynamic_5QI->packetErrorRate.pER_Exponent = 6L;
/* OPTIONAL */
/* delayCritical */
if (0) {
@@ -637,7 +648,7 @@ int CU_send_UE_CONTEXT_SETUP_REQUEST(instance_t instance,
} // qoSFlowLevelQoSParameters
// BK: need check
ASN_SEQUENCE_ADD(&drbs_toBeSetup_item.qoSInformation.choice.dRB_Information->flows_Mapped_To_DRB_List.list, &flows_mapped_to_drb_item);
ASN_SEQUENCE_ADD(&DRB_Information->flows_Mapped_To_DRB_List.list, &flows_mapped_to_drb_item);
}
} // if some_decide_qos
@@ -672,7 +683,7 @@ int CU_send_UE_CONTEXT_SETUP_REQUEST(instance_t instance,
drbs_toBeSetup_item.rLCMode = F1AP_RLCMode_rlc_am;
break;
default:
drbs_toBeSetup_item.rLCMode = F1AP_RLCMode_rlc_um;
drbs_toBeSetup_item.rLCMode = F1AP_RLCMode_rlc_um_bidirectional;
}
/* OPTIONAL */
@@ -716,13 +727,13 @@ int CU_send_UE_CONTEXT_SETUP_REQUEST(instance_t instance,
ie->criticality = F1AP_Criticality_reject;
ie->value.present = F1AP_UEContextSetupRequestIEs__value_PR_RAT_FrequencyPriorityInformation;
int some_decide_rat = 1; // BK: Need Check
if (some_decide_rat) {
ie->value.choice.RAT_FrequencyPriorityInformation.present = F1AP_RAT_FrequencyPriorityInformation_PR_subscriberProfileIDforRFP;
ie->value.choice.RAT_FrequencyPriorityInformation.choice.subscriberProfileIDforRFP = 11L;
int endc = 1; // RK: Get this from somewhere ...
if (endc) {
ie->value.choice.RAT_FrequencyPriorityInformation.present = F1AP_RAT_FrequencyPriorityInformation_PR_eNDC;
ie->value.choice.RAT_FrequencyPriorityInformation.choice.eNDC = 11L;
} else {
ie->value.choice.RAT_FrequencyPriorityInformation.present = F1AP_RAT_FrequencyPriorityInformation_PR_rAT_FrequencySelectionPriority;
ie->value.choice.RAT_FrequencyPriorityInformation.choice.rAT_FrequencySelectionPriority = 11L;
ie->value.choice.RAT_FrequencyPriorityInformation.present = F1AP_RAT_FrequencyPriorityInformation_PR_nGRAN;
ie->value.choice.RAT_FrequencyPriorityInformation.choice.nGRAN = 11L;
}
ASN_SEQUENCE_ADD(&out->protocolIEs.list, ie);
}
@@ -1070,7 +1081,7 @@ int CU_send_UE_CONTEXT_MODIFICATION_REQUEST(instance_t instance) {
/* mandatory */
/* c4. ServCellIndex */
ie = (F1AP_UEContextModificationRequestIEs_t *)calloc(1, sizeof(F1AP_UEContextModificationRequestIEs_t));
ie->id = F1AP_ProtocolIE_ID_id_ServCellndex;
ie->id = F1AP_ProtocolIE_ID_id_ServCellIndex;
ie->criticality = F1AP_Criticality_reject;
ie->value.present = F1AP_UEContextModificationRequestIEs__value_PR_ServCellIndex;
ie->value.choice.ServCellIndex = 5L;
@@ -1114,13 +1125,13 @@ int CU_send_UE_CONTEXT_MODIFICATION_REQUEST(instance_t instance) {
}
/* optional */
/* c6. TransmissionStopIndicator */
/* c6. TransmissionActionIndicator */
if (1) {
ie = (F1AP_UEContextModificationRequestIEs_t *)calloc(1, sizeof(F1AP_UEContextModificationRequestIEs_t));
ie->id = F1AP_ProtocolIE_ID_id_TransmissionStopIndicator;
ie->id = F1AP_ProtocolIE_ID_id_TransmissionActionIndicator;
ie->criticality = F1AP_Criticality_ignore;
ie->value.present = F1AP_UEContextModificationRequestIEs__value_PR_TransmissionStopIndicator;
ie->value.choice.TransmissionStopIndicator = F1AP_TransmissionStopIndicator_true;
ie->value.present = F1AP_UEContextModificationRequestIEs__value_PR_TransmissionActionIndicator;
ie->value.choice.TransmissionActionIndicator = F1AP_TransmissionActionIndicator_stop;
ASN_SEQUENCE_ADD(&out->protocolIEs.list, ie);
}
@@ -1140,10 +1151,10 @@ int CU_send_UE_CONTEXT_MODIFICATION_REQUEST(instance_t instance) {
/* c7. RRCRconfigurationCompleteIndicator */
if (1) {
ie = (F1AP_UEContextModificationRequestIEs_t *)calloc(1, sizeof(F1AP_UEContextModificationRequestIEs_t));
ie->id = F1AP_ProtocolIE_ID_id_RRCRconfigurationCompleteIndicator;
ie->id = F1AP_ProtocolIE_ID_id_RRCReconfigurationCompleteIndicator;
ie->criticality = F1AP_Criticality_ignore;
ie->value.present = F1AP_UEContextModificationRequestIEs__value_PR_RRCRconfigurationCompleteIndicator;
ie->value.choice.RRCRconfigurationCompleteIndicator = F1AP_RRCRconfigurationCompleteIndicator_true;
ie->value.present = F1AP_UEContextModificationRequestIEs__value_PR_RRCReconfigurationCompleteIndicator;
ie->value.choice.RRCReconfigurationCompleteIndicator = F1AP_RRCReconfigurationCompleteIndicator_true;
ASN_SEQUENCE_ADD(&out->protocolIEs.list, ie);
}
@@ -1325,7 +1336,7 @@ int CU_send_UE_CONTEXT_MODIFICATION_REQUEST(instance_t instance) {
}
/* rLCMode */
drbs_toBeSetupMod_item.rLCMode = F1AP_RLCMode_rlc_um; // enum
drbs_toBeSetupMod_item.rLCMode = F1AP_RLCMode_rlc_um_bidirectional; // enum
/* OPTIONAL */
/* ULConfiguration */
@@ -1366,9 +1377,10 @@ int CU_send_UE_CONTEXT_MODIFICATION_REQUEST(instance_t instance) {
drbs_toBeModified_item.dRBID = 30L;
/* qoSInformation */
drbs_toBeModified_item.qoSInformation.present = F1AP_QoSInformation_PR_eUTRANQoS;
drbs_toBeModified_item.qoSInformation.choice.eUTRANQoS = (F1AP_EUTRANQoS_t *)calloc(1, sizeof(F1AP_EUTRANQoS_t));
drbs_toBeModified_item.qoSInformation.choice.eUTRANQoS->qCI = 254L;
drbs_toBeModified_item.qoSInformation =calloc(1,sizeof(*drbs_toBeModified_item.qoSInformation));
drbs_toBeModified_item.qoSInformation->present = F1AP_QoSInformation_PR_eUTRANQoS;
drbs_toBeModified_item.qoSInformation->choice.eUTRANQoS = (F1AP_EUTRANQoS_t *)calloc(1, sizeof(F1AP_EUTRANQoS_t));
drbs_toBeModified_item.qoSInformation->choice.eUTRANQoS->qCI = 254L;
/* ULTunnels_ToBeModified_List */
int j = 0;
+72 -96
View File
@@ -95,7 +95,6 @@ int DU_send_F1_SETUP_REQUEST(instance_t instance) {
uint8_t *buffer;
uint32_t len;
int i = 0;
int j = 0;
/* Create */
/* 0. pdu Type */
@@ -189,7 +188,7 @@ int DU_send_F1_SETUP_REQUEST(instance_t instance) {
served_cell_information.nRPCI = f1ap_du_data->nr_pci[i]; // int 0..1007
/* - fiveGS_TAC */
OCTET_STRING_fromBuf(&served_cell_information.fiveGS_TAC,
OCTET_STRING_fromBuf(served_cell_information.fiveGS_TAC,
(const char*)&f1ap_du_data->tac[i],
3);
@@ -201,19 +200,11 @@ int DU_send_F1_SETUP_REQUEST(instance_t instance) {
2);
}
/* - broadcast PLMNs */
// RK: add the num_available_broadcast_PLMNs to the message
int num_available_broadcast_PLMNs = 1; //f1ap_du_data->num_available_broadcast_PLMNs;
LOG_D(F1AP, "num_available_broadcast_PLMNs = %d \n", num_available_broadcast_PLMNs);
for (j=0;
j<num_available_broadcast_PLMNs; // num_available_broadcast_PLMNs
j++) {
/* > PLMN BroadcastPLMNs Item */
F1AP_BroadcastPLMNs_Item_t *broadcastPLMNs_Item = (F1AP_BroadcastPLMNs_Item_t *)calloc(1, sizeof(F1AP_BroadcastPLMNs_Item_t));
//MCC_MNC_TO_PLMNID(208, 95, 2, &broadcastPLMNs_Item->pLMN_Identity);
MCC_MNC_TO_PLMNID(f1ap_du_data->mcc[i], f1ap_du_data->mnc[i], f1ap_du_data->mnc_digit_length[i], &broadcastPLMNs_Item->pLMN_Identity);
ASN_SEQUENCE_ADD(&served_cell_information.servedPLMNs.list, broadcastPLMNs_Item);
}
/* servedPLMN information */
F1AP_ServedPLMNs_Item_t *servedPLMN_item = calloc(1,sizeof(*servedPLMN_item));
memset(servedPLMN_item,0,sizeof(*servedPLMN_item));
MCC_MNC_TO_PLMNID(f1ap_du_data->mcc[i], f1ap_du_data->mnc[i], f1ap_du_data->mnc_digit_length[i], &servedPLMN_item->pLMN_Identity);
ASN_SEQUENCE_ADD(&served_cell_information.servedPLMNs.list, servedPLMN_item);
// // /* - CHOICE NR-MODE-Info */
F1AP_NR_Mode_Info_t nR_Mode_Info;
@@ -503,27 +494,59 @@ int DU_handle_F1_SETUP_RESPONSE(instance_t instance,
F1AP_SETUP_RESP (msg_p).nr_cellid[i]);
F1AP_SETUP_RESP (msg_p).nrpci[i] = *cell->nRPCI;
F1AP_ProtocolExtensionContainer_160P9_t *ext = (F1AP_ProtocolExtensionContainer_160P9_t *)cell->iE_Extensions;
AssertFatal(ext!=NULL,"Extension for SI is null\n");
F1AP_SETUP_RESP (msg_p).num_SI[i] = ext->list.count;
AssertFatal(ext->list.count==1,"At least one SI message should be there, and only 1 for now!\n");
LOG_D(F1AP, "F1AP: F1Setup-Resp Cell %d MCC %d MNC %d NRCellid %lx num_si %d\n",
i, F1AP_SETUP_RESP (msg_p).mcc[i], F1AP_SETUP_RESP (msg_p).mnc[i],
F1AP_SETUP_RESP (msg_p).nr_cellid[i], F1AP_SETUP_RESP (msg_p).num_SI[i]);
for (int si =0;si < ext->list.count;si++) {
size_t size = ext->list.array[si]->extensionValue.choice.GNB_CUSystemInformation.sImessage.size;
F1AP_SETUP_RESP (msg_p).SI_container_length[i][si] = size;
LOG_D(F1AP, "F1AP: F1Setup-Resp SI_container_length[%d][%d] %ld bytes\n", i, si, size);
F1AP_SETUP_RESP (msg_p).SI_container[i][si] = malloc(F1AP_SETUP_RESP (msg_p).SI_container_length[i][si]);
memcpy((void*)F1AP_SETUP_RESP (msg_p).SI_container[i][si],
(void*)ext->list.array[si]->extensionValue.choice.GNB_CUSystemInformation.sImessage.buf,
F1AP_SETUP_RESP (msg_p).SI_container_length[i][si]);
}
}
break;
}
}
F1AP_ProtocolExtensionContainer_154P112_t *ext = (F1AP_ProtocolExtensionContainer_154P112_t *)cell->iE_Extensions;
AssertFatal(ext!=NULL,"Extension is null\n");
for (int cnt=0;cnt<ext->list.count;cnt++) {
F1AP_Cells_to_be_Activated_List_ItemExtIEs_t *cells_to_be_activated_list_itemExtIEs=(F1AP_Cells_to_be_Activated_List_ItemExtIEs_t *)ext->list.array[cnt];
switch (cells_to_be_activated_list_itemExtIEs->id) {
/*
case F1AP_Cells_to_be_Activated_List_ItemExtIEs__extensionValue_PR_NOTHING:
case F1AP_Cells_to_be_Activated_List_ItemExtIEs__extensionValue_PR_GNB_CUSystemInformation,
case F1AP_Cells_to_be_Activated_List_ItemExtIEs__extensionValue_PR_AvailablePLMNList,
case F1AP_Cells_to_be_Activated_List_ItemExtIEs__extensionValue_PR_ExtendedAvailablePLMN_List,
case F1AP_Cells_to_be_Activated_List_ItemExtIEs__extensionValue_PR_IAB_Info_IAB_donor_CU,
case F1AP_Cells_to_be_Activated_List_ItemExtIEs__extensionValue_PR_AvailableSNPN_ID_List
*/
case F1AP_ProtocolIE_ID_id_gNB_CUSystemInformation:
{
F1AP_GNB_CUSystemInformation_t *gNB_CUSystemInformation = (F1AP_GNB_CUSystemInformation_t*)&cells_to_be_activated_list_itemExtIEs->extensionValue.choice.GNB_CUSystemInformation;
F1AP_SETUP_RESP (msg_p).num_SI[i] = gNB_CUSystemInformation->sibtypetobeupdatedlist.list.count;
AssertFatal(ext->list.count==1,"At least one SI message should be there, and only 1 for now!\n");
LOG_D(F1AP, "F1AP: F1Setup-Resp Cell %d MCC %d MNC %d NRCellid %lx num_si %d\n",
i, F1AP_SETUP_RESP (msg_p).mcc[i], F1AP_SETUP_RESP (msg_p).mnc[i],
F1AP_SETUP_RESP (msg_p).nr_cellid[i], F1AP_SETUP_RESP (msg_p).num_SI[i]);
for (int si =0;si < gNB_CUSystemInformation->sibtypetobeupdatedlist.list.count;si++) {
F1AP_SibtypetobeupdatedListItem_t *sib_item = gNB_CUSystemInformation->sibtypetobeupdatedlist.list.array[si];
size_t size = sib_item->sIBmessage.size;
F1AP_SETUP_RESP (msg_p).SI_container_length[i][si] = size;
LOG_D(F1AP, "F1AP: F1Setup-Resp SI_container_length[%d][%d] %ld bytes\n", i, (int)sib_item->sIBtype, size);
F1AP_SETUP_RESP (msg_p).SI_container[i][si] = malloc(F1AP_SETUP_RESP (msg_p).SI_container_length[i][si]);
memcpy((void*)F1AP_SETUP_RESP (msg_p).SI_container[i][sib_item->sIBtype],
(void*)sib_item->sIBmessage.buf,
size);
}
}
break;
case F1AP_ProtocolIE_ID_id_AvailablePLMNList:
AssertFatal(1==0,"F1AP_ProtocolIE_ID_id_AvailablePLMNList not supported yet\n");
break;
case F1AP_ProtocolIE_ID_id_ExtendedAvailablePLMN_List:
AssertFatal(1==0,"F1AP_ProtocolIE_ID_id_AvailablePLMNList not supported yet\n");
break;
case F1AP_ProtocolIE_ID_id_IAB_Info_IAB_donor_CU:
AssertFatal(1==0,"F1AP_ProtocolIE_ID_id_AvailablePLMNList not supported yet\n");
break;
case F1AP_ProtocolIE_ID_id_AvailableSNPN_ID_List:
AssertFatal(1==0,"F1AP_ProtocolIE_ID_id_AvailablePLMNList not supported yet\n");
break;
default:
AssertFatal(1==0,"F1AP_ProtocolIE_ID_id %d unknown\n",(int)cells_to_be_activated_list_itemExtIEs->id);
break;
}
} // for (cnt=...
} // for (cells_to_activate...
} // switch ie
} // for IE
AssertFatal(TransactionId!=-1,"TransactionId was not sent\n");
AssertFatal(num_cells_to_activate>0,"No cells activated\n");
F1AP_SETUP_RESP (msg_p).num_cells_to_activate = num_cells_to_activate;
@@ -635,7 +658,7 @@ int DU_send_gNB_DU_CONFIGURATION_UPDATE(instance_t instance,
served_cell_information.nRPCI = f1ap_setup_req->nr_pci[i]; // int 0..1007
/* - fiveGS_TAC */
OCTET_STRING_fromBuf(&served_cell_information.fiveGS_TAC,
OCTET_STRING_fromBuf(served_cell_information.fiveGS_TAC,
(const char *) &f1ap_setup_req->tac[i],
3);
@@ -647,17 +670,11 @@ int DU_send_gNB_DU_CONFIGURATION_UPDATE(instance_t instance,
2);
}
/* - broadcast PLMNs */
int maxnoofBPLMNS = 1;
for (i=0;
i<maxnoofBPLMNS;
i++) {
/* > PLMN BroadcastPLMNs Item */
F1AP_BroadcastPLMNs_Item_t *broadcastPLMNs_Item = (F1AP_BroadcastPLMNs_Item_t *)calloc(1, sizeof(F1AP_BroadcastPLMNs_Item_t));
//memset((void *)&broadcastPLMNs_Item, 0, sizeof(F1AP_BroadcastPLMNs_Item_t));
MCC_MNC_TO_PLMNID(f1ap_setup_req->mcc[i], f1ap_setup_req->mnc[i], f1ap_setup_req->mnc_digit_length[i], &broadcastPLMNs_Item->pLMN_Identity);
ASN_SEQUENCE_ADD(&served_cell_information.servedPLMNs.list, broadcastPLMNs_Item);
}
F1AP_ServedPLMNs_Item_t *servedPLMN_item = calloc(1,sizeof(*servedPLMN_item));
memset(servedPLMN_item,0,sizeof(*servedPLMN_item));
MCC_MNC_TO_PLMNID(f1ap_du_data->mcc[i], f1ap_du_data->mnc[i], f1ap_du_data->mnc_digit_length[i], &servedPLMN_item->pLMN_Identity);
ASN_SEQUENCE_ADD(&served_cell_information.servedPLMNs.list, servedPLMN_item);
// // /* - CHOICE NR-MODE-Info */
F1AP_NR_Mode_Info_t nR_Mode_Info;
@@ -803,7 +820,7 @@ int DU_send_gNB_DU_CONFIGURATION_UPDATE(instance_t instance,
served_cell_information.nRPCI = f1ap_setup_req->nr_pci[i]; // int 0..1007
/* - fiveGS_TAC */
OCTET_STRING_fromBuf(&served_cell_information.fiveGS_TAC,
OCTET_STRING_fromBuf(served_cell_information.fiveGS_TAC,
(const char *) &f1ap_setup_req->tac[i],
3);
@@ -815,17 +832,12 @@ int DU_send_gNB_DU_CONFIGURATION_UPDATE(instance_t instance,
2);
}
/* - broadcast PLMNs */
int maxnoofBPLMNS = 1;
for (i=0;
i<maxnoofBPLMNS;
i++) {
/* > PLMN BroadcastPLMNs Item */
F1AP_BroadcastPLMNs_Item_t *broadcastPLMNs_Item = (F1AP_BroadcastPLMNs_Item_t *)calloc(1, sizeof(F1AP_BroadcastPLMNs_Item_t));
//memset((void *)&broadcastPLMNs_Item, 0, sizeof(F1AP_BroadcastPLMNs_Item_t));
MCC_MNC_TO_PLMNID(f1ap_setup_req->mcc[i], f1ap_setup_req->mnc[i], f1ap_setup_req->mnc_digit_length[i], &broadcastPLMNs_Item->pLMN_Identity);
ASN_SEQUENCE_ADD(&served_cell_information.servedPLMNs.list, broadcastPLMNs_Item);
}
F1AP_ServedPLMNs_Item_t *servedPLMN_item = calloc(1,sizeof(*servedPLMN_item));
memset(servedPLMN_item,0,sizeof(*servedPLMN_item));
MCC_MNC_TO_PLMNID(f1ap_du_data->mcc[i], f1ap_du_data->mnc[i], f1ap_du_data->mnc_digit_length[i], &servedPLMN_item->pLMN_Identity);
ASN_SEQUENCE_ADD(&served_cell_information.servedPLMNs.list, servedPLMN_item);
// // /* - CHOICE NR-MODE-Info */
F1AP_NR_Mode_Info_t nR_Mode_Info;
@@ -963,42 +975,6 @@ int DU_send_gNB_DU_CONFIGURATION_UPDATE(instance_t instance,
ASN_SEQUENCE_ADD(&out->protocolIEs.list, ie);
/* mandatory */
/* c5. Active_Cells_List */
ie = (F1AP_GNBDUConfigurationUpdateIEs_t *)calloc(1, sizeof(F1AP_GNBDUConfigurationUpdateIEs_t));
ie->id = F1AP_ProtocolIE_ID_id_Active_Cells_List;
ie->criticality = F1AP_Criticality_reject;
ie->value.present = F1AP_GNBDUConfigurationUpdateIEs__value_PR_Active_Cells_List;
for (i=0;
i<1;
i++) {
//
F1AP_Active_Cells_ItemIEs_t *active_cells_item_ies;
active_cells_item_ies = (F1AP_Active_Cells_ItemIEs_t *)calloc(1, sizeof(F1AP_Active_Cells_ItemIEs_t));
active_cells_item_ies->id = F1AP_ProtocolIE_ID_id_Active_Cells_Item;
active_cells_item_ies->criticality = F1AP_Criticality_reject;
active_cells_item_ies->value.present = F1AP_Active_Cells_ItemIEs__value_PR_Active_Cells_Item;
F1AP_Active_Cells_Item_t active_cells_item;
memset((void *)&active_cells_item, 0, sizeof(F1AP_Active_Cells_Item_t));
/* 3.1 oldNRCGI */
F1AP_NRCGI_t nRCGI;
memset(&nRCGI, 0, sizeof(F1AP_NRCGI_t));
MCC_MNC_TO_PLMNID(f1ap_setup_req->mcc[i], f1ap_setup_req->mnc[i], f1ap_setup_req->mnc_digit_length[i],
&nRCGI.pLMN_Identity);
NR_CELL_ID_TO_BIT_STRING(f1ap_setup_req->nr_cellid[i], &nRCGI.nRCellIdentity);
active_cells_item.nRCGI = nRCGI;
/* ADD */
active_cells_item_ies->value.choice.Active_Cells_Item = active_cells_item;
ASN_SEQUENCE_ADD(&ie->value.choice.Active_Cells_List.list,
active_cells_item_ies);
}
ASN_SEQUENCE_ADD(&out->protocolIEs.list, ie);
if (f1ap_encode_pdu(&pdu, &buffer, &len) < 0) {
LOG_E(F1AP, "Failed to encode F1 setup request\n");
+3 -3
View File
@@ -161,10 +161,10 @@ int DU_handle_DL_RRC_MESSAGE_TRANSFER(instance_t instance,
F1AP_ProtocolIE_ID_id_RAT_FrequencyPriorityInformation, true);
switch(ie->value.choice.RAT_FrequencyPriorityInformation.present) {
case F1AP_RAT_FrequencyPriorityInformation_PR_subscriberProfileIDforRFP:
case F1AP_RAT_FrequencyPriorityInformation_PR_eNDC:
//subscriberProfileIDforRFP = ie->value.choice.RAT_FrequencyPriorityInformation.choice.subscriberProfileIDforRFP;
break;
case F1AP_RAT_FrequencyPriorityInformation_PR_rAT_FrequencySelectionPriority:
case F1AP_RAT_FrequencyPriorityInformation_PR_nGRAN:
//rAT_FrequencySelectionPriority = ie->value.choice.RAT_FrequencyPriorityInformation.choice.rAT_FrequencySelectionPriority;
break;
default:
@@ -836,7 +836,7 @@ int DU_send_INITIAL_UL_RRC_MESSAGE_TRANSFER(module_id_t module_idP,
ie->id = F1AP_ProtocolIE_ID_id_C_RNTI;
ie->criticality = F1AP_Criticality_reject;
ie->value.present = F1AP_InitialULRRCMessageTransferIEs__value_PR_C_RNTI;
C_RNTI_TO_BIT_STRING(rntiP, &ie->value.choice.C_RNTI);
ie->value.choice.C_RNTI=rntiP;
ASN_SEQUENCE_ADD(&out->protocolIEs.list, ie);
/* mandatory */
@@ -91,7 +91,7 @@ int DU_handle_UE_CONTEXT_SETUP_REQUEST(instance_t instance,
BIT_STRING_TO_NR_CELL_IDENTITY(&ie->value.choice.NRCGI.nRCellIdentity, f1ap_ue_context_setup_req->nr_cellid);
/* ServCellIndex */
F1AP_FIND_PROTOCOLIE_BY_ID(F1AP_UEContextSetupRequestIEs_t, ie, container,
F1AP_ProtocolIE_ID_id_ServCellndex, true);
F1AP_ProtocolIE_ID_id_ServCellIndex, true);
f1ap_ue_context_setup_req->servCellIndex = ie->value.choice.ServCellIndex;
/* optional */
/* CellULConfigured */
@@ -227,7 +227,8 @@ int DU_send_UE_CONTEXT_SETUP_RESPONSE(instance_t instance) {
ie->id = F1AP_ProtocolIE_ID_id_C_RNTI;
ie->criticality = F1AP_Criticality_ignore;
ie->value.present = F1AP_UEContextSetupResponseIEs__value_PR_C_RNTI;
C_RNTI_TO_BIT_STRING(rntiP, &ie->value.choice.C_RNTI);
//C_RNTI_TO_BIT_STRING(rntiP, &ie->value.choice.C_RNTI);
ie->value.choice.C_RNTI=rntiP;
ASN_SEQUENCE_ADD(&out->protocolIEs.list, ie);
}
@@ -1016,7 +1017,7 @@ int DU_send_UE_CONTEXT_MODIFICATION_RESPONSE(instance_t instance) {
srbs_failedToBeSetupMod_item.sRBID = 50L;
srbs_failedToBeSetupMod_item.cause = (F1AP_Cause_t *)calloc(1, sizeof(F1AP_Cause_t));
srbs_failedToBeSetupMod_item.cause->present = F1AP_Cause_PR_radioNetwork;
srbs_failedToBeSetupMod_item.cause->choice.radioNetwork = F1AP_CauseRadioNetwork_unknown_or_already_allocated_gnd_du_ue_f1ap_id;
srbs_failedToBeSetupMod_item.cause->choice.radioNetwork = F1AP_CauseRadioNetwork_unknown_or_already_allocated_gnb_du_ue_f1ap_id;
/* ADD */
srbs_failedToBeSetupMod_item_ies->value.choice.SRBs_FailedToBeSetupMod_Item = srbs_failedToBeSetupMod_item;
ASN_SEQUENCE_ADD(&ie->value.choice.SRBs_FailedToBeSetupMod_List.list,
@@ -1047,7 +1048,7 @@ int DU_send_UE_CONTEXT_MODIFICATION_RESPONSE(instance_t instance) {
drbs_failedToBeSetupMod_item.dRBID = 30L;
drbs_failedToBeSetupMod_item.cause = (F1AP_Cause_t *)calloc(1, sizeof(F1AP_Cause_t));
drbs_failedToBeSetupMod_item.cause->present = F1AP_Cause_PR_radioNetwork;
drbs_failedToBeSetupMod_item.cause->choice.radioNetwork = F1AP_CauseRadioNetwork_unknown_or_already_allocated_gnd_du_ue_f1ap_id;
drbs_failedToBeSetupMod_item.cause->choice.radioNetwork = F1AP_CauseRadioNetwork_unknown_or_already_allocated_gnb_du_ue_f1ap_id;
/* ADD */
drbs_failedToBeSetupMod_item_ies->value.choice.DRBs_FailedToBeSetupMod_Item = drbs_failedToBeSetupMod_item;
ASN_SEQUENCE_ADD(&ie->value.choice.DRBs_FailedToBeSetupMod_List.list,
@@ -1083,7 +1084,7 @@ int DU_send_UE_CONTEXT_MODIFICATION_RESPONSE(instance_t instance) {
scell_failedtoSetupMod_item.sCell_ID = nRCGI;
scell_failedtoSetupMod_item.cause = (F1AP_Cause_t *)calloc(1, sizeof(F1AP_Cause_t));
scell_failedtoSetupMod_item.cause->present = F1AP_Cause_PR_radioNetwork;
scell_failedtoSetupMod_item.cause->choice.radioNetwork = F1AP_CauseRadioNetwork_unknown_or_already_allocated_gnd_du_ue_f1ap_id;
scell_failedtoSetupMod_item.cause->choice.radioNetwork = F1AP_CauseRadioNetwork_unknown_or_already_allocated_gnb_du_ue_f1ap_id;
/* ADD */
scell_failedtoSetupMod_item_ies->value.choice.SCell_FailedtoSetupMod_Item = scell_failedtoSetupMod_item;
ASN_SEQUENCE_ADD(&ie->value.choice.SCell_FailedtoSetupMod_List.list,
@@ -1114,7 +1115,7 @@ int DU_send_UE_CONTEXT_MODIFICATION_RESPONSE(instance_t instance) {
drbs_failedToBeModified_item.dRBID = 30L;
drbs_failedToBeModified_item.cause = (F1AP_Cause_t *)calloc(1, sizeof(F1AP_Cause_t));
drbs_failedToBeModified_item.cause->present = F1AP_Cause_PR_radioNetwork;
drbs_failedToBeModified_item.cause->choice.radioNetwork = F1AP_CauseRadioNetwork_unknown_or_already_allocated_gnd_du_ue_f1ap_id;
drbs_failedToBeModified_item.cause->choice.radioNetwork = F1AP_CauseRadioNetwork_unknown_or_already_allocated_gnb_du_ue_f1ap_id;
/* ADD */
drbs_failedToBeModified_item_ies->value.choice.DRBs_FailedToBeModified_Item = drbs_failedToBeModified_item;
ASN_SEQUENCE_ADD(&ie->value.choice.DRBs_FailedToBeModified_List.list,
+2 -2
View File
@@ -1055,7 +1055,7 @@ void release_UE_in_freeList(module_id_t mod_id) {
if (id>=0) clean_eNb_dlsch(eNB_PHY->dlsch[id][0]);
// clean UCI entries for rnti
for (i=0; i<NUMBER_OF_UCI_VARS_MAX; i++) {
for (i=0; i<NUMBER_OF_UCI_MAX; i++) {
if(eNB_PHY->uci_vars[i].rnti == rnti) {
LOG_I(MAC, "clean eNb uci_vars[%d] UE %x \n",i, rnti);
memset(&eNB_PHY->uci_vars[i],0,sizeof(LTE_eNB_UCI));
@@ -1089,7 +1089,7 @@ void release_UE_in_freeList(module_id_t mod_id) {
clean_eNb_ulsch(ulsch);
}
for (i=0; i<NUMBER_OF_UCI_VARS_MAX; i++) {
for (i=0; i<NUMBER_OF_UCI_MAX; i++) {
if(eNB_PHY->uci_vars[i].rnti == rnti) {
LOG_I(MAC, "clean eNb uci_vars[%d] UE %x \n",i, rnti);
memset(&eNB_PHY->uci_vars[i],0,sizeof(LTE_eNB_UCI));