diff --git a/epan/dissectors/asn1/lpp/LPP-Broadcast-Definitions.asn b/epan/dissectors/asn1/lpp/LPP-Broadcast-Definitions.asn index 993b0b59ee..a532f25d9a 100644 --- a/epan/dissectors/asn1/lpp/LPP-Broadcast-Definitions.asn +++ b/epan/dissectors/asn1/lpp/LPP-Broadcast-Definitions.asn @@ -1,4 +1,4 @@ --- 3GPP TS 37.355 V16.8.0 (2022-03) +-- 3GPP TS 37.355 V17.1.0 (2022-06) LPP-Broadcast-Definitions diff --git a/epan/dissectors/asn1/lpp/LPP-PDU-Definitions.asn b/epan/dissectors/asn1/lpp/LPP-PDU-Definitions.asn index 8f878e71c6..25a6e13b41 100644 --- a/epan/dissectors/asn1/lpp/LPP-PDU-Definitions.asn +++ b/epan/dissectors/asn1/lpp/LPP-PDU-Definitions.asn @@ -1,4 +1,4 @@ --- 3GPP TS 37.355 V16.8.0 (2022-03) +-- 3GPP TS 37.355 V17.1.0 (2022-06) LPP-PDU-Definitions DEFINITIONS AUTOMATIC TAGS ::= @@ -459,6 +459,7 @@ HA-EllipsoidPointWithAltitudeAndScalableUncertaintyEllipsoid-r16 ::= SEQUENCE { ha-VerticalExtendedRangeUsed-r16 BOOLEAN } + HA-EllipsoidPointWithScalableUncertaintyEllipse-r16 ::= SEQUENCE { degreesLatitude-r16 INTEGER(-2147483648..2147483647), degreesLongitude-r16 INTEGER(-2147483648..2147483647), @@ -469,6 +470,7 @@ HA-EllipsoidPointWithScalableUncertaintyEllipse-r16 ::= SEQUENCE { ha-ExtendedUncertaintyRangeUsed-r16 BOOLEAN } + HighAccuracyEllipsoidPointWithUncertaintyEllipse-r15 ::= SEQUENCE { degreesLatitude-r15 INTEGER(-2147483648..2147483647), degreesLongitude-r15 INTEGER(-2147483648..2147483647), @@ -592,6 +594,29 @@ PositioningModes ::= SEQUENCE { } +ScheduledLocationTimeSupport-r17 ::= SEQUENCE { + utcTime-r17 ENUMERATED { supported } OPTIONAL, + gnssTime-r17 GNSS-ID-Bitmap OPTIONAL, + e-utraTime-r17 ENUMERATED { supported } OPTIONAL, + nrTime-r17 ENUMERATED { supported } OPTIONAL, + relativeTime-r17 ENUMERATED { supported } OPTIONAL, + ... +} + + +ScheduledLocationTimeSupportPerMode-r17 ::= SEQUENCE { + utcTime-r17 PositioningModes OPTIONAL, + gnssTime-r17 SEQUENCE { + posModes-r17 PositioningModes, + gnss-TimeIDs-r17 GNSS-ID-Bitmap + } OPTIONAL, + e-utraTime-r17 PositioningModes OPTIONAL, + nrTime-r17 PositioningModes OPTIONAL, + relativeTime-r17 PositioningModes OPTIONAL, + ... +} + + SegmentationInfo-r14 ::= ENUMERATED { noMoreMessages, moreMessagesOnTheWay } @@ -665,6 +690,12 @@ CommonIEsRequestLocationInformation ::= SEQUENCE { ]], [[ segmentationInfo-r14 SegmentationInfo-r14 OPTIONAL -- Need ON + ]], + [[ + scheduledLocationTime-r17 + ScheduledLocationTime-r17 OPTIONAL, -- Need ON + targetIntegrityRisk-r17 + TargetIntegrityRisk-r17 OPTIONAL -- Need ON ]] } @@ -744,7 +775,8 @@ ResponseTime ::= SEQUENCE { ..., [[ responseTimeEarlyFix-r12 INTEGER (1..128) OPTIONAL -- Need ON ]], - [[ unit-r15 ENUMERATED { ten-seconds, ... } OPTIONAL -- Need ON + [[ unit-r15 ENUMERATED { ten-seconds, ... , ten-milli-seconds-v1700 } + OPTIONAL -- Need ON ]] } @@ -768,6 +800,39 @@ MessageSizeLimitNB-r14 ::= SEQUENCE { ... } +ScheduledLocationTime-r17 ::= SEQUENCE { + utcTime-r17 UTCTime OPTIONAL, -- Need ON + gnssTime-r17 SEQUENCE { + gnss-TOD-msec-r17 INTEGER (0..3599999), + gnss-TimeID-r17 GNSS-ID + } OPTIONAL, -- Need ON + networkTime-r17 CHOICE { + e-utraTime-r17 SEQUENCE { + lte-PhysCellId-r17 INTEGER (0..503), + lte-ArfcnEUTRA-r17 ARFCN-ValueEUTRA, + lte-CellGlobalId-r17 CellGlobalIdEUTRA-AndUTRA + OPTIONAL, -- Need ON + lte-SystemFrameNumber-r17 INTEGER (0..1023) + }, + nrTime-r17 SEQUENCE { + nr-PhysCellID-r17 NR-PhysCellID-r16, + nr-ARFCN-r17 ARFCN-ValueNR-r15, + nr-CellGlobalID-r17 NCGI-r15 OPTIONAL, -- Need ON + nr-SFN-r17 INTEGER (0..1023), + nr-Slot-r17 CHOICE { + scs15-r17 INTEGER (0..9), + scs30-r17 INTEGER (0..19), + scs60-r17 INTEGER (0..39), + scs120-r17 INTEGER (0..79) + } OPTIONAL -- Need ON + }, + ... + } OPTIONAL, -- Need ON + relativeTime-r17 INTEGER (1..1024) OPTIONAL -- Need ON +} + +TargetIntegrityRisk-r17 ::= INTEGER (10..90) + CommonIEsProvideLocationInformation ::= SEQUENCE { locationEstimate LocationCoordinates OPTIONAL, @@ -781,6 +846,9 @@ CommonIEsProvideLocationInformation ::= SEQUENCE { ]], [[ segmentationInfo-r14 SegmentationInfo-r14 OPTIONAL -- Cond Segmentation + ]], + [[ + integrityInfo-r17 IntegrityInfo-r17 OPTIONAL ]] } @@ -840,6 +908,13 @@ LocationSource-r13 ::= BIT STRING { a-gnss (0), dl-tdoa-r16 (7), dl-aod-r16 (8) } (SIZE(1..16)) +IntegrityInfo-r17 ::= SEQUENCE { + horizontalProtectionLevel-r17 INTEGER (0..50000), + verticalProtectionLevel-r17 INTEGER (0..50000) OPTIONAL, + achievableTargetIntegrityRisk-r17 INTEGER (10..90) OPTIONAL, + ... +} + CommonIEsAbort ::= SEQUENCE { abortCause ENUMERATED { @@ -866,6 +941,16 @@ CommonIEsError ::= SEQUENCE { } +AreaID-CellList-r17 ::= SEQUENCE (SIZE(1..maxCellIDsPerArea-r17)) OF NR-Cell-IDs-r17 + +NR-Cell-IDs-r17 ::= SEQUENCE { + nr-CellGlobalID-r17 NCGI-r15 OPTIONAL, -- Need ON + nr-PhysCellID-r17 NR-PhysCellID-r16 OPTIONAL, -- Need ON + nr-ARFCN-r17 ARFCN-ValueNR-r15 OPTIONAL, -- Need ON + ... +} + + DL-PRS-ID-Info-r16 ::= SEQUENCE { dl-PRS-ID-r16 INTEGER (0..255), nr-DL-PRS-ResourceID-List-r16 SEQUENCE (SIZE (1..nrMaxResourceIDs-r16)) OF @@ -876,8 +961,42 @@ DL-PRS-ID-Info-r16 ::= SEQUENCE { } +LCS-GCS-TranslationParameter-r16 ::= SEQUENCE { + alpha-r16 INTEGER (0..359), + alpha-fine-r16 INTEGER (0..9) OPTIONAL, -- Cond AzElFine + beta-r16 INTEGER (0..359), + beta-fine-r16 INTEGER (0..9) OPTIONAL, -- Cond AzElFine + gamma-r16 INTEGER (0..359), + gamma-fine-r16 INTEGER (0..9) OPTIONAL, -- Cond AzElFine + ... +} + + +LOS-NLOS-Indicator-r17 ::= SEQUENCE { + indicator-r17 CHOICE { + soft-r17 INTEGER (0..10), + hard-r17 BOOLEAN + }, + ... +} + + +LOS-NLOS-IndicatorGranularity1-r17 ::= ENUMERATED { trpspecific, resourcespecific } + + +LOS-NLOS-IndicatorGranularity2-r17 ::= ENUMERATED { trpspecific, resourcespecific, both } + + +LOS-NLOS-IndicatorType1-r17 ::= ENUMERATED { hardvalue, softvalue } + + +LOS-NLOS-IndicatorType2-r17 ::= ENUMERATED { hardvalue, hardAndsoftvalue } + + NR-AdditionalPathList-r16 ::= SEQUENCE (SIZE(1..2)) OF NR-AdditionalPath-r16 +NR-AdditionalPathListExt-r17 ::= SEQUENCE (SIZE(1..8)) OF NR-AdditionalPath-r16 + NR-AdditionalPath-r16 ::= SEQUENCE { nr-RelativeTimeDifference-r16 CHOICE { k0-r16 INTEGER(0..16351), @@ -889,7 +1008,10 @@ NR-AdditionalPath-r16 ::= SEQUENCE { ... }, nr-PathQuality-r16 NR-TimingQuality-r16 OPTIONAL, - ... + ..., + [[ + nr-DL-PRS-RSRPP-r17 INTEGER (0..126) OPTIONAL + ]] } @@ -923,6 +1045,10 @@ NR-DL-PRS-AssistanceDataPerTRP-r16 ::= SEQUENCE { ..., [[ prs-OnlyTP-r16 ENUMERATED { true } OPTIONAL -- Need ON + ]], + [[ + nr-DL-PRS-ExpectedAoD-or-AoA-r17 + NR-DL-PRS-ExpectedAoD-or-AoA-r17 OPTIONAL -- Need ON ]] } @@ -939,7 +1065,23 @@ NR-DL-PRS-PositioningFrequencyLayer-r16 ::= SEQUENCE { NR-DL-PRS-SFN0-Offset-r16 ::= SEQUENCE { sfn-Offset-r16 INTEGER (0..1023), integerSubframeOffset-r16 INTEGER (0..9), - ...} + ... +} + +NR-DL-PRS-ExpectedAoD-or-AoA-r17 ::= CHOICE { + expectedAoD-r17 SEQUENCE { + expectedDL-AzimuthAoD-r17 INTEGER (0..359), + expectedDL-AzimuthAoD-Unc-r17 INTEGER (0..60) OPTIONAL, -- Need OP + expectedDL-ZenithAoD-r17 INTEGER (0..180), + expectedDL-ZenithAoD-Unc-r17 INTEGER (0..30) OPTIONAL -- Need OP + }, + expectedAoA-r17 SEQUENCE { + expectedDL-AzimuthAoA-r17 INTEGER (0..359), + expectedDL-AzimuthAoA-Unc-r17 INTEGER (0..60) OPTIONAL, -- Need OP + expectedDL-ZenithAoA-r17 INTEGER (0..180), + expectedDL-ZenithAoA-Unc-r17 INTEGER (0..30) OPTIONAL -- Need OP + } +} NR-DL-PRS-BeamInfo-r16 ::= SEQUENCE (SIZE (1..nrMaxFreqLayers-r16)) OF @@ -974,16 +1116,30 @@ DL-PRS-BeamInfoElement-r16 ::= SEQUENCE { ... } -LCS-GCS-TranslationParameter-r16 ::= SEQUENCE { - alpha-r16 INTEGER (0..359), - alpha-fine-r16 INTEGER (0..9) OPTIONAL, -- Cond AzElFine - beta-r16 INTEGER (0..359), - beta-fine-r16 INTEGER (0..9) OPTIONAL, -- Cond AzElFine - gamma-r16 INTEGER (0..359), - gamma-fine-r16 INTEGER (0..9) OPTIONAL, -- Cond AzElFine + +NR-DL-PRS-ExpectedLOS-NLOS-Assistance-r17 ::= SEQUENCE (SIZE (1..nrMaxFreqLayers-r16)) OF + NR-DL-PRS-ExpectedLOS-NLOS-AssistancePerFreqLayer-r17 + +NR-DL-PRS-ExpectedLOS-NLOS-AssistancePerFreqLayer-r17 ::= + SEQUENCE (SIZE (1..nrMaxTRPsPerFreq-r16)) OF + NR-DL-PRS-ExpectedLOS-NLOS-AssistancePerTRP-r17 + +NR-DL-PRS-ExpectedLOS-NLOS-AssistancePerTRP-r17 ::= SEQUENCE { + dl-PRS-ID-r17 INTEGER (0..255), + nr-PhysCellID-r17 NR-PhysCellID-r16 OPTIONAL, -- Need ON + nr-CellGlobalID-r17 NCGI-r15 OPTIONAL, -- Need ON + nr-ARFCN-r17 ARFCN-ValueNR-r15 OPTIONAL, -- Need ON + nr-los-nlos-indicator-r17 CHOICE { + perTrp-r17 LOS-NLOS-Indicator-r17, + perResource-r17 SEQUENCE (SIZE (1..nrMaxSetsPerTrpPerFreqLayer-r16)) OF + NR-DL-PRS-ExpectedLOS-NLOS-AssistancePerResource-r17 }, ... } +NR-DL-PRS-ExpectedLOS-NLOS-AssistancePerResource-r17 ::= + SEQUENCE (SIZE (1..nrMaxResourcesPerSet-r16)) OF + LOS-NLOS-Indicator-r17 + NR-DL-PRS-Info-r16 ::= SEQUENCE { nr-DL-PRS-ResourceSetList-r16 SEQUENCE (SIZE (1..nrMaxSetsPerTrpPerFreqLayer-r16)) OF @@ -1042,8 +1198,11 @@ NR-DL-PRS-Resource-r16 ::= SEQUENCE { }, dl-PRS-ResourceSlotOffset-r16 INTEGER (0..nrMaxResourceOffsetValue-1-r16), dl-PRS-ResourceSymbolOffset-r16 INTEGER (0..12), - dl-PRS-QCL-Info-r16 DL-PRS-QCL-Info-r16 OPTIONAL, --Need ON - ... + dl-PRS-QCL-Info-r16 DL-PRS-QCL-Info-r16 OPTIONAL, --Need ON + ..., + [[ + dl-PRS-ResourcePrioritySubset-r17 DL-PRS-ResourcePrioritySubset-r17 OPTIONAL -- Need ON + ]] } DL-PRS-QCL-Info-r16 ::= CHOICE { @@ -1142,13 +1301,26 @@ NR-DL-PRS-Periodicity-and-ResourceSetSlotOffset-r16 ::= CHOICE { ... } +DL-PRS-ResourcePrioritySubset-r17 ::= SEQUENCE (SIZE (1..maxNumPrioResources-r17)) OF + NR-DL-PRSResourcePriorityItem-r17 + +NR-DL-PRSResourcePriorityItem-r17 ::= SEQUENCE { + nr-DL-PRS-PrioResourceSetID-r17 NR-DL-PRS-ResourceSetID-r16 OPTIONAL, -- Cond NotSame + nr-DL-PRS-PrioResourceID-r17 NR-DL-PRS-ResourceID-r16, + ... +} + NR-DL-PRS-ProcessingCapability-r16 ::= SEQUENCE { prs-ProcessingCapabilityBandList-r16 SEQUENCE (SIZE (1..nrMaxBands-r16)) OF PRS-ProcessingCapabilityPerBand-r16, maxSupportedFreqLayers-r16 INTEGER (1..4), - simulLTE-NR-PRS-r16 ENUMERATED { supported} OPTIONAL, - ... + simulLTE-NR-PRS-r16 ENUMERATED { supported } OPTIONAL, + ..., + [[ + supportedDL-PRS-ProcessingSamples-RRC-Inactive-r17 + ENUMERATED { m1, m2, ... } OPTIONAL + ]] } PRS-ProcessingCapabilityPerBand-r16 ::= SEQUENCE { @@ -1180,6 +1352,75 @@ PRS-ProcessingCapabilityPerBand-r16 ::= SEQUENCE { n48, n64} OPTIONAL, ... }, + ..., + [[ + supportedDL-PRS-ProcessingSamples-r17 ENUMERATED { supported } OPTIONAL, + prs-ProcessingWindowType1A-r17 ENUMERATED { option1, option2, option3} OPTIONAL, + prs-ProcessingWindowType1B-r17 ENUMERATED { option1, option2, option3} OPTIONAL, + prs-ProcessingWindowType2-r17 ENUMERATED { option1, option2, option3} OPTIONAL, + prs-ProcessingCapabilityOutsideMGinPPW-r17 + SEQUENCE (SIZE(1..3)) OF + PRS-ProcessingCapabilityOutsideMGinPPWperType-r17 + OPTIONAL, + dl-PRS-BufferType-RRC-Inactive-r17 ENUMERATED { type1, type2, ... } OPTIONAL, + durationOfPRS-Processing-RRC-Inactive-r17 SEQUENCE { + durationOfPRS-ProcessingSymbols-r17 ENUMERATED {nDot125, nDot25, nDot5, n1, + n2, n4, n6, n8, n12, n16, n20, n25, + n30, n32, n35, n40, n45, n50}, + durationOfPRS-ProcessingSymbolsInEveryTms-r17 + ENUMERATED {n8, n16, n20, n30, n40, n80, + n160,n320, n640, n1280}, + ... + } OPTIONAL, + maxNumOfDL-PRS-ResProcessedPerSlot-RRC-Inactive-r17 SEQUENCE { + scs15-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16, n24, + n32, n48, n64} OPTIONAL, + scs30-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16, n24, + n32, n48, n64} OPTIONAL, + scs60-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16, n24, + n32, n48, n64} OPTIONAL, + scs120-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16, n24, + n32, n48, n64} OPTIONAL, + ... + } OPTIONAL, + lowerRxBeamSweepingThan8-FR2-r17 ENUMERATED { n1, n2, n4, n6 } OPTIONAL + ]] +} + +PRS-ProcessingCapabilityOutsideMGinPPWperType-r17 ::= SEQUENCE { + prsProcessingType-r17 ENUMERATED { type1A, type1B, type2 }, + ppw-dl-PRS-BufferType-r17 ENUMERATED { type1, type2, ... }, + ppw-durationOfPRS-Processing1-r17 SEQUENCE { + ppw-durationOfPRS-ProcessingSymbolsN-r17 + ENUMERATED { msDot125, msDot25, msDot5, ms1, ms2, ms4, + ms6, ms8, ms12, ms16, ms20, ms25, ms30, ms32, ms35, + ms40, ms45, ms50 }, + ppw-durationOfPRS-ProcessingSymbolsT-r17 + ENUMERATED { ms1, ms2, ms4, ms8, ms16, ms20, ms30, ms40, ms80, + ms160, ms320, ms640, ms1280 } + } OPTIONAL, + ppw-durationOfPRS-Processing2-r17 SEQUENCE { + ppw-durationOfPRS-ProcessingSymbolsN2-r17 + ENUMERATED { msDot125, msDot25, msDot5, ms1, ms2, ms3, ms4, ms5, + ms6, ms8, ms12 }, + ppw-durationOfPRS-ProcessingSymbolsT2-r17 + ENUMERATED { ms4, ms5, ms6, ms8 } + } OPTIONAL, + ppw-maxNumOfDL-PRS-ResProcessedPerSlot-r17 SEQUENCE { + scs15-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, + n16, n24, n32, n48, n64 } + OPTIONAL, + scs30-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, + n16, n24, n32, n48, n64 } + OPTIONAL, + scs60-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, + n16, n24, n32, n48, n64 } + OPTIONAL, + scs120-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, + n16, n24, n32, n48, n64 } + OPTIONAL, + ... + }, ... } @@ -1250,11 +1491,133 @@ DL-PRS-ResourcesBandCombination-r16 ::= SEQUENCE { NR-DL-PRS-ResourceSetID-r16 ::= INTEGER (0..nrMaxNumDL-PRS-ResourceSetsPerTRP-1-r16) +NR-DL-PRS-TRP-TEG-Info-r17 ::= SEQUENCE (SIZE (1..nrMaxFreqLayers-r16)) OF + NR-DL-PRS-TRP-TEG-InfoPerFreqLayer-r17 + +NR-DL-PRS-TRP-TEG-InfoPerFreqLayer-r17 ::= SEQUENCE (SIZE (1..nrMaxTRPsPerFreq-r16)) OF + NR-DL-PRS-TRP-TEG-InfoPerTRP-r17 + +NR-DL-PRS-TRP-TEG-InfoPerTRP-r17 ::= SEQUENCE { + dl-PRS-ID-r17 INTEGER (0..255), + nr-PhysCellID-r17 NR-PhysCellID-r16 OPTIONAL, -- Need ON + nr-CellGlobalID-r17 NCGI-r15 OPTIONAL, -- Need ON + nr-ARFCN-r17 ARFCN-ValueNR-r15 OPTIONAL, -- Need ON + dl-PRS-TEG-InfoSet-r17 SEQUENCE (SIZE(1..nrMaxSetsPerTrpPerFreqLayer-r16)) OF + DL-PRS-TEG-InfoPerResourceSet-r17, + ... +} + +DL-PRS-TEG-InfoPerResourceSet-r17 ::= SEQUENCE (SIZE(1..nrMaxResourcesPerSet-r16)) OF + DL-PRS-TEG-InfoElement-r17 + +DL-PRS-TEG-InfoElement-r17 ::= SEQUENCE { + dl-prs-trp-Tx-TEG-ID-r17 INTEGER (0..maxNumOfTRP-TxTEGs-1-r17), + ... +} + + +NR-On-Demand-DL-PRS-Configurations-r17 ::= SEQUENCE { + on-demand-dl-prs-configuration-list-r17 SEQUENCE (SIZE (1..maxOD-DL-PRS-Configs-r17)) OF + On-Demand-DL-PRS-Configuration-r17, + ... +} + +On-Demand-DL-PRS-Configuration-r17 ::= SEQUENCE { + dl-prs-configuration-id-r17 DL-PRS-Configuration-ID-r17, + nr-DL-PRS-PositioningFrequencyLayer-r17 NR-DL-PRS-PositioningFrequencyLayer-r16, + nr-DL-PRS-Info-r17 NR-DL-PRS-Info-r16, + ... +} + +DL-PRS-Configuration-ID-r17 ::= SEQUENCE { + nr-dl-prs-configuration-id-r17 INTEGER (1..maxOD-DL-PRS-Configs-r17), + ... +} + + +NR-On-Demand-DL-PRS-Information-r17 ::= SEQUENCE (SIZE (1..nrMaxFreqLayers-r16)) OF + NR-On-Demand-DL-PRS-PerFreqLayer-r17 + +NR-On-Demand-DL-PRS-PerFreqLayer-r17 ::= SEQUENCE { + dl-prs-FrequencyRangeReq-r17 ENUMERATED { fr1, fr2, ...}, + dl-prs-ResourceSetPeriodicityReq-r17 ENUMERATED { p4, p5, p8, p10, p16, p20, p32, p40, + p64, p80, p160, p320, p640, p1280, p2560, + p5120, p10240, p20480, p40960, p81920, ...} + OPTIONAL, + dl-prs-ResourceBandwidthReq-r17 INTEGER (1..63) OPTIONAL, + dl-prs-ResourceRepetitionFactorReq-r17 ENUMERATED {n2, n4, n6, n8, n16, n32, ...} + OPTIONAL, + dl-prs-NumSymbolsReq-r17 ENUMERATED {n2, n4, n6, n12, ...} OPTIONAL, + dl-prs-CombSizeN-Req-r17 ENUMERATED {n2, n4, n6, n12, ...} OPTIONAL, + dl-prs-QCL-InformationReq-r17 DL-PRS-QCL-InformationReq-r17 OPTIONAL, + ... +} + +DL-PRS-QCL-InformationReq-r17 ::= SEQUENCE (SIZE (1..nrMaxTRPsPerFreq-r16)) OF + DL-PRS-QCL-InformationReqPerTRP-r17 + +DL-PRS-QCL-InformationReqPerTRP-r17 ::= SEQUENCE { + dl-PRS-ID-r17 INTEGER (0..255), + nr-PhysCellID-r17 NR-PhysCellID-r16 OPTIONAL, + nr-CellGlobalID-r17 NCGI-r15 OPTIONAL, + nr-ARFCN-r17 ARFCN-ValueNR-r15 OPTIONAL, + dl-prs-QCL-InformationReqSet-r17 SEQUENCE (SIZE (1..nrMaxSetsPerTrpPerFreqLayer-r16)) OF + DL-PRS-QCL-InfoReq-r17, + ... +} + +DL-PRS-QCL-InfoReq-r17 ::= SEQUENCE { + nr-DL-PRS-ResourceSetID-r17 NR-DL-PRS-ResourceSetID-r16, + dl-prs-QCL-InformationReq-r17 CHOICE { + nr-DL-PRS-QCL-Source-r17 DL-PRS-QCL-Info-r16, + dl-prs-QCL-Info-requested-r17 NULL + }, + ... +} + +NR-On-Demand-DL-PRS-Request-r17 ::= SEQUENCE { + dl-prs-StartTime-and-Duration-r17 DL-PRS-StartTime-and-Duration-r17 OPTIONAL, + nr-on-demand-DL-PRS-Information-r17 NR-On-Demand-DL-PRS-Information-r17 OPTIONAL, + dl-prs-configuration-id-PrefList-r17 SEQUENCE (SIZE (1..maxOD-DL-PRS-Configs-r17)) OF + DL-PRS-Configuration-ID-r17 OPTIONAL, + ... +} + +DL-PRS-StartTime-and-Duration-r17 ::= SEQUENCE { + dl-prs-start-time-r17 INTEGER (1..1024) OPTIONAL, + dl-prs-duration-r17 SEQUENCE { + seconds-r17 INTEGER (0..59) OPTIONAL, + minutes-r17 INTEGER (0..59) OPTIONAL, + hours-r17 INTEGER (0..23) OPTIONAL, + ... + } OPTIONAL, + ... +} + + +NR-On-Demand-DL-PRS-Configurations-Selected-IndexList-r17 ::= + SEQUENCE (SIZE (1..maxOD-DL-PRS-Configs-r17)) OF + DL-PRS-Configuration-ID-r17 + + +NR-On-Demand-DL-PRS-Support-r17 ::= SEQUENCE { + nr-on-demand-DL-PRS-InformationSup-r17 ENUMERATED { supported } OPTIONAL, + nr-on-demand-DL-PRS-ConfigurationsSup-r17 ENUMERATED { supported } OPTIONAL, + ... +} + NR-PositionCalculationAssistance-r16 ::= SEQUENCE { nr-TRP-LocationInfo-r16 NR-TRP-LocationInfo-r16 OPTIONAL, -- Need ON nr-DL-PRS-BeamInfo-r16 NR-DL-PRS-BeamInfo-r16 OPTIONAL, -- Need ON nr-RTD-Info-r16 NR-RTD-Info-r16 OPTIONAL, -- Need ON - ... + ..., + [[ + nr-TRP-BeamAntennaInfo-r17 NR-TRP-BeamAntennaInfo-r17 OPTIONAL, -- Need ON + nr-DL-PRS-Expected-LOS-NLOS-Assistance-r17 + NR-DL-PRS-ExpectedLOS-NLOS-Assistance-r17 + OPTIONAL, -- Need ON + nr-DL-PRS-TRP-TEG-Info-r17 NR-DL-PRS-TRP-TEG-Info-r17 OPTIONAL -- Need ON + ]] } NR-RTD-Info-r16 ::= SEQUENCE { @@ -1364,6 +1727,50 @@ NR-TimingQuality-r16 ::= SEQUENCE { } +NR-TRP-BeamAntennaInfo-r17 ::= SEQUENCE (SIZE (1..nrMaxFreqLayers-r16)) OF + NR-TRP-BeamAntennaInfoPerFreqLayer-r17 + +NR-TRP-BeamAntennaInfoPerFreqLayer-r17 ::= SEQUENCE (SIZE (1..nrMaxTRPsPerFreq-r16)) OF + NR-TRP-BeamAntennaInfoPerTRP-r17 + +NR-TRP-BeamAntennaInfoPerTRP-r17 ::= SEQUENCE { + dl-PRS-ID-r17 INTEGER (0..255), + nr-PhysCellID-r17 NR-PhysCellID-r16 OPTIONAL, -- Need ON + nr-CellGlobalID-r17 NCGI-r15 OPTIONAL, -- Need ON + nr-ARFCN-r17 ARFCN-ValueNR-r15 OPTIONAL, -- Need ON + associated-DL-PRS-ID-r17 INTEGER (0..255) OPTIONAL, -- Need OP + lcs-GCS-TranslationParameter-r17 LCS-GCS-TranslationParameter-r16 OPTIONAL, -- Need OP + nr-TRP-BeamAntennaAngles-r17 NR-TRP-BeamAntennaAngles-r17 OPTIONAL, -- Need OP + ... +} + +NR-TRP-BeamAntennaAngles-r17 ::= SEQUENCE (SIZE(1..3600)) OF + NR-TRP-BeamAntennaInfoAzimuthElevation-r17 + +NR-TRP-BeamAntennaInfoAzimuthElevation-r17 ::= SEQUENCE { + azimuth-r17 INTEGER (0..359) OPTIONAL, -- Cond Az + azimuth-fine-r17 INTEGER (0..9) OPTIONAL, -- Cond AzOpt + elevationList-r17 SEQUENCE (SIZE(1..1801)) OF ElevationElement-R17, + ... +} + +ElevationElement-R17 ::= SEQUENCE { + elevation-r17 INTEGER (0..180) OPTIONAL, -- Cond El + elevation-fine-r17 INTEGER (0..9) OPTIONAL, -- Cond ElOpt + beamPowerList-r17 SEQUENCE (SIZE (2..maxNumResourcesPerAngle-r17)) OF + BeamPowerElement-r17, + ... +} + +BeamPowerElement-r17 ::= SEQUENCE { + nr-dl-prs-ResourceSetID-r17 NR-DL-PRS-ResourceSetID-r16 OPTIONAL, -- Need OP + nr-dl-prs-ResourceID-r17 NR-DL-PRS-ResourceID-r16, + nr-dl-prs-RelativePower-r17 INTEGER (0..30), + nr-dl-prs-RelativePowerFine-r17 INTEGER (0..9) OPTIONAL, -- Need ON + ... +} + + NR-TRP-LocationInfo-r16 ::= SEQUENCE (SIZE (1..nrMaxFreqLayers-r16)) OF NR-TRP-LocationInfoPerFreqLayer-r16 @@ -1399,6 +1806,26 @@ DL-PRS-Resource-ARP-Element-r16 ::= SEQUENCE { } +NR-UE-TEG-Capability-r17 ::= SEQUENCE { + nr-UE-TEG-ID-CapabilityBandList-r17 SEQUENCE (SIZE (1..nrMaxBands-r16)) OF + NR-UE-TEG-ID-CapabilityPerBand-r17 OPTIONAL, + ... +} + +NR-UE-TEG-ID-CapabilityPerBand-r17 ::= SEQUENCE { + freqBandIndicatorNR-r17 FreqBandIndicatorNR-r16, + nr-UE-RxTEG-ID-MaxSupport-r17 ENUMERATED {n1, n2, n3, n4, n6, n8} OPTIONAL, + nr-UE-TxTEG-ID-MaxSupport-r17 ENUMERATED {n1, n2, n3, n4, n6, n8} OPTIONAL, + nr-UE-RxTxTEG-ID-MaxSupport-r17 ENUMERATED {n1, n2, n4, n6, n8, n12, n16, + n24, n32, n36, n48, n64} OPTIONAL, + measureSameDL-PRS-ResourceWithDifferentRxTEGs-r17 + ENUMERATED {n2, n3, n4, n6, n8} OPTIONAL, + measureSameDL-PRS-ResourceWithDifferentRxTEGsSimul-r17 + ENUMERATED {n1, n2, n3, n4, n6, n8} OPTIONAL, + ... +} + + NR-UL-SRS-Capability-r16 ::= SEQUENCE { srs-CapabilityBandList-r16 SEQUENCE (SIZE (1..nrMaxBands-r16)) OF SRS-CapabilityPerBand-r16, @@ -1415,7 +1842,15 @@ SRS-CapabilityPerBand-r16 ::= SEQUENCE { freqBandIndicatorNR-r16 FreqBandIndicatorNR-r16, olpc-SRS-Pos-r16 OLPC-SRS-Pos-r16 OPTIONAL, spatialRelationsSRS-Pos-r16 SpatialRelationsSRS-Pos-r16 OPTIONAL, - ... + ..., + [[ + posSRS-RRC-Inactive-InInitialUL-BWP-r17 PosSRS-RRC-Inactive-InInitialUL-BWP-r17 OPTIONAL, + posSRS-RRC-Inactive-OutsideInitialUL-BWP-r17 + PosSRS-RRC-Inactive-OutsideInitialUL-BWP-r17 + OPTIONAL, + olpc-SRS-PosRRC-Inactive-r17 OLPC-SRS-Pos-r16 OPTIONAL, + spatialRelationsSRS-PosRRC-Inactive-r17 SpatialRelationsSRS-Pos-r16 OPTIONAL + ]] } OLPC-SRS-Pos-r16 ::= SEQUENCE { @@ -1448,6 +1883,63 @@ SRS-PosResourcesPerBand-r16 ::= SEQUENCE { ... } +PosSRS-RRC-Inactive-InInitialUL-BWP-r17 ::= SEQUENCE { + maxNumOfSRSposResourceSets-r17 ENUMERATED {n1, n2, n4, n8, n12, n16 } OPTIONAL, + maxNumOfPeriodicAndSemiPeristentSRSposResources-r17 + ENUMERATED {n1, n2, n4, n8, n16, n32, n64 } + OPTIONAL, + maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot-r17 + ENUMERATED {n1, n2, n3, n4, n5, n6, n8, n10, n12, n14} + OPTIONAL, + maxNumOfPeriodicSRSposResources-r17 + ENUMERATED {n1, n2, n4, n8, n16, n32, n64 } + OPTIONAL, + maxNumOfPeriodicSRSposResourcesPerSlot-r17 + ENUMERATED {n1, n2, n3, n4, n5, n6, n8, n10, n12, n14} + OPTIONAL, + maxNumOfSemiPeristentSRSposResources-r17 + ENUMERATED {n1, n2, n4, n8, n16, n32, n64} OPTIONAL, + maxNumOfSemiPersistentSRSposResourcesPerSlot-r17 + ENUMERATED { n1, n2, n3, n4, n5, n6, n8, n10, n12, n14 } + OPTIONAL, + ... +} + +PosSRS-RRC-Inactive-OutsideInitialUL-BWP-r17 ::= SEQUENCE { + maxSRSposBandwidthForEachSCS-withinCC-FR1-r17 + ENUMERATED { bw5, bw10, bw15, bw20, bw25, bw30, bw35, + bw40, bw45, bw50, bw60, bw70, bw80, + bw90, bw100 } OPTIONAL, + maxSRSposBandwidthForEachSCS-withinCC-FR2-r17 + ENUMERATED { bw50, bw100, bw200, bw400 } OPTIONAL, + maxNumOfSRSposResourceSets-r17 ENUMERATED { n1, n2, n4, n8, n12, n16 } OPTIONAL, + maxNumOfPeriodicSRSposResources-r17 ENUMERATED { n1, n2, n4, n8, n16, n32, n64 } + OPTIONAL, + maxNumOfPeriodicSRSposResourcesPerSlot-r17 + ENUMERATED { n1, n2, n3, n4, n5, n6, n8, n10, n12, n14 } + OPTIONAL, + differentNumerologyBetweenSRSposAndInitialBWP-r17 + ENUMERATED { supported } OPTIONAL, + srsPosWithoutRestrictionOnBWP-r17 + ENUMERATED { supported } OPTIONAL, + maxNumOfPeriodicAndSemiPeristentSRSposResources-r17 + ENUMERATED {n1, n2, n4, n8, n16, n32, n64} OPTIONAL, + maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot-r17 + ENUMERATED { n1, n2, n3, n4, n5, n6, n8, n10, + n12, n14 } OPTIONAL, + differentCenterFreqBetweenSRSposAndInitialBWP-r17 + ENUMERATED { supported } OPTIONAL, + maxNumOfSemiPersistentSRSposResources-r17 + ENUMERATED { n1, n2, n4, n8, n16, n32, n64 } + OPTIONAL, + maxNumOfSemiPersistentSRSposResourcesPerSlot-r17 + ENUMERATED { n1, n2, n3, n4, n5, n6, n8, n10, + n12, n14 } OPTIONAL, + switchingTimeSRS-TX-OtherTX-r17 ENUMERATED { us100, us140, us200, us300, us500 } + OPTIONAL, + ... +} + ReferencePoint-r16 ::= SEQUENCE { referencePointGeographicLocation-r16 CHOICE { @@ -1902,7 +2394,8 @@ OTDOA-ProvideCapabilities ::= SEQUENCE { idleStateForMeasurements-r14 ENUMERATED { required } OPTIONAL, numberOfRXantennas-r14 ENUMERATED { rx1, ... } OPTIONAL, motionMeasurements-r15 ENUMERATED { supported } OPTIONAL, - interRAT-RSTDmeasurement-r15 ENUMERATED { supported } OPTIONAL + interRAT-RSTDmeasurement-r15 ENUMERATED { supported } OPTIONAL, + scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupport-r17 OPTIONAL } maxBands INTEGER ::= 64 @@ -1982,6 +2475,12 @@ GNSS-CommonAssistData ::= SEQUENCE { [[ gnss-SSR-CorrectionPoints-r16 GNSS-SSR-CorrectionPoints-r16 OPTIONAL -- Need ON + ]], + [[ + gnss-Integrity-ServiceParameters-r17 + GNSS-Integrity-ServiceParameters-r17 OPTIONAL, -- Need ON + gnss-Integrity-ServiceAlert-r17 + GNSS-Integrity-ServiceAlert-r17 OPTIONAL -- Need OR ]] } @@ -2053,6 +2552,9 @@ GNSS-PeriodicAssistData-r15 ::= SEQUENCE { gnss-SSR-PeriodicPhaseBias-r16 GNSS-PeriodicControlParam-r15 OPTIONAL, -- Need ON gnss-SSR-PeriodicSTEC-Correction-r16 GNSS-PeriodicControlParam-r15 OPTIONAL, -- Need ON gnss-SSR-PeriodicGriddedCorrection-r16 GNSS-PeriodicControlParam-r15 OPTIONAL -- Need ON + ]], + [[ + gnss-Integrity-PeriodicServiceAlert-r17 GNSS-PeriodicControlParam-r15 OPTIONAL -- Need ON ]] } @@ -2338,6 +2840,20 @@ GNSS-SSR-ArrayOfCorrectionPoints-r16 ::=SEQUENCE { } +GNSS-Integrity-ServiceParameters-r17 ::= SEQUENCE { + irMinimum-r17 INTEGER (0..255), + irMaximum-r17 INTEGER (0..255), + ... +} + + +GNSS-Integrity-ServiceAlert-r17 ::= SEQUENCE { + ionosphereDoNotUse-r17 BOOLEAN, + troposphereDoNotUse-r17 BOOLEAN, + ... +} + + GNSS-TimeModelList ::= SEQUENCE (SIZE (1..15)) OF GNSS-TimeModelElement GNSS-TimeModelElement ::= SEQUENCE { @@ -2497,6 +3013,7 @@ BDS-ClockModel-r12 ::= SEQUENCE { ]] } + BDS-ClockModel2-r16 ::= SEQUENCE { bdsToc-r16 INTEGER (0..2047), bdsA0-r16 INTEGER (-16777216..16777215), @@ -2504,7 +3021,10 @@ BDS-ClockModel2-r16 ::= SEQUENCE { bdsA2-r16 INTEGER (-1024..1023), bdsTgdB1Cp-r16 INTEGER (-2048..2047), bdsIscB1Cd-r16 INTEGER (-2048..2047), - ... + ..., + [[ bdsTgdB2ap-r17 INTEGER (-2048..2047) OPTIONAL, -- Need ON + bdsIscB2ad-r17 INTEGER (-2048..2047) OPTIONAL -- Need ON + ]] } @@ -3206,7 +3726,10 @@ GNSS-SSR-OrbitCorrections-r15 ::= SEQUENCE { satelliteReferenceDatum-r15 ENUMERATED { itrf, regional, ... }, iod-ssr-r15 INTEGER (0..15), ssr-OrbitCorrectionList-r15 SSR-OrbitCorrectionList-r15, - ... + ..., + [[ + orbit-IntegrityParameters-r17 ORBIT-IntegrityParameters-r17 OPTIONAL -- Need OR + ]] } SSR-OrbitCorrectionList-r15 ::= SEQUENCE (SIZE(1..64)) OF SSR-OrbitCorrectionSatelliteElement-r15 @@ -3220,16 +3743,46 @@ SSR-OrbitCorrectionSatelliteElement-r15 ::= SEQUENCE { dot-delta-radial-r15 INTEGER (-1048576..1048575) OPTIONAL, -- Need ON dot-delta-AlongTrack-r15 INTEGER (-262144..262143) OPTIONAL, -- Need ON dot-delta-CrossTrack-r15 INTEGER (-262144..262143) OPTIONAL, -- Need ON + ..., + [[ + ssr-IntegrityOrbitBounds-r17 SSR-IntegrityOrbitBounds-r17 OPTIONAL -- Cond Integrity1 + ]] +} + +ORBIT-IntegrityParameters-r17 ::= SEQUENCE { + probOnsetConstFault-r17 INTEGER (0..255), + meanConstFaultDuration-r17 INTEGER (1..3600), + probOnsetSatFault-r17 INTEGER (0..255), + meanSatFaultDuration-r17 INTEGER (1..3600), + orbitRangeErrorCorrelationTime-r17 INTEGER (0..255) OPTIONAL, -- Need OR + orbitRangeRateErrorCorrelationTime-r17 INTEGER (0..255) OPTIONAL, -- Cond Integrity2 ... } +SSR-IntegrityOrbitBounds-r17 ::= SEQUENCE { + meanOrbitError-r17 RAC-OrbitalErrorComponents-r17, + varOrbitError-r17 RAC-OrbitalErrorComponents-r17, + meanOrbitRateError-r17 RAC-OrbitalErrorComponents-r17, + varOrbitRateError-r17 RAC-OrbitalErrorComponents-r17, + ... +} + +RAC-OrbitalErrorComponents-r17 ::= SEQUENCE { + radial-r17 INTEGER (0..255), + alongTrack-r17 INTEGER (0..255), + crossTrack-r17 INTEGER (0..255) +} + GNSS-SSR-ClockCorrections-r15 ::= SEQUENCE { epochTime-r15 GNSS-SystemTime, ssrUpdateInterval-r15 INTEGER (0..15), iod-ssr-r15 INTEGER (0..15), ssr-ClockCorrectionList-r15 SSR-ClockCorrectionList-r15, - ... + ..., + [[ + clock-IntegrityParameters-r17 CLOCK-IntegrityParameters-r17 OPTIONAL -- Need OR + ]] } SSR-ClockCorrectionList-r15 ::= SEQUENCE (SIZE(1..64)) OF SSR-ClockCorrectionSatelliteElement-r15 @@ -3239,6 +3792,23 @@ SSR-ClockCorrectionSatelliteElement-r15 ::= SEQUENCE { delta-Clock-C0-r15 INTEGER (-2097152..2097151), delta-Clock-C1-r15 INTEGER (-1048576..1048575) OPTIONAL, -- Need ON delta-Clock-C2-r15 INTEGER (-67108864..67108863) OPTIONAL, -- Need ON + ..., + [[ + ssr-IntegrityClockBounds-r17 SSR-IntegrityClockBounds-r17 OPTIONAL -- Need OR + ]] +} + +CLOCK-IntegrityParameters-r17 ::= SEQUENCE { + clockRangeErrorCorrelationTime-r17 INTEGER (0..255), + clockRangeRateErrorCorrelationTime-r17 INTEGER (0..255), + ... +} + +SSR-IntegrityClockBounds-r17 ::= SEQUENCE { + meanClock-r17 INTEGER (0..255), + stdDevClock-r17 INTEGER (0..255), + meanClockRate-r17 INTEGER (0..255), + stdDevClockRate-r17 INTEGER (0..255), ... } @@ -3264,6 +3834,17 @@ SSR-CodeBiasSignalList-r15 ::= SEQUENCE (SIZE(1..16)) OF SSR-CodeBiasSignalEleme SSR-CodeBiasSignalElement-r15 ::= SEQUENCE { signal-and-tracking-mode-ID-r15 GNSS-SignalID, codeBias-r15 INTEGER (-8192..8191), + ..., + [[ + ssr-IntegrityCodeBiasBounds-r17 SSR-IntegrityCodeBiasBounds-r17 OPTIONAL -- Need OR + ]] +} + +SSR-IntegrityCodeBiasBounds-r17 ::= SEQUENCE { + meanCodeBias-r17 INTEGER (0..255), + stdDevCodeBias-r17 INTEGER (0..255), + meanCodeBiasRate-r17 INTEGER (0..255), + stdDevCodeBiasRate-r17 INTEGER (0..255), ... } @@ -3308,6 +3889,17 @@ SSR-PhaseBiasSignalElement-r16 ::= SEQUENCE { phaseBias-r16 INTEGER (-16384..16383), phaseDiscontinuityIndicator-r16 INTEGER (0..3), phaseBiasIntegerIndicator-r16 INTEGER (0..3) OPTIONAL, -- Need OP + ..., + [[ + ssr-IntegrityPhaseBiasBounds-r17 SSR-IntegrityPhaseBiasBounds-r17 OPTIONAL -- Need OR + ]] +} + +SSR-IntegrityPhaseBiasBounds-r17 ::= SEQUENCE { + meanPhaseBias-r17 INTEGER (0..255), + stdDevPhaseBias-r17 INTEGER (0..255), + meanPhaseBiasRate-r17 INTEGER (0..255), + stdDevPhaseBiasRate-r17 INTEGER (0..255), ... } @@ -3318,7 +3910,10 @@ GNSS-SSR-STEC-Correction-r16 ::= SEQUENCE { iod-ssr-r16 INTEGER (0..15), correctionPointSetID-r16 INTEGER (0..16383), stec-SatList-r16 STEC-SatList-r16, - ... + ..., + [[ + stec-IntegrityParameters-r17 STEC-IntegrityParameters-r17 OPTIONAL -- Need OR + ]] } STEC-SatList-r16 ::= SEQUENCE (SIZE(1..64)) OF STEC-SatElement-r16 @@ -3330,6 +3925,25 @@ STEC-SatElement-r16 ::= SEQUENCE { stec-C01-r16 INTEGER (-2048..2047) OPTIONAL, -- Need ON stec-C10-r16 INTEGER (-2048..2047) OPTIONAL, -- Need ON stec-C11-r16 INTEGER (-512..511) OPTIONAL, -- Need ON + ..., + [[ + stec-IntegrityErrorBounds-r17 STEC-IntegrityErrorBounds-r17 OPTIONAL -- Cond Integrity1 + ]] +} + +STEC-IntegrityParameters-r17 ::= SEQUENCE { + probOnsetIonoFault-r17 INTEGER (0..255), + meanIonoFaultDuration-r17 INTEGER (1..256), + ionoRangeErrorCorrelationTime-r17 INTEGER (1..255) OPTIONAL, -- Need OR + ionoRangeRateErrorCorrelationTime-r17 INTEGER (1..255) OPTIONAL, -- Cond Integrity2 + ... +} + +STEC-IntegrityErrorBounds-r17 ::= SEQUENCE { + meanIonosphere-r17 INTEGER (0..255), + stdDevIonosphere-r17 INTEGER (0..255), + meanIonosphereRate-r17 INTEGER (0..255), + stdDevIonosphereRate-r17 INTEGER (0..255), ... } @@ -3341,7 +3955,12 @@ GNSS-SSR-GriddedCorrection-r16 ::= SEQUENCE { troposphericDelayQualityIndicator-r16 BIT STRING (SIZE(6)) OPTIONAL, -- Cond Tropo correctionPointSetID-r16 INTEGER (0..16383), gridList-r16 GridList-r16, - ... + ..., + [[ + ssr-GriddedCorrectionIntegrityParameters-r17 + SSR-GriddedCorrectionIntegrityParameters-r17 + OPTIONAL -- Need OR + ]] } GridList-r16 ::= SEQUENCE (SIZE(1..64)) OF GridElement-r16 @@ -3355,7 +3974,11 @@ GridElement-r16 ::= SEQUENCE { TropospericDelayCorrection-r16 ::= SEQUENCE { tropoHydroStaticVerticalDelay-r16 INTEGER (-256..255), tropoWetVerticalDelay-r16 INTEGER (-128..127), - ... + ..., + [[ + tropoDelayIntegrityErrorBounds-r17 TropoDelayIntegrityErrorBounds-r17 + OPTIONAL -- Cond Integrity1 + ]] } STEC-ResidualSatList-r16 ::= SEQUENCE (SIZE(1..64)) OF STEC-ResidualSatElement-r16 @@ -3369,6 +3992,26 @@ STEC-ResidualSatElement-r16 ::= SEQUENCE { ... } +SSR-GriddedCorrectionIntegrityParameters-r17 ::= SEQUENCE { + probOnsetTroposphereFault-r17 INTEGER (0..255), + meanTroposphereFaultDuration-r17 INTEGER (1..256), + troposphereRangeErrorCorrelationTime-r17 INTEGER (1..255) OPTIONAL, -- Need OR + troposphereRangeRateErrorCorrelationTime-r17 INTEGER (1..255) OPTIONAL, -- Cond Integrity2 + ... +} + +TropoDelayIntegrityErrorBounds-r17 ::= SEQUENCE { + meanTroposphereVerticalHydroStaticDelay-r17 INTEGER (0..255), + stdDevTroposphereVerticalHydroStaticDelay-r17 INTEGER (0..255), + meanTroposphereVerticalWetDelay-r17 INTEGER (0..255), + stdDevTroposphereVerticalWetDelay-r17 INTEGER (0..255), + meanTroposphereVerticalHydroStaticDelayRate-r17 INTEGER (0..255), + stdDevTroposphereVerticalHydroStaticDelayRate-r17 INTEGER (0..255), + meanTroposphereVerticalWetDelayRate-r17 INTEGER (0..255), + stdDevTroposphereVerticalWetDelayRate-r17 INTEGER (0..255), + ... +} + NavIC-DifferentialCorrections-r16 ::= SEQUENCE { navic-RefTOWC-r16 INTEGER (0..50400), @@ -3484,6 +4127,14 @@ GNSS-CommonAssistDataReq ::= SEQUENCE { gnss-SSR-CorrectionPointsReq-r16 GNSS-SSR-CorrectionPointsReq-r16 OPTIONAL -- Cond PointsReq + ]], + [[ + gnss-Integrity-ServiceParametersReq-r17 + GNSS-Integrity-ServiceParametersReq-r17 + OPTIONAL, -- Cond IntServiceReq + gnss-Integrity-ServiceAlertReq-r17 + GNSS-Integrity-ServiceAlertReq-r17 + OPTIONAL -- Cond IntAlertReq ]] } @@ -3562,6 +4213,10 @@ GNSS-PeriodicAssistDataReq-r15 ::= SEQUENCE { gnss-SSR-PeriodicSTEC-CorrectionReq-r16 GNSS-PeriodicControlParam-r15 OPTIONAL, -- Cond pSTEC gnss-SSR-PeriodicGriddedCorrectionReq-r16 GNSS-PeriodicControlParam-r15 OPTIONAL -- Cond pGrid + ]], + [[ + gnss-Integrity-PeriodicServiceAlertReq-r17 + GNSS-PeriodicControlParam-r15 OPTIONAL -- Cond pDNU ]] } @@ -3615,6 +4270,16 @@ GNSS-SSR-CorrectionPointsReq-r16 ::= SEQUENCE { } +GNSS-Integrity-ServiceParametersReq-r17 ::= SEQUENCE { + ... +} + + +GNSS-Integrity-ServiceAlertReq-r17 ::= SEQUENCE { + ... +} + + GNSS-TimeModelListReq ::= SEQUENCE (SIZE(1..15)) OF GNSS-TimeModelElementReq GNSS-TimeModelElementReq ::= SEQUENCE { @@ -3769,20 +4434,31 @@ GNSS-RTK-FKP-GradientsReq-r15 ::= SEQUENCE { GNSS-SSR-OrbitCorrectionsReq-r15 ::= SEQUENCE { storedNavList-r15 GNSS-NavListInfo-r15 OPTIONAL, - ... + ..., + [[ + orbit-IntegrityReq-r17 BIT STRING { correlationTimeReq (0) + } (SIZE(1..8)) OPTIONAL + ]] } GNSS-SSR-ClockCorrectionsReq-r15 ::= SEQUENCE { storedNavList-r15 GNSS-NavListInfo-r15 OPTIONAL, - ... + ..., + [[ + clock-IntegrityParametersReq-r17 ENUMERATED { true } OPTIONAL, + ssr-IntegrityClockBoundsReq-r17 ENUMERATED { true } OPTIONAL + ]] } GNSS-SSR-CodeBiasReq-r15 ::= SEQUENCE { signal-and-tracking-mode-ID-Map-r15 GNSS-SignalIDs, storedNavList-r15 GNSS-NavListInfo-r15 OPTIONAL, - ... + ..., + [[ + ssr-IntegrityCodeBiasBoundsReq-r17 ENUMERATED { requested } OPTIONAL + ]] } @@ -3794,17 +4470,27 @@ GNSS-SSR-URA-Req-r16 ::= SEQUENCE { GNSS-SSR-PhaseBiasReq-r16 ::= SEQUENCE { signal-and-tracking-mode-ID-Map-r16 GNSS-SignalIDs, storedNavList-r16 GNSS-NavListInfo-r15 OPTIONAL, - ... + ..., + [[ + ssr-IntegrityPhaseBiasBoundsReq-r17 ENUMERATED { requested } OPTIONAL + ]] } GNSS-SSR-STEC-CorrectionReq-r16 ::= SEQUENCE { - ... + ..., + [[ + stec-IntegrityReq-r17 BIT STRING { correlationTimeReq (0) + } (SIZE(1..8)) OPTIONAL + ]] } GNSS-SSR-GriddedCorrectionReq-r16 ::= SEQUENCE { - ... + ..., + [[ + griddedCorrectionIntegrityReq-r17 ENUMERATED { requested } OPTIONAL + ]] } @@ -3936,6 +4622,20 @@ GNSS-SatMeasElement ::= SEQUENCE { GNSS-LocationInformation ::= SEQUENCE { measurementReferenceTime MeasurementReferenceTime, agnss-List GNSS-ID-Bitmap, + ..., + [[ + ha-GNSS-Metrics-r17 HA-GNSS-Metrics-r17 OPTIONAL + ]] +} + + +HA-GNSS-Metrics-r17 ::= SEQUENCE { + nrOfUsedSatellites-r17 INTEGER (0..64), + hdopi-r17 INTEGER (1..256) OPTIONAL, + pdopi-r17 INTEGER (1..256) OPTIONAL, + age-r17 INTEGER (0..99) OPTIONAL, + fixType-r17 ENUMERATED {carrier-phase-float, + carrier-phase-fix, ...} OPTIONAL, ... } @@ -3955,6 +4655,9 @@ GNSS-PositioningInstructions ::= SEQUENCE { ..., [[ ha-GNSS-Req-r15 ENUMERATED { true } OPTIONAL -- Cond UEB + ]], + [[ + ha-GNSS-MetricsReq-r17 ENUMERATED { true } OPTIONAL -- Cond UEB ]] } @@ -3973,6 +4676,9 @@ A-GNSS-ProvideCapabilities ::= SEQUENCE { [[ periodicAssistanceData-r15 BIT STRING { solicited (0), unsolicited (1) } (SIZE (1..8)) OPTIONAL + ]], + [[ scheduledLocationRequestSupported-r17 + ScheduledLocationTimeSupportPerMode-r17 OPTIONAL ]] } @@ -3994,6 +4700,9 @@ GNSS-SupportElement ::= SEQUENCE { [[ adrEnhancementsSupport-r15 ENUMERATED { true } OPTIONAL, ha-gnss-Modes-r15 PositioningModes OPTIONAL + ]], + [[ + ha-gnss-MetricsSupport-r17 ENUMERATED { true } OPTIONAL ]] } @@ -4022,6 +4731,14 @@ GNSS-CommonAssistanceDataSupport ::= SEQUENCE { gnss-RTK-AuxiliaryStationDataSupport-r15 GNSS-RTK-AuxiliaryStationDataSupport-r15 OPTIONAL -- Cond AuxARPSup + ]], + [[ + gnss-Integrity-ServiceParametersSupport-r17 + GNSS-Integrity-ServiceParametersSupport-r17 + OPTIONAL, -- Cond IntServiceSup + gnss-Integrity-ServiceAlertSupport-r17 + GNSS-Integrity-ServiceAlertSupport-r17 + OPTIONAL -- Cond IntAlertSup ]] } @@ -4061,6 +4778,16 @@ GNSS-RTK-AuxiliaryStationDataSupport-r15 ::= SEQUENCE { } +GNSS-Integrity-ServiceParametersSupport-r17 ::= SEQUENCE { + ... +} + + +GNSS-Integrity-ServiceAlertSupport-r17 ::= SEQUENCE { + ... +} + + GNSS-GenericAssistanceDataSupport ::= SEQUENCE (SIZE (1..16)) OF GNSS-GenericAssistDataSupportElement @@ -4254,18 +4981,29 @@ GNSS-RTK-FKP-GradientsSupport-r15 ::= SEQUENCE { GNSS-SSR-OrbitCorrectionsSupport-r15 ::= SEQUENCE { - ... + ..., + [[ + orbit-IntegritySup-r17 BIT STRING { correlationTimeSup (0) + } (SIZE(1..8)) OPTIONAL + ]] } GNSS-SSR-ClockCorrectionsSupport-r15 ::= SEQUENCE { - ... + ..., + [[ + clock-IntegrityParameterSupport-r17 ENUMERATED { supported } OPTIONAL, + ssr-IntegrityClockBoundsSupport-r17 ENUMERATED { supported } OPTIONAL + ]] } GNSS-SSR-CodeBiasSupport-r15 ::= SEQUENCE { signal-and-tracking-mode-ID-Sup-r15 GNSS-SignalIDs, - ... + ..., + [[ + ssr-IntegrityCodeBiasBoundsSup-r17 ENUMERATED { supported } OPTIONAL + ]] } @@ -4276,17 +5014,27 @@ GNSS-SSR-URA-Support-r16 ::= SEQUENCE { GNSS-SSR-PhaseBiasSupport-r16 ::= SEQUENCE { signal-and-tracking-mode-ID-Sup-r16 GNSS-SignalIDs, - ... + ..., + [[ + ssr-IntegrityPhaseBiasBoundsSup-r17 ENUMERATED { supported } OPTIONAL + ]] } GNSS-SSR-STEC-CorrectionSupport-r16 ::= SEQUENCE { - ... + ..., + [[ + stec-IntegritySup-r17 BIT STRING { correlationTimeSup (0) + } (SIZE(1..8)) OPTIONAL + ]] } GNSS-SSR-GriddedCorrectionSupport-r16 ::= SEQUENCE { - ... + ..., + [[ + griddedCorrectionIntegritySup-r17 ENUMERATED { supported } OPTIONAL + ]] } @@ -4512,6 +5260,8 @@ ECID-ProvideCapabilities ::= SEQUENCE { [[ periodicalReporting-r14 ENUMERATED { supported } OPTIONAL, triggeredReporting-r14 ENUMERATED { supported } OPTIONAL, idleStateForMeasurements-r14 ENUMERATED { required } OPTIONAL + ]], + [[ scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupport-r17 OPTIONAL ]] } @@ -4601,6 +5351,8 @@ TBS-ProvideCapabilities-r13 ::= SEQUENCE { tb3 (2), tb4 (3)} (SIZE (1..8)) OPTIONAL, mbs-IdleStateForMeasurements-r14 ENUMERATED { required } OPTIONAL + ]], + [[ scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupportPerMode-r17 OPTIONAL ]] } @@ -4795,6 +5547,8 @@ Sensor-ProvideCapabilities-r13 ::= SEQUENCE { [[ sensor-MotionInformationSup-r15 ENUMERATED { true } OPTIONAL ]], [[ adjustmentSupported-r16 ENUMERATED { true } OPTIONAL + ]], + [[ scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupportPerMode-r17 OPTIONAL ]] } @@ -4952,6 +5706,8 @@ WLAN-ProvideCapabilities-r13 ::= SEQUENCE { periodicalReportingSupported-r14 PositioningModes OPTIONAL, idleStateForMeasurements-r14 ENUMERATED { required } OPTIONAL + ]], + [[ scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupportPerMode-r17 OPTIONAL ]] } @@ -5116,6 +5872,8 @@ BT-ProvideCapabilities-r13 ::= SEQUENCE { ENUMERATED { required } OPTIONAL, periodicalReportingSupported-r14 PositioningModes OPTIONAL + ]], + [[ scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupportPerMode-r17 OPTIONAL ]] } @@ -5151,7 +5909,10 @@ BT-TargetDeviceErrorCauses-r13 ::= SEQUENCE { NR-UL-ProvideCapabilities-r16 ::= SEQUENCE { nr-UL-SRS-Capability-r16 NR-UL-SRS-Capability-r16, - ... + ..., + [[ + nr-UE-TEG-Capability-r17 NR-UE-TEG-Capability-r17 OPTIONAL + ]] } @@ -5224,7 +5985,12 @@ NR-ECID-ProvideCapabilities-r16 ::= SEQUENCE { csirsrqSup (3)} (SIZE(1..8)), periodicalReporting-r16 ENUMERATED { supported } OPTIONAL, triggeredReporting-r16 ENUMERATED { supported } OPTIONAL, - ... + ..., + [[ + ten-ms-unit-ResponseTime-r17 ENUMERATED { supported } OPTIONAL, + scheduledLocationRequestSupported-r17 + ScheduledLocationTimeSupport-r17 OPTIONAL + ]] } @@ -5269,7 +6035,15 @@ NR-DL-TDOA-ProvideAssistanceData-r16 ::= SEQUENCE { NR-PositionCalculationAssistance-r16 OPTIONAL, -- Cond UEB nr-DL-TDOA-Error-r16 NR-DL-TDOA-Error-r16 OPTIONAL, -- Need ON - ... + ..., + [[ + nr-On-Demand-DL-PRS-Configurations-r17 + NR-On-Demand-DL-PRS-Configurations-r17 + OPTIONAL, -- Need ON + nr-On-Demand-DL-PRS-Configurations-Selected-IndexList-r17 + NR-On-Demand-DL-PRS-Configurations-Selected-IndexList-r17 OPTIONAL, -- Need ON + assistanceDataValidityArea-r17 AreaID-CellList-r17 OPTIONAL -- Need ON + ]] } @@ -5277,7 +6051,20 @@ NR-DL-TDOA-RequestAssistanceData-r16 ::= SEQUENCE { nr-PhysCellID-r16 NR-PhysCellID-r16 OPTIONAL, nr-AdType-r16 BIT STRING { dl-prs (0), posCalc (1) } (SIZE (1..8)), - ... + ..., + [[ + nr-PosCalcAssistanceRequest-r17 BIT STRING { trpLoc (0), + beamInfo (1), + rtdInfo (2), + losNlosInfo (3), + trpTEG-Info (4) + } (SIZE (1..8)) OPTIONAL, + nr-on-demand-DL-PRS-Request-r17 NR-On-Demand-DL-PRS-Request-r17 OPTIONAL, + nr-DL-PRS-ExpectedAoD-or-AoA-Request-r17 + ENUMERATED { eAoD, eAoA } OPTIONAL, + pre-configured-AssistanceDataRequest-r17 + ENUMERATED { true } OPTIONAL + ]] } @@ -5288,7 +6075,17 @@ NR-DL-TDOA-ProvideLocationInformation-r16 ::= SEQUENCE { nr-dl-tdoa-LocationInformation-r16 NR-DL-TDOA-LocationInformation-r16 OPTIONAL, nr-DL-TDOA-Error-r16 NR-DL-TDOA-Error-r16 OPTIONAL, - ... + ..., + [[ + nr-DL-TDOA-SignalMeasurementInstances-r17 + SEQUENCE (SIZE (1..maxMeasInstances-r17)) OF + NR-DL-TDOA-SignalMeasurementInformation-r16 + OPTIONAL, -- Cond batchUEA + nr-DL-TDOA-LocationInformationInstances-r17 + SEQUENCE (SIZE (1..maxMeasInstances-r17)) OF + NR-DL-TDOA-LocationInformation-r16 + OPTIONAL -- Cond batchUEB + ]] } @@ -5322,12 +6119,26 @@ NR-DL-TDOA-MeasElement-r16 ::= SEQUENCE { nr-DL-PRS-RSRP-Result-r16 INTEGER (0..126) OPTIONAL, nr-DL-TDOA-AdditionalMeasurements-r16 NR-DL-TDOA-AdditionalMeasurements-r16 OPTIONAL, - ... + ..., + [[ + nr-UE-Rx-TEG-ID-r17 INTEGER (0..maxNumOfRxTEGs-1-r17) OPTIONAL, + nr-DL-PRS-FirstPathRSRP-Result-r17 INTEGER (0..126) OPTIONAL, + nr-los-nlos-Indicator-r17 CHOICE { + perTRP-r17 LOS-NLOS-Indicator-r17, + perResource-r17 LOS-NLOS-Indicator-r17 + } OPTIONAL, + nr-AdditionalPathListExt-r17 NR-AdditionalPathListExt-r17 OPTIONAL, + nr-DL-TDOA-AdditionalMeasurementsExt-r17 + NR-DL-TDOA-AdditionalMeasurementsExt-r17 OPTIONAL + ]] } NR-DL-TDOA-AdditionalMeasurements-r16 ::= SEQUENCE (SIZE (1..3)) OF NR-DL-TDOA-AdditionalMeasurementElement-r16 +NR-DL-TDOA-AdditionalMeasurementsExt-r17 ::= SEQUENCE (SIZE (1..maxAddMeasTDOA-r17)) OF + NR-DL-TDOA-AdditionalMeasurementElement-r16 + NR-DL-TDOA-AdditionalMeasurementElement-r16 ::= SEQUENCE { nr-DL-PRS-ResourceID-r16 NR-DL-PRS-ResourceID-r16 OPTIONAL, nr-DL-PRS-ResourceSetID-r16 NR-DL-PRS-ResourceSetID-r16 OPTIONAL, @@ -5344,7 +6155,15 @@ NR-DL-TDOA-AdditionalMeasurementElement-r16 ::= SEQUENCE { nr-TimingQuality-r16 NR-TimingQuality-r16, nr-DL-PRS-RSRP-ResultDiff-r16 INTEGER (0..61) OPTIONAL, nr-AdditionalPathList-r16 NR-AdditionalPathList-r16 OPTIONAL, -... + ..., + [[ + nr-UE-Rx-TEG-ID-r17 INTEGER (0..maxNumOfRxTEGs-1-r17) OPTIONAL, + nr-DL-PRS-FirstPathRSRP-ResultDiff-r17 + INTEGER (0..61) OPTIONAL, + nr-los-nlos-IndicatorPerResource-r17 + LOS-NLOS-Indicator-r17 OPTIONAL, + nr-AdditionalPathListExt-r17 NR-AdditionalPathListExt-r17 OPTIONAL + ]] } @@ -5354,23 +6173,48 @@ NR-DL-TDOA-LocationInformation-r16 ::= SEQUENCE { utc-time-r16 UTCTime, ... } OPTIONAL, - ... + ..., + [[ + locationCoordinates-r17 LocationCoordinates OPTIONAL, -- Cond batch1 + locationSource-r17 LocationSource-r13 OPTIONAL -- Cond batch2 + ]] } NR-DL-TDOA-RequestLocationInformation-r16 ::= SEQUENCE { nr-DL-PRS-RstdMeasurementInfoRequest-r16 ENUMERATED { true } OPTIONAL,-- Need ON - nr-RequestedMeasurements-r16 BIT STRING { prsrsrpReq (0) } (SIZE(1..8)), + nr-RequestedMeasurements-r16 BIT STRING { prsrsrpReq (0), + firstPathRsrpReq-r17 (1) + } (SIZE(1..8)), nr-AssistanceAvailability-r16 BOOLEAN, nr-DL-TDOA-ReportConfig-r16 NR-DL-TDOA-ReportConfig-r16 OPTIONAL, -- Need ON additionalPaths-r16 ENUMERATED { requested } OPTIONAL, -- Need ON - ... + ..., + [[ + nr-UE-RxTEG-Request-r17 ENUMERATED { requested } OPTIONAL, -- Need ON + nr-los-nlos-IndicatorRequest-r17 SEQUENCE { + type-r17 LOS-NLOS-IndicatorType1-r17, + granularity-r17 LOS-NLOS-IndicatorGranularity1-r17, + ... + } OPTIONAL, -- Need ON + additionalPathsExt-r17 ENUMERATED { requested } OPTIONAL, -- Need ON + additionalPathsDL-PRS-RSRP-Request-r17 ENUMERATED { requested } OPTIONAL, -- Need ON + multiMeasInSameReport-r17 ENUMERATED { requested } OPTIONAL -- Need ON + + ]] } NR-DL-TDOA-ReportConfig-r16 ::= SEQUENCE { maxDL-PRS-RSTD-MeasurementsPerTRPPair-r16 INTEGER (1..4) OPTIONAL, -- Need ON timingReportingGranularityFactor-r16 INTEGER (0..5) OPTIONAL, -- Need ON - ... + ..., + [[ + measureSameDL-PRS-ResourceWithDifferentRxTEGs-r17 + ENUMERATED { n0, n2, n3, n4, n6, n8, ... } + OPTIONAL, -- Need ON + requestedDL-PRS-ProcessingSamples-r17 ENUMERATED { m1, ... } OPTIONAL, -- Need ON + lowerRxBeamSweepingThan8-FR2-r17 ENUMERATED { requested } OPTIONAL -- Need ON + ]] } @@ -5382,7 +6226,36 @@ NR-DL-TDOA-ProvideCapabilities-r16 ::= SEQUENCE { nr-DL-PRS-ProcessingCapability-r16 NR-DL-PRS-ProcessingCapability-r16, additionalPathsReport-r16 ENUMERATED { supported } OPTIONAL, periodicalReporting-r16 PositioningModes OPTIONAL, - ... + ..., + [[ + ten-ms-unit-ResponseTime-r17 PositioningModes OPTIONAL, + nr-PosCalcAssistanceSupport-r17 BIT STRING { trpLocSup (0), + beamInfoSup (1), + rtdInfoSup (2), + trpTEG-InfoSup (3) + } (SIZE (1..8)) OPTIONAL, + nr-los-nlos-AssistanceDataSupport-r17 SEQUENCE { + type-r17 LOS-NLOS-IndicatorType2-r17, + granularity-r17 LOS-NLOS-IndicatorGranularity2-r17, + ... + } OPTIONAL, + nr-DL-PRS-ExpectedAoD-or-AoA-Sup-r17 BIT STRING { eAoD (0), + eAoA (1) + } (SIZE (1..8)) OPTIONAL, + nr-DL-TDOA-On-Demand-DL-PRS-Support-r17 NR-On-Demand-DL-PRS-Support-r17 OPTIONAL, + nr-los-nlos-IndicatorSupport-r17 SEQUENCE { + type-r17 LOS-NLOS-IndicatorType2-r17, + granularity-r17 LOS-NLOS-IndicatorGranularity2-r17, + ... + } OPTIONAL, + additionalPathsExtSupport-r17 ENUMERATED { n4, n6, n8 } OPTIONAL, + scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupportPerMode-r17 OPTIONAL, + nr-dl-prs-AssistanceDataValidity-r17 SEQUENCE { + area-validity-r17 INTEGER (1..maxNrOfAreas-r17) OPTIONAL, ... + } OPTIONAL, + multiMeasInSameMeasReport-r17 ENUMERATED { supported } OPTIONAL, + mg-ActivationRequest-r17 ENUMERATED { supported } OPTIONAL + ]] } @@ -5391,9 +6264,22 @@ NR-DL-TDOA-MeasurementCapability-r16 ::= SEQUENCE { dl-RSTD-MeasurementPerPairOfTRP-FR2-r16 INTEGER (1..4), supportOfDL-PRS-RSRP-MeasFR1-r16 ENUMERATED { supported} OPTIONAL, supportOfDL-PRS-RSRP-MeasFR2-r16 ENUMERATED { supported} OPTIONAL, + ..., + [[ + nr-UE-TEG-Capability-r17 NR-UE-TEG-Capability-r17 OPTIONAL, + dl-tdoa-MeasCapabilityBandList-r17 SEQUENCE (SIZE (1..nrMaxBands-r16)) OF + DL-TDOA-MeasCapabilityPerBand-r17 OPTIONAL + ]] +} + +DL-TDOA-MeasCapabilityPerBand-r17 ::= SEQUENCE { + freqBandIndicatorNR-r17 FreqBandIndicatorNR-r16, + supportOfDL-PRS-FirstPathRSRP-r17 ENUMERATED { supported } OPTIONAL, + dl-PRS-MeasRRC-Inactive-r17 ENUMERATED { supported } OPTIONAL, ... } + NR-DL-TDOA-RequestCapabilities-r16 ::= SEQUENCE { ... } @@ -5411,7 +6297,9 @@ NR-DL-TDOA-LocationServerErrorCauses-r16 ::= SEQUENCE { assistanceDataNotSupportedByServer, assistanceDataSupportedButCurrentlyNotAvailableByServer, notProvidedAssistanceDataNotSupportedByServer, - ... + ..., + on-demand-dl-prs-NotSupportedByServer-v1700, + on-demand-dl-prs-SupportedButCurrentlyNotAvailableByServer-v1700 }, ... } @@ -5435,9 +6323,19 @@ NR-DL-AoD-ProvideAssistanceData-r16 ::= SEQUENCE { nr-SelectedDL-PRS-IndexList-r16 NR-SelectedDL-PRS-IndexList-r16 OPTIONAL, -- Need ON nr-PositionCalculationAssistance-r16 NR-PositionCalculationAssistance-r16 - OPTIONAL, -- Cond UEB + OPTIONAL, -- Cond UEB nr-DL-AoD-Error-r16 NR-DL-AoD-Error-r16 OPTIONAL, -- Need ON - ... + ..., + [[ + nr-DL-PRS-BeamInfo-r17 NR-DL-PRS-BeamInfo-r16 OPTIONAL, -- Cond UEA + nr-On-Demand-DL-PRS-Configurations-r17 + NR-On-Demand-DL-PRS-Configurations-r17 + OPTIONAL, -- Need ON + nr-On-Demand-DL-PRS-Configurations-Selected-IndexList-r17 + NR-On-Demand-DL-PRS-Configurations-Selected-IndexList-r17 + OPTIONAL, -- Need ON + assistanceDataValidityArea-r17 AreaID-CellList-r17 OPTIONAL -- Need ON + ]] } @@ -5445,7 +6343,19 @@ NR-DL-AoD-RequestAssistanceData-r16 ::= SEQUENCE { nr-PhysCellID-r16 NR-PhysCellID-r16 OPTIONAL, nr-AdType-r16 BIT STRING { dl-prs (0), posCalc (1) } (SIZE (1..8)), - ... + ..., + [[ + nr-PosCalcAssistanceRequest-r17 BIT STRING { trpLoc (0), + beamInfo (1), + rtdInfo (2), + beamAntInfo (3), + losNlosInfo (4) + } (SIZE (1..8)) OPTIONAL, + nr-DL-PRS-ExpectedAoD-or-AoA-Request-r17 ENUMERATED { eAoD, eAoA } OPTIONAL, + nr-DL-PRS-BeamInfoRequest-r17 ENUMERATED { requested } OPTIONAL, + nr-on-demand-DL-PRS-Request-r17 NR-On-Demand-DL-PRS-Request-r17 OPTIONAL, + pre-configured-AssistanceDataRequest-r17 ENUMERATED { true } OPTIONAL + ]] } @@ -5456,7 +6366,13 @@ NR-DL-AoD-ProvideLocationInformation-r16 ::= SEQUENCE { nr-dl-AoD-LocationInformation-r16 NR-DL-AoD-LocationInformation-r16 OPTIONAL, nr-DL-AoD-Error-r16 NR-DL-AoD-Error-r16 OPTIONAL, - ... + ..., + [[ + nr-DL-AoD-SignalMeasurementInstances-r17 SEQUENCE (SIZE (1..maxMeasInstances-r17)) OF + NR-DL-AoD-SignalMeasurementInformation-r16 OPTIONAL, -- Cond batchUEA + nr-DL-AoD-LocationInformationInstances-r17 SEQUENCE (SIZE (1..maxMeasInstances-r17)) OF + NR-DL-AoD-LocationInformation-r16 OPTIONAL -- Cond batchUEB + ]] } @@ -5479,12 +6395,25 @@ NR-DL-AoD-MeasElement-r16 ::= SEQUENCE { nr-DL-PRS-RxBeamIndex-r16 INTEGER (1..8) OPTIONAL, nr-DL-AoD-AdditionalMeasurements-r16 NR-DL-AoD-AdditionalMeasurements-r16 OPTIONAL, - ... + ..., + [[ + nr-DL-PRS-FirstPathRSRP-Result-r17 + INTEGER (0..126) OPTIONAL, + nr-los-nlos-Indicator-r17 CHOICE { + perTRP-r17 LOS-NLOS-Indicator-r17, + perResource-r17 LOS-NLOS-Indicator-r17 + } OPTIONAL, + nr-DL-AoD-AdditionalMeasurementsExt-r17 + NR-DL-AoD-AdditionalMeasurementsExt-r17 OPTIONAL + ]] } NR-DL-AoD-AdditionalMeasurements-r16 ::= SEQUENCE (SIZE (1..7)) OF NR-DL-AoD-AdditionalMeasurementElement-r16 +NR-DL-AoD-AdditionalMeasurementsExt-r17 ::= SEQUENCE (SIZE (1..maxAddMeasAoD-r17)) OF + NR-DL-AoD-AdditionalMeasurementElement-r17 + NR-DL-AoD-AdditionalMeasurementElement-r16 ::= SEQUENCE { nr-DL-PRS-ResourceID-r16 NR-DL-PRS-ResourceID-r16 OPTIONAL, nr-DL-PRS-ResourceSetID-r16 NR-DL-PRS-ResourceSetID-r16 OPTIONAL, @@ -5494,26 +6423,56 @@ NR-DL-AoD-AdditionalMeasurementElement-r16 ::= SEQUENCE { ... } +NR-DL-AoD-AdditionalMeasurementElement-r17 ::= SEQUENCE { + nr-DL-PRS-ResourceID-r17 NR-DL-PRS-ResourceID-r16 OPTIONAL, + nr-DL-PRS-ResourceSetID-r17 NR-DL-PRS-ResourceSetID-r16 OPTIONAL, + nr-TimeStamp-r17 NR-TimeStamp-r16, + nr-DL-PRS-RSRP-ResultDiff-r17 INTEGER (0..30) OPTIONAL, -- Cond rsrp + nr-DL-PRS-RxBeamIndex-r17 INTEGER (1..8) OPTIONAL, + nr-DL-PRS-FirstPathRSRP-ResultDiff-r17 INTEGER (0..61) OPTIONAL, -- Cond rsrpp + nr-los-nlos-IndicatorPerResource-r17 LOS-NLOS-Indicator-r17 OPTIONAL, + ... +} + NR-DL-AoD-LocationInformation-r16 ::= SEQUENCE { - measurementReferenceTime-r16 CHOICE { + measurementReferenceTime-r16 CHOICE { sfn-time-r16 NR-TimeStamp-r16, utc-time-r16 UTCTime, ... } OPTIONAL, - ... + ..., + [[ + locationCoordinates-r17 LocationCoordinates OPTIONAL, -- Cond batch1 + locationSource-r17 LocationSource-r13 OPTIONAL -- Cond batch2 + ]] } NR-DL-AoD-RequestLocationInformation-r16 ::= SEQUENCE { nr-AssistanceAvailability-r16 BOOLEAN, nr-DL-AoD-ReportConfig-r16 NR-DL-AoD-ReportConfig-r16, - ... + ..., + [[ + multiMeasInSameReport-r17 ENUMERATED { requested } OPTIONAL -- Need ON + ]] } NR-DL-AoD-ReportConfig-r16 ::= SEQUENCE { - maxDL-PRS-RSRP-MeasurementsPerTRP-r16 INTEGER (1..8) OPTIONAL, -- Need ON - ... + maxDL-PRS-RSRP-MeasurementsPerTRP-r16 INTEGER (1..8) OPTIONAL, -- Need ON + ..., + [[ + maxDL-PRS-RSRP-MeasurementsPerTRP-r17 INTEGER (9..24) OPTIONAL, -- Need ON + maxDL-PRS-RSRPP-MeasurementsPerTRP-r17 INTEGER (1..24) OPTIONAL, -- Need ON + nr-los-nlos-IndicatorRequest-r17 SEQUENCE { + type-r17 LOS-NLOS-IndicatorType1-r17, + granularity-r17 + LOS-NLOS-IndicatorGranularity1-r17, + ... + } OPTIONAL, -- Need ON + requestedDL-PRS-ProcessingSamples-r17 ENUMERATED { m1, ... } OPTIONAL, -- Need ON + lowerRxBeamSweepingThan8-FR2-r17 ENUMERATED { requested } OPTIONAL -- Need ON + ]] } @@ -5523,8 +6482,41 @@ NR-DL-AoD-ProvideCapabilities-r16 ::= SEQUENCE { nr-DL-AoD-MeasurementCapability-r16 NR-DL-AoD-MeasurementCapability-r16, nr-DL-PRS-QCL-ProcessingCapability-r16 NR-DL-PRS-QCL-ProcessingCapability-r16, nr-DL-PRS-ProcessingCapability-r16 NR-DL-PRS-ProcessingCapability-r16, - periodicalReporting-r16 PositioningModes OPTIONAL, - ... + periodicalReporting-r16 PositioningModes OPTIONAL, + ..., + [[ + ten-ms-unit-ResponseTime-r17 PositioningModes OPTIONAL, + nr-PosCalcAssistanceSupport-r17 BIT STRING { trpLocSup (0), + beamInfoSup (1), + rtdInfoSup (2), + beamAntInfoSup (3) + } (SIZE (1..8)) OPTIONAL, + nr-los-nlos-AssistanceDataSupport-r17 SEQUENCE { + type-r17 LOS-NLOS-IndicatorType2-r17, + granularity-r17 LOS-NLOS-IndicatorGranularity2-r17, + ... + } OPTIONAL, + nr-DL-PRS-ExpectedAoD-or-AoA-Sup-r17 BIT STRING { eAoD (0), + eAoA (1) + } (SIZE (1..8)) OPTIONAL, + nr-DL-PRS-BeamInfoSup-r17 ENUMERATED { sameSet, differentSet, sameOrDifferentSet } + OPTIONAL, + dl-PRS-ResourcePrioritySubset-Sup-r17 ENUMERATED { supported } OPTIONAL, + nr-DL-AoD-On-Demand-DL-PRS-Support-r17 NR-On-Demand-DL-PRS-Support-r17 OPTIONAL, + nr-los-nlos-IndicatorSupport-r17 SEQUENCE { + type-r17 LOS-NLOS-IndicatorType2-r17, + granularity-r17 LOS-NLOS-IndicatorGranularity2-r17, + ... + } OPTIONAL, + scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupportPerMode-r17 + OPTIONAL, + nr-dl-prs-AssistanceDataValidity-r17 SEQUENCE { + area-validity-r17 INTEGER (1..maxNrOfAreas-r17) OPTIONAL, + ... + } OPTIONAL, + multiMeasInSameMeasReport-r17 ENUMERATED { supported } OPTIONAL, + mg-ActivationRequest-r17 ENUMERATED { supported } OPTIONAL + ]] } @@ -5533,14 +6525,22 @@ NR-DL-AoD-MeasurementCapability-r16 ::= SEQUENCE { maxDL-PRS-RSRP-MeasurementFR2-r16 INTEGER (1..8), dl-AoD-MeasCapabilityBandList-r16 SEQUENCE (SIZE (1..nrMaxBands-r16)) OF DL-AoD-MeasCapabilityPerBand-r16, - ... + ..., + [[ + maxDL-PRS-RSRP-MeasurementFR1-r17 ENUMERATED { n16, n24 } OPTIONAL, + maxDL-PRS-RSRP-MeasurementFR2-r17 ENUMERATED { n16, n24 } OPTIONAL + ]] } DL-AoD-MeasCapabilityPerBand-r16 ::= SEQUENCE { - freqBandIndicatorNR-r16 FreqBandIndicatorNR-r16, - simul-NR-DL-AoD-DL-TDOA-r16 ENUMERATED { supported} OPTIONAL, - simul-NR-DL-AoD-Multi-RTT-r16 ENUMERATED { supported} OPTIONAL, - ... + freqBandIndicatorNR-r16 FreqBandIndicatorNR-r16, + simul-NR-DL-AoD-DL-TDOA-r16 ENUMERATED { supported} OPTIONAL, + simul-NR-DL-AoD-Multi-RTT-r16 ENUMERATED { supported} OPTIONAL, + ..., + [[ + maxDL-PRS-FirstPathRSRP-MeasPerTRP-r17 ENUMERATED { n1, n2, n4, n8, n16, n24 } OPTIONAL, + dl-PRS-MeasRRC-Inactive-r17 ENUMERATED { supported } OPTIONAL + ]] } @@ -5561,7 +6561,9 @@ NR-DL-AoD-LocationServerErrorCauses-r16 ::= SEQUENCE { assistanceDataNotSupportedByServer, assistanceDataSupportedButCurrentlyNotAvailableByServer, notProvidedAssistanceDataNotSupportedByServer, - ... + ..., + on-demand-dl-prs-NotSupportedByServer-v1700, + on-demand-dl-prs-SupportedButCurrentlyNotAvailableByServer-v1700 }, ... } @@ -5581,10 +6583,18 @@ NR-DL-AoD-TargetDeviceErrorCauses-r16 ::= SEQUENCE { NR-Multi-RTT-ProvideAssistanceData-r16 ::= SEQUENCE { - nr-DL-PRS-AssistanceData-r16 NR-DL-PRS-AssistanceData-r16 OPTIONAL, -- Need ON - nr-SelectedDL-PRS-IndexList-r16 NR-SelectedDL-PRS-IndexList-r16 OPTIONAL, -- Need ON - nr-Multi-RTT-Error-r16 NR-Multi-RTT-Error-r16 OPTIONAL, -- Need ON - ... + nr-DL-PRS-AssistanceData-r16 NR-DL-PRS-AssistanceData-r16 OPTIONAL, -- Need ON + nr-SelectedDL-PRS-IndexList-r16 NR-SelectedDL-PRS-IndexList-r16 OPTIONAL, -- Need ON + nr-Multi-RTT-Error-r16 NR-Multi-RTT-Error-r16 OPTIONAL, -- Need ON + ..., + [[ + nr-On-Demand-DL-PRS-Configurations-r17 NR-On-Demand-DL-PRS-Configurations-r17 + OPTIONAL, -- Need ON + nr-On-Demand-DL-PRS-Configurations-Selected-IndexList-r17 + NR-On-Demand-DL-PRS-Configurations-Selected-IndexList-r17 + OPTIONAL, -- Need ON + assistanceDataValidityArea-r17 AreaID-CellList-r17 OPTIONAL -- Need ON + ]] } @@ -5592,7 +6602,12 @@ NR-Multi-RTT-RequestAssistanceData-r16 ::= SEQUENCE { nr-PhysCellID-r16 NR-PhysCellID-r16 OPTIONAL, nr-AdType-r16 BIT STRING { dl-prs (0), ul-srs (1) } (SIZE (1..8)), - ... + ..., + [[ + nr-on-demand-DL-PRS-Request-r17 NR-On-Demand-DL-PRS-Request-r17 OPTIONAL, + nr-DL-PRS-ExpectedAoD-or-AoA-Request-r17 ENUMERATED { eAoD, eAoA } OPTIONAL, + pre-configured-AssistanceDataRequest-r17 ENUMERATED { true } OPTIONAL + ]] } @@ -5601,14 +6616,25 @@ NR-Multi-RTT-ProvideLocationInformation-r16 ::= SEQUENCE { NR-Multi-RTT-SignalMeasurementInformation-r16 OPTIONAL, nr-Multi-RTT-Error-r16 NR-Multi-RTT-Error-r16 OPTIONAL, - ... + ..., + [[ + nr-Multi-RTT-SignalMeasurementInstances-r17 + SEQUENCE (SIZE (1..maxMeasInstances-r17)) OF + NR-Multi-RTT-SignalMeasurementInformation-r16 + OPTIONAL + ]] } NR-Multi-RTT-SignalMeasurementInformation-r16 ::= SEQUENCE { nr-Multi-RTT-MeasList-r16 NR-Multi-RTT-MeasList-r16, nr-NTA-Offset-r16 ENUMERATED { nTA1, nTA2, nTA3, nTA4, ... } OPTIONAL, - ... + ..., + [[ + nr-SRS-TxTEG-Set-r17 SEQUENCE (SIZE(1..maxTxTEG-Sets-r17)) OF + NR-SRS-TxTEG-Element-r17 OPTIONAL + -- Cond Case2-3 + ]] } NR-Multi-RTT-MeasList-r16 ::= SEQUENCE (SIZE(1..nrMaxTRPs-r16)) OF NR-Multi-RTT-MeasElement-r16 @@ -5635,12 +6661,26 @@ NR-Multi-RTT-MeasElement-r16 ::= SEQUENCE { nr-DL-PRS-RSRP-Result-r16 INTEGER (0..126) OPTIONAL, nr-Multi-RTT-AdditionalMeasurements-r16 NR-Multi-RTT-AdditionalMeasurements-r16 OPTIONAL, - ... + ..., + [[ + nr-UE-RxTx-TEG-Info-r17 NR-UE-RxTx-TEG-Info-r17 OPTIONAL, + nr-DL-PRS-FirstPathRSRP-Result-r17 INTEGER (0..126) OPTIONAL, + nr-los-nlos-Indicator-r17 CHOICE { + perTRP-r17 LOS-NLOS-Indicator-r17, + perResource-r17 LOS-NLOS-Indicator-r17 + } OPTIONAL, + nr-AdditionalPathListExt-r17 NR-AdditionalPathListExt-r17 OPTIONAL, + nr-Multi-RTT-AdditionalMeasurementsExt-r17 + NR-Multi-RTT-AdditionalMeasurementsExt-r17 OPTIONAL + ]] } NR-Multi-RTT-AdditionalMeasurements-r16 ::= SEQUENCE (SIZE (1..3)) OF NR-Multi-RTT-AdditionalMeasurementElement-r16 +NR-Multi-RTT-AdditionalMeasurementsExt-r17 ::= SEQUENCE (SIZE (1..maxAddMeasRTT-r17)) OF + NR-Multi-RTT-AdditionalMeasurementElement-r16 + NR-Multi-RTT-AdditionalMeasurementElement-r16 ::= SEQUENCE { nr-DL-PRS-ResourceID-r16 NR-DL-PRS-ResourceID-r16 OPTIONAL, nr-DL-PRS-ResourceSetID-r16 NR-DL-PRS-ResourceSetID-r16 OPTIONAL, @@ -5657,6 +6697,39 @@ NR-Multi-RTT-AdditionalMeasurementElement-r16 ::= SEQUENCE { nr-TimingQuality-r16 NR-TimingQuality-r16, nr-AdditionalPathList-r16 NR-AdditionalPathList-r16 OPTIONAL, nr-TimeStamp-r16 NR-TimeStamp-r16, + ..., + [[ + nr-UE-RxTx-TEG-Info-r17 NR-UE-RxTx-TEG-Info-r17 OPTIONAL, + nr-DL-PRS-FirstPathRSRP-ResultDiff-r17 INTEGER (0..61) OPTIONAL, + nr-los-nlos-IndicatorPerResource-r17 LOS-NLOS-Indicator-r17 OPTIONAL, + nr-AdditionalPathListExt-r17 NR-AdditionalPathListExt-r17 OPTIONAL + ]] +} + +NR-SRS-TxTEG-Element-r17 ::= SEQUENCE { + nr-TimeStamp-r17 NR-TimeStamp-r16 OPTIONAL, -- Need OP + nr-UE-Tx-TEG-ID-r17 INTEGER (0..maxNumOfTxTEGs-1-r17), + carrierFreq-r17 SEQUENCE { + absoluteFrequencyPointA-r17 ARFCN-ValueNR-r15, + offsetToPointA-r17 INTEGER (0..2199) + } OPTIONAL, + srs-PosResourceList-r17 SEQUENCE (SIZE (1..maxNumOfSRS-PosResources-r17)) OF + INTEGER (0..maxNumOfSRS-PosResources-1-r17), + ... +} + +NR-UE-RxTx-TEG-Info-r17 ::= CHOICE { + case1-r17 SEQUENCE { + nr-UE-RxTx-TEG-ID-r17 INTEGER (0..maxNumOfRxTxTEGs-1-r17) + }, + case2-r17 SEQUENCE { + nr-UE-RxTx-TEG-ID-r17 INTEGER (0..maxNumOfRxTxTEGs-1-r17), + nr-UE-Tx-TEG-Index-r17 INTEGER (1..maxTxTEG-Sets-r17) + }, + case3-r17 SEQUENCE { + nr-UE-Rx-TEG-ID-r17 INTEGER (0..maxNumOfRxTEGs-1-r17), + nr-UE-Tx-TEG-Index-r17 INTEGER (1..maxTxTEG-Sets-r17) + }, ... } @@ -5664,16 +6737,39 @@ NR-Multi-RTT-AdditionalMeasurementElement-r16 ::= SEQUENCE { NR-Multi-RTT-RequestLocationInformation-r16 ::= SEQUENCE { nr-UE-RxTxTimeDiffMeasurementInfoRequest-r16 ENUMERATED { true } OPTIONAL, -- Need ON - nr-RequestedMeasurements-r16 BIT STRING { prsrsrpReq(0)} (SIZE(1..8)), + nr-RequestedMeasurements-r16 BIT STRING { prsrsrpReq (0), + firstPathRsrpReq-r17 (1) } (SIZE(1..8)), nr-AssistanceAvailability-r16 BOOLEAN, nr-Multi-RTT-ReportConfig-r16 NR-Multi-RTT-ReportConfig-r16, additionalPaths-r16 ENUMERATED { requested } OPTIONAL, -- Need ON - ... + ..., + [[ + nr-UE-RxTxTEG-Request-r17 ENUMERATED { case1, case2, case3, ... } + OPTIONAL, -- Need ON + measureSameDL-PRS-ResourceWithDifferentRxTxTEGs-r17 + ENUMERATED { n0, n2, n3, n4, n6, n8, ... } + OPTIONAL, -- Need ON + measureSameDL-PRS-ResourceWithDifferentRxTEGs-r17 + ENUMERATED { n0, n2, n3, n4, n6, n8, ... } + OPTIONAL, -- Need ON + requestedDL-PRS-ProcessingSamples-r17 + ENUMERATED { m1, ... } OPTIONAL, -- Need ON + nr-los-nlos-IndicatorRequest-r17 SEQUENCE { + type-r17 LOS-NLOS-IndicatorType1-r17, + granularity-r17 LOS-NLOS-IndicatorGranularity1-r17, + ... + } OPTIONAL, -- Need ON + additionalPathsExt-r17 ENUMERATED { requested } OPTIONAL, -- Need ON + additionalPathsDL-PRS-RSRP-Request-r17 + ENUMERATED { requested } OPTIONAL, -- Need ON + multiMeasInSameReport-r17 ENUMERATED { requested } OPTIONAL, -- Need ON + lowerRxBeamSweepingThan8-FR2-r17 ENUMERATED { requested } OPTIONAL -- Need ON + ]] } NR-Multi-RTT-ReportConfig-r16 ::= SEQUENCE { maxDL-PRS-RxTxTimeDiffMeasPerTRP-r16 INTEGER (1..4) OPTIONAL, -- Need ON - timingReportingGranularityFactor-r16 INTEGER (0..5) OPTIONAL -- Need ON + timingReportingGranularityFactor-r16 INTEGER (0..5) OPTIONAL -- Need ON } @@ -5685,17 +6781,54 @@ NR-Multi-RTT-ProvideCapabilities-r16 ::= SEQUENCE { nr-UL-SRS-Capability-r16 NR-UL-SRS-Capability-r16, additionalPathsReport-r16 ENUMERATED { supported } OPTIONAL, periodicalReporting-r16 ENUMERATED { supported } OPTIONAL, - ... + ..., + [[ + ten-ms-unit-ResponseTime-r17 ENUMERATED { supported } OPTIONAL, + nr-DL-PRS-ExpectedAoD-or-AoA-Sup-r17 BIT STRING { eAoD (0), + eAoA (1) + } (SIZE (1..8)) OPTIONAL, nr-Multi-RTT-On-Demand-DL-PRS-Support-r17 + NR-On-Demand-DL-PRS-Support-r17 OPTIONAL, + nr-UE-RxTx-TEG-ID-ReportingSupport-r17 BIT STRING { case1 (0), + case2 (1), + case3 (2) + } (SIZE (1..8)) OPTIONAL, + nr-los-nlos-IndicatorSupport-r17 SEQUENCE { + type-r17 LOS-NLOS-IndicatorType2-r17, + granularity-r17 LOS-NLOS-IndicatorGranularity2-r17, + ... + } OPTIONAL, + additionalPathsExtSupport-r17 ENUMERATED { n4, n6, n8 } OPTIONAL, + scheduledLocationRequestSupported-r17 ScheduledLocationTimeSupport-r17 OPTIONAL, + nr-dl-prs-AssistanceDataValidity-r17 SEQUENCE { + area-validity-r17 INTEGER (1..maxNrOfAreas-r17) OPTIONAL, + ... + } OPTIONAL, + multiMeasInSameMeasReport-r17 ENUMERATED { supported } OPTIONAL, + mg-ActivationRequest-r17 ENUMERATED { supported } OPTIONAL + ]] } NR-Multi-RTT-MeasurementCapability-r16 ::= SEQUENCE { - maxNrOfRx-TX-MeasFR1-r16 INTEGER (1..4) OPTIONAL, - maxNrOfRx-TX-MeasFR2-r16 INTEGER (1..4) OPTIONAL, - supportOfRSRP-MeasFR1-r16 ENUMERATED { supported} OPTIONAL, - supportOfRSRP-MeasFR2-r16 ENUMERATED { supported} OPTIONAL, - srs-AssocPRS-MultiLayersFR1-r16 ENUMERATED { supported} OPTIONAL, - srs-AssocPRS-MultiLayersFR2-r16 ENUMERATED { supported} OPTIONAL, + maxNrOfRx-TX-MeasFR1-r16 INTEGER (1..4) OPTIONAL, + maxNrOfRx-TX-MeasFR2-r16 INTEGER (1..4) OPTIONAL, + supportOfRSRP-MeasFR1-r16 ENUMERATED { supported } OPTIONAL, + supportOfRSRP-MeasFR2-r16 ENUMERATED { supported } OPTIONAL, + srs-AssocPRS-MultiLayersFR1-r16 ENUMERATED { supported } OPTIONAL, + srs-AssocPRS-MultiLayersFR2-r16 ENUMERATED { supported } OPTIONAL, + ..., + [[ + nr-UE-TEG-Capability-r17 NR-UE-TEG-Capability-r17 OPTIONAL, + multi-RTT-MeasCapabilityBandList-r17 SEQUENCE (SIZE (1..nrMaxBands-r16)) OF + Multi-RTT-MeasCapabilityPerBand-r17 + OPTIONAL + ]] +} + +Multi-RTT-MeasCapabilityPerBand-r17 ::= SEQUENCE { + freqBandIndicatorNR-r17 FreqBandIndicatorNR-r16, + supportOfDL-PRS-FirstPathRSRP-r17 ENUMERATED { supported } OPTIONAL, + dl-PRS-MeasRRC-Inactive-r17 ENUMERATED { supported } OPTIONAL, ... } @@ -5716,7 +6849,9 @@ NR-Multi-RTT-LocationServerErrorCauses-r16 ::= SEQUENCE { cause-r16 ENUMERATED { undefined, assistanceDataNotSupportedByServer, assistanceDataSupportedButCurrentlyNotAvailableByServer, - ... + ..., + on-demand-dl-prs-NotSupportedByServer-v1700, + on-demand-dl-prs-SupportedButCurrentlyNotAvailableByServer-v1700 }, ... } @@ -5767,5 +6902,27 @@ maxSimultaneousBands-r16 INTEGER ::= 4 -- Maximum number of simultaneously maxBandComb-r16 INTEGER ::= 1024 nrMaxConfiguredBands-r16 INTEGER ::= 16 +maxNumOfRxTEGs-r17 INTEGER ::= 32 +maxNumOfRxTEGs-1-r17 INTEGER ::= 31 +maxNumOfTxTEGs-1-r17 INTEGER ::= 7 +maxTxTEG-Sets-r17 INTEGER ::= 256 +maxNumOfRxTxTEGs-1-r17 INTEGER ::= 255 +maxNumOfTRP-TxTEGs-1-r17 INTEGER ::= 7 +maxNumOfSRS-PosResources-r17 INTEGER ::= 64 +maxNumOfSRS-PosResources-1-r17 INTEGER ::= 63 + +maxNumResourcesPerAngle-r17 INTEGER ::= 24 +maxNumPrioResources-r17 INTEGER ::= 24 + +maxAddMeasTDOA-r17 INTEGER ::= 31 +maxAddMeasAoD-r17 INTEGER ::= 23 +maxAddMeasRTT-r17 INTEGER ::= 31 + +maxOD-DL-PRS-Configs-r17 INTEGER ::= 8 + +maxCellIDsPerArea-r17 INTEGER ::= 256 +maxNrOfAreas-r17 INTEGER ::= 16 +maxMeasInstances-r17 INTEGER ::= 32 + END diff --git a/epan/dissectors/asn1/lpp/lpp.cnf b/epan/dissectors/asn1/lpp/lpp.cnf index 9611beabed..ba1b4e088d 100644 --- a/epan/dissectors/asn1/lpp/lpp.cnf +++ b/epan/dissectors/asn1/lpp/lpp.cnf @@ -66,6 +66,8 @@ GNSS-Almanac GNSS-DataBitAssistance GNSS-DifferentialCorrections GNSS-EarthOrientationParameters +GNSS-Integrity-ServiceAlert-r17 +GNSS-Integrity-ServiceParameters-r17 GNSS-IonosphericModel GNSS-NavigationModel GNSS-RealTimeIntegrity @@ -98,6 +100,9 @@ LPP-Message NavIC-DifferentialCorrections-r16 NavIC-GridModelParameter-r16 NR-DL-PRS-AssistanceData-r16 +NR-DL-PRS-TRP-TEG-Info-r17 +NR-On-Demand-DL-PRS-Configurations-r17 +NR-TRP-BeamAntennaInfo-r17 NR-UEB-TRP-LocationData-r16 NR-UEB-TRP-RTD-Info-r16 OTDOA-UE-Assisted-r15 @@ -1833,6 +1838,12 @@ BT-MeasurementElement-r13/rssi-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&un case LPP_POS_SIB_TYPE_1_8: dissect_GNSS_SSR_CorrectionPoints_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL); break; + case LPP_POS_SIB_TYPE_1_9: + dissect_GNSS_Integrity_ServiceParameters_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL); + break; + case LPP_POS_SIB_TYPE_1_10: + dissect_GNSS_Integrity_ServiceAlert_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL); + break; case LPP_POS_SIB_TYPE_2_1: dissect_GNSS_TimeModelList_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL); break; @@ -1926,6 +1937,15 @@ BT-MeasurementElement-r13/rssi-r13 DISPLAY=BASE_DEC|BASE_UNIT_STRING STRINGS=&un case LPP_POS_SIB_TYPE_6_3: dissect_NR_UEB_TRP_RTD_Info_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL); break; + case LPP_POS_SIB_TYPE_6_4: + dissect_NR_TRP_BeamAntennaInfo_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL); + break; + case LPP_POS_SIB_TYPE_6_5: + dissect_NR_DL_PRS_TRP_TEG_Info_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL); + break; + case LPP_POS_SIB_TYPE_6_6: + dissect_NR_On_Demand_DL_PRS_Configurations_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL); + break; default: break; } diff --git a/epan/dissectors/asn1/lpp/packet-lpp-template.c b/epan/dissectors/asn1/lpp/packet-lpp-template.c index 5637370460..fc99c6e393 100644 --- a/epan/dissectors/asn1/lpp/packet-lpp-template.c +++ b/epan/dissectors/asn1/lpp/packet-lpp-template.c @@ -8,7 +8,7 @@ * * SPDX-License-Identifier: GPL-2.0-or-later * - * Ref 3GPP TS 37.355 version 16.8.0 Release 16 + * Ref 3GPP TS 37.355 version 17.1.0 Release 17 * http://www.3gpp.org */ @@ -93,6 +93,8 @@ static int dissect_GNSS_RTK_ReferenceStationInfo_r15_PDU(tvbuff_t *tvb _U_, pack static int dissect_GNSS_RTK_CommonObservationInfo_r15_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_GNSS_RTK_AuxiliaryStationData_r15_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_GNSS_SSR_CorrectionPoints_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +static int dissect_GNSS_Integrity_ServiceParameters_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +static int dissect_GNSS_Integrity_ServiceAlert_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_GNSS_TimeModelList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_GNSS_DifferentialCorrections_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_GNSS_NavigationModel_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); @@ -124,6 +126,9 @@ static int dissect_TBS_AssistanceDataList_r14_PDU(tvbuff_t *tvb _U_, packet_info static int dissect_NR_DL_PRS_AssistanceData_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_NR_UEB_TRP_LocationData_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_NR_UEB_TRP_RTD_Info_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +static int dissect_NR_TRP_BeamAntennaInfo_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +static int dissect_NR_DL_PRS_TRP_TEG_Info_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +static int dissect_NR_On_Demand_DL_PRS_Configurations_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static void lpp_degreesLatitude_fmt(gchar *s, guint32 v) diff --git a/epan/dissectors/asn1/lpp/packet-lpp-template.h b/epan/dissectors/asn1/lpp/packet-lpp-template.h index 909edc2833..6d3ec42ce8 100644 --- a/epan/dissectors/asn1/lpp/packet-lpp-template.h +++ b/epan/dissectors/asn1/lpp/packet-lpp-template.h @@ -23,6 +23,8 @@ typedef enum { LPP_POS_SIB_TYPE_1_6, LPP_POS_SIB_TYPE_1_7, LPP_POS_SIB_TYPE_1_8, + LPP_POS_SIB_TYPE_1_9, + LPP_POS_SIB_TYPE_1_10, LPP_POS_SIB_TYPE_2_1, LPP_POS_SIB_TYPE_2_2, LPP_POS_SIB_TYPE_2_3, @@ -54,6 +56,9 @@ typedef enum { LPP_POS_SIB_TYPE_6_1, LPP_POS_SIB_TYPE_6_2, LPP_POS_SIB_TYPE_6_3, + LPP_POS_SIB_TYPE_6_4, + LPP_POS_SIB_TYPE_6_5, + LPP_POS_SIB_TYPE_6_6, } lpp_pos_sib_type_t; int dissect_lpp_AssistanceDataSIBelement_r15_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, lpp_pos_sib_type_t pos_sib_type); diff --git a/epan/dissectors/packet-lpp.c b/epan/dissectors/packet-lpp.c index 42178346b4..7174bf4620 100644 --- a/epan/dissectors/packet-lpp.c +++ b/epan/dissectors/packet-lpp.c @@ -16,7 +16,7 @@ * * SPDX-License-Identifier: GPL-2.0-or-later * - * Ref 3GPP TS 37.355 version 16.8.0 Release 16 + * Ref 3GPP TS 37.355 version 17.1.0 Release 17 * http://www.3gpp.org */ @@ -61,6 +61,9 @@ static int hf_lpp_lpp_Velocity_PDU = -1; /* Velocity */ static int hf_lpp_lpp_LocationError_PDU = -1; /* LocationError */ static int hf_lpp_lpp_LocationSource_r13_PDU = -1; /* LocationSource_r13 */ static int hf_lpp_NR_DL_PRS_AssistanceData_r16_PDU = -1; /* NR_DL_PRS_AssistanceData_r16 */ +static int hf_lpp_NR_DL_PRS_TRP_TEG_Info_r17_PDU = -1; /* NR_DL_PRS_TRP_TEG_Info_r17 */ +static int hf_lpp_NR_On_Demand_DL_PRS_Configurations_r17_PDU = -1; /* NR_On_Demand_DL_PRS_Configurations_r17 */ +static int hf_lpp_NR_TRP_BeamAntennaInfo_r17_PDU = -1; /* NR_TRP_BeamAntennaInfo_r17 */ static int hf_lpp_GNSS_ReferenceTime_PDU = -1; /* GNSS_ReferenceTime */ static int hf_lpp_GNSS_ReferenceLocation_PDU = -1; /* GNSS_ReferenceLocation */ static int hf_lpp_GNSS_IonosphericModel_PDU = -1; /* GNSS_IonosphericModel */ @@ -69,6 +72,8 @@ static int hf_lpp_GNSS_RTK_ReferenceStationInfo_r15_PDU = -1; /* GNSS_RTK_Refer static int hf_lpp_GNSS_RTK_CommonObservationInfo_r15_PDU = -1; /* GNSS_RTK_CommonObservationInfo_r15 */ static int hf_lpp_GNSS_RTK_AuxiliaryStationData_r15_PDU = -1; /* GNSS_RTK_AuxiliaryStationData_r15 */ static int hf_lpp_GNSS_SSR_CorrectionPoints_r16_PDU = -1; /* GNSS_SSR_CorrectionPoints_r16 */ +static int hf_lpp_GNSS_Integrity_ServiceParameters_r17_PDU = -1; /* GNSS_Integrity_ServiceParameters_r17 */ +static int hf_lpp_GNSS_Integrity_ServiceAlert_r17_PDU = -1; /* GNSS_Integrity_ServiceAlert_r17 */ static int hf_lpp_GNSS_TimeModelList_PDU = -1; /* GNSS_TimeModelList */ static int hf_lpp_GNSS_DifferentialCorrections_PDU = -1; /* GNSS_DifferentialCorrections */ static int hf_lpp_GNSS_NavigationModel_PDU = -1; /* GNSS_NavigationModel */ @@ -336,6 +341,18 @@ static int hf_lpp_periodicSessionNumber_r15 = -1; /* INTEGER_0_255 */ static int hf_lpp_Polygon_item = -1; /* PolygonPoints */ static int hf_lpp_latitudeSign_06 = -1; /* T_latitudeSign_06 */ static int hf_lpp_posModes = -1; /* T_posModes */ +static int hf_lpp_utcTime_r17 = -1; /* T_utcTime_r17 */ +static int hf_lpp_gnssTime_r17 = -1; /* GNSS_ID_Bitmap */ +static int hf_lpp_e_utraTime_r17 = -1; /* T_e_utraTime_r17 */ +static int hf_lpp_nrTime_r17 = -1; /* T_nrTime_r17 */ +static int hf_lpp_relativeTime_r17 = -1; /* T_relativeTime_r17 */ +static int hf_lpp_utcTime_r17_01 = -1; /* PositioningModes */ +static int hf_lpp_gnssTime_r17_01 = -1; /* T_gnssTime_r17 */ +static int hf_lpp_posModes_r17 = -1; /* PositioningModes */ +static int hf_lpp_gnss_TimeIDs_r17 = -1; /* GNSS_ID_Bitmap */ +static int hf_lpp_e_utraTime_r17_01 = -1; /* PositioningModes */ +static int hf_lpp_nrTime_r17_01 = -1; /* PositioningModes */ +static int hf_lpp_relativeTime_r17_01 = -1; /* PositioningModes */ static int hf_lpp_horizontalVelocity = -1; /* BOOLEAN */ static int hf_lpp_horizontalWithVerticalVelocity = -1; /* BOOLEAN */ static int hf_lpp_horizontalVelocityWithUncertainty = -1; /* BOOLEAN */ @@ -356,6 +373,8 @@ static int hf_lpp_environment = -1; /* Environment */ static int hf_lpp_locationCoordinateTypes = -1; /* LocationCoordinateTypes */ static int hf_lpp_velocityTypes = -1; /* VelocityTypes */ static int hf_lpp_messageSizeLimitNB_r14 = -1; /* MessageSizeLimitNB_r14 */ +static int hf_lpp_scheduledLocationTime_r17 = -1; /* ScheduledLocationTime_r17 */ +static int hf_lpp_targetIntegrityRisk_r17 = -1; /* TargetIntegrityRisk_r17 */ static int hf_lpp_reportingAmount = -1; /* T_reportingAmount */ static int hf_lpp_reportingInterval = -1; /* T_reportingInterval */ static int hf_lpp_cellChange = -1; /* BOOLEAN */ @@ -377,12 +396,34 @@ static int hf_lpp_timeNB_r14 = -1; /* INTEGER_1_512 */ static int hf_lpp_responseTimeEarlyFixNB_r14 = -1; /* INTEGER_1_512 */ static int hf_lpp_unitNB_r15 = -1; /* T_unitNB_r15 */ static int hf_lpp_measurementLimit_r14 = -1; /* INTEGER_1_512 */ +static int hf_lpp_utcTime_r17_02 = -1; /* UTCTime */ +static int hf_lpp_gnssTime_r17_02 = -1; /* T_gnssTime_r17_01 */ +static int hf_lpp_gnss_TOD_msec_r17 = -1; /* INTEGER_0_3599999 */ +static int hf_lpp_gnss_TimeID_r17 = -1; /* GNSS_ID */ +static int hf_lpp_networkTime_r17 = -1; /* T_networkTime_r17 */ +static int hf_lpp_e_utraTime_r17_02 = -1; /* T_e_utraTime_r17_01 */ +static int hf_lpp_lte_PhysCellId_r17 = -1; /* INTEGER_0_503 */ +static int hf_lpp_lte_ArfcnEUTRA_r17 = -1; /* ARFCN_ValueEUTRA */ +static int hf_lpp_lte_CellGlobalId_r17 = -1; /* CellGlobalIdEUTRA_AndUTRA */ +static int hf_lpp_lte_SystemFrameNumber_r17 = -1; /* INTEGER_0_1023 */ +static int hf_lpp_nrTime_r17_02 = -1; /* T_nrTime_r17_01 */ +static int hf_lpp_nr_PhysCellID_r17 = -1; /* NR_PhysCellID_r16 */ +static int hf_lpp_nr_ARFCN_r17 = -1; /* ARFCN_ValueNR_r15 */ +static int hf_lpp_nr_CellGlobalID_r17 = -1; /* NCGI_r15 */ +static int hf_lpp_nr_SFN_r17 = -1; /* INTEGER_0_1023 */ +static int hf_lpp_nr_Slot_r17 = -1; /* T_nr_Slot_r17 */ +static int hf_lpp_scs15_r17 = -1; /* INTEGER_0_9 */ +static int hf_lpp_scs30_r17 = -1; /* INTEGER_0_19 */ +static int hf_lpp_scs60_r17 = -1; /* INTEGER_0_39 */ +static int hf_lpp_scs120_r17 = -1; /* INTEGER_0_79 */ +static int hf_lpp_relativeTime_r17_02 = -1; /* INTEGER_1_1024 */ static int hf_lpp_locationEstimate = -1; /* LocationCoordinates */ static int hf_lpp_velocityEstimate = -1; /* Velocity */ static int hf_lpp_locationError = -1; /* LocationError */ static int hf_lpp_earlyFixReport_r12 = -1; /* EarlyFixReport_r12 */ static int hf_lpp_locationSource_r13 = -1; /* LocationSource_r13 */ static int hf_lpp_locationTimestamp_r13 = -1; /* UTCTime */ +static int hf_lpp_integrityInfo_r17 = -1; /* IntegrityInfo_r17 */ static int hf_lpp_ellipsoidPoint_01 = -1; /* Ellipsoid_Point */ static int hf_lpp_ellipsoidPointWithUncertaintyCircle_01 = -1; /* Ellipsoid_PointWithUncertaintyCircle */ static int hf_lpp_ellipsoidPointWithUncertaintyEllipse_01 = -1; /* EllipsoidPointWithUncertaintyEllipse */ @@ -399,13 +440,27 @@ static int hf_lpp_horizontalWithVerticalVelocity_01 = -1; /* HorizontalWithVert static int hf_lpp_horizontalVelocityWithUncertainty_01 = -1; /* HorizontalVelocityWithUncertainty */ static int hf_lpp_horizontalWithVerticalVelocityAndUncertainty_01 = -1; /* HorizontalWithVerticalVelocityAndUncertainty */ static int hf_lpp_locationfailurecause = -1; /* LocationFailureCause */ +static int hf_lpp_horizontalProtectionLevel_r17 = -1; /* INTEGER_0_50000 */ +static int hf_lpp_verticalProtectionLevel_r17 = -1; /* INTEGER_0_50000 */ +static int hf_lpp_achievableTargetIntegrityRisk_r17 = -1; /* INTEGER_10_90 */ static int hf_lpp_abortCause = -1; /* T_abortCause */ static int hf_lpp_errorCause = -1; /* T_errorCause */ +static int hf_lpp_AreaID_CellList_r17_item = -1; /* NR_Cell_IDs_r17 */ static int hf_lpp_dl_PRS_ID_r16 = -1; /* INTEGER_0_255 */ static int hf_lpp_nr_DL_PRS_ResourceID_List_r16 = -1; /* SEQUENCE_SIZE_1_nrMaxResourceIDs_r16_OF_NR_DL_PRS_ResourceID_r16 */ static int hf_lpp_nr_DL_PRS_ResourceID_List_r16_item = -1; /* NR_DL_PRS_ResourceID_r16 */ static int hf_lpp_nr_DL_PRS_ResourceSetID_r16 = -1; /* NR_DL_PRS_ResourceSetID_r16 */ +static int hf_lpp_alpha_r16 = -1; /* INTEGER_0_359 */ +static int hf_lpp_alpha_fine_r16 = -1; /* INTEGER_0_9 */ +static int hf_lpp_beta_r16 = -1; /* INTEGER_0_359 */ +static int hf_lpp_beta_fine_r16 = -1; /* INTEGER_0_9 */ +static int hf_lpp_gamma_r16 = -1; /* INTEGER_0_359 */ +static int hf_lpp_gamma_fine_r16 = -1; /* INTEGER_0_9 */ +static int hf_lpp_indicator_r17 = -1; /* T_indicator_r17 */ +static int hf_lpp_soft_r17 = -1; /* INTEGER_0_10 */ +static int hf_lpp_hard_r17 = -1; /* BOOLEAN */ static int hf_lpp_NR_AdditionalPathList_r16_item = -1; /* NR_AdditionalPath_r16 */ +static int hf_lpp_NR_AdditionalPathListExt_r17_item = -1; /* NR_AdditionalPath_r16 */ static int hf_lpp_nr_RelativeTimeDifference_r16 = -1; /* T_nr_RelativeTimeDifference_r16 */ static int hf_lpp_k0_r16 = -1; /* INTEGER_0_16351 */ static int hf_lpp_k1_r16 = -1; /* INTEGER_0_8176 */ @@ -414,6 +469,7 @@ static int hf_lpp_k3_r16 = -1; /* INTEGER_0_2044 */ static int hf_lpp_k4_r16 = -1; /* INTEGER_0_1022 */ static int hf_lpp_k5_r16 = -1; /* INTEGER_0_511 */ static int hf_lpp_nr_PathQuality_r16 = -1; /* NR_TimingQuality_r16 */ +static int hf_lpp_nr_DL_PRS_RSRPP_r17 = -1; /* INTEGER_0_126 */ static int hf_lpp_nr_DL_PRS_ReferenceInfo_r16 = -1; /* DL_PRS_ID_Info_r16 */ static int hf_lpp_nr_DL_PRS_AssistanceDataList_r16 = -1; /* SEQUENCE_SIZE_1_nrMaxFreqLayers_r16_OF_NR_DL_PRS_AssistanceDataPerFreq_r16 */ static int hf_lpp_nr_DL_PRS_AssistanceDataList_r16_item = -1; /* NR_DL_PRS_AssistanceDataPerFreq_r16 */ @@ -430,6 +486,7 @@ static int hf_lpp_nr_DL_PRS_ExpectedRSTD_r16 = -1; /* INTEGER_M3841_3841 */ static int hf_lpp_nr_DL_PRS_ExpectedRSTD_Uncertainty_r16 = -1; /* INTEGER_0_246 */ static int hf_lpp_nr_DL_PRS_Info_r16 = -1; /* NR_DL_PRS_Info_r16 */ static int hf_lpp_prs_OnlyTP_r16 = -1; /* T_prs_OnlyTP_r16 */ +static int hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_r17 = -1; /* NR_DL_PRS_ExpectedAoD_or_AoA_r17 */ static int hf_lpp_dl_PRS_SubcarrierSpacing_r16 = -1; /* T_dl_PRS_SubcarrierSpacing_r16 */ static int hf_lpp_dl_PRS_ResourceBandwidth_r16 = -1; /* INTEGER_1_63 */ static int hf_lpp_dl_PRS_StartPRB_r16 = -1; /* INTEGER_0_2176 */ @@ -438,6 +495,16 @@ static int hf_lpp_dl_PRS_CombSizeN_r16 = -1; /* T_dl_PRS_CombSizeN_r16 */ static int hf_lpp_dl_PRS_CyclicPrefix_r16 = -1; /* T_dl_PRS_CyclicPrefix_r16 */ static int hf_lpp_sfn_Offset_r16 = -1; /* INTEGER_0_1023 */ static int hf_lpp_integerSubframeOffset_r16 = -1; /* INTEGER_0_9 */ +static int hf_lpp_expectedAoD_r17 = -1; /* T_expectedAoD_r17 */ +static int hf_lpp_expectedDL_AzimuthAoD_r17 = -1; /* INTEGER_0_359 */ +static int hf_lpp_expectedDL_AzimuthAoD_Unc_r17 = -1; /* INTEGER_0_60 */ +static int hf_lpp_expectedDL_ZenithAoD_r17 = -1; /* INTEGER_0_180 */ +static int hf_lpp_expectedDL_ZenithAoD_Unc_r17 = -1; /* INTEGER_0_30 */ +static int hf_lpp_expectedAoA_r17 = -1; /* T_expectedAoA_r17 */ +static int hf_lpp_expectedDL_AzimuthAoA_r17 = -1; /* INTEGER_0_359 */ +static int hf_lpp_expectedDL_AzimuthAoA_Unc_r17 = -1; /* INTEGER_0_60 */ +static int hf_lpp_expectedDL_ZenithAoA_r17 = -1; /* INTEGER_0_180 */ +static int hf_lpp_expectedDL_ZenithAoA_Unc_r17 = -1; /* INTEGER_0_30 */ static int hf_lpp_NR_DL_PRS_BeamInfo_r16_item = -1; /* NR_DL_PRS_BeamInfoPerFreqLayer_r16 */ static int hf_lpp_NR_DL_PRS_BeamInfoPerFreqLayer_r16_item = -1; /* NR_DL_PRS_BeamInfoPerTRP_r16 */ static int hf_lpp_associated_DL_PRS_ID_r16 = -1; /* INTEGER_0_255 */ @@ -449,12 +516,14 @@ static int hf_lpp_dl_PRS_Azimuth_r16 = -1; /* INTEGER_0_359 */ static int hf_lpp_dl_PRS_Azimuth_fine_r16 = -1; /* INTEGER_0_9 */ static int hf_lpp_dl_PRS_Elevation_r16 = -1; /* INTEGER_0_180 */ static int hf_lpp_dl_PRS_Elevation_fine_r16 = -1; /* INTEGER_0_9 */ -static int hf_lpp_alpha_r16 = -1; /* INTEGER_0_359 */ -static int hf_lpp_alpha_fine_r16 = -1; /* INTEGER_0_9 */ -static int hf_lpp_beta_r16 = -1; /* INTEGER_0_359 */ -static int hf_lpp_beta_fine_r16 = -1; /* INTEGER_0_9 */ -static int hf_lpp_gamma_r16 = -1; /* INTEGER_0_359 */ -static int hf_lpp_gamma_fine_r16 = -1; /* INTEGER_0_9 */ +static int hf_lpp_NR_DL_PRS_ExpectedLOS_NLOS_Assistance_r17_item = -1; /* NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerFreqLayer_r17 */ +static int hf_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerFreqLayer_r17_item = -1; /* NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerTRP_r17 */ +static int hf_lpp_dl_PRS_ID_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_nr_los_nlos_indicator_r17 = -1; /* T_nr_los_nlos_indicator_r17 */ +static int hf_lpp_perTrp_r17 = -1; /* LOS_NLOS_Indicator_r17 */ +static int hf_lpp_perResource_r17 = -1; /* SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17 */ +static int hf_lpp_perResource_r17_item = -1; /* NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17 */ +static int hf_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17_item = -1; /* LOS_NLOS_Indicator_r17 */ static int hf_lpp_nr_DL_PRS_ResourceSetList_r16 = -1; /* SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_NR_DL_PRS_ResourceSet_r16 */ static int hf_lpp_nr_DL_PRS_ResourceSetList_r16_item = -1; /* NR_DL_PRS_ResourceSet_r16 */ static int hf_lpp_dl_PRS_Periodicity_and_ResourceSetSlotOffset_r16 = -1; /* NR_DL_PRS_Periodicity_and_ResourceSetSlotOffset_r16 */ @@ -485,6 +554,7 @@ static int hf_lpp_n12_r16 = -1; /* INTEGER_0_11 */ static int hf_lpp_dl_PRS_ResourceSlotOffset_r16 = -1; /* INTEGER_0_nrMaxResourceOffsetValue_1_r16 */ static int hf_lpp_dl_PRS_ResourceSymbolOffset_r16 = -1; /* INTEGER_0_12 */ static int hf_lpp_dl_PRS_QCL_Info_r16 = -1; /* DL_PRS_QCL_Info_r16 */ +static int hf_lpp_dl_PRS_ResourcePrioritySubset_r17 = -1; /* DL_PRS_ResourcePrioritySubset_r17 */ static int hf_lpp_ssb_r16 = -1; /* T_ssb_r16 */ static int hf_lpp_pci_r16 = -1; /* NR_PhysCellID_r16 */ static int hf_lpp_ssb_Index_r16 = -1; /* INTEGER_0_63 */ @@ -518,10 +588,14 @@ static int hf_lpp_n40960_r16 = -1; /* INTEGER_0_40959 */ static int hf_lpp_scs120_r16 = -1; /* T_scs120_r16 */ static int hf_lpp_n512_r16 = -1; /* INTEGER_0_511 */ static int hf_lpp_n81920_r16 = -1; /* INTEGER_0_81919 */ +static int hf_lpp_DL_PRS_ResourcePrioritySubset_r17_item = -1; /* NR_DL_PRSResourcePriorityItem_r17 */ +static int hf_lpp_nr_DL_PRS_PrioResourceSetID_r17 = -1; /* NR_DL_PRS_ResourceSetID_r16 */ +static int hf_lpp_nr_DL_PRS_PrioResourceID_r17 = -1; /* NR_DL_PRS_ResourceID_r16 */ static int hf_lpp_prs_ProcessingCapabilityBandList_r16 = -1; /* SEQUENCE_SIZE_1_nrMaxBands_r16_OF_PRS_ProcessingCapabilityPerBand_r16 */ static int hf_lpp_prs_ProcessingCapabilityBandList_r16_item = -1; /* PRS_ProcessingCapabilityPerBand_r16 */ static int hf_lpp_maxSupportedFreqLayers_r16 = -1; /* INTEGER_1_4 */ static int hf_lpp_simulLTE_NR_PRS_r16 = -1; /* T_simulLTE_NR_PRS_r16 */ +static int hf_lpp_supportedDL_PRS_ProcessingSamples_RRC_Inactive_r17 = -1; /* T_supportedDL_PRS_ProcessingSamples_RRC_Inactive_r17 */ static int hf_lpp_freqBandIndicatorNR_r16 = -1; /* FreqBandIndicatorNR_r16 */ static int hf_lpp_supportedBandwidthPRS_r16 = -1; /* T_supportedBandwidthPRS_r16 */ static int hf_lpp_fr1 = -1; /* T_fr1 */ @@ -535,6 +609,35 @@ static int hf_lpp_scs15_r16_01 = -1; /* T_scs15_r16_01 */ static int hf_lpp_scs30_r16_01 = -1; /* T_scs30_r16_01 */ static int hf_lpp_scs60_r16_01 = -1; /* T_scs60_r16_01 */ static int hf_lpp_scs120_r16_01 = -1; /* T_scs120_r16_01 */ +static int hf_lpp_supportedDL_PRS_ProcessingSamples_r17 = -1; /* T_supportedDL_PRS_ProcessingSamples_r17 */ +static int hf_lpp_prs_ProcessingWindowType1A_r17 = -1; /* T_prs_ProcessingWindowType1A_r17 */ +static int hf_lpp_prs_ProcessingWindowType1B_r17 = -1; /* T_prs_ProcessingWindowType1B_r17 */ +static int hf_lpp_prs_ProcessingWindowType2_r17 = -1; /* T_prs_ProcessingWindowType2_r17 */ +static int hf_lpp_prs_ProcessingCapabilityOutsideMGinPPW_r17 = -1; /* SEQUENCE_SIZE_1_3_OF_PRS_ProcessingCapabilityOutsideMGinPPWperType_r17 */ +static int hf_lpp_prs_ProcessingCapabilityOutsideMGinPPW_r17_item = -1; /* PRS_ProcessingCapabilityOutsideMGinPPWperType_r17 */ +static int hf_lpp_dl_PRS_BufferType_RRC_Inactive_r17 = -1; /* T_dl_PRS_BufferType_RRC_Inactive_r17 */ +static int hf_lpp_durationOfPRS_Processing_RRC_Inactive_r17 = -1; /* T_durationOfPRS_Processing_RRC_Inactive_r17 */ +static int hf_lpp_durationOfPRS_ProcessingSymbols_r17 = -1; /* T_durationOfPRS_ProcessingSymbols_r17 */ +static int hf_lpp_durationOfPRS_ProcessingSymbolsInEveryTms_r17 = -1; /* T_durationOfPRS_ProcessingSymbolsInEveryTms_r17 */ +static int hf_lpp_maxNumOfDL_PRS_ResProcessedPerSlot_RRC_Inactive_r17 = -1; /* T_maxNumOfDL_PRS_ResProcessedPerSlot_RRC_Inactive_r17 */ +static int hf_lpp_scs15_r17_01 = -1; /* T_scs15_r17 */ +static int hf_lpp_scs30_r17_01 = -1; /* T_scs30_r17 */ +static int hf_lpp_scs60_r17_01 = -1; /* T_scs60_r17 */ +static int hf_lpp_scs120_r17_01 = -1; /* T_scs120_r17 */ +static int hf_lpp_lowerRxBeamSweepingThan8_FR2_r17 = -1; /* T_lowerRxBeamSweepingThan8_FR2_r17 */ +static int hf_lpp_prsProcessingType_r17 = -1; /* T_prsProcessingType_r17 */ +static int hf_lpp_ppw_dl_PRS_BufferType_r17 = -1; /* T_ppw_dl_PRS_BufferType_r17 */ +static int hf_lpp_ppw_durationOfPRS_Processing1_r17 = -1; /* T_ppw_durationOfPRS_Processing1_r17 */ +static int hf_lpp_ppw_durationOfPRS_ProcessingSymbolsN_r17 = -1; /* T_ppw_durationOfPRS_ProcessingSymbolsN_r17 */ +static int hf_lpp_ppw_durationOfPRS_ProcessingSymbolsT_r17 = -1; /* T_ppw_durationOfPRS_ProcessingSymbolsT_r17 */ +static int hf_lpp_ppw_durationOfPRS_Processing2_r17 = -1; /* T_ppw_durationOfPRS_Processing2_r17 */ +static int hf_lpp_ppw_durationOfPRS_ProcessingSymbolsN2_r17 = -1; /* T_ppw_durationOfPRS_ProcessingSymbolsN2_r17 */ +static int hf_lpp_ppw_durationOfPRS_ProcessingSymbolsT2_r17 = -1; /* T_ppw_durationOfPRS_ProcessingSymbolsT2_r17 */ +static int hf_lpp_ppw_maxNumOfDL_PRS_ResProcessedPerSlot_r17 = -1; /* T_ppw_maxNumOfDL_PRS_ResProcessedPerSlot_r17 */ +static int hf_lpp_scs15_r17_02 = -1; /* T_scs15_r17_01 */ +static int hf_lpp_scs30_r17_02 = -1; /* T_scs30_r17_01 */ +static int hf_lpp_scs60_r17_02 = -1; /* T_scs60_r17_01 */ +static int hf_lpp_scs120_r17_02 = -1; /* T_scs120_r17_01 */ static int hf_lpp_dl_PRS_QCL_ProcessingCapabilityBandList_r16 = -1; /* SEQUENCE_SIZE_1_nrMaxBands_r16_OF_DL_PRS_QCL_ProcessingCapabilityPerBand_r16 */ static int hf_lpp_dl_PRS_QCL_ProcessingCapabilityBandList_r16_item = -1; /* DL_PRS_QCL_ProcessingCapabilityPerBand_r16 */ static int hf_lpp_ssb_FromNeighCellAsQCL_r16 = -1; /* T_ssb_FromNeighCellAsQCL_r16 */ @@ -556,9 +659,51 @@ static int hf_lpp_fr2_Only_r16 = -1; /* T_fr2_Only_r16 */ static int hf_lpp_fr1_FR2Mix_r16 = -1; /* T_fr1_FR2Mix_r16 */ static int hf_lpp_fr1_r16 = -1; /* T_fr1_r16 */ static int hf_lpp_fr2_r16 = -1; /* T_fr2_r16 */ +static int hf_lpp_NR_DL_PRS_TRP_TEG_Info_r17_item = -1; /* NR_DL_PRS_TRP_TEG_InfoPerFreqLayer_r17 */ +static int hf_lpp_NR_DL_PRS_TRP_TEG_InfoPerFreqLayer_r17_item = -1; /* NR_DL_PRS_TRP_TEG_InfoPerTRP_r17 */ +static int hf_lpp_dl_PRS_TEG_InfoSet_r17 = -1; /* SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_TEG_InfoPerResourceSet_r17 */ +static int hf_lpp_dl_PRS_TEG_InfoSet_r17_item = -1; /* DL_PRS_TEG_InfoPerResourceSet_r17 */ +static int hf_lpp_DL_PRS_TEG_InfoPerResourceSet_r17_item = -1; /* DL_PRS_TEG_InfoElement_r17 */ +static int hf_lpp_dl_prs_trp_Tx_TEG_ID_r17 = -1; /* INTEGER_0_maxNumOfTRP_TxTEGs_1_r17 */ +static int hf_lpp_on_demand_dl_prs_configuration_list_r17 = -1; /* SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_On_Demand_DL_PRS_Configuration_r17 */ +static int hf_lpp_on_demand_dl_prs_configuration_list_r17_item = -1; /* On_Demand_DL_PRS_Configuration_r17 */ +static int hf_lpp_dl_prs_configuration_id_r17 = -1; /* DL_PRS_Configuration_ID_r17 */ +static int hf_lpp_nr_DL_PRS_PositioningFrequencyLayer_r17 = -1; /* NR_DL_PRS_PositioningFrequencyLayer_r16 */ +static int hf_lpp_nr_DL_PRS_Info_r17 = -1; /* NR_DL_PRS_Info_r16 */ +static int hf_lpp_nr_dl_prs_configuration_id_r17 = -1; /* INTEGER_1_maxOD_DL_PRS_Configs_r17 */ +static int hf_lpp_NR_On_Demand_DL_PRS_Information_r17_item = -1; /* NR_On_Demand_DL_PRS_PerFreqLayer_r17 */ +static int hf_lpp_dl_prs_FrequencyRangeReq_r17 = -1; /* T_dl_prs_FrequencyRangeReq_r17 */ +static int hf_lpp_dl_prs_ResourceSetPeriodicityReq_r17 = -1; /* T_dl_prs_ResourceSetPeriodicityReq_r17 */ +static int hf_lpp_dl_prs_ResourceBandwidthReq_r17 = -1; /* INTEGER_1_63 */ +static int hf_lpp_dl_prs_ResourceRepetitionFactorReq_r17 = -1; /* T_dl_prs_ResourceRepetitionFactorReq_r17 */ +static int hf_lpp_dl_prs_NumSymbolsReq_r17 = -1; /* T_dl_prs_NumSymbolsReq_r17 */ +static int hf_lpp_dl_prs_CombSizeN_Req_r17 = -1; /* T_dl_prs_CombSizeN_Req_r17 */ +static int hf_lpp_dl_prs_QCL_InformationReq_r17 = -1; /* DL_PRS_QCL_InformationReq_r17 */ +static int hf_lpp_DL_PRS_QCL_InformationReq_r17_item = -1; /* DL_PRS_QCL_InformationReqPerTRP_r17 */ +static int hf_lpp_dl_prs_QCL_InformationReqSet_r17 = -1; /* SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_QCL_InfoReq_r17 */ +static int hf_lpp_dl_prs_QCL_InformationReqSet_r17_item = -1; /* DL_PRS_QCL_InfoReq_r17 */ +static int hf_lpp_nr_DL_PRS_ResourceSetID_r17 = -1; /* NR_DL_PRS_ResourceSetID_r16 */ +static int hf_lpp_dl_prs_QCL_InformationReq_r17_01 = -1; /* T_dl_prs_QCL_InformationReq_r17 */ +static int hf_lpp_nr_DL_PRS_QCL_Source_r17 = -1; /* DL_PRS_QCL_Info_r16 */ +static int hf_lpp_dl_prs_QCL_Info_requested_r17 = -1; /* NULL */ +static int hf_lpp_dl_prs_StartTime_and_Duration_r17 = -1; /* DL_PRS_StartTime_and_Duration_r17 */ +static int hf_lpp_nr_on_demand_DL_PRS_Information_r17 = -1; /* NR_On_Demand_DL_PRS_Information_r17 */ +static int hf_lpp_dl_prs_configuration_id_PrefList_r17 = -1; /* SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_DL_PRS_Configuration_ID_r17 */ +static int hf_lpp_dl_prs_configuration_id_PrefList_r17_item = -1; /* DL_PRS_Configuration_ID_r17 */ +static int hf_lpp_dl_prs_start_time_r17 = -1; /* INTEGER_1_1024 */ +static int hf_lpp_dl_prs_duration_r17 = -1; /* T_dl_prs_duration_r17 */ +static int hf_lpp_seconds_r17 = -1; /* INTEGER_0_59 */ +static int hf_lpp_minutes_r17 = -1; /* INTEGER_0_59 */ +static int hf_lpp_hours_r17 = -1; /* INTEGER_0_23 */ +static int hf_lpp_NR_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17_item = -1; /* DL_PRS_Configuration_ID_r17 */ +static int hf_lpp_nr_on_demand_DL_PRS_InformationSup_r17 = -1; /* T_nr_on_demand_DL_PRS_InformationSup_r17 */ +static int hf_lpp_nr_on_demand_DL_PRS_ConfigurationsSup_r17 = -1; /* T_nr_on_demand_DL_PRS_ConfigurationsSup_r17 */ static int hf_lpp_nr_TRP_LocationInfo_r16 = -1; /* NR_TRP_LocationInfo_r16 */ static int hf_lpp_nr_DL_PRS_BeamInfo_r16 = -1; /* NR_DL_PRS_BeamInfo_r16 */ static int hf_lpp_nr_RTD_Info_r16 = -1; /* NR_RTD_Info_r16 */ +static int hf_lpp_nr_TRP_BeamAntennaInfo_r17 = -1; /* NR_TRP_BeamAntennaInfo_r17 */ +static int hf_lpp_nr_DL_PRS_Expected_LOS_NLOS_Assistance_r17 = -1; /* NR_DL_PRS_ExpectedLOS_NLOS_Assistance_r17 */ +static int hf_lpp_nr_DL_PRS_TRP_TEG_Info_r17 = -1; /* NR_DL_PRS_TRP_TEG_Info_r17 */ static int hf_lpp_referenceTRP_RTD_Info_r16 = -1; /* ReferenceTRP_RTD_Info_r16 */ static int hf_lpp_rtd_InfoList_r16 = -1; /* RTD_InfoList_r16 */ static int hf_lpp_dl_PRS_ID_Ref_r16 = -1; /* INTEGER_0_255 */ @@ -601,6 +746,24 @@ static int hf_lpp_scs60_r16_02 = -1; /* INTEGER_0_39 */ static int hf_lpp_scs120_r16_02 = -1; /* INTEGER_0_79 */ static int hf_lpp_timingQualityValue_r16 = -1; /* INTEGER_0_31 */ static int hf_lpp_timingQualityResolution_r16 = -1; /* T_timingQualityResolution_r16 */ +static int hf_lpp_NR_TRP_BeamAntennaInfo_r17_item = -1; /* NR_TRP_BeamAntennaInfoPerFreqLayer_r17 */ +static int hf_lpp_NR_TRP_BeamAntennaInfoPerFreqLayer_r17_item = -1; /* NR_TRP_BeamAntennaInfoPerTRP_r17 */ +static int hf_lpp_associated_DL_PRS_ID_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_lcs_GCS_TranslationParameter_r17 = -1; /* LCS_GCS_TranslationParameter_r16 */ +static int hf_lpp_nr_TRP_BeamAntennaAngles_r17 = -1; /* NR_TRP_BeamAntennaAngles_r17 */ +static int hf_lpp_NR_TRP_BeamAntennaAngles_r17_item = -1; /* NR_TRP_BeamAntennaInfoAzimuthElevation_r17 */ +static int hf_lpp_azimuth_r17 = -1; /* INTEGER_0_359 */ +static int hf_lpp_azimuth_fine_r17 = -1; /* INTEGER_0_9 */ +static int hf_lpp_elevationList_r17 = -1; /* SEQUENCE_SIZE_1_1801_OF_ElevationElement_R17 */ +static int hf_lpp_elevationList_r17_item = -1; /* ElevationElement_R17 */ +static int hf_lpp_elevation_r17 = -1; /* INTEGER_0_180 */ +static int hf_lpp_elevation_fine_r17 = -1; /* INTEGER_0_9 */ +static int hf_lpp_beamPowerList_r17 = -1; /* SEQUENCE_SIZE_2_maxNumResourcesPerAngle_r17_OF_BeamPowerElement_r17 */ +static int hf_lpp_beamPowerList_r17_item = -1; /* BeamPowerElement_r17 */ +static int hf_lpp_nr_dl_prs_ResourceSetID_r17 = -1; /* NR_DL_PRS_ResourceSetID_r16 */ +static int hf_lpp_nr_dl_prs_ResourceID_r17 = -1; /* NR_DL_PRS_ResourceID_r16 */ +static int hf_lpp_nr_dl_prs_RelativePower_r17 = -1; /* INTEGER_0_30 */ +static int hf_lpp_nr_dl_prs_RelativePowerFine_r17 = -1; /* INTEGER_0_9 */ static int hf_lpp_NR_TRP_LocationInfo_r16_item = -1; /* NR_TRP_LocationInfoPerFreqLayer_r16 */ static int hf_lpp_referencePoint_r16 = -1; /* ReferencePoint_r16 */ static int hf_lpp_trp_LocationInfoList_r16 = -1; /* SEQUENCE_SIZE_1_nrMaxTRPsPerFreq_r16_OF_TRP_LocationInfoElement_r16 */ @@ -612,6 +775,14 @@ static int hf_lpp_dl_PRS_ResourceSetARP_r16 = -1; /* RelativeLocation_r16 */ static int hf_lpp_dl_PRS_Resource_ARP_List_r16 = -1; /* SEQUENCE_SIZE_1_nrMaxResourcesPerSet_r16_OF_DL_PRS_Resource_ARP_Element_r16 */ static int hf_lpp_dl_PRS_Resource_ARP_List_r16_item = -1; /* DL_PRS_Resource_ARP_Element_r16 */ static int hf_lpp_dl_PRS_Resource_ARP_location_r16 = -1; /* RelativeLocation_r16 */ +static int hf_lpp_nr_UE_TEG_ID_CapabilityBandList_r17 = -1; /* SEQUENCE_SIZE_1_nrMaxBands_r16_OF_NR_UE_TEG_ID_CapabilityPerBand_r17 */ +static int hf_lpp_nr_UE_TEG_ID_CapabilityBandList_r17_item = -1; /* NR_UE_TEG_ID_CapabilityPerBand_r17 */ +static int hf_lpp_freqBandIndicatorNR_r17 = -1; /* FreqBandIndicatorNR_r16 */ +static int hf_lpp_nr_UE_RxTEG_ID_MaxSupport_r17 = -1; /* T_nr_UE_RxTEG_ID_MaxSupport_r17 */ +static int hf_lpp_nr_UE_TxTEG_ID_MaxSupport_r17 = -1; /* T_nr_UE_TxTEG_ID_MaxSupport_r17 */ +static int hf_lpp_nr_UE_RxTxTEG_ID_MaxSupport_r17 = -1; /* T_nr_UE_RxTxTEG_ID_MaxSupport_r17 */ +static int hf_lpp_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17 = -1; /* T_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17 */ +static int hf_lpp_measureSameDL_PRS_ResourceWithDifferentRxTEGsSimul_r17 = -1; /* T_measureSameDL_PRS_ResourceWithDifferentRxTEGsSimul_r17 */ static int hf_lpp_srs_CapabilityBandList_r16 = -1; /* SEQUENCE_SIZE_1_nrMaxBands_r16_OF_SRS_CapabilityPerBand_r16 */ static int hf_lpp_srs_CapabilityBandList_r16_item = -1; /* SRS_CapabilityPerBand_r16 */ static int hf_lpp_srs_PosResourceConfigCA_BandList_r16 = -1; /* SEQUENCE_SIZE_1_nrMaxConfiguredBands_r16_OF_SRS_PosResourcesPerBand_r16 */ @@ -620,6 +791,10 @@ static int hf_lpp_maxNumberSRS_PosPathLossEstimateAllServingCells_r16 = -1; /* static int hf_lpp_maxNumberSRS_PosSpatialRelationsAllServingCells_r16 = -1; /* T_maxNumberSRS_PosSpatialRelationsAllServingCells_r16 */ static int hf_lpp_olpc_SRS_Pos_r16 = -1; /* OLPC_SRS_Pos_r16 */ static int hf_lpp_spatialRelationsSRS_Pos_r16 = -1; /* SpatialRelationsSRS_Pos_r16 */ +static int hf_lpp_posSRS_RRC_Inactive_InInitialUL_BWP_r17 = -1; /* PosSRS_RRC_Inactive_InInitialUL_BWP_r17 */ +static int hf_lpp_posSRS_RRC_Inactive_OutsideInitialUL_BWP_r17 = -1; /* PosSRS_RRC_Inactive_OutsideInitialUL_BWP_r17 */ +static int hf_lpp_olpc_SRS_PosRRC_Inactive_r17 = -1; /* OLPC_SRS_Pos_r16 */ +static int hf_lpp_spatialRelationsSRS_PosRRC_Inactive_r17 = -1; /* SpatialRelationsSRS_Pos_r16 */ static int hf_lpp_olpc_SRS_PosBasedOnPRS_Serving_r16 = -1; /* T_olpc_SRS_PosBasedOnPRS_Serving_r16 */ static int hf_lpp_olpc_SRS_PosBasedOnSSB_Neigh_r16 = -1; /* T_olpc_SRS_PosBasedOnSSB_Neigh_r16 */ static int hf_lpp_olpc_SRS_PosBasedOnPRS_Neigh_r16 = -1; /* T_olpc_SRS_PosBasedOnPRS_Neigh_r16 */ @@ -635,6 +810,26 @@ static int hf_lpp_maxNumberSRS_PosResourcesPerBWP_r16 = -1; /* T_maxNumberSRS_P static int hf_lpp_maxNumberPeriodicSRS_PosResourcesPerBWP_r16 = -1; /* T_maxNumberPeriodicSRS_PosResourcesPerBWP_r16 */ static int hf_lpp_maxNumberAP_SRS_PosResourcesPerBWP_r16 = -1; /* T_maxNumberAP_SRS_PosResourcesPerBWP_r16 */ static int hf_lpp_maxNumberSP_SRS_PosResourcesPerBWP_r16 = -1; /* T_maxNumberSP_SRS_PosResourcesPerBWP_r16 */ +static int hf_lpp_maxNumOfSRSposResourceSets_r17 = -1; /* T_maxNumOfSRSposResourceSets_r17 */ +static int hf_lpp_maxNumOfPeriodicAndSemiPeristentSRSposResources_r17 = -1; /* T_maxNumOfPeriodicAndSemiPeristentSRSposResources_r17 */ +static int hf_lpp_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17 = -1; /* T_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17 */ +static int hf_lpp_maxNumOfPeriodicSRSposResources_r17 = -1; /* T_maxNumOfPeriodicSRSposResources_r17 */ +static int hf_lpp_maxNumOfPeriodicSRSposResourcesPerSlot_r17 = -1; /* T_maxNumOfPeriodicSRSposResourcesPerSlot_r17 */ +static int hf_lpp_maxNumOfSemiPeristentSRSposResources_r17 = -1; /* T_maxNumOfSemiPeristentSRSposResources_r17 */ +static int hf_lpp_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17 = -1; /* T_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17 */ +static int hf_lpp_maxSRSposBandwidthForEachSCS_withinCC_FR1_r17 = -1; /* T_maxSRSposBandwidthForEachSCS_withinCC_FR1_r17 */ +static int hf_lpp_maxSRSposBandwidthForEachSCS_withinCC_FR2_r17 = -1; /* T_maxSRSposBandwidthForEachSCS_withinCC_FR2_r17 */ +static int hf_lpp_maxNumOfSRSposResourceSets_r17_01 = -1; /* T_maxNumOfSRSposResourceSets_r17_01 */ +static int hf_lpp_maxNumOfPeriodicSRSposResources_r17_01 = -1; /* T_maxNumOfPeriodicSRSposResources_r17_01 */ +static int hf_lpp_maxNumOfPeriodicSRSposResourcesPerSlot_r17_01 = -1; /* T_maxNumOfPeriodicSRSposResourcesPerSlot_r17_01 */ +static int hf_lpp_differentNumerologyBetweenSRSposAndInitialBWP_r17 = -1; /* T_differentNumerologyBetweenSRSposAndInitialBWP_r17 */ +static int hf_lpp_srsPosWithoutRestrictionOnBWP_r17 = -1; /* T_srsPosWithoutRestrictionOnBWP_r17 */ +static int hf_lpp_maxNumOfPeriodicAndSemiPeristentSRSposResources_r17_01 = -1; /* T_maxNumOfPeriodicAndSemiPeristentSRSposResources_r17_01 */ +static int hf_lpp_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17_01 = -1; /* T_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17_01 */ +static int hf_lpp_differentCenterFreqBetweenSRSposAndInitialBWP_r17 = -1; /* T_differentCenterFreqBetweenSRSposAndInitialBWP_r17 */ +static int hf_lpp_maxNumOfSemiPersistentSRSposResources_r17 = -1; /* T_maxNumOfSemiPersistentSRSposResources_r17 */ +static int hf_lpp_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17_01 = -1; /* T_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17_01 */ +static int hf_lpp_switchingTimeSRS_TX_OtherTX_r17 = -1; /* T_switchingTimeSRS_TX_OtherTX_r17 */ static int hf_lpp_referencePointGeographicLocation_r16 = -1; /* T_referencePointGeographicLocation_r16 */ static int hf_lpp_location3D_r16 = -1; /* EllipsoidPointWithAltitudeAndUncertaintyEllipsoid */ static int hf_lpp_ha_location3D_r16 = -1; /* HighAccuracyEllipsoidPointWithAltitudeAndUncertaintyEllipsoid_r15 */ @@ -836,6 +1031,7 @@ static int hf_lpp_idleStateForMeasurements_r14 = -1; /* T_idleStateForMeasureme static int hf_lpp_numberOfRXantennas_r14 = -1; /* T_numberOfRXantennas_r14 */ static int hf_lpp_motionMeasurements_r15_01 = -1; /* T_motionMeasurements_r15_01 */ static int hf_lpp_interRAT_RSTDmeasurement_r15 = -1; /* T_interRAT_RSTDmeasurement_r15 */ +static int hf_lpp_scheduledLocationRequestSupported_r17 = -1; /* ScheduledLocationTimeSupport_r17 */ static int hf_lpp_bandEUTRA = -1; /* INTEGER_1_maxFBI */ static int hf_lpp_bandEUTRA_v9a0 = -1; /* INTEGER_maxFBI_Plus1_maxFBI2 */ static int hf_lpp_locationServerErrorCauses = -1; /* OTDOA_LocationServerErrorCauses */ @@ -854,6 +1050,8 @@ static int hf_lpp_gnss_RTK_ReferenceStationInfo_r15 = -1; /* GNSS_RTK_Reference static int hf_lpp_gnss_RTK_CommonObservationInfo_r15 = -1; /* GNSS_RTK_CommonObservationInfo_r15 */ static int hf_lpp_gnss_RTK_AuxiliaryStationData_r15 = -1; /* GNSS_RTK_AuxiliaryStationData_r15 */ static int hf_lpp_gnss_SSR_CorrectionPoints_r16 = -1; /* GNSS_SSR_CorrectionPoints_r16 */ +static int hf_lpp_gnss_Integrity_ServiceParameters_r17 = -1; /* GNSS_Integrity_ServiceParameters_r17 */ +static int hf_lpp_gnss_Integrity_ServiceAlert_r17 = -1; /* GNSS_Integrity_ServiceAlert_r17 */ static int hf_lpp_GNSS_GenericAssistData_item = -1; /* GNSS_GenericAssistDataElement */ static int hf_lpp_gnss_ID = -1; /* GNSS_ID */ static int hf_lpp_sbas_ID = -1; /* SBAS_ID */ @@ -894,6 +1092,7 @@ static int hf_lpp_gnss_SSR_PeriodicURA_r16 = -1; /* GNSS_PeriodicControlParam_r static int hf_lpp_gnss_SSR_PeriodicPhaseBias_r16 = -1; /* GNSS_PeriodicControlParam_r15 */ static int hf_lpp_gnss_SSR_PeriodicSTEC_Correction_r16 = -1; /* GNSS_PeriodicControlParam_r15 */ static int hf_lpp_gnss_SSR_PeriodicGriddedCorrection_r16 = -1; /* GNSS_PeriodicControlParam_r15 */ +static int hf_lpp_gnss_Integrity_PeriodicServiceAlert_r17 = -1; /* GNSS_PeriodicControlParam_r15 */ static int hf_lpp_gnss_SystemTime = -1; /* GNSS_SystemTime */ static int hf_lpp_referenceTimeUnc = -1; /* INTEGER_0_127 */ static int hf_lpp_gnss_ReferenceTimeForCells = -1; /* SEQUENCE_SIZE_1_16_OF_GNSS_ReferenceTimeForOneCell */ @@ -1031,6 +1230,10 @@ static int hf_lpp_numberOfStepsLongitude_r16 = -1; /* INTEGER_0_63 */ static int hf_lpp_stepOfLatitude_r16 = -1; /* INTEGER_1_511 */ static int hf_lpp_stepOfLongitude_r16 = -1; /* INTEGER_1_1023 */ static int hf_lpp_bitmaskOfGrids_r16 = -1; /* BIT_STRING_SIZE_64 */ +static int hf_lpp_irMinimum_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_irMaximum_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_ionosphereDoNotUse_r17 = -1; /* BOOLEAN */ +static int hf_lpp_troposphereDoNotUse_r17 = -1; /* BOOLEAN */ static int hf_lpp_GNSS_TimeModelList_item = -1; /* GNSS_TimeModelElement */ static int hf_lpp_gnss_TimeModelRefTime = -1; /* INTEGER_0_65535 */ static int hf_lpp_tA0 = -1; /* INTEGER_M67108864_67108863 */ @@ -1123,6 +1326,8 @@ static int hf_lpp_bdsA1_r16 = -1; /* INTEGER_M2097152_2097151 */ static int hf_lpp_bdsA2_r16 = -1; /* INTEGER_M1024_1023 */ static int hf_lpp_bdsTgdB1Cp_r16 = -1; /* INTEGER_M2048_2047 */ static int hf_lpp_bdsIscB1Cd_r16 = -1; /* INTEGER_M2048_2047 */ +static int hf_lpp_bdsTgdB2ap_r17 = -1; /* INTEGER_M2048_2047 */ +static int hf_lpp_bdsIscB2ad_r17 = -1; /* INTEGER_M2048_2047 */ static int hf_lpp_navic_Toc_r16 = -1; /* INTEGER_0_65535 */ static int hf_lpp_navic_af2_r16 = -1; /* INTEGER_M128_127 */ static int hf_lpp_navic_af1_r16 = -1; /* INTEGER_M32768_32767 */ @@ -1506,6 +1711,7 @@ static int hf_lpp_ssrUpdateInterval_r15 = -1; /* INTEGER_0_15 */ static int hf_lpp_satelliteReferenceDatum_r15 = -1; /* T_satelliteReferenceDatum_r15 */ static int hf_lpp_iod_ssr_r15 = -1; /* INTEGER_0_15 */ static int hf_lpp_ssr_OrbitCorrectionList_r15 = -1; /* SSR_OrbitCorrectionList_r15 */ +static int hf_lpp_orbit_IntegrityParameters_r17 = -1; /* ORBIT_IntegrityParameters_r17 */ static int hf_lpp_SSR_OrbitCorrectionList_r15_item = -1; /* SSR_OrbitCorrectionSatelliteElement_r15 */ static int hf_lpp_delta_radial_r15 = -1; /* INTEGER_M2097152_2097151 */ static int hf_lpp_delta_AlongTrack_r15 = -1; /* INTEGER_M524288_524287 */ @@ -1513,17 +1719,44 @@ static int hf_lpp_delta_CrossTrack_r15 = -1; /* INTEGER_M524288_524287 */ static int hf_lpp_dot_delta_radial_r15 = -1; /* INTEGER_M1048576_1048575 */ static int hf_lpp_dot_delta_AlongTrack_r15 = -1; /* INTEGER_M262144_262143 */ static int hf_lpp_dot_delta_CrossTrack_r15 = -1; /* INTEGER_M262144_262143 */ +static int hf_lpp_ssr_IntegrityOrbitBounds_r17 = -1; /* SSR_IntegrityOrbitBounds_r17 */ +static int hf_lpp_probOnsetConstFault_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_meanConstFaultDuration_r17 = -1; /* INTEGER_1_3600 */ +static int hf_lpp_probOnsetSatFault_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_meanSatFaultDuration_r17 = -1; /* INTEGER_1_3600 */ +static int hf_lpp_orbitRangeErrorCorrelationTime_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_orbitRangeRateErrorCorrelationTime_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_meanOrbitError_r17 = -1; /* RAC_OrbitalErrorComponents_r17 */ +static int hf_lpp_varOrbitError_r17 = -1; /* RAC_OrbitalErrorComponents_r17 */ +static int hf_lpp_meanOrbitRateError_r17 = -1; /* RAC_OrbitalErrorComponents_r17 */ +static int hf_lpp_varOrbitRateError_r17 = -1; /* RAC_OrbitalErrorComponents_r17 */ +static int hf_lpp_radial_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_alongTrack_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_crossTrack_r17 = -1; /* INTEGER_0_255 */ static int hf_lpp_ssr_ClockCorrectionList_r15 = -1; /* SSR_ClockCorrectionList_r15 */ +static int hf_lpp_clock_IntegrityParameters_r17 = -1; /* CLOCK_IntegrityParameters_r17 */ static int hf_lpp_SSR_ClockCorrectionList_r15_item = -1; /* SSR_ClockCorrectionSatelliteElement_r15 */ static int hf_lpp_delta_Clock_C0_r15 = -1; /* INTEGER_M2097152_2097151 */ static int hf_lpp_delta_Clock_C1_r15 = -1; /* INTEGER_M1048576_1048575 */ static int hf_lpp_delta_Clock_C2_r15 = -1; /* INTEGER_M67108864_67108863 */ +static int hf_lpp_ssr_IntegrityClockBounds_r17 = -1; /* SSR_IntegrityClockBounds_r17 */ +static int hf_lpp_clockRangeErrorCorrelationTime_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_clockRangeRateErrorCorrelationTime_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_meanClock_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_stdDevClock_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_meanClockRate_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_stdDevClockRate_r17 = -1; /* INTEGER_0_255 */ static int hf_lpp_ssr_CodeBiasSatList_r15 = -1; /* SSR_CodeBiasSatList_r15 */ static int hf_lpp_SSR_CodeBiasSatList_r15_item = -1; /* SSR_CodeBiasSatElement_r15 */ static int hf_lpp_ssr_CodeBiasSignalList_r15 = -1; /* SSR_CodeBiasSignalList_r15 */ static int hf_lpp_SSR_CodeBiasSignalList_r15_item = -1; /* SSR_CodeBiasSignalElement_r15 */ static int hf_lpp_signal_and_tracking_mode_ID_r15 = -1; /* GNSS_SignalID */ static int hf_lpp_codeBias_r15 = -1; /* INTEGER_M8192_8191 */ +static int hf_lpp_ssr_IntegrityCodeBiasBounds_r17 = -1; /* SSR_IntegrityCodeBiasBounds_r17 */ +static int hf_lpp_meanCodeBias_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_stdDevCodeBias_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_meanCodeBiasRate_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_stdDevCodeBiasRate_r17 = -1; /* INTEGER_0_255 */ static int hf_lpp_epochTime_r16 = -1; /* GNSS_SystemTime */ static int hf_lpp_ssrUpdateInterval_r16 = -1; /* INTEGER_0_15 */ static int hf_lpp_iod_ssr_r16 = -1; /* INTEGER_0_15 */ @@ -1538,24 +1771,53 @@ static int hf_lpp_signal_and_tracking_mode_ID_r16 = -1; /* GNSS_SignalID */ static int hf_lpp_phaseBias_r16 = -1; /* INTEGER_M16384_16383 */ static int hf_lpp_phaseDiscontinuityIndicator_r16 = -1; /* INTEGER_0_3 */ static int hf_lpp_phaseBiasIntegerIndicator_r16 = -1; /* INTEGER_0_3 */ +static int hf_lpp_ssr_IntegrityPhaseBiasBounds_r17 = -1; /* SSR_IntegrityPhaseBiasBounds_r17 */ +static int hf_lpp_meanPhaseBias_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_stdDevPhaseBias_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_meanPhaseBiasRate_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_stdDevPhaseBiasRate_r17 = -1; /* INTEGER_0_255 */ static int hf_lpp_stec_SatList_r16 = -1; /* STEC_SatList_r16 */ +static int hf_lpp_stec_IntegrityParameters_r17 = -1; /* STEC_IntegrityParameters_r17 */ static int hf_lpp_STEC_SatList_r16_item = -1; /* STEC_SatElement_r16 */ static int hf_lpp_stecQualityIndicator_r16 = -1; /* BIT_STRING_SIZE_6 */ static int hf_lpp_stec_C00_r16 = -1; /* INTEGER_M8192_8191 */ static int hf_lpp_stec_C01_r16 = -1; /* INTEGER_M2048_2047 */ static int hf_lpp_stec_C10_r16 = -1; /* INTEGER_M2048_2047 */ static int hf_lpp_stec_C11_r16 = -1; /* INTEGER_M512_511 */ +static int hf_lpp_stec_IntegrityErrorBounds_r17 = -1; /* STEC_IntegrityErrorBounds_r17 */ +static int hf_lpp_probOnsetIonoFault_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_meanIonoFaultDuration_r17 = -1; /* INTEGER_1_256 */ +static int hf_lpp_ionoRangeErrorCorrelationTime_r17 = -1; /* INTEGER_1_255 */ +static int hf_lpp_ionoRangeRateErrorCorrelationTime_r17 = -1; /* INTEGER_1_255 */ +static int hf_lpp_meanIonosphere_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_stdDevIonosphere_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_meanIonosphereRate_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_stdDevIonosphereRate_r17 = -1; /* INTEGER_0_255 */ static int hf_lpp_troposphericDelayQualityIndicator_r16 = -1; /* BIT_STRING_SIZE_6 */ static int hf_lpp_gridList_r16 = -1; /* GridList_r16 */ +static int hf_lpp_ssr_GriddedCorrectionIntegrityParameters_r17 = -1; /* SSR_GriddedCorrectionIntegrityParameters_r17 */ static int hf_lpp_GridList_r16_item = -1; /* GridElement_r16 */ static int hf_lpp_tropospericDelayCorrection_r16 = -1; /* TropospericDelayCorrection_r16 */ static int hf_lpp_stec_ResidualSatList_r16 = -1; /* STEC_ResidualSatList_r16 */ static int hf_lpp_tropoHydroStaticVerticalDelay_r16 = -1; /* INTEGER_M256_255 */ static int hf_lpp_tropoWetVerticalDelay_r16 = -1; /* INTEGER_M128_127 */ +static int hf_lpp_tropoDelayIntegrityErrorBounds_r17 = -1; /* TropoDelayIntegrityErrorBounds_r17 */ static int hf_lpp_STEC_ResidualSatList_r16_item = -1; /* STEC_ResidualSatElement_r16 */ static int hf_lpp_stecResidualCorrection_r16 = -1; /* T_stecResidualCorrection_r16 */ static int hf_lpp_b7_r16 = -1; /* INTEGER_M64_63 */ static int hf_lpp_b16_r16 = -1; /* INTEGER_M32768_32767 */ +static int hf_lpp_probOnsetTroposphereFault_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_meanTroposphereFaultDuration_r17 = -1; /* INTEGER_1_256 */ +static int hf_lpp_troposphereRangeErrorCorrelationTime_r17 = -1; /* INTEGER_1_255 */ +static int hf_lpp_troposphereRangeRateErrorCorrelationTime_r17 = -1; /* INTEGER_1_255 */ +static int hf_lpp_meanTroposphereVerticalHydroStaticDelay_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_stdDevTroposphereVerticalHydroStaticDelay_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_meanTroposphereVerticalWetDelay_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_stdDevTroposphereVerticalWetDelay_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_meanTroposphereVerticalHydroStaticDelayRate_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_stdDevTroposphereVerticalHydroStaticDelayRate_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_meanTroposphereVerticalWetDelayRate_r17 = -1; /* INTEGER_0_255 */ +static int hf_lpp_stdDevTroposphereVerticalWetDelayRate_r17 = -1; /* INTEGER_0_255 */ static int hf_lpp_navic_RefTOWC_r16 = -1; /* INTEGER_0_50400 */ static int hf_lpp_navic_CorrectionListAutoNav_r16 = -1; /* NavIC_CorrectionListAutoNav_r16 */ static int hf_lpp_NavIC_CorrectionListAutoNav_r16_item = -1; /* NavIC_CorrectionElementAutoNav_r16 */ @@ -1617,6 +1879,8 @@ static int hf_lpp_gnss_EarthOrientationParametersReq = -1; /* GNSS_EarthOrienta static int hf_lpp_gnss_RTK_ReferenceStationInfoReq_r15 = -1; /* GNSS_RTK_ReferenceStationInfoReq_r15 */ static int hf_lpp_gnss_RTK_AuxiliaryStationDataReq_r15 = -1; /* GNSS_RTK_AuxiliaryStationDataReq_r15 */ static int hf_lpp_gnss_SSR_CorrectionPointsReq_r16 = -1; /* GNSS_SSR_CorrectionPointsReq_r16 */ +static int hf_lpp_gnss_Integrity_ServiceParametersReq_r17 = -1; /* GNSS_Integrity_ServiceParametersReq_r17 */ +static int hf_lpp_gnss_Integrity_ServiceAlertReq_r17 = -1; /* GNSS_Integrity_ServiceAlertReq_r17 */ static int hf_lpp_GNSS_GenericAssistDataReq_item = -1; /* GNSS_GenericAssistDataReqElement */ static int hf_lpp_gnss_TimeModelsReq = -1; /* GNSS_TimeModelListReq */ static int hf_lpp_gnss_DifferentialCorrectionsReq = -1; /* GNSS_DifferentialCorrectionsReq */ @@ -1655,6 +1919,7 @@ static int hf_lpp_gnss_SSR_PeriodicURA_Req_r16 = -1; /* GNSS_PeriodicControlPar static int hf_lpp_gnss_SSR_PeriodicPhaseBiasReq_r16 = -1; /* GNSS_PeriodicControlParam_r15 */ static int hf_lpp_gnss_SSR_PeriodicSTEC_CorrectionReq_r16 = -1; /* GNSS_PeriodicControlParam_r15 */ static int hf_lpp_gnss_SSR_PeriodicGriddedCorrectionReq_r16 = -1; /* GNSS_PeriodicControlParam_r15 */ +static int hf_lpp_gnss_Integrity_PeriodicServiceAlertReq_r17 = -1; /* GNSS_PeriodicControlParam_r15 */ static int hf_lpp_gnss_TimeReqPrefList = -1; /* SEQUENCE_SIZE_1_8_OF_GNSS_ID */ static int hf_lpp_gnss_TimeReqPrefList_item = -1; /* GNSS_ID */ static int hf_lpp_gps_TOW_assistReq = -1; /* BOOLEAN */ @@ -1704,9 +1969,16 @@ static int hf_lpp_linkCombinations_PrefList_r15 = -1; /* GNSS_Link_Combinations static int hf_lpp_AUX_ReferenceStationList_r15_item = -1; /* AUX_ReferenceStationID_Element_r15 */ static int hf_lpp_aux_stationID_r15 = -1; /* GNSS_ReferenceStationID_r15 */ static int hf_lpp_storedNavList_r15 = -1; /* GNSS_NavListInfo_r15 */ +static int hf_lpp_orbit_IntegrityReq_r17 = -1; /* T_orbit_IntegrityReq_r17 */ +static int hf_lpp_clock_IntegrityParametersReq_r17 = -1; /* T_clock_IntegrityParametersReq_r17 */ +static int hf_lpp_ssr_IntegrityClockBoundsReq_r17 = -1; /* T_ssr_IntegrityClockBoundsReq_r17 */ static int hf_lpp_signal_and_tracking_mode_ID_Map_r15 = -1; /* GNSS_SignalIDs */ +static int hf_lpp_ssr_IntegrityCodeBiasBoundsReq_r17 = -1; /* T_ssr_IntegrityCodeBiasBoundsReq_r17 */ static int hf_lpp_signal_and_tracking_mode_ID_Map_r16 = -1; /* GNSS_SignalIDs */ static int hf_lpp_storedNavList_r16 = -1; /* GNSS_NavListInfo_r15 */ +static int hf_lpp_ssr_IntegrityPhaseBiasBoundsReq_r17 = -1; /* T_ssr_IntegrityPhaseBiasBoundsReq_r17 */ +static int hf_lpp_stec_IntegrityReq_r17 = -1; /* T_stec_IntegrityReq_r17 */ +static int hf_lpp_griddedCorrectionIntegrityReq_r17 = -1; /* T_griddedCorrectionIntegrityReq_r17 */ static int hf_lpp_dgnss_SignalsReq_r16 = -1; /* GNSS_SignalIDs */ static int hf_lpp_gnss_SignalMeasurementInformation = -1; /* GNSS_SignalMeasurementInformation */ static int hf_lpp_gnss_LocationInformation = -1; /* GNSS_LocationInformation */ @@ -1752,17 +2024,25 @@ static int hf_lpp_adrSign_r15 = -1; /* T_adrSign_r15 */ static int hf_lpp_adrRMSerror_r15 = -1; /* INTEGER_0_127 */ static int hf_lpp_delta_codePhase_r15 = -1; /* INTEGER_0_7 */ static int hf_lpp_agnss_List = -1; /* GNSS_ID_Bitmap */ +static int hf_lpp_ha_GNSS_Metrics_r17 = -1; /* HA_GNSS_Metrics_r17 */ +static int hf_lpp_nrOfUsedSatellites_r17 = -1; /* INTEGER_0_64 */ +static int hf_lpp_hdopi_r17 = -1; /* INTEGER_1_256 */ +static int hf_lpp_pdopi_r17 = -1; /* INTEGER_1_256 */ +static int hf_lpp_age_r17 = -1; /* INTEGER_0_99 */ +static int hf_lpp_fixType_r17 = -1; /* T_fixType_r17 */ static int hf_lpp_gnss_PositioningInstructions = -1; /* GNSS_PositioningInstructions */ static int hf_lpp_gnss_Methods = -1; /* GNSS_ID_Bitmap */ static int hf_lpp_fineTimeAssistanceMeasReq = -1; /* BOOLEAN */ static int hf_lpp_adrMeasReq = -1; /* BOOLEAN */ static int hf_lpp_multiFreqMeasReq = -1; /* BOOLEAN */ static int hf_lpp_ha_GNSS_Req_r15 = -1; /* T_ha_GNSS_Req_r15 */ +static int hf_lpp_ha_GNSS_MetricsReq_r17 = -1; /* T_ha_GNSS_MetricsReq_r17 */ static int hf_lpp_gnss_SupportList = -1; /* GNSS_SupportList */ static int hf_lpp_assistanceDataSupportList = -1; /* AssistanceDataSupportList */ static int hf_lpp_periodicalReportingNotSupported_r14 = -1; /* PositioningModes */ static int hf_lpp_idleStateForMeasurements_r14_01 = -1; /* T_idleStateForMeasurements_r14_01 */ static int hf_lpp_periodicAssistanceData_r15_01 = -1; /* T_periodicAssistanceData_r15 */ +static int hf_lpp_scheduledLocationRequestSupported_r17_01 = -1; /* ScheduledLocationTimeSupportPerMode_r17 */ static int hf_lpp_GNSS_SupportList_item = -1; /* GNSS_SupportElement */ static int hf_lpp_sbas_IDs = -1; /* SBAS_IDs */ static int hf_lpp_agnss_Modes = -1; /* PositioningModes */ @@ -1774,6 +2054,7 @@ static int hf_lpp_adr_Support = -1; /* BOOLEAN */ static int hf_lpp_velocityMeasurementSupport = -1; /* BOOLEAN */ static int hf_lpp_adrEnhancementsSupport_r15 = -1; /* T_adrEnhancementsSupport_r15 */ static int hf_lpp_ha_gnss_Modes_r15 = -1; /* PositioningModes */ +static int hf_lpp_ha_gnss_MetricsSupport_r17 = -1; /* T_ha_gnss_MetricsSupport_r17 */ static int hf_lpp_gnss_CommonAssistanceDataSupport = -1; /* GNSS_CommonAssistanceDataSupport */ static int hf_lpp_gnss_GenericAssistanceDataSupport = -1; /* GNSS_GenericAssistanceDataSupport */ static int hf_lpp_gnss_ReferenceTimeSupport = -1; /* GNSS_ReferenceTimeSupport */ @@ -1782,6 +2063,8 @@ static int hf_lpp_gnss_IonosphericModelSupport = -1; /* GNSS_IonosphericModelSu static int hf_lpp_gnss_EarthOrientationParametersSupport = -1; /* GNSS_EarthOrientationParametersSupport */ static int hf_lpp_gnss_RTK_ReferenceStationInfoSupport_r15 = -1; /* GNSS_RTK_ReferenceStationInfoSupport_r15 */ static int hf_lpp_gnss_RTK_AuxiliaryStationDataSupport_r15 = -1; /* GNSS_RTK_AuxiliaryStationDataSupport_r15 */ +static int hf_lpp_gnss_Integrity_ServiceParametersSupport_r17 = -1; /* GNSS_Integrity_ServiceParametersSupport_r17 */ +static int hf_lpp_gnss_Integrity_ServiceAlertSupport_r17 = -1; /* GNSS_Integrity_ServiceAlertSupport_r17 */ static int hf_lpp_gnss_SystemTime_01 = -1; /* GNSS_ID_Bitmap */ static int hf_lpp_fta_Support = -1; /* AccessTypes */ static int hf_lpp_ionoModel = -1; /* T_ionoModel */ @@ -1821,8 +2104,15 @@ static int hf_lpp_almanacModel = -1; /* T_almanacModel */ static int hf_lpp_utc_Model = -1; /* T_utc_Model */ static int hf_lpp_gnssSignalIDs_r15 = -1; /* GNSS_SignalIDs */ static int hf_lpp_link_combinations_support_r15 = -1; /* GNSS_Link_CombinationsList_r15 */ +static int hf_lpp_orbit_IntegritySup_r17 = -1; /* T_orbit_IntegritySup_r17 */ +static int hf_lpp_clock_IntegrityParameterSupport_r17 = -1; /* T_clock_IntegrityParameterSupport_r17 */ +static int hf_lpp_ssr_IntegrityClockBoundsSupport_r17 = -1; /* T_ssr_IntegrityClockBoundsSupport_r17 */ static int hf_lpp_signal_and_tracking_mode_ID_Sup_r15 = -1; /* GNSS_SignalIDs */ +static int hf_lpp_ssr_IntegrityCodeBiasBoundsSup_r17 = -1; /* T_ssr_IntegrityCodeBiasBoundsSup_r17 */ static int hf_lpp_signal_and_tracking_mode_ID_Sup_r16 = -1; /* GNSS_SignalIDs */ +static int hf_lpp_ssr_IntegrityPhaseBiasBoundsSup_r17 = -1; /* T_ssr_IntegrityPhaseBiasBoundsSup_r17 */ +static int hf_lpp_stec_IntegritySup_r17 = -1; /* T_stec_IntegritySup_r17 */ +static int hf_lpp_griddedCorrectionIntegritySup_r17 = -1; /* T_griddedCorrectionIntegritySup_r17 */ static int hf_lpp_gnssSignalIDs_r16 = -1; /* GNSS_SignalIDs */ static int hf_lpp_gnss_SupportListReq = -1; /* BOOLEAN */ static int hf_lpp_assistanceDataSupportListReq = -1; /* BOOLEAN */ @@ -2081,6 +2371,7 @@ static int hf_lpp_cause_r13_06 = -1; /* T_cause_r13_06 */ static int hf_lpp_cause_r13_07 = -1; /* T_cause_r13_07 */ static int hf_lpp_bt_Beacon_rssiMeasurementNotPossible_r13 = -1; /* NULL */ static int hf_lpp_nr_UL_SRS_Capability_r16 = -1; /* NR_UL_SRS_Capability_r16 */ +static int hf_lpp_nr_UE_TEG_Capability_r17 = -1; /* NR_UE_TEG_Capability_r17 */ static int hf_lpp_nr_ECID_SignalMeasurementInformation_r16 = -1; /* NR_ECID_SignalMeasurementInformation_r16 */ static int hf_lpp_nr_ECID_Error_r16 = -1; /* NR_ECID_Error_r16 */ static int hf_lpp_nr_PrimaryCellMeasuredResults_r16 = -1; /* NR_MeasuredResultsElement_r16 */ @@ -2104,6 +2395,7 @@ static int hf_lpp_requestedMeasurements_r16 = -1; /* T_requestedMeasurements_r1 static int hf_lpp_nr_ECID_MeasSupported_r16 = -1; /* T_nr_ECID_MeasSupported_r16 */ static int hf_lpp_periodicalReporting_r16 = -1; /* T_periodicalReporting_r16 */ static int hf_lpp_triggeredReporting_r16 = -1; /* T_triggeredReporting_r16 */ +static int hf_lpp_ten_ms_unit_ResponseTime_r17 = -1; /* T_ten_ms_unit_ResponseTime_r17 */ static int hf_lpp_locationServerErrorCauses_r16 = -1; /* NR_ECID_LocationServerErrorCauses_r16 */ static int hf_lpp_targetDeviceErrorCauses_r16 = -1; /* NR_ECID_TargetDeviceErrorCauses_r16 */ static int hf_lpp_cause_r16 = -1; /* T_cause_r16 */ @@ -2116,9 +2408,20 @@ static int hf_lpp_nr_DL_PRS_AssistanceData_r16 = -1; /* NR_DL_PRS_AssistanceDat static int hf_lpp_nr_SelectedDL_PRS_IndexList_r16 = -1; /* NR_SelectedDL_PRS_IndexList_r16 */ static int hf_lpp_nr_PositionCalculationAssistance_r16 = -1; /* NR_PositionCalculationAssistance_r16 */ static int hf_lpp_nr_DL_TDOA_Error_r16 = -1; /* NR_DL_TDOA_Error_r16 */ +static int hf_lpp_nr_On_Demand_DL_PRS_Configurations_r17 = -1; /* NR_On_Demand_DL_PRS_Configurations_r17 */ +static int hf_lpp_nr_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17 = -1; /* NR_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17 */ +static int hf_lpp_assistanceDataValidityArea_r17 = -1; /* AreaID_CellList_r17 */ static int hf_lpp_nr_AdType_r16 = -1; /* T_nr_AdType_r16 */ +static int hf_lpp_nr_PosCalcAssistanceRequest_r17 = -1; /* T_nr_PosCalcAssistanceRequest_r17 */ +static int hf_lpp_nr_on_demand_DL_PRS_Request_r17 = -1; /* NR_On_Demand_DL_PRS_Request_r17 */ +static int hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17 = -1; /* T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17 */ +static int hf_lpp_pre_configured_AssistanceDataRequest_r17 = -1; /* T_pre_configured_AssistanceDataRequest_r17 */ static int hf_lpp_nr_DL_TDOA_SignalMeasurementInformation_r16 = -1; /* NR_DL_TDOA_SignalMeasurementInformation_r16 */ static int hf_lpp_nr_dl_tdoa_LocationInformation_r16 = -1; /* NR_DL_TDOA_LocationInformation_r16 */ +static int hf_lpp_nr_DL_TDOA_SignalMeasurementInstances_r17 = -1; /* SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_SignalMeasurementInformation_r16 */ +static int hf_lpp_nr_DL_TDOA_SignalMeasurementInstances_r17_item = -1; /* NR_DL_TDOA_SignalMeasurementInformation_r16 */ +static int hf_lpp_nr_DL_TDOA_LocationInformationInstances_r17 = -1; /* SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_LocationInformation_r16 */ +static int hf_lpp_nr_DL_TDOA_LocationInformationInstances_r17_item = -1; /* NR_DL_TDOA_LocationInformation_r16 */ static int hf_lpp_dl_PRS_ReferenceInfo_r16 = -1; /* DL_PRS_ID_Info_r16 */ static int hf_lpp_nr_DL_TDOA_MeasList_r16 = -1; /* NR_DL_TDOA_MeasList_r16 */ static int hf_lpp_NR_DL_TDOA_MeasList_r16_item = -1; /* NR_DL_TDOA_MeasElement_r16 */ @@ -2134,7 +2437,15 @@ static int hf_lpp_nr_AdditionalPathList_r16 = -1; /* NR_AdditionalPathList_r16 static int hf_lpp_nr_TimingQuality_r16 = -1; /* NR_TimingQuality_r16 */ static int hf_lpp_nr_DL_PRS_RSRP_Result_r16 = -1; /* INTEGER_0_126 */ static int hf_lpp_nr_DL_TDOA_AdditionalMeasurements_r16 = -1; /* NR_DL_TDOA_AdditionalMeasurements_r16 */ +static int hf_lpp_nr_UE_Rx_TEG_ID_r17 = -1; /* INTEGER_0_maxNumOfRxTEGs_1_r17 */ +static int hf_lpp_nr_DL_PRS_FirstPathRSRP_Result_r17 = -1; /* INTEGER_0_126 */ +static int hf_lpp_nr_los_nlos_Indicator_r17 = -1; /* T_nr_los_nlos_Indicator_r17 */ +static int hf_lpp_perTRP_r17 = -1; /* LOS_NLOS_Indicator_r17 */ +static int hf_lpp_perResource_r17_01 = -1; /* LOS_NLOS_Indicator_r17 */ +static int hf_lpp_nr_AdditionalPathListExt_r17 = -1; /* NR_AdditionalPathListExt_r17 */ +static int hf_lpp_nr_DL_TDOA_AdditionalMeasurementsExt_r17 = -1; /* NR_DL_TDOA_AdditionalMeasurementsExt_r17 */ static int hf_lpp_NR_DL_TDOA_AdditionalMeasurements_r16_item = -1; /* NR_DL_TDOA_AdditionalMeasurementElement_r16 */ +static int hf_lpp_NR_DL_TDOA_AdditionalMeasurementsExt_r17_item = -1; /* NR_DL_TDOA_AdditionalMeasurementElement_r16 */ static int hf_lpp_nr_RSTD_ResultDiff_r16 = -1; /* T_nr_RSTD_ResultDiff_r16 */ static int hf_lpp_k0_r16_02 = -1; /* INTEGER_0_8191 */ static int hf_lpp_k1_r16_02 = -1; /* INTEGER_0_4095 */ @@ -2143,16 +2454,30 @@ static int hf_lpp_k3_r16_02 = -1; /* INTEGER_0_1023 */ static int hf_lpp_k4_r16_02 = -1; /* INTEGER_0_511 */ static int hf_lpp_k5_r16_02 = -1; /* INTEGER_0_255 */ static int hf_lpp_nr_DL_PRS_RSRP_ResultDiff_r16 = -1; /* INTEGER_0_61 */ +static int hf_lpp_nr_DL_PRS_FirstPathRSRP_ResultDiff_r17 = -1; /* INTEGER_0_61 */ +static int hf_lpp_nr_los_nlos_IndicatorPerResource_r17 = -1; /* LOS_NLOS_Indicator_r17 */ static int hf_lpp_measurementReferenceTime_r16 = -1; /* T_measurementReferenceTime_r16 */ static int hf_lpp_systemFrameNumber_r16_01 = -1; /* NR_TimeStamp_r16 */ static int hf_lpp_utc_time_r16 = -1; /* UTCTime */ +static int hf_lpp_locationCoordinates_r17 = -1; /* LocationCoordinates */ +static int hf_lpp_locationSource_r17 = -1; /* LocationSource_r13 */ static int hf_lpp_nr_DL_PRS_RstdMeasurementInfoRequest_r16 = -1; /* T_nr_DL_PRS_RstdMeasurementInfoRequest_r16 */ static int hf_lpp_nr_RequestedMeasurements_r16 = -1; /* T_nr_RequestedMeasurements_r16 */ static int hf_lpp_nr_AssistanceAvailability_r16 = -1; /* BOOLEAN */ static int hf_lpp_nr_DL_TDOA_ReportConfig_r16 = -1; /* NR_DL_TDOA_ReportConfig_r16 */ static int hf_lpp_additionalPaths_r16 = -1; /* T_additionalPaths_r16 */ +static int hf_lpp_nr_UE_RxTEG_Request_r17 = -1; /* T_nr_UE_RxTEG_Request_r17 */ +static int hf_lpp_nr_los_nlos_IndicatorRequest_r17 = -1; /* T_nr_los_nlos_IndicatorRequest_r17 */ +static int hf_lpp_type_r17 = -1; /* LOS_NLOS_IndicatorType1_r17 */ +static int hf_lpp_granularity_r17 = -1; /* LOS_NLOS_IndicatorGranularity1_r17 */ +static int hf_lpp_additionalPathsExt_r17 = -1; /* T_additionalPathsExt_r17 */ +static int hf_lpp_additionalPathsDL_PRS_RSRP_Request_r17 = -1; /* T_additionalPathsDL_PRS_RSRP_Request_r17 */ +static int hf_lpp_multiMeasInSameReport_r17 = -1; /* T_multiMeasInSameReport_r17 */ static int hf_lpp_maxDL_PRS_RSTD_MeasurementsPerTRPPair_r16 = -1; /* INTEGER_1_4 */ static int hf_lpp_timingReportingGranularityFactor_r16 = -1; /* INTEGER_0_5 */ +static int hf_lpp_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_01 = -1; /* T_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_01 */ +static int hf_lpp_requestedDL_PRS_ProcessingSamples_r17 = -1; /* T_requestedDL_PRS_ProcessingSamples_r17 */ +static int hf_lpp_lowerRxBeamSweepingThan8_FR2_r17_01 = -1; /* T_lowerRxBeamSweepingThan8_FR2_r17_01 */ static int hf_lpp_nr_DL_TDOA_Mode_r16 = -1; /* PositioningModes */ static int hf_lpp_nr_DL_TDOA_PRS_Capability_r16 = -1; /* NR_DL_PRS_ResourcesCapability_r16 */ static int hf_lpp_nr_DL_TDOA_MeasurementCapability_r16 = -1; /* NR_DL_TDOA_MeasurementCapability_r16 */ @@ -2160,66 +2485,162 @@ static int hf_lpp_nr_DL_PRS_QCL_ProcessingCapability_r16 = -1; /* NR_DL_PRS_QCL static int hf_lpp_nr_DL_PRS_ProcessingCapability_r16 = -1; /* NR_DL_PRS_ProcessingCapability_r16 */ static int hf_lpp_additionalPathsReport_r16 = -1; /* T_additionalPathsReport_r16 */ static int hf_lpp_periodicalReporting_r16_01 = -1; /* PositioningModes */ +static int hf_lpp_ten_ms_unit_ResponseTime_r17_01 = -1; /* PositioningModes */ +static int hf_lpp_nr_PosCalcAssistanceSupport_r17 = -1; /* T_nr_PosCalcAssistanceSupport_r17 */ +static int hf_lpp_nr_los_nlos_AssistanceDataSupport_r17 = -1; /* T_nr_los_nlos_AssistanceDataSupport_r17 */ +static int hf_lpp_type_r17_01 = -1; /* LOS_NLOS_IndicatorType2_r17 */ +static int hf_lpp_granularity_r17_01 = -1; /* LOS_NLOS_IndicatorGranularity2_r17 */ +static int hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17 = -1; /* T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17 */ +static int hf_lpp_nr_DL_TDOA_On_Demand_DL_PRS_Support_r17 = -1; /* NR_On_Demand_DL_PRS_Support_r17 */ +static int hf_lpp_nr_los_nlos_IndicatorSupport_r17 = -1; /* T_nr_los_nlos_IndicatorSupport_r17 */ +static int hf_lpp_additionalPathsExtSupport_r17 = -1; /* T_additionalPathsExtSupport_r17 */ +static int hf_lpp_nr_dl_prs_AssistanceDataValidity_r17 = -1; /* T_nr_dl_prs_AssistanceDataValidity_r17 */ +static int hf_lpp_area_validity_r17 = -1; /* INTEGER_1_maxNrOfAreas_r17 */ +static int hf_lpp_multiMeasInSameMeasReport_r17 = -1; /* T_multiMeasInSameMeasReport_r17 */ +static int hf_lpp_mg_ActivationRequest_r17 = -1; /* T_mg_ActivationRequest_r17 */ static int hf_lpp_dl_RSTD_MeasurementPerPairOfTRP_FR1_r16 = -1; /* INTEGER_1_4 */ static int hf_lpp_dl_RSTD_MeasurementPerPairOfTRP_FR2_r16 = -1; /* INTEGER_1_4 */ static int hf_lpp_supportOfDL_PRS_RSRP_MeasFR1_r16 = -1; /* T_supportOfDL_PRS_RSRP_MeasFR1_r16 */ static int hf_lpp_supportOfDL_PRS_RSRP_MeasFR2_r16 = -1; /* T_supportOfDL_PRS_RSRP_MeasFR2_r16 */ +static int hf_lpp_dl_tdoa_MeasCapabilityBandList_r17 = -1; /* SEQUENCE_SIZE_1_nrMaxBands_r16_OF_DL_TDOA_MeasCapabilityPerBand_r17 */ +static int hf_lpp_dl_tdoa_MeasCapabilityBandList_r17_item = -1; /* DL_TDOA_MeasCapabilityPerBand_r17 */ +static int hf_lpp_supportOfDL_PRS_FirstPathRSRP_r17 = -1; /* T_supportOfDL_PRS_FirstPathRSRP_r17 */ +static int hf_lpp_dl_PRS_MeasRRC_Inactive_r17 = -1; /* T_dl_PRS_MeasRRC_Inactive_r17 */ static int hf_lpp_locationServerErrorCauses_r16_01 = -1; /* NR_DL_TDOA_LocationServerErrorCauses_r16 */ static int hf_lpp_targetDeviceErrorCauses_r16_01 = -1; /* NR_DL_TDOA_TargetDeviceErrorCauses_r16 */ static int hf_lpp_cause_r16_02 = -1; /* T_cause_r16_02 */ static int hf_lpp_cause_r16_03 = -1; /* T_cause_r16_03 */ static int hf_lpp_nr_DL_AoD_Error_r16 = -1; /* NR_DL_AoD_Error_r16 */ +static int hf_lpp_nr_DL_PRS_BeamInfo_r17 = -1; /* NR_DL_PRS_BeamInfo_r16 */ static int hf_lpp_nr_AdType_r16_01 = -1; /* T_nr_AdType_r16_01 */ +static int hf_lpp_nr_PosCalcAssistanceRequest_r17_01 = -1; /* T_nr_PosCalcAssistanceRequest_r17_01 */ +static int hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_01 = -1; /* T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_01 */ +static int hf_lpp_nr_DL_PRS_BeamInfoRequest_r17 = -1; /* T_nr_DL_PRS_BeamInfoRequest_r17 */ +static int hf_lpp_pre_configured_AssistanceDataRequest_r17_01 = -1; /* T_pre_configured_AssistanceDataRequest_r17_01 */ static int hf_lpp_nr_DL_AoD_SignalMeasurementInformation_r16 = -1; /* NR_DL_AoD_SignalMeasurementInformation_r16 */ static int hf_lpp_nr_dl_AoD_LocationInformation_r16 = -1; /* NR_DL_AoD_LocationInformation_r16 */ +static int hf_lpp_nr_DL_AoD_SignalMeasurementInstances_r17 = -1; /* SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_SignalMeasurementInformation_r16 */ +static int hf_lpp_nr_DL_AoD_SignalMeasurementInstances_r17_item = -1; /* NR_DL_AoD_SignalMeasurementInformation_r16 */ +static int hf_lpp_nr_DL_AoD_LocationInformationInstances_r17 = -1; /* SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_LocationInformation_r16 */ +static int hf_lpp_nr_DL_AoD_LocationInformationInstances_r17_item = -1; /* NR_DL_AoD_LocationInformation_r16 */ static int hf_lpp_nr_DL_AoD_MeasList_r16 = -1; /* NR_DL_AoD_MeasList_r16 */ static int hf_lpp_NR_DL_AoD_MeasList_r16_item = -1; /* NR_DL_AoD_MeasElement_r16 */ static int hf_lpp_nr_DL_PRS_RxBeamIndex_r16 = -1; /* INTEGER_1_8 */ static int hf_lpp_nr_DL_AoD_AdditionalMeasurements_r16 = -1; /* NR_DL_AoD_AdditionalMeasurements_r16 */ +static int hf_lpp_nr_los_nlos_Indicator_r17_01 = -1; /* T_nr_los_nlos_Indicator_r17_01 */ +static int hf_lpp_nr_DL_AoD_AdditionalMeasurementsExt_r17 = -1; /* NR_DL_AoD_AdditionalMeasurementsExt_r17 */ static int hf_lpp_NR_DL_AoD_AdditionalMeasurements_r16_item = -1; /* NR_DL_AoD_AdditionalMeasurementElement_r16 */ +static int hf_lpp_NR_DL_AoD_AdditionalMeasurementsExt_r17_item = -1; /* NR_DL_AoD_AdditionalMeasurementElement_r17 */ static int hf_lpp_nr_DL_PRS_RSRP_ResultDiff_r16_01 = -1; /* INTEGER_0_30 */ +static int hf_lpp_nr_DL_PRS_ResourceID_r17 = -1; /* NR_DL_PRS_ResourceID_r16 */ +static int hf_lpp_nr_TimeStamp_r17 = -1; /* NR_TimeStamp_r16 */ +static int hf_lpp_nr_DL_PRS_RSRP_ResultDiff_r17 = -1; /* INTEGER_0_30 */ +static int hf_lpp_nr_DL_PRS_RxBeamIndex_r17 = -1; /* INTEGER_1_8 */ static int hf_lpp_measurementReferenceTime_r16_01 = -1; /* T_measurementReferenceTime_r16_01 */ static int hf_lpp_sfn_time_r16 = -1; /* NR_TimeStamp_r16 */ static int hf_lpp_nr_DL_AoD_ReportConfig_r16 = -1; /* NR_DL_AoD_ReportConfig_r16 */ +static int hf_lpp_multiMeasInSameReport_r17_01 = -1; /* T_multiMeasInSameReport_r17_01 */ static int hf_lpp_maxDL_PRS_RSRP_MeasurementsPerTRP_r16 = -1; /* INTEGER_1_8 */ +static int hf_lpp_maxDL_PRS_RSRP_MeasurementsPerTRP_r17 = -1; /* INTEGER_9_24 */ +static int hf_lpp_maxDL_PRS_RSRPP_MeasurementsPerTRP_r17 = -1; /* INTEGER_1_24 */ +static int hf_lpp_nr_los_nlos_IndicatorRequest_r17_01 = -1; /* T_nr_los_nlos_IndicatorRequest_r17_01 */ +static int hf_lpp_requestedDL_PRS_ProcessingSamples_r17_01 = -1; /* T_requestedDL_PRS_ProcessingSamples_r17_01 */ +static int hf_lpp_lowerRxBeamSweepingThan8_FR2_r17_02 = -1; /* T_lowerRxBeamSweepingThan8_FR2_r17_02 */ static int hf_lpp_nr_DL_AoD_Mode_r16 = -1; /* PositioningModes */ static int hf_lpp_nr_DL_AoD_PRS_Capability_r16 = -1; /* NR_DL_PRS_ResourcesCapability_r16 */ static int hf_lpp_nr_DL_AoD_MeasurementCapability_r16 = -1; /* NR_DL_AoD_MeasurementCapability_r16 */ +static int hf_lpp_nr_PosCalcAssistanceSupport_r17_01 = -1; /* T_nr_PosCalcAssistanceSupport_r17_01 */ +static int hf_lpp_nr_los_nlos_AssistanceDataSupport_r17_01 = -1; /* T_nr_los_nlos_AssistanceDataSupport_r17_01 */ +static int hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_01 = -1; /* T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_01 */ +static int hf_lpp_nr_DL_PRS_BeamInfoSup_r17 = -1; /* T_nr_DL_PRS_BeamInfoSup_r17 */ +static int hf_lpp_dl_PRS_ResourcePrioritySubset_Sup_r17 = -1; /* T_dl_PRS_ResourcePrioritySubset_Sup_r17 */ +static int hf_lpp_nr_DL_AoD_On_Demand_DL_PRS_Support_r17 = -1; /* NR_On_Demand_DL_PRS_Support_r17 */ +static int hf_lpp_nr_los_nlos_IndicatorSupport_r17_01 = -1; /* T_nr_los_nlos_IndicatorSupport_r17_01 */ +static int hf_lpp_nr_dl_prs_AssistanceDataValidity_r17_01 = -1; /* T_nr_dl_prs_AssistanceDataValidity_r17_01 */ +static int hf_lpp_multiMeasInSameMeasReport_r17_01 = -1; /* T_multiMeasInSameMeasReport_r17_01 */ +static int hf_lpp_mg_ActivationRequest_r17_01 = -1; /* T_mg_ActivationRequest_r17_01 */ static int hf_lpp_maxDL_PRS_RSRP_MeasurementFR1_r16 = -1; /* INTEGER_1_8 */ static int hf_lpp_maxDL_PRS_RSRP_MeasurementFR2_r16 = -1; /* INTEGER_1_8 */ static int hf_lpp_dl_AoD_MeasCapabilityBandList_r16 = -1; /* SEQUENCE_SIZE_1_nrMaxBands_r16_OF_DL_AoD_MeasCapabilityPerBand_r16 */ static int hf_lpp_dl_AoD_MeasCapabilityBandList_r16_item = -1; /* DL_AoD_MeasCapabilityPerBand_r16 */ +static int hf_lpp_maxDL_PRS_RSRP_MeasurementFR1_r17 = -1; /* T_maxDL_PRS_RSRP_MeasurementFR1_r17 */ +static int hf_lpp_maxDL_PRS_RSRP_MeasurementFR2_r17 = -1; /* T_maxDL_PRS_RSRP_MeasurementFR2_r17 */ static int hf_lpp_simul_NR_DL_AoD_DL_TDOA_r16 = -1; /* T_simul_NR_DL_AoD_DL_TDOA_r16 */ static int hf_lpp_simul_NR_DL_AoD_Multi_RTT_r16 = -1; /* T_simul_NR_DL_AoD_Multi_RTT_r16 */ +static int hf_lpp_maxDL_PRS_FirstPathRSRP_MeasPerTRP_r17 = -1; /* T_maxDL_PRS_FirstPathRSRP_MeasPerTRP_r17 */ +static int hf_lpp_dl_PRS_MeasRRC_Inactive_r17_01 = -1; /* T_dl_PRS_MeasRRC_Inactive_r17_01 */ static int hf_lpp_locationServerErrorCauses_r16_02 = -1; /* NR_DL_AoD_LocationServerErrorCauses_r16 */ static int hf_lpp_targetDeviceErrorCauses_r16_02 = -1; /* NR_DL_AoD_TargetDeviceErrorCauses_r16 */ static int hf_lpp_cause_r16_04 = -1; /* T_cause_r16_04 */ static int hf_lpp_cause_r16_05 = -1; /* T_cause_r16_05 */ static int hf_lpp_nr_Multi_RTT_Error_r16 = -1; /* NR_Multi_RTT_Error_r16 */ static int hf_lpp_nr_AdType_r16_02 = -1; /* T_nr_AdType_r16_02 */ +static int hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_02 = -1; /* T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_02 */ +static int hf_lpp_pre_configured_AssistanceDataRequest_r17_02 = -1; /* T_pre_configured_AssistanceDataRequest_r17_02 */ static int hf_lpp_nr_Multi_RTT_SignalMeasurementInformation_r16 = -1; /* NR_Multi_RTT_SignalMeasurementInformation_r16 */ +static int hf_lpp_nr_Multi_RTT_SignalMeasurementInstances_r17 = -1; /* SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_Multi_RTT_SignalMeasurementInformation_r16 */ +static int hf_lpp_nr_Multi_RTT_SignalMeasurementInstances_r17_item = -1; /* NR_Multi_RTT_SignalMeasurementInformation_r16 */ static int hf_lpp_nr_Multi_RTT_MeasList_r16 = -1; /* NR_Multi_RTT_MeasList_r16 */ static int hf_lpp_nr_NTA_Offset_r16 = -1; /* T_nr_NTA_Offset_r16 */ +static int hf_lpp_nr_SRS_TxTEG_Set_r17 = -1; /* SEQUENCE_SIZE_1_maxTxTEG_Sets_r17_OF_NR_SRS_TxTEG_Element_r17 */ +static int hf_lpp_nr_SRS_TxTEG_Set_r17_item = -1; /* NR_SRS_TxTEG_Element_r17 */ static int hf_lpp_NR_Multi_RTT_MeasList_r16_item = -1; /* NR_Multi_RTT_MeasElement_r16 */ static int hf_lpp_nr_UE_RxTxTimeDiff_r16 = -1; /* T_nr_UE_RxTxTimeDiff_r16 */ static int hf_lpp_nr_Multi_RTT_AdditionalMeasurements_r16 = -1; /* NR_Multi_RTT_AdditionalMeasurements_r16 */ +static int hf_lpp_nr_UE_RxTx_TEG_Info_r17 = -1; /* NR_UE_RxTx_TEG_Info_r17 */ +static int hf_lpp_nr_los_nlos_Indicator_r17_02 = -1; /* T_nr_los_nlos_Indicator_r17_02 */ +static int hf_lpp_nr_Multi_RTT_AdditionalMeasurementsExt_r17 = -1; /* NR_Multi_RTT_AdditionalMeasurementsExt_r17 */ static int hf_lpp_NR_Multi_RTT_AdditionalMeasurements_r16_item = -1; /* NR_Multi_RTT_AdditionalMeasurementElement_r16 */ +static int hf_lpp_NR_Multi_RTT_AdditionalMeasurementsExt_r17_item = -1; /* NR_Multi_RTT_AdditionalMeasurementElement_r16 */ static int hf_lpp_nr_UE_RxTxTimeDiffAdditional_r16 = -1; /* T_nr_UE_RxTxTimeDiffAdditional_r16 */ +static int hf_lpp_nr_UE_Tx_TEG_ID_r17 = -1; /* INTEGER_0_maxNumOfTxTEGs_1_r17 */ +static int hf_lpp_carrierFreq_r17 = -1; /* T_carrierFreq_r17 */ +static int hf_lpp_absoluteFrequencyPointA_r17 = -1; /* ARFCN_ValueNR_r15 */ +static int hf_lpp_offsetToPointA_r17 = -1; /* INTEGER_0_2199 */ +static int hf_lpp_srs_PosResourceList_r17 = -1; /* T_srs_PosResourceList_r17 */ +static int hf_lpp_srs_PosResourceList_r17_item = -1; /* INTEGER_0_maxNumOfSRS_PosResources_1_r17 */ +static int hf_lpp_case1_r17 = -1; /* T_case1_r17 */ +static int hf_lpp_nr_UE_RxTx_TEG_ID_r17 = -1; /* INTEGER_0_maxNumOfRxTxTEGs_1_r17 */ +static int hf_lpp_case2_r17 = -1; /* T_case2_r17 */ +static int hf_lpp_nr_UE_Tx_TEG_Index_r17 = -1; /* INTEGER_1_maxTxTEG_Sets_r17 */ +static int hf_lpp_case3_r17 = -1; /* T_case3_r17 */ static int hf_lpp_nr_UE_RxTxTimeDiffMeasurementInfoRequest_r16 = -1; /* T_nr_UE_RxTxTimeDiffMeasurementInfoRequest_r16 */ static int hf_lpp_nr_RequestedMeasurements_r16_01 = -1; /* T_nr_RequestedMeasurements_r16_01 */ static int hf_lpp_nr_Multi_RTT_ReportConfig_r16 = -1; /* NR_Multi_RTT_ReportConfig_r16 */ static int hf_lpp_additionalPaths_r16_01 = -1; /* T_additionalPaths_r16_01 */ +static int hf_lpp_nr_UE_RxTxTEG_Request_r17 = -1; /* T_nr_UE_RxTxTEG_Request_r17 */ +static int hf_lpp_measureSameDL_PRS_ResourceWithDifferentRxTxTEGs_r17 = -1; /* T_measureSameDL_PRS_ResourceWithDifferentRxTxTEGs_r17 */ +static int hf_lpp_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_02 = -1; /* T_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_02 */ +static int hf_lpp_requestedDL_PRS_ProcessingSamples_r17_02 = -1; /* T_requestedDL_PRS_ProcessingSamples_r17_02 */ +static int hf_lpp_nr_los_nlos_IndicatorRequest_r17_02 = -1; /* T_nr_los_nlos_IndicatorRequest_r17_02 */ +static int hf_lpp_additionalPathsExt_r17_01 = -1; /* T_additionalPathsExt_r17_01 */ +static int hf_lpp_additionalPathsDL_PRS_RSRP_Request_r17_01 = -1; /* T_additionalPathsDL_PRS_RSRP_Request_r17_01 */ +static int hf_lpp_multiMeasInSameReport_r17_02 = -1; /* T_multiMeasInSameReport_r17_02 */ +static int hf_lpp_lowerRxBeamSweepingThan8_FR2_r17_03 = -1; /* T_lowerRxBeamSweepingThan8_FR2_r17_03 */ static int hf_lpp_maxDL_PRS_RxTxTimeDiffMeasPerTRP_r16 = -1; /* INTEGER_1_4 */ static int hf_lpp_nr_Multi_RTT_PRS_Capability_r16 = -1; /* NR_DL_PRS_ResourcesCapability_r16 */ static int hf_lpp_nr_Multi_RTT_MeasurementCapability_r16 = -1; /* NR_Multi_RTT_MeasurementCapability_r16 */ static int hf_lpp_additionalPathsReport_r16_01 = -1; /* T_additionalPathsReport_r16_01 */ static int hf_lpp_periodicalReporting_r16_02 = -1; /* T_periodicalReporting_r16_01 */ +static int hf_lpp_ten_ms_unit_ResponseTime_r17_02 = -1; /* T_ten_ms_unit_ResponseTime_r17_01 */ +static int hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_02 = -1; /* T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_02 */ +static int hf_lpp_nr_Multi_RTT_On_Demand_DL_PRS_Support_r17 = -1; /* NR_On_Demand_DL_PRS_Support_r17 */ +static int hf_lpp_nr_UE_RxTx_TEG_ID_ReportingSupport_r17 = -1; /* T_nr_UE_RxTx_TEG_ID_ReportingSupport_r17 */ +static int hf_lpp_nr_los_nlos_IndicatorSupport_r17_02 = -1; /* T_nr_los_nlos_IndicatorSupport_r17_02 */ +static int hf_lpp_additionalPathsExtSupport_r17_01 = -1; /* T_additionalPathsExtSupport_r17_01 */ +static int hf_lpp_nr_dl_prs_AssistanceDataValidity_r17_02 = -1; /* T_nr_dl_prs_AssistanceDataValidity_r17_02 */ +static int hf_lpp_multiMeasInSameMeasReport_r17_02 = -1; /* T_multiMeasInSameMeasReport_r17_02 */ +static int hf_lpp_mg_ActivationRequest_r17_02 = -1; /* T_mg_ActivationRequest_r17_02 */ static int hf_lpp_maxNrOfRx_TX_MeasFR1_r16 = -1; /* INTEGER_1_4 */ static int hf_lpp_maxNrOfRx_TX_MeasFR2_r16 = -1; /* INTEGER_1_4 */ static int hf_lpp_supportOfRSRP_MeasFR1_r16 = -1; /* T_supportOfRSRP_MeasFR1_r16 */ static int hf_lpp_supportOfRSRP_MeasFR2_r16 = -1; /* T_supportOfRSRP_MeasFR2_r16 */ static int hf_lpp_srs_AssocPRS_MultiLayersFR1_r16 = -1; /* T_srs_AssocPRS_MultiLayersFR1_r16 */ static int hf_lpp_srs_AssocPRS_MultiLayersFR2_r16 = -1; /* T_srs_AssocPRS_MultiLayersFR2_r16 */ +static int hf_lpp_multi_RTT_MeasCapabilityBandList_r17 = -1; /* SEQUENCE_SIZE_1_nrMaxBands_r16_OF_Multi_RTT_MeasCapabilityPerBand_r17 */ +static int hf_lpp_multi_RTT_MeasCapabilityBandList_r17_item = -1; /* Multi_RTT_MeasCapabilityPerBand_r17 */ +static int hf_lpp_supportOfDL_PRS_FirstPathRSRP_r17_01 = -1; /* T_supportOfDL_PRS_FirstPathRSRP_r17_01 */ +static int hf_lpp_dl_PRS_MeasRRC_Inactive_r17_02 = -1; /* T_dl_PRS_MeasRRC_Inactive_r17_02 */ static int hf_lpp_locationServerErrorCauses_r16_03 = -1; /* NR_Multi_RTT_LocationServerErrorCauses_r16 */ static int hf_lpp_targetDeviceErrorCauses_r16_03 = -1; /* NR_Multi_RTT_TargetDeviceErrorCauses_r16 */ static int hf_lpp_cause_r16_06 = -1; /* T_cause_r16_06 */ @@ -2267,6 +2688,8 @@ static int hf_lpp_T_adType_r14_nprs = -1; static int hf_lpp_T_otdoa_Mode_ue_assisted = -1; static int hf_lpp_T_otdoa_Mode_ue_assisted_NB_r14 = -1; static int hf_lpp_T_otdoa_Mode_ue_assisted_NB_TDD_r15 = -1; +static int hf_lpp_T_orbit_IntegrityReq_r17_correlationTimeReq = -1; +static int hf_lpp_T_stec_IntegrityReq_r17_correlationTimeReq = -1; static int hf_lpp_T_periodicAssistanceData_r15_solicited = -1; static int hf_lpp_T_periodicAssistanceData_r15_unsolicited = -1; static int hf_lpp_T_ionoModel_klobuchar = -1; @@ -2300,6 +2723,8 @@ static int hf_lpp_T_utc_Model_model_2 = -1; static int hf_lpp_T_utc_Model_model_3 = -1; static int hf_lpp_T_utc_Model_model_4 = -1; static int hf_lpp_T_utc_Model_model_5 = -1; +static int hf_lpp_T_orbit_IntegritySup_r17_correlationTimeSup = -1; +static int hf_lpp_T_stec_IntegritySup_r17_correlationTimeSup = -1; static int hf_lpp_T_gnss_ids_gps = -1; static int hf_lpp_T_gnss_ids_sbas = -1; static int hf_lpp_T_gnss_ids_qzss = -1; @@ -2357,12 +2782,41 @@ static int hf_lpp_T_nr_ECID_MeasSupported_r16_csirsrpSup = -1; static int hf_lpp_T_nr_ECID_MeasSupported_r16_csirsrqSup = -1; static int hf_lpp_T_nr_AdType_r16_dl_prs = -1; static int hf_lpp_T_nr_AdType_r16_posCalc = -1; +static int hf_lpp_T_nr_PosCalcAssistanceRequest_r17_trpLoc = -1; +static int hf_lpp_T_nr_PosCalcAssistanceRequest_r17_beamInfo = -1; +static int hf_lpp_T_nr_PosCalcAssistanceRequest_r17_rtdInfo = -1; +static int hf_lpp_T_nr_PosCalcAssistanceRequest_r17_losNlosInfo = -1; +static int hf_lpp_T_nr_PosCalcAssistanceRequest_r17_trpTEG_Info = -1; static int hf_lpp_T_nr_RequestedMeasurements_r16_prsrsrpReq = -1; +static int hf_lpp_T_nr_RequestedMeasurements_r16_firstPathRsrpReq_r17 = -1; +static int hf_lpp_T_nr_PosCalcAssistanceSupport_r17_trpLocSup = -1; +static int hf_lpp_T_nr_PosCalcAssistanceSupport_r17_beamInfoSup = -1; +static int hf_lpp_T_nr_PosCalcAssistanceSupport_r17_rtdInfoSup = -1; +static int hf_lpp_T_nr_PosCalcAssistanceSupport_r17_trpTEG_InfoSup = -1; +static int hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_eAoD = -1; +static int hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_eAoA = -1; static int hf_lpp_T_nr_AdType_r16_01_dl_prs = -1; static int hf_lpp_T_nr_AdType_r16_01_posCalc = -1; +static int hf_lpp_T_nr_PosCalcAssistanceRequest_r17_01_trpLoc = -1; +static int hf_lpp_T_nr_PosCalcAssistanceRequest_r17_01_beamInfo = -1; +static int hf_lpp_T_nr_PosCalcAssistanceRequest_r17_01_rtdInfo = -1; +static int hf_lpp_T_nr_PosCalcAssistanceRequest_r17_01_beamAntInfo = -1; +static int hf_lpp_T_nr_PosCalcAssistanceRequest_r17_01_losNlosInfo = -1; +static int hf_lpp_T_nr_PosCalcAssistanceSupport_r17_01_trpLocSup = -1; +static int hf_lpp_T_nr_PosCalcAssistanceSupport_r17_01_beamInfoSup = -1; +static int hf_lpp_T_nr_PosCalcAssistanceSupport_r17_01_rtdInfoSup = -1; +static int hf_lpp_T_nr_PosCalcAssistanceSupport_r17_01_beamAntInfoSup = -1; +static int hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_01_eAoD = -1; +static int hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_01_eAoA = -1; static int hf_lpp_T_nr_AdType_r16_02_dl_prs = -1; static int hf_lpp_T_nr_AdType_r16_02_ul_srs = -1; static int hf_lpp_T_nr_RequestedMeasurements_r16_01_prsrsrpReq = -1; +static int hf_lpp_T_nr_RequestedMeasurements_r16_01_firstPathRsrpReq_r17 = -1; +static int hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_02_eAoD = -1; +static int hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_02_eAoA = -1; +static int hf_lpp_T_nr_UE_RxTx_TEG_ID_ReportingSupport_r17_case1 = -1; +static int hf_lpp_T_nr_UE_RxTx_TEG_ID_ReportingSupport_r17_case2 = -1; +static int hf_lpp_T_nr_UE_RxTx_TEG_ID_ReportingSupport_r17_case3 = -1; static int dummy_hf_lpp_eag_field = -1; /* never registered */ /*--- End of included file: packet-lpp-hf.c ---*/ @@ -2479,6 +2933,9 @@ static gint ett_lpp_Polygon = -1; static gint ett_lpp_PolygonPoints = -1; static gint ett_lpp_PositioningModes = -1; static gint ett_lpp_T_posModes = -1; +static gint ett_lpp_ScheduledLocationTimeSupport_r17 = -1; +static gint ett_lpp_ScheduledLocationTimeSupportPerMode_r17 = -1; +static gint ett_lpp_T_gnssTime_r17 = -1; static gint ett_lpp_VelocityTypes = -1; static gint ett_lpp_CommonIEsRequestCapabilities = -1; static gint ett_lpp_T_lpp_message_segmentation_req_r14 = -1; @@ -2497,16 +2954,29 @@ static gint ett_lpp_VerticalAccuracyExt_r15 = -1; static gint ett_lpp_ResponseTime = -1; static gint ett_lpp_ResponseTimeNB_r14 = -1; static gint ett_lpp_MessageSizeLimitNB_r14 = -1; +static gint ett_lpp_ScheduledLocationTime_r17 = -1; +static gint ett_lpp_T_gnssTime_r17_01 = -1; +static gint ett_lpp_T_networkTime_r17 = -1; +static gint ett_lpp_T_e_utraTime_r17_01 = -1; +static gint ett_lpp_T_nrTime_r17_01 = -1; +static gint ett_lpp_T_nr_Slot_r17 = -1; static gint ett_lpp_CommonIEsProvideLocationInformation = -1; static gint ett_lpp_LocationCoordinates = -1; static gint ett_lpp_Velocity = -1; static gint ett_lpp_LocationError = -1; static gint ett_lpp_LocationSource_r13 = -1; +static gint ett_lpp_IntegrityInfo_r17 = -1; static gint ett_lpp_CommonIEsAbort = -1; static gint ett_lpp_CommonIEsError = -1; +static gint ett_lpp_AreaID_CellList_r17 = -1; +static gint ett_lpp_NR_Cell_IDs_r17 = -1; static gint ett_lpp_DL_PRS_ID_Info_r16 = -1; static gint ett_lpp_SEQUENCE_SIZE_1_nrMaxResourceIDs_r16_OF_NR_DL_PRS_ResourceID_r16 = -1; +static gint ett_lpp_LCS_GCS_TranslationParameter_r16 = -1; +static gint ett_lpp_LOS_NLOS_Indicator_r17 = -1; +static gint ett_lpp_T_indicator_r17 = -1; static gint ett_lpp_NR_AdditionalPathList_r16 = -1; +static gint ett_lpp_NR_AdditionalPathListExt_r17 = -1; static gint ett_lpp_NR_AdditionalPath_r16 = -1; static gint ett_lpp_T_nr_RelativeTimeDifference_r16 = -1; static gint ett_lpp_NR_DL_PRS_AssistanceData_r16 = -1; @@ -2517,13 +2987,21 @@ static gint ett_lpp_SEQUENCE_SIZE_1_nrMaxTRPsPerFreq_r16_OF_NR_DL_PRS_Assistance static gint ett_lpp_NR_DL_PRS_AssistanceDataPerTRP_r16 = -1; static gint ett_lpp_NR_DL_PRS_PositioningFrequencyLayer_r16 = -1; static gint ett_lpp_NR_DL_PRS_SFN0_Offset_r16 = -1; +static gint ett_lpp_NR_DL_PRS_ExpectedAoD_or_AoA_r17 = -1; +static gint ett_lpp_T_expectedAoD_r17 = -1; +static gint ett_lpp_T_expectedAoA_r17 = -1; static gint ett_lpp_NR_DL_PRS_BeamInfo_r16 = -1; static gint ett_lpp_NR_DL_PRS_BeamInfoPerFreqLayer_r16 = -1; static gint ett_lpp_NR_DL_PRS_BeamInfoPerTRP_r16 = -1; static gint ett_lpp_DL_PRS_BeamInfoSet_r16 = -1; static gint ett_lpp_DL_PRS_BeamInfoResourceSet_r16 = -1; static gint ett_lpp_DL_PRS_BeamInfoElement_r16 = -1; -static gint ett_lpp_LCS_GCS_TranslationParameter_r16 = -1; +static gint ett_lpp_NR_DL_PRS_ExpectedLOS_NLOS_Assistance_r17 = -1; +static gint ett_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerFreqLayer_r17 = -1; +static gint ett_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerTRP_r17 = -1; +static gint ett_lpp_T_nr_los_nlos_indicator_r17 = -1; +static gint ett_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17 = -1; +static gint ett_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17 = -1; static gint ett_lpp_NR_DL_PRS_Info_r16 = -1; static gint ett_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_NR_DL_PRS_ResourceSet_r16 = -1; static gint ett_lpp_NR_DL_PRS_ResourceSet_r16 = -1; @@ -2541,12 +3019,21 @@ static gint ett_lpp_T_scs15_r16 = -1; static gint ett_lpp_T_scs30_r16 = -1; static gint ett_lpp_T_scs60_r16 = -1; static gint ett_lpp_T_scs120_r16 = -1; +static gint ett_lpp_DL_PRS_ResourcePrioritySubset_r17 = -1; +static gint ett_lpp_NR_DL_PRSResourcePriorityItem_r17 = -1; static gint ett_lpp_NR_DL_PRS_ProcessingCapability_r16 = -1; static gint ett_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_PRS_ProcessingCapabilityPerBand_r16 = -1; static gint ett_lpp_PRS_ProcessingCapabilityPerBand_r16 = -1; static gint ett_lpp_T_supportedBandwidthPRS_r16 = -1; static gint ett_lpp_T_durationOfPRS_Processing_r16 = -1; static gint ett_lpp_T_maxNumOfDL_PRS_ResProcessedPerSlot_r16 = -1; +static gint ett_lpp_SEQUENCE_SIZE_1_3_OF_PRS_ProcessingCapabilityOutsideMGinPPWperType_r17 = -1; +static gint ett_lpp_T_durationOfPRS_Processing_RRC_Inactive_r17 = -1; +static gint ett_lpp_T_maxNumOfDL_PRS_ResProcessedPerSlot_RRC_Inactive_r17 = -1; +static gint ett_lpp_PRS_ProcessingCapabilityOutsideMGinPPWperType_r17 = -1; +static gint ett_lpp_T_ppw_durationOfPRS_Processing1_r17 = -1; +static gint ett_lpp_T_ppw_durationOfPRS_Processing2_r17 = -1; +static gint ett_lpp_T_ppw_maxNumOfDL_PRS_ResProcessedPerSlot_r17 = -1; static gint ett_lpp_NR_DL_PRS_QCL_ProcessingCapability_r16 = -1; static gint ett_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_DL_PRS_QCL_ProcessingCapabilityPerBand_r16 = -1; static gint ett_lpp_DL_PRS_QCL_ProcessingCapabilityPerBand_r16 = -1; @@ -2558,6 +3045,29 @@ static gint ett_lpp_DL_PRS_ResourcesBandCombination_r16 = -1; static gint ett_lpp_SEQUENCE_SIZE_1_maxSimultaneousBands_r16_OF_FreqBandIndicatorNR_r16 = -1; static gint ett_lpp_T_maxNrOfDL_PRS_ResourcesAcrossAllFL_TRP_ResourceSet_r16 = -1; static gint ett_lpp_T_fr1_FR2Mix_r16 = -1; +static gint ett_lpp_NR_DL_PRS_TRP_TEG_Info_r17 = -1; +static gint ett_lpp_NR_DL_PRS_TRP_TEG_InfoPerFreqLayer_r17 = -1; +static gint ett_lpp_NR_DL_PRS_TRP_TEG_InfoPerTRP_r17 = -1; +static gint ett_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_TEG_InfoPerResourceSet_r17 = -1; +static gint ett_lpp_DL_PRS_TEG_InfoPerResourceSet_r17 = -1; +static gint ett_lpp_DL_PRS_TEG_InfoElement_r17 = -1; +static gint ett_lpp_NR_On_Demand_DL_PRS_Configurations_r17 = -1; +static gint ett_lpp_SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_On_Demand_DL_PRS_Configuration_r17 = -1; +static gint ett_lpp_On_Demand_DL_PRS_Configuration_r17 = -1; +static gint ett_lpp_DL_PRS_Configuration_ID_r17 = -1; +static gint ett_lpp_NR_On_Demand_DL_PRS_Information_r17 = -1; +static gint ett_lpp_NR_On_Demand_DL_PRS_PerFreqLayer_r17 = -1; +static gint ett_lpp_DL_PRS_QCL_InformationReq_r17 = -1; +static gint ett_lpp_DL_PRS_QCL_InformationReqPerTRP_r17 = -1; +static gint ett_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_QCL_InfoReq_r17 = -1; +static gint ett_lpp_DL_PRS_QCL_InfoReq_r17 = -1; +static gint ett_lpp_T_dl_prs_QCL_InformationReq_r17 = -1; +static gint ett_lpp_NR_On_Demand_DL_PRS_Request_r17 = -1; +static gint ett_lpp_SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_DL_PRS_Configuration_ID_r17 = -1; +static gint ett_lpp_DL_PRS_StartTime_and_Duration_r17 = -1; +static gint ett_lpp_T_dl_prs_duration_r17 = -1; +static gint ett_lpp_NR_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17 = -1; +static gint ett_lpp_NR_On_Demand_DL_PRS_Support_r17 = -1; static gint ett_lpp_NR_PositionCalculationAssistance_r16 = -1; static gint ett_lpp_NR_RTD_Info_r16 = -1; static gint ett_lpp_ReferenceTRP_RTD_Info_r16 = -1; @@ -2578,6 +3088,15 @@ static gint ett_lpp_T_ssb_PositionsInBurst_r16 = -1; static gint ett_lpp_NR_TimeStamp_r16 = -1; static gint ett_lpp_T_nr_Slot_r16 = -1; static gint ett_lpp_NR_TimingQuality_r16 = -1; +static gint ett_lpp_NR_TRP_BeamAntennaInfo_r17 = -1; +static gint ett_lpp_NR_TRP_BeamAntennaInfoPerFreqLayer_r17 = -1; +static gint ett_lpp_NR_TRP_BeamAntennaInfoPerTRP_r17 = -1; +static gint ett_lpp_NR_TRP_BeamAntennaAngles_r17 = -1; +static gint ett_lpp_NR_TRP_BeamAntennaInfoAzimuthElevation_r17 = -1; +static gint ett_lpp_SEQUENCE_SIZE_1_1801_OF_ElevationElement_R17 = -1; +static gint ett_lpp_ElevationElement_R17 = -1; +static gint ett_lpp_SEQUENCE_SIZE_2_maxNumResourcesPerAngle_r17_OF_BeamPowerElement_r17 = -1; +static gint ett_lpp_BeamPowerElement_r17 = -1; static gint ett_lpp_NR_TRP_LocationInfo_r16 = -1; static gint ett_lpp_NR_TRP_LocationInfoPerFreqLayer_r16 = -1; static gint ett_lpp_SEQUENCE_SIZE_1_nrMaxTRPsPerFreq_r16_OF_TRP_LocationInfoElement_r16 = -1; @@ -2586,6 +3105,9 @@ static gint ett_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_Re static gint ett_lpp_DL_PRS_ResourceSets_TRP_Element_r16 = -1; static gint ett_lpp_SEQUENCE_SIZE_1_nrMaxResourcesPerSet_r16_OF_DL_PRS_Resource_ARP_Element_r16 = -1; static gint ett_lpp_DL_PRS_Resource_ARP_Element_r16 = -1; +static gint ett_lpp_NR_UE_TEG_Capability_r17 = -1; +static gint ett_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_NR_UE_TEG_ID_CapabilityPerBand_r17 = -1; +static gint ett_lpp_NR_UE_TEG_ID_CapabilityPerBand_r17 = -1; static gint ett_lpp_NR_UL_SRS_Capability_r16 = -1; static gint ett_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_SRS_CapabilityPerBand_r16 = -1; static gint ett_lpp_SEQUENCE_SIZE_1_nrMaxConfiguredBands_r16_OF_SRS_PosResourcesPerBand_r16 = -1; @@ -2593,6 +3115,8 @@ static gint ett_lpp_SRS_CapabilityPerBand_r16 = -1; static gint ett_lpp_OLPC_SRS_Pos_r16 = -1; static gint ett_lpp_SpatialRelationsSRS_Pos_r16 = -1; static gint ett_lpp_SRS_PosResourcesPerBand_r16 = -1; +static gint ett_lpp_PosSRS_RRC_Inactive_InInitialUL_BWP_r17 = -1; +static gint ett_lpp_PosSRS_RRC_Inactive_OutsideInitialUL_BWP_r17 = -1; static gint ett_lpp_ReferencePoint_r16 = -1; static gint ett_lpp_T_referencePointGeographicLocation_r16 = -1; static gint ett_lpp_RelativeLocation_r16 = -1; @@ -2694,6 +3218,8 @@ static gint ett_lpp_GNSS_SSR_ListOfCorrectionPoints_r16 = -1; static gint ett_lpp_SEQUENCE_SIZE_0_63_OF_RelativeLocationElement_r16 = -1; static gint ett_lpp_RelativeLocationElement_r16 = -1; static gint ett_lpp_GNSS_SSR_ArrayOfCorrectionPoints_r16 = -1; +static gint ett_lpp_GNSS_Integrity_ServiceParameters_r17 = -1; +static gint ett_lpp_GNSS_Integrity_ServiceAlert_r17 = -1; static gint ett_lpp_GNSS_TimeModelList = -1; static gint ett_lpp_GNSS_TimeModelElement = -1; static gint ett_lpp_GNSS_DifferentialCorrections = -1; @@ -2788,14 +3314,20 @@ static gint ett_lpp_FKP_Gradients_Element_r15 = -1; static gint ett_lpp_GNSS_SSR_OrbitCorrections_r15 = -1; static gint ett_lpp_SSR_OrbitCorrectionList_r15 = -1; static gint ett_lpp_SSR_OrbitCorrectionSatelliteElement_r15 = -1; +static gint ett_lpp_ORBIT_IntegrityParameters_r17 = -1; +static gint ett_lpp_SSR_IntegrityOrbitBounds_r17 = -1; +static gint ett_lpp_RAC_OrbitalErrorComponents_r17 = -1; static gint ett_lpp_GNSS_SSR_ClockCorrections_r15 = -1; static gint ett_lpp_SSR_ClockCorrectionList_r15 = -1; static gint ett_lpp_SSR_ClockCorrectionSatelliteElement_r15 = -1; +static gint ett_lpp_CLOCK_IntegrityParameters_r17 = -1; +static gint ett_lpp_SSR_IntegrityClockBounds_r17 = -1; static gint ett_lpp_GNSS_SSR_CodeBias_r15 = -1; static gint ett_lpp_SSR_CodeBiasSatList_r15 = -1; static gint ett_lpp_SSR_CodeBiasSatElement_r15 = -1; static gint ett_lpp_SSR_CodeBiasSignalList_r15 = -1; static gint ett_lpp_SSR_CodeBiasSignalElement_r15 = -1; +static gint ett_lpp_SSR_IntegrityCodeBiasBounds_r17 = -1; static gint ett_lpp_GNSS_SSR_URA_r16 = -1; static gint ett_lpp_SSR_URA_SatList_r16 = -1; static gint ett_lpp_SSR_URA_SatElement_r16 = -1; @@ -2804,9 +3336,12 @@ static gint ett_lpp_SSR_PhaseBiasSatList_r16 = -1; static gint ett_lpp_SSR_PhaseBiasSatElement_r16 = -1; static gint ett_lpp_SSR_PhaseBiasSignalList_r16 = -1; static gint ett_lpp_SSR_PhaseBiasSignalElement_r16 = -1; +static gint ett_lpp_SSR_IntegrityPhaseBiasBounds_r17 = -1; static gint ett_lpp_GNSS_SSR_STEC_Correction_r16 = -1; static gint ett_lpp_STEC_SatList_r16 = -1; static gint ett_lpp_STEC_SatElement_r16 = -1; +static gint ett_lpp_STEC_IntegrityParameters_r17 = -1; +static gint ett_lpp_STEC_IntegrityErrorBounds_r17 = -1; static gint ett_lpp_GNSS_SSR_GriddedCorrection_r16 = -1; static gint ett_lpp_GridList_r16 = -1; static gint ett_lpp_GridElement_r16 = -1; @@ -2814,6 +3349,8 @@ static gint ett_lpp_TropospericDelayCorrection_r16 = -1; static gint ett_lpp_STEC_ResidualSatList_r16 = -1; static gint ett_lpp_STEC_ResidualSatElement_r16 = -1; static gint ett_lpp_T_stecResidualCorrection_r16 = -1; +static gint ett_lpp_SSR_GriddedCorrectionIntegrityParameters_r17 = -1; +static gint ett_lpp_TropoDelayIntegrityErrorBounds_r17 = -1; static gint ett_lpp_NavIC_DifferentialCorrections_r16 = -1; static gint ett_lpp_NavIC_CorrectionListAutoNav_r16 = -1; static gint ett_lpp_NavIC_CorrectionElementAutoNav_r16 = -1; @@ -2835,6 +3372,8 @@ static gint ett_lpp_GNSS_EarthOrientationParametersReq = -1; static gint ett_lpp_GNSS_RTK_ReferenceStationInfoReq_r15 = -1; static gint ett_lpp_GNSS_RTK_AuxiliaryStationDataReq_r15 = -1; static gint ett_lpp_GNSS_SSR_CorrectionPointsReq_r16 = -1; +static gint ett_lpp_GNSS_Integrity_ServiceParametersReq_r17 = -1; +static gint ett_lpp_GNSS_Integrity_ServiceAlertReq_r17 = -1; static gint ett_lpp_GNSS_TimeModelListReq = -1; static gint ett_lpp_GNSS_TimeModelElementReq = -1; static gint ett_lpp_GNSS_DifferentialCorrectionsReq = -1; @@ -2863,11 +3402,13 @@ static gint ett_lpp_AUX_ReferenceStationID_Element_r15 = -1; static gint ett_lpp_GNSS_RTK_ResidualsReq_r15 = -1; static gint ett_lpp_GNSS_RTK_FKP_GradientsReq_r15 = -1; static gint ett_lpp_GNSS_SSR_OrbitCorrectionsReq_r15 = -1; +static gint ett_lpp_T_orbit_IntegrityReq_r17 = -1; static gint ett_lpp_GNSS_SSR_ClockCorrectionsReq_r15 = -1; static gint ett_lpp_GNSS_SSR_CodeBiasReq_r15 = -1; static gint ett_lpp_GNSS_SSR_URA_Req_r16 = -1; static gint ett_lpp_GNSS_SSR_PhaseBiasReq_r16 = -1; static gint ett_lpp_GNSS_SSR_STEC_CorrectionReq_r16 = -1; +static gint ett_lpp_T_stec_IntegrityReq_r17 = -1; static gint ett_lpp_GNSS_SSR_GriddedCorrectionReq_r16 = -1; static gint ett_lpp_NavIC_DifferentialCorrectionsReq_r16 = -1; static gint ett_lpp_NavIC_GridModelReq_r16 = -1; @@ -2891,6 +3432,7 @@ static gint ett_lpp_GNSS_SgnMeasElement = -1; static gint ett_lpp_GNSS_SatMeasList = -1; static gint ett_lpp_GNSS_SatMeasElement = -1; static gint ett_lpp_GNSS_LocationInformation = -1; +static gint ett_lpp_HA_GNSS_Metrics_r17 = -1; static gint ett_lpp_A_GNSS_RequestLocationInformation = -1; static gint ett_lpp_GNSS_PositioningInstructions = -1; static gint ett_lpp_A_GNSS_ProvideCapabilities = -1; @@ -2907,6 +3449,8 @@ static gint ett_lpp_T_ionoModel = -1; static gint ett_lpp_GNSS_EarthOrientationParametersSupport = -1; static gint ett_lpp_GNSS_RTK_ReferenceStationInfoSupport_r15 = -1; static gint ett_lpp_GNSS_RTK_AuxiliaryStationDataSupport_r15 = -1; +static gint ett_lpp_GNSS_Integrity_ServiceParametersSupport_r17 = -1; +static gint ett_lpp_GNSS_Integrity_ServiceAlertSupport_r17 = -1; static gint ett_lpp_GNSS_GenericAssistanceDataSupport = -1; static gint ett_lpp_GNSS_GenericAssistDataSupportElement = -1; static gint ett_lpp_GNSS_TimeModelListSupport = -1; @@ -2930,11 +3474,13 @@ static gint ett_lpp_GNSS_RTK_MAC_CorrectionDifferencesSupport_r15 = -1; static gint ett_lpp_GNSS_RTK_ResidualsSupport_r15 = -1; static gint ett_lpp_GNSS_RTK_FKP_GradientsSupport_r15 = -1; static gint ett_lpp_GNSS_SSR_OrbitCorrectionsSupport_r15 = -1; +static gint ett_lpp_T_orbit_IntegritySup_r17 = -1; static gint ett_lpp_GNSS_SSR_ClockCorrectionsSupport_r15 = -1; static gint ett_lpp_GNSS_SSR_CodeBiasSupport_r15 = -1; static gint ett_lpp_GNSS_SSR_URA_Support_r16 = -1; static gint ett_lpp_GNSS_SSR_PhaseBiasSupport_r16 = -1; static gint ett_lpp_GNSS_SSR_STEC_CorrectionSupport_r16 = -1; +static gint ett_lpp_T_stec_IntegritySup_r17 = -1; static gint ett_lpp_GNSS_SSR_GriddedCorrectionSupport_r16 = -1; static gint ett_lpp_NavIC_DifferentialCorrectionsSupport_r16 = -1; static gint ett_lpp_NavIC_GridModelSupport_r16 = -1; @@ -3084,21 +3630,34 @@ static gint ett_lpp_NR_ECID_TargetDeviceErrorCauses_r16 = -1; static gint ett_lpp_NR_DL_TDOA_ProvideAssistanceData_r16 = -1; static gint ett_lpp_NR_DL_TDOA_RequestAssistanceData_r16 = -1; static gint ett_lpp_T_nr_AdType_r16 = -1; +static gint ett_lpp_T_nr_PosCalcAssistanceRequest_r17 = -1; static gint ett_lpp_NR_DL_TDOA_ProvideLocationInformation_r16 = -1; +static gint ett_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_SignalMeasurementInformation_r16 = -1; +static gint ett_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_LocationInformation_r16 = -1; static gint ett_lpp_NR_DL_TDOA_SignalMeasurementInformation_r16 = -1; static gint ett_lpp_NR_DL_TDOA_MeasList_r16 = -1; static gint ett_lpp_NR_DL_TDOA_MeasElement_r16 = -1; static gint ett_lpp_T_nr_RSTD_r16 = -1; +static gint ett_lpp_T_nr_los_nlos_Indicator_r17 = -1; static gint ett_lpp_NR_DL_TDOA_AdditionalMeasurements_r16 = -1; +static gint ett_lpp_NR_DL_TDOA_AdditionalMeasurementsExt_r17 = -1; static gint ett_lpp_NR_DL_TDOA_AdditionalMeasurementElement_r16 = -1; static gint ett_lpp_T_nr_RSTD_ResultDiff_r16 = -1; static gint ett_lpp_NR_DL_TDOA_LocationInformation_r16 = -1; static gint ett_lpp_T_measurementReferenceTime_r16 = -1; static gint ett_lpp_NR_DL_TDOA_RequestLocationInformation_r16 = -1; static gint ett_lpp_T_nr_RequestedMeasurements_r16 = -1; +static gint ett_lpp_T_nr_los_nlos_IndicatorRequest_r17 = -1; static gint ett_lpp_NR_DL_TDOA_ReportConfig_r16 = -1; static gint ett_lpp_NR_DL_TDOA_ProvideCapabilities_r16 = -1; +static gint ett_lpp_T_nr_PosCalcAssistanceSupport_r17 = -1; +static gint ett_lpp_T_nr_los_nlos_AssistanceDataSupport_r17 = -1; +static gint ett_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17 = -1; +static gint ett_lpp_T_nr_los_nlos_IndicatorSupport_r17 = -1; +static gint ett_lpp_T_nr_dl_prs_AssistanceDataValidity_r17 = -1; static gint ett_lpp_NR_DL_TDOA_MeasurementCapability_r16 = -1; +static gint ett_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_DL_TDOA_MeasCapabilityPerBand_r17 = -1; +static gint ett_lpp_DL_TDOA_MeasCapabilityPerBand_r17 = -1; static gint ett_lpp_NR_DL_TDOA_RequestCapabilities_r16 = -1; static gint ett_lpp_NR_DL_TDOA_Error_r16 = -1; static gint ett_lpp_NR_DL_TDOA_LocationServerErrorCauses_r16 = -1; @@ -3106,17 +3665,29 @@ static gint ett_lpp_NR_DL_TDOA_TargetDeviceErrorCauses_r16 = -1; static gint ett_lpp_NR_DL_AoD_ProvideAssistanceData_r16 = -1; static gint ett_lpp_NR_DL_AoD_RequestAssistanceData_r16 = -1; static gint ett_lpp_T_nr_AdType_r16_01 = -1; +static gint ett_lpp_T_nr_PosCalcAssistanceRequest_r17_01 = -1; static gint ett_lpp_NR_DL_AoD_ProvideLocationInformation_r16 = -1; +static gint ett_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_SignalMeasurementInformation_r16 = -1; +static gint ett_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_LocationInformation_r16 = -1; static gint ett_lpp_NR_DL_AoD_SignalMeasurementInformation_r16 = -1; static gint ett_lpp_NR_DL_AoD_MeasList_r16 = -1; static gint ett_lpp_NR_DL_AoD_MeasElement_r16 = -1; +static gint ett_lpp_T_nr_los_nlos_Indicator_r17_01 = -1; static gint ett_lpp_NR_DL_AoD_AdditionalMeasurements_r16 = -1; +static gint ett_lpp_NR_DL_AoD_AdditionalMeasurementsExt_r17 = -1; static gint ett_lpp_NR_DL_AoD_AdditionalMeasurementElement_r16 = -1; +static gint ett_lpp_NR_DL_AoD_AdditionalMeasurementElement_r17 = -1; static gint ett_lpp_NR_DL_AoD_LocationInformation_r16 = -1; static gint ett_lpp_T_measurementReferenceTime_r16_01 = -1; static gint ett_lpp_NR_DL_AoD_RequestLocationInformation_r16 = -1; static gint ett_lpp_NR_DL_AoD_ReportConfig_r16 = -1; +static gint ett_lpp_T_nr_los_nlos_IndicatorRequest_r17_01 = -1; static gint ett_lpp_NR_DL_AoD_ProvideCapabilities_r16 = -1; +static gint ett_lpp_T_nr_PosCalcAssistanceSupport_r17_01 = -1; +static gint ett_lpp_T_nr_los_nlos_AssistanceDataSupport_r17_01 = -1; +static gint ett_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_01 = -1; +static gint ett_lpp_T_nr_los_nlos_IndicatorSupport_r17_01 = -1; +static gint ett_lpp_T_nr_dl_prs_AssistanceDataValidity_r17_01 = -1; static gint ett_lpp_NR_DL_AoD_MeasurementCapability_r16 = -1; static gint ett_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_DL_AoD_MeasCapabilityPerBand_r16 = -1; static gint ett_lpp_DL_AoD_MeasCapabilityPerBand_r16 = -1; @@ -3128,18 +3699,36 @@ static gint ett_lpp_NR_Multi_RTT_ProvideAssistanceData_r16 = -1; static gint ett_lpp_NR_Multi_RTT_RequestAssistanceData_r16 = -1; static gint ett_lpp_T_nr_AdType_r16_02 = -1; static gint ett_lpp_NR_Multi_RTT_ProvideLocationInformation_r16 = -1; +static gint ett_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_Multi_RTT_SignalMeasurementInformation_r16 = -1; static gint ett_lpp_NR_Multi_RTT_SignalMeasurementInformation_r16 = -1; +static gint ett_lpp_SEQUENCE_SIZE_1_maxTxTEG_Sets_r17_OF_NR_SRS_TxTEG_Element_r17 = -1; static gint ett_lpp_NR_Multi_RTT_MeasList_r16 = -1; static gint ett_lpp_NR_Multi_RTT_MeasElement_r16 = -1; static gint ett_lpp_T_nr_UE_RxTxTimeDiff_r16 = -1; +static gint ett_lpp_T_nr_los_nlos_Indicator_r17_02 = -1; static gint ett_lpp_NR_Multi_RTT_AdditionalMeasurements_r16 = -1; +static gint ett_lpp_NR_Multi_RTT_AdditionalMeasurementsExt_r17 = -1; static gint ett_lpp_NR_Multi_RTT_AdditionalMeasurementElement_r16 = -1; static gint ett_lpp_T_nr_UE_RxTxTimeDiffAdditional_r16 = -1; +static gint ett_lpp_NR_SRS_TxTEG_Element_r17 = -1; +static gint ett_lpp_T_carrierFreq_r17 = -1; +static gint ett_lpp_T_srs_PosResourceList_r17 = -1; +static gint ett_lpp_NR_UE_RxTx_TEG_Info_r17 = -1; +static gint ett_lpp_T_case1_r17 = -1; +static gint ett_lpp_T_case2_r17 = -1; +static gint ett_lpp_T_case3_r17 = -1; static gint ett_lpp_NR_Multi_RTT_RequestLocationInformation_r16 = -1; static gint ett_lpp_T_nr_RequestedMeasurements_r16_01 = -1; +static gint ett_lpp_T_nr_los_nlos_IndicatorRequest_r17_02 = -1; static gint ett_lpp_NR_Multi_RTT_ReportConfig_r16 = -1; static gint ett_lpp_NR_Multi_RTT_ProvideCapabilities_r16 = -1; +static gint ett_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_02 = -1; +static gint ett_lpp_T_nr_UE_RxTx_TEG_ID_ReportingSupport_r17 = -1; +static gint ett_lpp_T_nr_los_nlos_IndicatorSupport_r17_02 = -1; +static gint ett_lpp_T_nr_dl_prs_AssistanceDataValidity_r17_02 = -1; static gint ett_lpp_NR_Multi_RTT_MeasurementCapability_r16 = -1; +static gint ett_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_Multi_RTT_MeasCapabilityPerBand_r17 = -1; +static gint ett_lpp_Multi_RTT_MeasCapabilityPerBand_r17 = -1; static gint ett_lpp_NR_Multi_RTT_RequestCapabilities_r16 = -1; static gint ett_lpp_NR_Multi_RTT_Error_r16 = -1; static gint ett_lpp_NR_Multi_RTT_LocationServerErrorCauses_r16 = -1; @@ -3195,6 +3784,23 @@ static gint ett_lpp_NR_UEB_TRP_RTD_Info_r16 = -1; #define maxSimultaneousBands_r16 4 #define maxBandComb_r16 1024 #define nrMaxConfiguredBands_r16 16 +#define maxNumOfRxTEGs_r17 32 +#define maxNumOfRxTEGs_1_r17 31 +#define maxNumOfTxTEGs_1_r17 7 +#define maxTxTEG_Sets_r17 256 +#define maxNumOfRxTxTEGs_1_r17 255 +#define maxNumOfTRP_TxTEGs_1_r17 7 +#define maxNumOfSRS_PosResources_r17 64 +#define maxNumOfSRS_PosResources_1_r17 63 +#define maxNumResourcesPerAngle_r17 24 +#define maxNumPrioResources_r17 24 +#define maxAddMeasTDOA_r17 31 +#define maxAddMeasAoD_r17 23 +#define maxAddMeasRTT_r17 31 +#define maxOD_DL_PRS_Configs_r17 8 +#define maxCellIDsPerArea_r17 256 +#define maxNrOfAreas_r17 16 +#define maxMeasInstances_r17 32 typedef enum _T_GNSS_ID_enum { T_GNSS_ID_GPS = 0, @@ -3240,6 +3846,8 @@ static int dissect_GNSS_RTK_ReferenceStationInfo_r15_PDU(tvbuff_t *tvb _U_, pack static int dissect_GNSS_RTK_CommonObservationInfo_r15_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_GNSS_RTK_AuxiliaryStationData_r15_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_GNSS_SSR_CorrectionPoints_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +static int dissect_GNSS_Integrity_ServiceParameters_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +static int dissect_GNSS_Integrity_ServiceAlert_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_GNSS_TimeModelList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_GNSS_DifferentialCorrections_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_GNSS_NavigationModel_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); @@ -3271,6 +3879,9 @@ static int dissect_TBS_AssistanceDataList_r14_PDU(tvbuff_t *tvb _U_, packet_info static int dissect_NR_DL_PRS_AssistanceData_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_NR_UEB_TRP_LocationData_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static int dissect_NR_UEB_TRP_RTD_Info_r16_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +static int dissect_NR_TRP_BeamAntennaInfo_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +static int dissect_NR_DL_PRS_TRP_TEG_Info_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); +static int dissect_NR_On_Demand_DL_PRS_Configurations_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); static void lpp_degreesLatitude_fmt(gchar *s, guint32 v) @@ -5357,7 +5968,7 @@ dissect_lpp_ECID_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int dissect_lpp_EPDU_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 149 "./asn1/lpp/lpp.cnf" +#line 154 "./asn1/lpp/lpp.cnf" offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1U, 256U, &lpp_epdu_id, FALSE); @@ -5396,7 +6007,7 @@ dissect_lpp_EPDU_Identifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_lpp_EPDU_Body(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 155 "./asn1/lpp/lpp.cnf" +#line 160 "./asn1/lpp/lpp.cnf" tvbuff_t *lppe_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, NO_BOUND, NO_BOUND, FALSE, &lppe_tvb); @@ -5694,7 +6305,7 @@ static const per_sequence_t RequestCapabilities_sequence[] = { static int dissect_lpp_RequestCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 125 "./asn1/lpp/lpp.cnf" +#line 130 "./asn1/lpp/lpp.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Request Capabilities"); @@ -5778,7 +6389,7 @@ static const value_string lpp_T_gnss_id_vals[] = { static int dissect_lpp_T_gnss_id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1633 "./asn1/lpp/lpp.cnf" +#line 1638 "./asn1/lpp/lpp.cnf" guint32 gnss_id; offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, 5, &gnss_id, TRUE, 2, NULL); @@ -5990,6 +6601,34 @@ dissect_lpp_GNSS_SupportElement_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } +static const value_string lpp_T_ha_gnss_MetricsSupport_r17_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_ha_gnss_MetricsSupport_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t GNSS_SupportElement_eag_2_sequence[] = { + { &hf_lpp_ha_gnss_MetricsSupport_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_ha_gnss_MetricsSupport_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_SupportElement_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_SupportElement_eag_2_sequence); + + return offset; +} + + static const per_sequence_t GNSS_SupportElement_sequence[] = { { &hf_lpp_gnss_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID }, { &hf_lpp_sbas_IDs , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_SBAS_IDs }, @@ -5999,6 +6638,7 @@ static const per_sequence_t GNSS_SupportElement_sequence[] = { { &hf_lpp_adr_Support , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_BOOLEAN }, { &hf_lpp_velocityMeasurementSupport, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_BOOLEAN }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SupportElement_eag_1 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SupportElement_eag_2 }, { NULL, 0, 0, NULL } }; @@ -6170,12 +6810,53 @@ dissect_lpp_GNSS_CommonAssistanceDataSupport_eag_1(tvbuff_t *tvb _U_, int offset } +static const per_sequence_t GNSS_Integrity_ServiceParametersSupport_r17_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lpp_GNSS_Integrity_ServiceParametersSupport_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_GNSS_Integrity_ServiceParametersSupport_r17, GNSS_Integrity_ServiceParametersSupport_r17_sequence); + + return offset; +} + + +static const per_sequence_t GNSS_Integrity_ServiceAlertSupport_r17_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lpp_GNSS_Integrity_ServiceAlertSupport_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_GNSS_Integrity_ServiceAlertSupport_r17, GNSS_Integrity_ServiceAlertSupport_r17_sequence); + + return offset; +} + + +static const per_sequence_t GNSS_CommonAssistanceDataSupport_eag_2_sequence[] = { + { &hf_lpp_gnss_Integrity_ServiceParametersSupport_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_GNSS_Integrity_ServiceParametersSupport_r17 }, + { &hf_lpp_gnss_Integrity_ServiceAlertSupport_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_GNSS_Integrity_ServiceAlertSupport_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_CommonAssistanceDataSupport_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_CommonAssistanceDataSupport_eag_2_sequence); + + return offset; +} + + static const per_sequence_t GNSS_CommonAssistanceDataSupport_sequence[] = { { &hf_lpp_gnss_ReferenceTimeSupport, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_ReferenceTimeSupport }, { &hf_lpp_gnss_ReferenceLocationSupport, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_ReferenceLocationSupport }, { &hf_lpp_gnss_IonosphericModelSupport, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_IonosphericModelSupport }, { &hf_lpp_gnss_EarthOrientationParametersSupport, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_EarthOrientationParametersSupport }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_CommonAssistanceDataSupport_eag_1 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_CommonAssistanceDataSupport_eag_2 }, { NULL, 0, 0, NULL } }; @@ -6618,8 +7299,36 @@ dissect_lpp_GNSS_RTK_FKP_GradientsSupport_r15(tvbuff_t *tvb _U_, int offset _U_, } +static int * const T_orbit_IntegritySup_r17_bits[] = { + &hf_lpp_T_orbit_IntegritySup_r17_correlationTimeSup, + NULL +}; + +static int +dissect_lpp_T_orbit_IntegritySup_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, T_orbit_IntegritySup_r17_bits, 1, NULL, NULL); + + return offset; +} + + +static const per_sequence_t GNSS_SSR_OrbitCorrectionsSupport_r15_eag_1_sequence[] = { + { &hf_lpp_orbit_IntegritySup_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_orbit_IntegritySup_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_SSR_OrbitCorrectionsSupport_r15_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_SSR_OrbitCorrectionsSupport_r15_eag_1_sequence); + + return offset; +} + + static const per_sequence_t GNSS_SSR_OrbitCorrectionsSupport_r15_sequence[] = { - { NULL, ASN1_EXTENSION_ROOT, 0, NULL } + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SSR_OrbitCorrectionsSupport_r15_eag_1 }, + { NULL, 0, 0, NULL } }; static int @@ -6631,8 +7340,53 @@ dissect_lpp_GNSS_SSR_OrbitCorrectionsSupport_r15(tvbuff_t *tvb _U_, int offset _ } +static const value_string lpp_T_clock_IntegrityParameterSupport_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_clock_IntegrityParameterSupport_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_ssr_IntegrityClockBoundsSupport_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_ssr_IntegrityClockBoundsSupport_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t GNSS_SSR_ClockCorrectionsSupport_r15_eag_1_sequence[] = { + { &hf_lpp_clock_IntegrityParameterSupport_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_clock_IntegrityParameterSupport_r17 }, + { &hf_lpp_ssr_IntegrityClockBoundsSupport_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_ssr_IntegrityClockBoundsSupport_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_SSR_ClockCorrectionsSupport_r15_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_SSR_ClockCorrectionsSupport_r15_eag_1_sequence); + + return offset; +} + + static const per_sequence_t GNSS_SSR_ClockCorrectionsSupport_r15_sequence[] = { - { NULL, ASN1_EXTENSION_ROOT, 0, NULL } + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SSR_ClockCorrectionsSupport_r15_eag_1 }, + { NULL, 0, 0, NULL } }; static int @@ -6644,8 +7398,37 @@ dissect_lpp_GNSS_SSR_ClockCorrectionsSupport_r15(tvbuff_t *tvb _U_, int offset _ } +static const value_string lpp_T_ssr_IntegrityCodeBiasBoundsSup_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_ssr_IntegrityCodeBiasBoundsSup_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t GNSS_SSR_CodeBiasSupport_r15_eag_1_sequence[] = { + { &hf_lpp_ssr_IntegrityCodeBiasBoundsSup_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_ssr_IntegrityCodeBiasBoundsSup_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_SSR_CodeBiasSupport_r15_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_SSR_CodeBiasSupport_r15_eag_1_sequence); + + return offset; +} + + static const per_sequence_t GNSS_SSR_CodeBiasSupport_r15_sequence[] = { { &hf_lpp_signal_and_tracking_mode_ID_Sup_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalIDs }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SSR_CodeBiasSupport_r15_eag_1 }, { NULL, 0, 0, NULL } }; @@ -6691,8 +7474,37 @@ dissect_lpp_GNSS_SSR_URA_Support_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } +static const value_string lpp_T_ssr_IntegrityPhaseBiasBoundsSup_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_ssr_IntegrityPhaseBiasBoundsSup_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t GNSS_SSR_PhaseBiasSupport_r16_eag_1_sequence[] = { + { &hf_lpp_ssr_IntegrityPhaseBiasBoundsSup_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_ssr_IntegrityPhaseBiasBoundsSup_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_SSR_PhaseBiasSupport_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_SSR_PhaseBiasSupport_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t GNSS_SSR_PhaseBiasSupport_r16_sequence[] = { { &hf_lpp_signal_and_tracking_mode_ID_Sup_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalIDs }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SSR_PhaseBiasSupport_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -6705,8 +7517,36 @@ dissect_lpp_GNSS_SSR_PhaseBiasSupport_r16(tvbuff_t *tvb _U_, int offset _U_, asn } +static int * const T_stec_IntegritySup_r17_bits[] = { + &hf_lpp_T_stec_IntegritySup_r17_correlationTimeSup, + NULL +}; + +static int +dissect_lpp_T_stec_IntegritySup_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, T_stec_IntegritySup_r17_bits, 1, NULL, NULL); + + return offset; +} + + +static const per_sequence_t GNSS_SSR_STEC_CorrectionSupport_r16_eag_1_sequence[] = { + { &hf_lpp_stec_IntegritySup_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_stec_IntegritySup_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_SSR_STEC_CorrectionSupport_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_SSR_STEC_CorrectionSupport_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t GNSS_SSR_STEC_CorrectionSupport_r16_sequence[] = { - { NULL, ASN1_EXTENSION_ROOT, 0, NULL } + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SSR_STEC_CorrectionSupport_r16_eag_1 }, + { NULL, 0, 0, NULL } }; static int @@ -6718,8 +7558,37 @@ dissect_lpp_GNSS_SSR_STEC_CorrectionSupport_r16(tvbuff_t *tvb _U_, int offset _U } +static const value_string lpp_T_griddedCorrectionIntegritySup_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_griddedCorrectionIntegritySup_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t GNSS_SSR_GriddedCorrectionSupport_r16_eag_1_sequence[] = { + { &hf_lpp_griddedCorrectionIntegritySup_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_griddedCorrectionIntegritySup_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_SSR_GriddedCorrectionSupport_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_SSR_GriddedCorrectionSupport_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t GNSS_SSR_GriddedCorrectionSupport_r16_sequence[] = { - { NULL, ASN1_EXTENSION_ROOT, 0, NULL } + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SSR_GriddedCorrectionSupport_r16_eag_1 }, + { NULL, 0, 0, NULL } }; static int @@ -6956,6 +7825,52 @@ dissect_lpp_A_GNSS_ProvideCapabilities_eag_2(tvbuff_t *tvb _U_, int offset _U_, } +static const per_sequence_t T_gnssTime_r17_sequence[] = { + { &hf_lpp_posModes_r17 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_PositioningModes }, + { &hf_lpp_gnss_TimeIDs_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID_Bitmap }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_gnssTime_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_gnssTime_r17, T_gnssTime_r17_sequence); + + return offset; +} + + +static const per_sequence_t ScheduledLocationTimeSupportPerMode_r17_sequence[] = { + { &hf_lpp_utcTime_r17_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_PositioningModes }, + { &hf_lpp_gnssTime_r17_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_gnssTime_r17 }, + { &hf_lpp_e_utraTime_r17_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_PositioningModes }, + { &hf_lpp_nrTime_r17_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_PositioningModes }, + { &hf_lpp_relativeTime_r17_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_PositioningModes }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_ScheduledLocationTimeSupportPerMode_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_ScheduledLocationTimeSupportPerMode_r17, ScheduledLocationTimeSupportPerMode_r17_sequence); + + return offset; +} + + +static const per_sequence_t A_GNSS_ProvideCapabilities_eag_3_sequence[] = { + { &hf_lpp_scheduledLocationRequestSupported_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_ScheduledLocationTimeSupportPerMode_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_A_GNSS_ProvideCapabilities_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, A_GNSS_ProvideCapabilities_eag_3_sequence); + + return offset; +} + + static const per_sequence_t A_GNSS_ProvideCapabilities_sequence[] = { { &hf_lpp_gnss_SupportList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_SupportList }, { &hf_lpp_assistanceDataSupportList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_AssistanceDataSupportList }, @@ -6963,6 +7878,7 @@ static const per_sequence_t A_GNSS_ProvideCapabilities_sequence[] = { { &hf_lpp_velocityTypes , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_VelocityTypes }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_A_GNSS_ProvideCapabilities_eag_1 }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_A_GNSS_ProvideCapabilities_eag_2 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_A_GNSS_ProvideCapabilities_eag_3 }, { NULL, 0, 0, NULL } }; @@ -7343,6 +8259,84 @@ dissect_lpp_T_interRAT_RSTDmeasurement_r15(tvbuff_t *tvb _U_, int offset _U_, as } +static const value_string lpp_T_utcTime_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_utcTime_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_e_utraTime_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_e_utraTime_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_nrTime_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_nrTime_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_relativeTime_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_relativeTime_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t ScheduledLocationTimeSupport_r17_sequence[] = { + { &hf_lpp_utcTime_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_utcTime_r17 }, + { &hf_lpp_gnssTime_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_ID_Bitmap }, + { &hf_lpp_e_utraTime_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_e_utraTime_r17 }, + { &hf_lpp_nrTime_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_nrTime_r17 }, + { &hf_lpp_relativeTime_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_relativeTime_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_ScheduledLocationTimeSupport_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_ScheduledLocationTimeSupport_r17, ScheduledLocationTimeSupport_r17_sequence); + + return offset; +} + + static const per_sequence_t OTDOA_ProvideCapabilities_sequence[] = { { &hf_lpp_otdoa_Mode , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_otdoa_Mode }, { &hf_lpp_supportedBandListEUTRA, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lpp_SEQUENCE_SIZE_1_maxBands_OF_SupportedBandEUTRA }, @@ -7365,6 +8359,7 @@ static const per_sequence_t OTDOA_ProvideCapabilities_sequence[] = { { &hf_lpp_numberOfRXantennas_r14, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lpp_T_numberOfRXantennas_r14 }, { &hf_lpp_motionMeasurements_r15_01, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lpp_T_motionMeasurements_r15_01 }, { &hf_lpp_interRAT_RSTDmeasurement_r15, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lpp_T_interRAT_RSTDmeasurement_r15 }, + { &hf_lpp_scheduledLocationRequestSupported_r17, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lpp_ScheduledLocationTimeSupport_r17 }, { NULL, 0, 0, NULL } }; @@ -7483,10 +8478,24 @@ dissect_lpp_ECID_ProvideCapabilities_eag_2(tvbuff_t *tvb _U_, int offset _U_, as } +static const per_sequence_t ECID_ProvideCapabilities_eag_3_sequence[] = { + { &hf_lpp_scheduledLocationRequestSupported_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_ScheduledLocationTimeSupport_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_ECID_ProvideCapabilities_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, ECID_ProvideCapabilities_eag_3_sequence); + + return offset; +} + + static const per_sequence_t ECID_ProvideCapabilities_sequence[] = { { &hf_lpp_ecid_MeasSupported, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_ecid_MeasSupported }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_ECID_ProvideCapabilities_eag_1 }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_ECID_ProvideCapabilities_eag_2 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_ECID_ProvideCapabilities_eag_3 }, { NULL, 0, 0, NULL } }; @@ -7659,11 +8668,25 @@ dissect_lpp_Sensor_ProvideCapabilities_r13_eag_3(tvbuff_t *tvb _U_, int offset _ } +static const per_sequence_t Sensor_ProvideCapabilities_r13_eag_4_sequence[] = { + { &hf_lpp_scheduledLocationRequestSupported_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_ScheduledLocationTimeSupportPerMode_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_Sensor_ProvideCapabilities_r13_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, Sensor_ProvideCapabilities_r13_eag_4_sequence); + + return offset; +} + + static const per_sequence_t Sensor_ProvideCapabilities_r13_sequence[] = { { &hf_lpp_sensor_Modes_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_sensor_Modes_r13 }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_Sensor_ProvideCapabilities_r13_eag_1 }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_Sensor_ProvideCapabilities_r13_eag_2 }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_Sensor_ProvideCapabilities_r13_eag_3 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_Sensor_ProvideCapabilities_r13_eag_4 }, { NULL, 0, 0, NULL } }; @@ -7755,9 +8778,23 @@ dissect_lpp_TBS_ProvideCapabilities_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, } +static const per_sequence_t TBS_ProvideCapabilities_r13_eag_2_sequence[] = { + { &hf_lpp_scheduledLocationRequestSupported_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_ScheduledLocationTimeSupportPerMode_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_TBS_ProvideCapabilities_r13_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, TBS_ProvideCapabilities_r13_eag_2_sequence); + + return offset; +} + + static const per_sequence_t TBS_ProvideCapabilities_r13_sequence[] = { { &hf_lpp_tbs_Modes_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_tbs_Modes_r13 }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_TBS_ProvideCapabilities_r13_eag_1 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_TBS_ProvideCapabilities_r13_eag_2 }, { NULL, 0, 0, NULL } }; @@ -7846,10 +8883,24 @@ dissect_lpp_WLAN_ProvideCapabilities_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_ } +static const per_sequence_t WLAN_ProvideCapabilities_r13_eag_2_sequence[] = { + { &hf_lpp_scheduledLocationRequestSupported_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_ScheduledLocationTimeSupportPerMode_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_WLAN_ProvideCapabilities_r13_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, WLAN_ProvideCapabilities_r13_eag_2_sequence); + + return offset; +} + + static const per_sequence_t WLAN_ProvideCapabilities_r13_sequence[] = { { &hf_lpp_wlan_Modes_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_wlan_Modes_r13 }, { &hf_lpp_wlan_MeasSupported_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_wlan_MeasSupported_r13 }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_WLAN_ProvideCapabilities_r13_eag_1 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_WLAN_ProvideCapabilities_r13_eag_2 }, { NULL, 0, 0, NULL } }; @@ -7920,10 +8971,24 @@ dissect_lpp_BT_ProvideCapabilities_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, } +static const per_sequence_t BT_ProvideCapabilities_r13_eag_2_sequence[] = { + { &hf_lpp_scheduledLocationRequestSupported_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_ScheduledLocationTimeSupportPerMode_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_BT_ProvideCapabilities_r13_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, BT_ProvideCapabilities_r13_eag_2_sequence); + + return offset; +} + + static const per_sequence_t BT_ProvideCapabilities_r13_sequence[] = { { &hf_lpp_bt_Modes_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_bt_Modes_r13 }, { &hf_lpp_bt_MeasSupported_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_bt_MeasSupported_r13 }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_BT_ProvideCapabilities_r13_eag_1 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_BT_ProvideCapabilities_r13_eag_2 }, { NULL, 0, 0, NULL } }; @@ -7999,10 +9064,40 @@ dissect_lpp_T_triggeredReporting_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } +static const value_string lpp_T_ten_ms_unit_ResponseTime_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_ten_ms_unit_ResponseTime_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NR_ECID_ProvideCapabilities_r16_eag_1_sequence[] = { + { &hf_lpp_ten_ms_unit_ResponseTime_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_ten_ms_unit_ResponseTime_r17 }, + { &hf_lpp_scheduledLocationRequestSupported_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_ScheduledLocationTimeSupport_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_ECID_ProvideCapabilities_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_ECID_ProvideCapabilities_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_ECID_ProvideCapabilities_r16_sequence[] = { { &hf_lpp_nr_ECID_MeasSupported_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_nr_ECID_MeasSupported_r16 }, { &hf_lpp_periodicalReporting_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_periodicalReporting_r16 }, { &hf_lpp_triggeredReporting_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_triggeredReporting_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_ECID_ProvideCapabilities_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -8394,6 +9489,232 @@ dissect_lpp_T_srs_AssocPRS_MultiLayersFR2_r16(tvbuff_t *tvb _U_, int offset _U_, } +static const value_string lpp_T_nr_UE_RxTEG_ID_MaxSupport_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n6" }, + { 5, "n8" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_nr_UE_RxTEG_ID_MaxSupport_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_nr_UE_TxTEG_ID_MaxSupport_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n6" }, + { 5, "n8" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_nr_UE_TxTEG_ID_MaxSupport_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_nr_UE_RxTxTEG_ID_MaxSupport_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n6" }, + { 4, "n8" }, + { 5, "n12" }, + { 6, "n16" }, + { 7, "n24" }, + { 8, "n32" }, + { 9, "n36" }, + { 10, "n48" }, + { 11, "n64" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_nr_UE_RxTxTEG_ID_MaxSupport_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 12, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_vals[] = { + { 0, "n2" }, + { 1, "n3" }, + { 2, "n4" }, + { 3, "n6" }, + { 4, "n8" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 5, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTEGsSimul_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n6" }, + { 5, "n8" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTEGsSimul_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NR_UE_TEG_ID_CapabilityPerBand_r17_sequence[] = { + { &hf_lpp_freqBandIndicatorNR_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_FreqBandIndicatorNR_r16 }, + { &hf_lpp_nr_UE_RxTEG_ID_MaxSupport_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_nr_UE_RxTEG_ID_MaxSupport_r17 }, + { &hf_lpp_nr_UE_TxTEG_ID_MaxSupport_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_nr_UE_TxTEG_ID_MaxSupport_r17 }, + { &hf_lpp_nr_UE_RxTxTEG_ID_MaxSupport_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_nr_UE_RxTxTEG_ID_MaxSupport_r17 }, + { &hf_lpp_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17 }, + { &hf_lpp_measureSameDL_PRS_ResourceWithDifferentRxTEGsSimul_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTEGsSimul_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_UE_TEG_ID_CapabilityPerBand_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_UE_TEG_ID_CapabilityPerBand_r17, NR_UE_TEG_ID_CapabilityPerBand_r17_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_nrMaxBands_r16_OF_NR_UE_TEG_ID_CapabilityPerBand_r17_sequence_of[1] = { + { &hf_lpp_nr_UE_TEG_ID_CapabilityBandList_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_UE_TEG_ID_CapabilityPerBand_r17 }, +}; + +static int +dissect_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_NR_UE_TEG_ID_CapabilityPerBand_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_NR_UE_TEG_ID_CapabilityPerBand_r17, SEQUENCE_SIZE_1_nrMaxBands_r16_OF_NR_UE_TEG_ID_CapabilityPerBand_r17_sequence_of, + 1, nrMaxBands_r16, FALSE); + + return offset; +} + + +static const per_sequence_t NR_UE_TEG_Capability_r17_sequence[] = { + { &hf_lpp_nr_UE_TEG_ID_CapabilityBandList_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_NR_UE_TEG_ID_CapabilityPerBand_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_UE_TEG_Capability_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_UE_TEG_Capability_r17, NR_UE_TEG_Capability_r17_sequence); + + return offset; +} + + +static const value_string lpp_T_supportOfDL_PRS_FirstPathRSRP_r17_01_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_supportOfDL_PRS_FirstPathRSRP_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_dl_PRS_MeasRRC_Inactive_r17_02_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_dl_PRS_MeasRRC_Inactive_r17_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t Multi_RTT_MeasCapabilityPerBand_r17_sequence[] = { + { &hf_lpp_freqBandIndicatorNR_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_FreqBandIndicatorNR_r16 }, + { &hf_lpp_supportOfDL_PRS_FirstPathRSRP_r17_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_supportOfDL_PRS_FirstPathRSRP_r17_01 }, + { &hf_lpp_dl_PRS_MeasRRC_Inactive_r17_02, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_dl_PRS_MeasRRC_Inactive_r17_02 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_Multi_RTT_MeasCapabilityPerBand_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_Multi_RTT_MeasCapabilityPerBand_r17, Multi_RTT_MeasCapabilityPerBand_r17_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_nrMaxBands_r16_OF_Multi_RTT_MeasCapabilityPerBand_r17_sequence_of[1] = { + { &hf_lpp_multi_RTT_MeasCapabilityBandList_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_Multi_RTT_MeasCapabilityPerBand_r17 }, +}; + +static int +dissect_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_Multi_RTT_MeasCapabilityPerBand_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_Multi_RTT_MeasCapabilityPerBand_r17, SEQUENCE_SIZE_1_nrMaxBands_r16_OF_Multi_RTT_MeasCapabilityPerBand_r17_sequence_of, + 1, nrMaxBands_r16, FALSE); + + return offset; +} + + +static const per_sequence_t NR_Multi_RTT_MeasurementCapability_r16_eag_1_sequence[] = { + { &hf_lpp_nr_UE_TEG_Capability_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_UE_TEG_Capability_r17 }, + { &hf_lpp_multi_RTT_MeasCapabilityBandList_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_Multi_RTT_MeasCapabilityPerBand_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_Multi_RTT_MeasurementCapability_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_Multi_RTT_MeasurementCapability_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_Multi_RTT_MeasurementCapability_r16_sequence[] = { { &hf_lpp_maxNrOfRx_TX_MeasFR1_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_4 }, { &hf_lpp_maxNrOfRx_TX_MeasFR2_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_4 }, @@ -8401,6 +9722,7 @@ static const per_sequence_t NR_Multi_RTT_MeasurementCapability_r16_sequence[] = { &hf_lpp_supportOfRSRP_MeasFR2_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_supportOfRSRP_MeasFR2_r16 }, { &hf_lpp_srs_AssocPRS_MultiLayersFR1_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_srs_AssocPRS_MultiLayersFR1_r16 }, { &hf_lpp_srs_AssocPRS_MultiLayersFR2_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_srs_AssocPRS_MultiLayersFR2_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_Multi_RTT_MeasurementCapability_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -8744,12 +10066,636 @@ dissect_lpp_T_maxNumOfDL_PRS_ResProcessedPerSlot_r16(tvbuff_t *tvb _U_, int offs } +static const value_string lpp_T_supportedDL_PRS_ProcessingSamples_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_supportedDL_PRS_ProcessingSamples_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_prs_ProcessingWindowType1A_r17_vals[] = { + { 0, "option1" }, + { 1, "option2" }, + { 2, "option3" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_prs_ProcessingWindowType1A_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_prs_ProcessingWindowType1B_r17_vals[] = { + { 0, "option1" }, + { 1, "option2" }, + { 2, "option3" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_prs_ProcessingWindowType1B_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_prs_ProcessingWindowType2_r17_vals[] = { + { 0, "option1" }, + { 1, "option2" }, + { 2, "option3" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_prs_ProcessingWindowType2_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_prsProcessingType_r17_vals[] = { + { 0, "type1A" }, + { 1, "type1B" }, + { 2, "type2" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_prsProcessingType_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_ppw_dl_PRS_BufferType_r17_vals[] = { + { 0, "type1" }, + { 1, "type2" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_ppw_dl_PRS_BufferType_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_ppw_durationOfPRS_ProcessingSymbolsN_r17_vals[] = { + { 0, "msDot125" }, + { 1, "msDot25" }, + { 2, "msDot5" }, + { 3, "ms1" }, + { 4, "ms2" }, + { 5, "ms4" }, + { 6, "ms6" }, + { 7, "ms8" }, + { 8, "ms12" }, + { 9, "ms16" }, + { 10, "ms20" }, + { 11, "ms25" }, + { 12, "ms30" }, + { 13, "ms32" }, + { 14, "ms35" }, + { 15, "ms40" }, + { 16, "ms45" }, + { 17, "ms50" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_ppw_durationOfPRS_ProcessingSymbolsN_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 18, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_ppw_durationOfPRS_ProcessingSymbolsT_r17_vals[] = { + { 0, "ms1" }, + { 1, "ms2" }, + { 2, "ms4" }, + { 3, "ms8" }, + { 4, "ms16" }, + { 5, "ms20" }, + { 6, "ms30" }, + { 7, "ms40" }, + { 8, "ms80" }, + { 9, "ms160" }, + { 10, "ms320" }, + { 11, "ms640" }, + { 12, "ms1280" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_ppw_durationOfPRS_ProcessingSymbolsT_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 13, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_ppw_durationOfPRS_Processing1_r17_sequence[] = { + { &hf_lpp_ppw_durationOfPRS_ProcessingSymbolsN_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_T_ppw_durationOfPRS_ProcessingSymbolsN_r17 }, + { &hf_lpp_ppw_durationOfPRS_ProcessingSymbolsT_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_T_ppw_durationOfPRS_ProcessingSymbolsT_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_ppw_durationOfPRS_Processing1_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_ppw_durationOfPRS_Processing1_r17, T_ppw_durationOfPRS_Processing1_r17_sequence); + + return offset; +} + + +static const value_string lpp_T_ppw_durationOfPRS_ProcessingSymbolsN2_r17_vals[] = { + { 0, "msDot125" }, + { 1, "msDot25" }, + { 2, "msDot5" }, + { 3, "ms1" }, + { 4, "ms2" }, + { 5, "ms3" }, + { 6, "ms4" }, + { 7, "ms5" }, + { 8, "ms6" }, + { 9, "ms8" }, + { 10, "ms12" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_ppw_durationOfPRS_ProcessingSymbolsN2_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 11, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_ppw_durationOfPRS_ProcessingSymbolsT2_r17_vals[] = { + { 0, "ms4" }, + { 1, "ms5" }, + { 2, "ms6" }, + { 3, "ms8" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_ppw_durationOfPRS_ProcessingSymbolsT2_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_ppw_durationOfPRS_Processing2_r17_sequence[] = { + { &hf_lpp_ppw_durationOfPRS_ProcessingSymbolsN2_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_T_ppw_durationOfPRS_ProcessingSymbolsN2_r17 }, + { &hf_lpp_ppw_durationOfPRS_ProcessingSymbolsT2_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_T_ppw_durationOfPRS_ProcessingSymbolsT2_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_ppw_durationOfPRS_Processing2_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_ppw_durationOfPRS_Processing2_r17, T_ppw_durationOfPRS_Processing2_r17_sequence); + + return offset; +} + + +static const value_string lpp_T_scs15_r17_01_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n6" }, + { 4, "n8" }, + { 5, "n12" }, + { 6, "n16" }, + { 7, "n24" }, + { 8, "n32" }, + { 9, "n48" }, + { 10, "n64" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_scs15_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 11, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_scs30_r17_01_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n6" }, + { 4, "n8" }, + { 5, "n12" }, + { 6, "n16" }, + { 7, "n24" }, + { 8, "n32" }, + { 9, "n48" }, + { 10, "n64" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_scs30_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 11, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_scs60_r17_01_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n6" }, + { 4, "n8" }, + { 5, "n12" }, + { 6, "n16" }, + { 7, "n24" }, + { 8, "n32" }, + { 9, "n48" }, + { 10, "n64" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_scs60_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 11, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_scs120_r17_01_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n6" }, + { 4, "n8" }, + { 5, "n12" }, + { 6, "n16" }, + { 7, "n24" }, + { 8, "n32" }, + { 9, "n48" }, + { 10, "n64" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_scs120_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 11, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_ppw_maxNumOfDL_PRS_ResProcessedPerSlot_r17_sequence[] = { + { &hf_lpp_scs15_r17_02 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_scs15_r17_01 }, + { &hf_lpp_scs30_r17_02 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_scs30_r17_01 }, + { &hf_lpp_scs60_r17_02 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_scs60_r17_01 }, + { &hf_lpp_scs120_r17_02 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_scs120_r17_01 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_ppw_maxNumOfDL_PRS_ResProcessedPerSlot_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_ppw_maxNumOfDL_PRS_ResProcessedPerSlot_r17, T_ppw_maxNumOfDL_PRS_ResProcessedPerSlot_r17_sequence); + + return offset; +} + + +static const per_sequence_t PRS_ProcessingCapabilityOutsideMGinPPWperType_r17_sequence[] = { + { &hf_lpp_prsProcessingType_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_prsProcessingType_r17 }, + { &hf_lpp_ppw_dl_PRS_BufferType_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_ppw_dl_PRS_BufferType_r17 }, + { &hf_lpp_ppw_durationOfPRS_Processing1_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_ppw_durationOfPRS_Processing1_r17 }, + { &hf_lpp_ppw_durationOfPRS_Processing2_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_ppw_durationOfPRS_Processing2_r17 }, + { &hf_lpp_ppw_maxNumOfDL_PRS_ResProcessedPerSlot_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_ppw_maxNumOfDL_PRS_ResProcessedPerSlot_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_PRS_ProcessingCapabilityOutsideMGinPPWperType_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_PRS_ProcessingCapabilityOutsideMGinPPWperType_r17, PRS_ProcessingCapabilityOutsideMGinPPWperType_r17_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_3_OF_PRS_ProcessingCapabilityOutsideMGinPPWperType_r17_sequence_of[1] = { + { &hf_lpp_prs_ProcessingCapabilityOutsideMGinPPW_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_PRS_ProcessingCapabilityOutsideMGinPPWperType_r17 }, +}; + +static int +dissect_lpp_SEQUENCE_SIZE_1_3_OF_PRS_ProcessingCapabilityOutsideMGinPPWperType_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_SEQUENCE_SIZE_1_3_OF_PRS_ProcessingCapabilityOutsideMGinPPWperType_r17, SEQUENCE_SIZE_1_3_OF_PRS_ProcessingCapabilityOutsideMGinPPWperType_r17_sequence_of, + 1, 3, FALSE); + + return offset; +} + + +static const value_string lpp_T_dl_PRS_BufferType_RRC_Inactive_r17_vals[] = { + { 0, "type1" }, + { 1, "type2" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_dl_PRS_BufferType_RRC_Inactive_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_durationOfPRS_ProcessingSymbols_r17_vals[] = { + { 0, "nDot125" }, + { 1, "nDot25" }, + { 2, "nDot5" }, + { 3, "n1" }, + { 4, "n2" }, + { 5, "n4" }, + { 6, "n6" }, + { 7, "n8" }, + { 8, "n12" }, + { 9, "n16" }, + { 10, "n20" }, + { 11, "n25" }, + { 12, "n30" }, + { 13, "n32" }, + { 14, "n35" }, + { 15, "n40" }, + { 16, "n45" }, + { 17, "n50" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_durationOfPRS_ProcessingSymbols_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 18, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_durationOfPRS_ProcessingSymbolsInEveryTms_r17_vals[] = { + { 0, "n8" }, + { 1, "n16" }, + { 2, "n20" }, + { 3, "n30" }, + { 4, "n40" }, + { 5, "n80" }, + { 6, "n160" }, + { 7, "n320" }, + { 8, "n640" }, + { 9, "n1280" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_durationOfPRS_ProcessingSymbolsInEveryTms_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 10, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_durationOfPRS_Processing_RRC_Inactive_r17_sequence[] = { + { &hf_lpp_durationOfPRS_ProcessingSymbols_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_durationOfPRS_ProcessingSymbols_r17 }, + { &hf_lpp_durationOfPRS_ProcessingSymbolsInEveryTms_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_durationOfPRS_ProcessingSymbolsInEveryTms_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_durationOfPRS_Processing_RRC_Inactive_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_durationOfPRS_Processing_RRC_Inactive_r17, T_durationOfPRS_Processing_RRC_Inactive_r17_sequence); + + return offset; +} + + +static const value_string lpp_T_scs15_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n6" }, + { 4, "n8" }, + { 5, "n12" }, + { 6, "n16" }, + { 7, "n24" }, + { 8, "n32" }, + { 9, "n48" }, + { 10, "n64" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_scs15_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 11, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_scs30_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n6" }, + { 4, "n8" }, + { 5, "n12" }, + { 6, "n16" }, + { 7, "n24" }, + { 8, "n32" }, + { 9, "n48" }, + { 10, "n64" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_scs30_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 11, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_scs60_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n6" }, + { 4, "n8" }, + { 5, "n12" }, + { 6, "n16" }, + { 7, "n24" }, + { 8, "n32" }, + { 9, "n48" }, + { 10, "n64" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_scs60_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 11, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_scs120_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n6" }, + { 4, "n8" }, + { 5, "n12" }, + { 6, "n16" }, + { 7, "n24" }, + { 8, "n32" }, + { 9, "n48" }, + { 10, "n64" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_scs120_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 11, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_maxNumOfDL_PRS_ResProcessedPerSlot_RRC_Inactive_r17_sequence[] = { + { &hf_lpp_scs15_r17_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_scs15_r17 }, + { &hf_lpp_scs30_r17_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_scs30_r17 }, + { &hf_lpp_scs60_r17_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_scs60_r17 }, + { &hf_lpp_scs120_r17_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_scs120_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_maxNumOfDL_PRS_ResProcessedPerSlot_RRC_Inactive_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_maxNumOfDL_PRS_ResProcessedPerSlot_RRC_Inactive_r17, T_maxNumOfDL_PRS_ResProcessedPerSlot_RRC_Inactive_r17_sequence); + + return offset; +} + + +static const value_string lpp_T_lowerRxBeamSweepingThan8_FR2_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n6" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_lowerRxBeamSweepingThan8_FR2_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t PRS_ProcessingCapabilityPerBand_r16_eag_1_sequence[] = { + { &hf_lpp_supportedDL_PRS_ProcessingSamples_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_supportedDL_PRS_ProcessingSamples_r17 }, + { &hf_lpp_prs_ProcessingWindowType1A_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_prs_ProcessingWindowType1A_r17 }, + { &hf_lpp_prs_ProcessingWindowType1B_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_prs_ProcessingWindowType1B_r17 }, + { &hf_lpp_prs_ProcessingWindowType2_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_prs_ProcessingWindowType2_r17 }, + { &hf_lpp_prs_ProcessingCapabilityOutsideMGinPPW_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_SEQUENCE_SIZE_1_3_OF_PRS_ProcessingCapabilityOutsideMGinPPWperType_r17 }, + { &hf_lpp_dl_PRS_BufferType_RRC_Inactive_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_dl_PRS_BufferType_RRC_Inactive_r17 }, + { &hf_lpp_durationOfPRS_Processing_RRC_Inactive_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_durationOfPRS_Processing_RRC_Inactive_r17 }, + { &hf_lpp_maxNumOfDL_PRS_ResProcessedPerSlot_RRC_Inactive_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_maxNumOfDL_PRS_ResProcessedPerSlot_RRC_Inactive_r17 }, + { &hf_lpp_lowerRxBeamSweepingThan8_FR2_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_lowerRxBeamSweepingThan8_FR2_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_PRS_ProcessingCapabilityPerBand_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PRS_ProcessingCapabilityPerBand_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t PRS_ProcessingCapabilityPerBand_r16_sequence[] = { { &hf_lpp_freqBandIndicatorNR_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_FreqBandIndicatorNR_r16 }, { &hf_lpp_supportedBandwidthPRS_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_supportedBandwidthPRS_r16 }, { &hf_lpp_dl_PRS_BufferType_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_dl_PRS_BufferType_r16 }, { &hf_lpp_durationOfPRS_Processing_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_durationOfPRS_Processing_r16 }, { &hf_lpp_maxNumOfDL_PRS_ResProcessedPerSlot_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_maxNumOfDL_PRS_ResProcessedPerSlot_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_PRS_ProcessingCapabilityPerBand_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -8791,10 +10737,40 @@ dissect_lpp_T_simulLTE_NR_PRS_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const value_string lpp_T_supportedDL_PRS_ProcessingSamples_RRC_Inactive_r17_vals[] = { + { 0, "m1" }, + { 1, "m2" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_supportedDL_PRS_ProcessingSamples_RRC_Inactive_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NR_DL_PRS_ProcessingCapability_r16_eag_1_sequence[] = { + { &hf_lpp_supportedDL_PRS_ProcessingSamples_RRC_Inactive_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_supportedDL_PRS_ProcessingSamples_RRC_Inactive_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_PRS_ProcessingCapability_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_PRS_ProcessingCapability_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_PRS_ProcessingCapability_r16_sequence[] = { { &hf_lpp_prs_ProcessingCapabilityBandList_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_PRS_ProcessingCapabilityPerBand_r16 }, { &hf_lpp_maxSupportedFreqLayers_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_1_4 }, { &hf_lpp_simulLTE_NR_PRS_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_simulLTE_NR_PRS_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_ProcessingCapability_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -8996,10 +10972,494 @@ dissect_lpp_SpatialRelationsSRS_Pos_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ } +static const value_string lpp_T_maxNumOfSRSposResourceSets_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, + { 4, "n12" }, + { 5, "n16" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxNumOfSRSposResourceSets_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_maxNumOfPeriodicAndSemiPeristentSRSposResources_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, + { 4, "n16" }, + { 5, "n32" }, + { 6, "n64" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxNumOfPeriodicAndSemiPeristentSRSposResources_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 7, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n5" }, + { 5, "n6" }, + { 6, "n8" }, + { 7, "n10" }, + { 8, "n12" }, + { 9, "n14" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 10, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_maxNumOfPeriodicSRSposResources_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, + { 4, "n16" }, + { 5, "n32" }, + { 6, "n64" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxNumOfPeriodicSRSposResources_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 7, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_maxNumOfPeriodicSRSposResourcesPerSlot_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n5" }, + { 5, "n6" }, + { 6, "n8" }, + { 7, "n10" }, + { 8, "n12" }, + { 9, "n14" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxNumOfPeriodicSRSposResourcesPerSlot_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 10, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_maxNumOfSemiPeristentSRSposResources_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, + { 4, "n16" }, + { 5, "n32" }, + { 6, "n64" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxNumOfSemiPeristentSRSposResources_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 7, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n5" }, + { 5, "n6" }, + { 6, "n8" }, + { 7, "n10" }, + { 8, "n12" }, + { 9, "n14" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 10, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t PosSRS_RRC_Inactive_InInitialUL_BWP_r17_sequence[] = { + { &hf_lpp_maxNumOfSRSposResourceSets_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_maxNumOfSRSposResourceSets_r17 }, + { &hf_lpp_maxNumOfPeriodicAndSemiPeristentSRSposResources_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_maxNumOfPeriodicAndSemiPeristentSRSposResources_r17 }, + { &hf_lpp_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17 }, + { &hf_lpp_maxNumOfPeriodicSRSposResources_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_maxNumOfPeriodicSRSposResources_r17 }, + { &hf_lpp_maxNumOfPeriodicSRSposResourcesPerSlot_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_maxNumOfPeriodicSRSposResourcesPerSlot_r17 }, + { &hf_lpp_maxNumOfSemiPeristentSRSposResources_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_maxNumOfSemiPeristentSRSposResources_r17 }, + { &hf_lpp_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_PosSRS_RRC_Inactive_InInitialUL_BWP_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_PosSRS_RRC_Inactive_InInitialUL_BWP_r17, PosSRS_RRC_Inactive_InInitialUL_BWP_r17_sequence); + + return offset; +} + + +static const value_string lpp_T_maxSRSposBandwidthForEachSCS_withinCC_FR1_r17_vals[] = { + { 0, "bw5" }, + { 1, "bw10" }, + { 2, "bw15" }, + { 3, "bw20" }, + { 4, "bw25" }, + { 5, "bw30" }, + { 6, "bw35" }, + { 7, "bw40" }, + { 8, "bw45" }, + { 9, "bw50" }, + { 10, "bw60" }, + { 11, "bw70" }, + { 12, "bw80" }, + { 13, "bw90" }, + { 14, "bw100" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxSRSposBandwidthForEachSCS_withinCC_FR1_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 15, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_maxSRSposBandwidthForEachSCS_withinCC_FR2_r17_vals[] = { + { 0, "bw50" }, + { 1, "bw100" }, + { 2, "bw200" }, + { 3, "bw400" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxSRSposBandwidthForEachSCS_withinCC_FR2_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_maxNumOfSRSposResourceSets_r17_01_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, + { 4, "n12" }, + { 5, "n16" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxNumOfSRSposResourceSets_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_maxNumOfPeriodicSRSposResources_r17_01_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, + { 4, "n16" }, + { 5, "n32" }, + { 6, "n64" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxNumOfPeriodicSRSposResources_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 7, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_maxNumOfPeriodicSRSposResourcesPerSlot_r17_01_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n5" }, + { 5, "n6" }, + { 6, "n8" }, + { 7, "n10" }, + { 8, "n12" }, + { 9, "n14" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxNumOfPeriodicSRSposResourcesPerSlot_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 10, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_differentNumerologyBetweenSRSposAndInitialBWP_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_differentNumerologyBetweenSRSposAndInitialBWP_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_srsPosWithoutRestrictionOnBWP_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_srsPosWithoutRestrictionOnBWP_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_maxNumOfPeriodicAndSemiPeristentSRSposResources_r17_01_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, + { 4, "n16" }, + { 5, "n32" }, + { 6, "n64" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxNumOfPeriodicAndSemiPeristentSRSposResources_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 7, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17_01_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n5" }, + { 5, "n6" }, + { 6, "n8" }, + { 7, "n10" }, + { 8, "n12" }, + { 9, "n14" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 10, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_differentCenterFreqBetweenSRSposAndInitialBWP_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_differentCenterFreqBetweenSRSposAndInitialBWP_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_maxNumOfSemiPersistentSRSposResources_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, + { 4, "n16" }, + { 5, "n32" }, + { 6, "n64" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxNumOfSemiPersistentSRSposResources_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 7, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17_01_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n5" }, + { 5, "n6" }, + { 6, "n8" }, + { 7, "n10" }, + { 8, "n12" }, + { 9, "n14" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 10, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_switchingTimeSRS_TX_OtherTX_r17_vals[] = { + { 0, "us100" }, + { 1, "us140" }, + { 2, "us200" }, + { 3, "us300" }, + { 4, "us500" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_switchingTimeSRS_TX_OtherTX_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 5, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t PosSRS_RRC_Inactive_OutsideInitialUL_BWP_r17_sequence[] = { + { &hf_lpp_maxSRSposBandwidthForEachSCS_withinCC_FR1_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_maxSRSposBandwidthForEachSCS_withinCC_FR1_r17 }, + { &hf_lpp_maxSRSposBandwidthForEachSCS_withinCC_FR2_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_maxSRSposBandwidthForEachSCS_withinCC_FR2_r17 }, + { &hf_lpp_maxNumOfSRSposResourceSets_r17_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_maxNumOfSRSposResourceSets_r17_01 }, + { &hf_lpp_maxNumOfPeriodicSRSposResources_r17_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_maxNumOfPeriodicSRSposResources_r17_01 }, + { &hf_lpp_maxNumOfPeriodicSRSposResourcesPerSlot_r17_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_maxNumOfPeriodicSRSposResourcesPerSlot_r17_01 }, + { &hf_lpp_differentNumerologyBetweenSRSposAndInitialBWP_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_differentNumerologyBetweenSRSposAndInitialBWP_r17 }, + { &hf_lpp_srsPosWithoutRestrictionOnBWP_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_srsPosWithoutRestrictionOnBWP_r17 }, + { &hf_lpp_maxNumOfPeriodicAndSemiPeristentSRSposResources_r17_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_maxNumOfPeriodicAndSemiPeristentSRSposResources_r17_01 }, + { &hf_lpp_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17_01 }, + { &hf_lpp_differentCenterFreqBetweenSRSposAndInitialBWP_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_differentCenterFreqBetweenSRSposAndInitialBWP_r17 }, + { &hf_lpp_maxNumOfSemiPersistentSRSposResources_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_maxNumOfSemiPersistentSRSposResources_r17 }, + { &hf_lpp_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17_01 }, + { &hf_lpp_switchingTimeSRS_TX_OtherTX_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_switchingTimeSRS_TX_OtherTX_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_PosSRS_RRC_Inactive_OutsideInitialUL_BWP_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_PosSRS_RRC_Inactive_OutsideInitialUL_BWP_r17, PosSRS_RRC_Inactive_OutsideInitialUL_BWP_r17_sequence); + + return offset; +} + + +static const per_sequence_t SRS_CapabilityPerBand_r16_eag_1_sequence[] = { + { &hf_lpp_posSRS_RRC_Inactive_InInitialUL_BWP_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_PosSRS_RRC_Inactive_InInitialUL_BWP_r17 }, + { &hf_lpp_posSRS_RRC_Inactive_OutsideInitialUL_BWP_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_PosSRS_RRC_Inactive_OutsideInitialUL_BWP_r17 }, + { &hf_lpp_olpc_SRS_PosRRC_Inactive_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_OLPC_SRS_Pos_r16 }, + { &hf_lpp_spatialRelationsSRS_PosRRC_Inactive_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_SpatialRelationsSRS_Pos_r16 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_SRS_CapabilityPerBand_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SRS_CapabilityPerBand_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t SRS_CapabilityPerBand_r16_sequence[] = { { &hf_lpp_freqBandIndicatorNR_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_FreqBandIndicatorNR_r16 }, { &hf_lpp_olpc_SRS_Pos_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_OLPC_SRS_Pos_r16 }, { &hf_lpp_spatialRelationsSRS_Pos_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_SpatialRelationsSRS_Pos_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_SRS_CapabilityPerBand_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -9248,6 +11708,238 @@ dissect_lpp_T_periodicalReporting_r16_01(tvbuff_t *tvb _U_, int offset _U_, asn1 } +static const value_string lpp_T_ten_ms_unit_ResponseTime_r17_01_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_ten_ms_unit_ResponseTime_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static int * const T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_02_bits[] = { + &hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_02_eAoD, + &hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_02_eAoA, + NULL +}; + +static int +dissect_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_02_bits, 2, NULL, NULL); + + return offset; +} + + +static const value_string lpp_T_nr_on_demand_DL_PRS_InformationSup_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_nr_on_demand_DL_PRS_InformationSup_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_nr_on_demand_DL_PRS_ConfigurationsSup_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_nr_on_demand_DL_PRS_ConfigurationsSup_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NR_On_Demand_DL_PRS_Support_r17_sequence[] = { + { &hf_lpp_nr_on_demand_DL_PRS_InformationSup_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_nr_on_demand_DL_PRS_InformationSup_r17 }, + { &hf_lpp_nr_on_demand_DL_PRS_ConfigurationsSup_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_nr_on_demand_DL_PRS_ConfigurationsSup_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_On_Demand_DL_PRS_Support_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_On_Demand_DL_PRS_Support_r17, NR_On_Demand_DL_PRS_Support_r17_sequence); + + return offset; +} + + +static int * const T_nr_UE_RxTx_TEG_ID_ReportingSupport_r17_bits[] = { + &hf_lpp_T_nr_UE_RxTx_TEG_ID_ReportingSupport_r17_case1, + &hf_lpp_T_nr_UE_RxTx_TEG_ID_ReportingSupport_r17_case2, + &hf_lpp_T_nr_UE_RxTx_TEG_ID_ReportingSupport_r17_case3, + NULL +}; + +static int +dissect_lpp_T_nr_UE_RxTx_TEG_ID_ReportingSupport_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, T_nr_UE_RxTx_TEG_ID_ReportingSupport_r17_bits, 3, NULL, NULL); + + return offset; +} + + +static const value_string lpp_LOS_NLOS_IndicatorType2_r17_vals[] = { + { 0, "hardvalue" }, + { 1, "hardAndsoftvalue" }, + { 0, NULL } +}; + + +static int +dissect_lpp_LOS_NLOS_IndicatorType2_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_LOS_NLOS_IndicatorGranularity2_r17_vals[] = { + { 0, "trpspecific" }, + { 1, "resourcespecific" }, + { 2, "both" }, + { 0, NULL } +}; + + +static int +dissect_lpp_LOS_NLOS_IndicatorGranularity2_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_nr_los_nlos_IndicatorSupport_r17_02_sequence[] = { + { &hf_lpp_type_r17_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_LOS_NLOS_IndicatorType2_r17 }, + { &hf_lpp_granularity_r17_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_LOS_NLOS_IndicatorGranularity2_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_nr_los_nlos_IndicatorSupport_r17_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_nr_los_nlos_IndicatorSupport_r17_02, T_nr_los_nlos_IndicatorSupport_r17_02_sequence); + + return offset; +} + + +static const value_string lpp_T_additionalPathsExtSupport_r17_01_vals[] = { + { 0, "n4" }, + { 1, "n6" }, + { 2, "n8" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_additionalPathsExtSupport_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_lpp_INTEGER_1_maxNrOfAreas_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxNrOfAreas_r17, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_nr_dl_prs_AssistanceDataValidity_r17_02_sequence[] = { + { &hf_lpp_area_validity_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_maxNrOfAreas_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_nr_dl_prs_AssistanceDataValidity_r17_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_nr_dl_prs_AssistanceDataValidity_r17_02, T_nr_dl_prs_AssistanceDataValidity_r17_02_sequence); + + return offset; +} + + +static const value_string lpp_T_multiMeasInSameMeasReport_r17_02_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_multiMeasInSameMeasReport_r17_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_mg_ActivationRequest_r17_02_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_mg_ActivationRequest_r17_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NR_Multi_RTT_ProvideCapabilities_r16_eag_1_sequence[] = { + { &hf_lpp_ten_ms_unit_ResponseTime_r17_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_ten_ms_unit_ResponseTime_r17_01 }, + { &hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_02 }, + { &hf_lpp_nr_Multi_RTT_On_Demand_DL_PRS_Support_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_On_Demand_DL_PRS_Support_r17 }, + { &hf_lpp_nr_UE_RxTx_TEG_ID_ReportingSupport_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_UE_RxTx_TEG_ID_ReportingSupport_r17 }, + { &hf_lpp_nr_los_nlos_IndicatorSupport_r17_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_los_nlos_IndicatorSupport_r17_02 }, + { &hf_lpp_additionalPathsExtSupport_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_additionalPathsExtSupport_r17_01 }, + { &hf_lpp_scheduledLocationRequestSupported_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_ScheduledLocationTimeSupport_r17 }, + { &hf_lpp_nr_dl_prs_AssistanceDataValidity_r17_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_dl_prs_AssistanceDataValidity_r17_02 }, + { &hf_lpp_multiMeasInSameMeasReport_r17_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_multiMeasInSameMeasReport_r17_02 }, + { &hf_lpp_mg_ActivationRequest_r17_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_mg_ActivationRequest_r17_02 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_Multi_RTT_ProvideCapabilities_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_Multi_RTT_ProvideCapabilities_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_Multi_RTT_ProvideCapabilities_r16_sequence[] = { { &hf_lpp_nr_Multi_RTT_PRS_Capability_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_ResourcesCapability_r16 }, { &hf_lpp_nr_Multi_RTT_MeasurementCapability_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_Multi_RTT_MeasurementCapability_r16 }, @@ -9256,6 +11948,7 @@ static const per_sequence_t NR_Multi_RTT_ProvideCapabilities_r16_sequence[] = { { &hf_lpp_nr_UL_SRS_Capability_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_UL_SRS_Capability_r16 }, { &hf_lpp_additionalPathsReport_r16_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_additionalPathsReport_r16_01 }, { &hf_lpp_periodicalReporting_r16_02, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_periodicalReporting_r16_01 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_Multi_RTT_ProvideCapabilities_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -9308,10 +12001,60 @@ dissect_lpp_T_simul_NR_DL_AoD_Multi_RTT_r16(tvbuff_t *tvb _U_, int offset _U_, a } +static const value_string lpp_T_maxDL_PRS_FirstPathRSRP_MeasPerTRP_r17_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, + { 4, "n16" }, + { 5, "n24" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxDL_PRS_FirstPathRSRP_MeasPerTRP_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_dl_PRS_MeasRRC_Inactive_r17_01_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_dl_PRS_MeasRRC_Inactive_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t DL_AoD_MeasCapabilityPerBand_r16_eag_1_sequence[] = { + { &hf_lpp_maxDL_PRS_FirstPathRSRP_MeasPerTRP_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_maxDL_PRS_FirstPathRSRP_MeasPerTRP_r17 }, + { &hf_lpp_dl_PRS_MeasRRC_Inactive_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_dl_PRS_MeasRRC_Inactive_r17_01 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_DL_AoD_MeasCapabilityPerBand_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, DL_AoD_MeasCapabilityPerBand_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t DL_AoD_MeasCapabilityPerBand_r16_sequence[] = { { &hf_lpp_freqBandIndicatorNR_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_FreqBandIndicatorNR_r16 }, { &hf_lpp_simul_NR_DL_AoD_DL_TDOA_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_simul_NR_DL_AoD_DL_TDOA_r16 }, { &hf_lpp_simul_NR_DL_AoD_Multi_RTT_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_simul_NR_DL_AoD_Multi_RTT_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_DL_AoD_MeasCapabilityPerBand_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -9338,10 +12081,57 @@ dissect_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_DL_AoD_MeasCapabilityPerBand_r16(t } +static const value_string lpp_T_maxDL_PRS_RSRP_MeasurementFR1_r17_vals[] = { + { 0, "n16" }, + { 1, "n24" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxDL_PRS_RSRP_MeasurementFR1_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_maxDL_PRS_RSRP_MeasurementFR2_r17_vals[] = { + { 0, "n16" }, + { 1, "n24" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_maxDL_PRS_RSRP_MeasurementFR2_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NR_DL_AoD_MeasurementCapability_r16_eag_1_sequence[] = { + { &hf_lpp_maxDL_PRS_RSRP_MeasurementFR1_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_maxDL_PRS_RSRP_MeasurementFR1_r17 }, + { &hf_lpp_maxDL_PRS_RSRP_MeasurementFR2_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_maxDL_PRS_RSRP_MeasurementFR2_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_AoD_MeasurementCapability_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_AoD_MeasurementCapability_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_AoD_MeasurementCapability_r16_sequence[] = { { &hf_lpp_maxDL_PRS_RSRP_MeasurementFR1_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_1_8 }, { &hf_lpp_maxDL_PRS_RSRP_MeasurementFR2_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_1_8 }, { &hf_lpp_dl_AoD_MeasCapabilityBandList_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_DL_AoD_MeasCapabilityPerBand_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_AoD_MeasurementCapability_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -9354,6 +12144,168 @@ dissect_lpp_NR_DL_AoD_MeasurementCapability_r16(tvbuff_t *tvb _U_, int offset _U } +static int * const T_nr_PosCalcAssistanceSupport_r17_01_bits[] = { + &hf_lpp_T_nr_PosCalcAssistanceSupport_r17_01_trpLocSup, + &hf_lpp_T_nr_PosCalcAssistanceSupport_r17_01_beamInfoSup, + &hf_lpp_T_nr_PosCalcAssistanceSupport_r17_01_rtdInfoSup, + &hf_lpp_T_nr_PosCalcAssistanceSupport_r17_01_beamAntInfoSup, + NULL +}; + +static int +dissect_lpp_T_nr_PosCalcAssistanceSupport_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, T_nr_PosCalcAssistanceSupport_r17_01_bits, 4, NULL, NULL); + + return offset; +} + + +static const per_sequence_t T_nr_los_nlos_AssistanceDataSupport_r17_01_sequence[] = { + { &hf_lpp_type_r17_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_LOS_NLOS_IndicatorType2_r17 }, + { &hf_lpp_granularity_r17_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_LOS_NLOS_IndicatorGranularity2_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_nr_los_nlos_AssistanceDataSupport_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_nr_los_nlos_AssistanceDataSupport_r17_01, T_nr_los_nlos_AssistanceDataSupport_r17_01_sequence); + + return offset; +} + + +static int * const T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_01_bits[] = { + &hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_01_eAoD, + &hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_01_eAoA, + NULL +}; + +static int +dissect_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_01_bits, 2, NULL, NULL); + + return offset; +} + + +static const value_string lpp_T_nr_DL_PRS_BeamInfoSup_r17_vals[] = { + { 0, "sameSet" }, + { 1, "differentSet" }, + { 2, "sameOrDifferentSet" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_nr_DL_PRS_BeamInfoSup_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_dl_PRS_ResourcePrioritySubset_Sup_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_dl_PRS_ResourcePrioritySubset_Sup_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_nr_los_nlos_IndicatorSupport_r17_01_sequence[] = { + { &hf_lpp_type_r17_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_LOS_NLOS_IndicatorType2_r17 }, + { &hf_lpp_granularity_r17_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_LOS_NLOS_IndicatorGranularity2_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_nr_los_nlos_IndicatorSupport_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_nr_los_nlos_IndicatorSupport_r17_01, T_nr_los_nlos_IndicatorSupport_r17_01_sequence); + + return offset; +} + + +static const per_sequence_t T_nr_dl_prs_AssistanceDataValidity_r17_01_sequence[] = { + { &hf_lpp_area_validity_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_maxNrOfAreas_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_nr_dl_prs_AssistanceDataValidity_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_nr_dl_prs_AssistanceDataValidity_r17_01, T_nr_dl_prs_AssistanceDataValidity_r17_01_sequence); + + return offset; +} + + +static const value_string lpp_T_multiMeasInSameMeasReport_r17_01_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_multiMeasInSameMeasReport_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_mg_ActivationRequest_r17_01_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_mg_ActivationRequest_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NR_DL_AoD_ProvideCapabilities_r16_eag_1_sequence[] = { + { &hf_lpp_ten_ms_unit_ResponseTime_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_PositioningModes }, + { &hf_lpp_nr_PosCalcAssistanceSupport_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_PosCalcAssistanceSupport_r17_01 }, + { &hf_lpp_nr_los_nlos_AssistanceDataSupport_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_los_nlos_AssistanceDataSupport_r17_01 }, + { &hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_01 }, + { &hf_lpp_nr_DL_PRS_BeamInfoSup_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_DL_PRS_BeamInfoSup_r17 }, + { &hf_lpp_dl_PRS_ResourcePrioritySubset_Sup_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_dl_PRS_ResourcePrioritySubset_Sup_r17 }, + { &hf_lpp_nr_DL_AoD_On_Demand_DL_PRS_Support_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_On_Demand_DL_PRS_Support_r17 }, + { &hf_lpp_nr_los_nlos_IndicatorSupport_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_los_nlos_IndicatorSupport_r17_01 }, + { &hf_lpp_scheduledLocationRequestSupported_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_ScheduledLocationTimeSupportPerMode_r17 }, + { &hf_lpp_nr_dl_prs_AssistanceDataValidity_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_dl_prs_AssistanceDataValidity_r17_01 }, + { &hf_lpp_multiMeasInSameMeasReport_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_multiMeasInSameMeasReport_r17_01 }, + { &hf_lpp_mg_ActivationRequest_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_mg_ActivationRequest_r17_01 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_AoD_ProvideCapabilities_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_AoD_ProvideCapabilities_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_AoD_ProvideCapabilities_r16_sequence[] = { { &hf_lpp_nr_DL_AoD_Mode_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_PositioningModes }, { &hf_lpp_nr_DL_AoD_PRS_Capability_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_ResourcesCapability_r16 }, @@ -9361,6 +12313,7 @@ static const per_sequence_t NR_DL_AoD_ProvideCapabilities_r16_sequence[] = { { &hf_lpp_nr_DL_PRS_QCL_ProcessingCapability_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_QCL_ProcessingCapability_r16 }, { &hf_lpp_nr_DL_PRS_ProcessingCapability_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_ProcessingCapability_r16 }, { &hf_lpp_periodicalReporting_r16_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_PositioningModes }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_AoD_ProvideCapabilities_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -9403,11 +12356,86 @@ dissect_lpp_T_supportOfDL_PRS_RSRP_MeasFR2_r16(tvbuff_t *tvb _U_, int offset _U_ } +static const value_string lpp_T_supportOfDL_PRS_FirstPathRSRP_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_supportOfDL_PRS_FirstPathRSRP_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_dl_PRS_MeasRRC_Inactive_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_dl_PRS_MeasRRC_Inactive_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t DL_TDOA_MeasCapabilityPerBand_r17_sequence[] = { + { &hf_lpp_freqBandIndicatorNR_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_FreqBandIndicatorNR_r16 }, + { &hf_lpp_supportOfDL_PRS_FirstPathRSRP_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_supportOfDL_PRS_FirstPathRSRP_r17 }, + { &hf_lpp_dl_PRS_MeasRRC_Inactive_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_dl_PRS_MeasRRC_Inactive_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_DL_TDOA_MeasCapabilityPerBand_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_DL_TDOA_MeasCapabilityPerBand_r17, DL_TDOA_MeasCapabilityPerBand_r17_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_nrMaxBands_r16_OF_DL_TDOA_MeasCapabilityPerBand_r17_sequence_of[1] = { + { &hf_lpp_dl_tdoa_MeasCapabilityBandList_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_DL_TDOA_MeasCapabilityPerBand_r17 }, +}; + +static int +dissect_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_DL_TDOA_MeasCapabilityPerBand_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_DL_TDOA_MeasCapabilityPerBand_r17, SEQUENCE_SIZE_1_nrMaxBands_r16_OF_DL_TDOA_MeasCapabilityPerBand_r17_sequence_of, + 1, nrMaxBands_r16, FALSE); + + return offset; +} + + +static const per_sequence_t NR_DL_TDOA_MeasurementCapability_r16_eag_1_sequence[] = { + { &hf_lpp_nr_UE_TEG_Capability_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_UE_TEG_Capability_r17 }, + { &hf_lpp_dl_tdoa_MeasCapabilityBandList_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_DL_TDOA_MeasCapabilityPerBand_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_TDOA_MeasurementCapability_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_TDOA_MeasurementCapability_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_TDOA_MeasurementCapability_r16_sequence[] = { { &hf_lpp_dl_RSTD_MeasurementPerPairOfTRP_FR1_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_1_4 }, { &hf_lpp_dl_RSTD_MeasurementPerPairOfTRP_FR2_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_1_4 }, { &hf_lpp_supportOfDL_PRS_RSRP_MeasFR1_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_supportOfDL_PRS_RSRP_MeasFR1_r16 }, { &hf_lpp_supportOfDL_PRS_RSRP_MeasFR2_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_supportOfDL_PRS_RSRP_MeasFR2_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_TDOA_MeasurementCapability_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -9435,6 +12463,152 @@ dissect_lpp_T_additionalPathsReport_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ } +static int * const T_nr_PosCalcAssistanceSupport_r17_bits[] = { + &hf_lpp_T_nr_PosCalcAssistanceSupport_r17_trpLocSup, + &hf_lpp_T_nr_PosCalcAssistanceSupport_r17_beamInfoSup, + &hf_lpp_T_nr_PosCalcAssistanceSupport_r17_rtdInfoSup, + &hf_lpp_T_nr_PosCalcAssistanceSupport_r17_trpTEG_InfoSup, + NULL +}; + +static int +dissect_lpp_T_nr_PosCalcAssistanceSupport_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, T_nr_PosCalcAssistanceSupport_r17_bits, 4, NULL, NULL); + + return offset; +} + + +static const per_sequence_t T_nr_los_nlos_AssistanceDataSupport_r17_sequence[] = { + { &hf_lpp_type_r17_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_LOS_NLOS_IndicatorType2_r17 }, + { &hf_lpp_granularity_r17_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_LOS_NLOS_IndicatorGranularity2_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_nr_los_nlos_AssistanceDataSupport_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_nr_los_nlos_AssistanceDataSupport_r17, T_nr_los_nlos_AssistanceDataSupport_r17_sequence); + + return offset; +} + + +static int * const T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_bits[] = { + &hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_eAoD, + &hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_eAoA, + NULL +}; + +static int +dissect_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_bits, 2, NULL, NULL); + + return offset; +} + + +static const per_sequence_t T_nr_los_nlos_IndicatorSupport_r17_sequence[] = { + { &hf_lpp_type_r17_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_LOS_NLOS_IndicatorType2_r17 }, + { &hf_lpp_granularity_r17_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_LOS_NLOS_IndicatorGranularity2_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_nr_los_nlos_IndicatorSupport_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_nr_los_nlos_IndicatorSupport_r17, T_nr_los_nlos_IndicatorSupport_r17_sequence); + + return offset; +} + + +static const value_string lpp_T_additionalPathsExtSupport_r17_vals[] = { + { 0, "n4" }, + { 1, "n6" }, + { 2, "n8" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_additionalPathsExtSupport_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_nr_dl_prs_AssistanceDataValidity_r17_sequence[] = { + { &hf_lpp_area_validity_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_maxNrOfAreas_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_nr_dl_prs_AssistanceDataValidity_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_nr_dl_prs_AssistanceDataValidity_r17, T_nr_dl_prs_AssistanceDataValidity_r17_sequence); + + return offset; +} + + +static const value_string lpp_T_multiMeasInSameMeasReport_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_multiMeasInSameMeasReport_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_mg_ActivationRequest_r17_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_mg_ActivationRequest_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NR_DL_TDOA_ProvideCapabilities_r16_eag_1_sequence[] = { + { &hf_lpp_ten_ms_unit_ResponseTime_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_PositioningModes }, + { &hf_lpp_nr_PosCalcAssistanceSupport_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_PosCalcAssistanceSupport_r17 }, + { &hf_lpp_nr_los_nlos_AssistanceDataSupport_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_los_nlos_AssistanceDataSupport_r17 }, + { &hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17 }, + { &hf_lpp_nr_DL_TDOA_On_Demand_DL_PRS_Support_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_On_Demand_DL_PRS_Support_r17 }, + { &hf_lpp_nr_los_nlos_IndicatorSupport_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_los_nlos_IndicatorSupport_r17 }, + { &hf_lpp_additionalPathsExtSupport_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_additionalPathsExtSupport_r17 }, + { &hf_lpp_scheduledLocationRequestSupported_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_ScheduledLocationTimeSupportPerMode_r17 }, + { &hf_lpp_nr_dl_prs_AssistanceDataValidity_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_dl_prs_AssistanceDataValidity_r17 }, + { &hf_lpp_multiMeasInSameMeasReport_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_multiMeasInSameMeasReport_r17 }, + { &hf_lpp_mg_ActivationRequest_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_mg_ActivationRequest_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_TDOA_ProvideCapabilities_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_TDOA_ProvideCapabilities_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_TDOA_ProvideCapabilities_r16_sequence[] = { { &hf_lpp_nr_DL_TDOA_Mode_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_PositioningModes }, { &hf_lpp_nr_DL_TDOA_PRS_Capability_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_ResourcesCapability_r16 }, @@ -9443,6 +12617,7 @@ static const per_sequence_t NR_DL_TDOA_ProvideCapabilities_r16_sequence[] = { { &hf_lpp_nr_DL_PRS_ProcessingCapability_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_ProcessingCapability_r16 }, { &hf_lpp_additionalPathsReport_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_additionalPathsReport_r16 }, { &hf_lpp_periodicalReporting_r16_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_PositioningModes }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_TDOA_ProvideCapabilities_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -9455,8 +12630,22 @@ dissect_lpp_NR_DL_TDOA_ProvideCapabilities_r16(tvbuff_t *tvb _U_, int offset _U_ } +static const per_sequence_t NR_UL_ProvideCapabilities_r16_eag_1_sequence[] = { + { &hf_lpp_nr_UE_TEG_Capability_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_UE_TEG_Capability_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_UL_ProvideCapabilities_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_UL_ProvideCapabilities_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_UL_ProvideCapabilities_r16_sequence[] = { { &hf_lpp_nr_UL_SRS_Capability_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_UL_SRS_Capability_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_UL_ProvideCapabilities_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -9574,7 +12763,7 @@ static const per_sequence_t ProvideCapabilities_sequence[] = { static int dissect_lpp_ProvideCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 128 "./asn1/lpp/lpp.cnf" +#line 133 "./asn1/lpp/lpp.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Provide Capabilities"); @@ -10041,6 +13230,46 @@ dissect_lpp_GNSS_CommonAssistDataReq_eag_2(tvbuff_t *tvb _U_, int offset _U_, as } +static const per_sequence_t GNSS_Integrity_ServiceParametersReq_r17_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lpp_GNSS_Integrity_ServiceParametersReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_GNSS_Integrity_ServiceParametersReq_r17, GNSS_Integrity_ServiceParametersReq_r17_sequence); + + return offset; +} + + +static const per_sequence_t GNSS_Integrity_ServiceAlertReq_r17_sequence[] = { + { NULL, ASN1_EXTENSION_ROOT, 0, NULL } +}; + +static int +dissect_lpp_GNSS_Integrity_ServiceAlertReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_GNSS_Integrity_ServiceAlertReq_r17, GNSS_Integrity_ServiceAlertReq_r17_sequence); + + return offset; +} + + +static const per_sequence_t GNSS_CommonAssistDataReq_eag_3_sequence[] = { + { &hf_lpp_gnss_Integrity_ServiceParametersReq_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_GNSS_Integrity_ServiceParametersReq_r17 }, + { &hf_lpp_gnss_Integrity_ServiceAlertReq_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_GNSS_Integrity_ServiceAlertReq_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_CommonAssistDataReq_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_CommonAssistDataReq_eag_3_sequence); + + return offset; +} + + static const per_sequence_t GNSS_CommonAssistDataReq_sequence[] = { { &hf_lpp_gnss_ReferenceTimeReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_ReferenceTimeReq }, { &hf_lpp_gnss_ReferenceLocationReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_ReferenceLocationReq }, @@ -10048,6 +13277,7 @@ static const per_sequence_t GNSS_CommonAssistDataReq_sequence[] = { { &hf_lpp_gnss_EarthOrientationParametersReq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_EarthOrientationParametersReq }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_CommonAssistDataReq_eag_1 }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_CommonAssistDataReq_eag_2 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_CommonAssistDataReq_eag_3 }, { NULL, 0, 0, NULL } }; @@ -10120,7 +13350,7 @@ dissect_lpp_T_gnss_WeekOrDay(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 0U, 4095U, NULL, FALSE); -#line 1570 "./asn1/lpp/lpp.cnf" +#line 1575 "./asn1/lpp/lpp.cnf" proto_item_append_text(actx->created_item, " (days for glonass, weeks otherwise)"); @@ -10134,7 +13364,7 @@ dissect_lpp_T_gnss_Toe(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 0U, 255U, NULL, FALSE); -#line 1573 "./asn1/lpp/lpp.cnf" +#line 1578 "./asn1/lpp/lpp.cnf" proto_item_append_text(actx->created_item, " (units of 15 mns for glonass, hours otherwise)"); @@ -10148,7 +13378,7 @@ dissect_lpp_T_t_toeLimit(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 0U, 15U, NULL, FALSE); -#line 1576 "./asn1/lpp/lpp.cnf" +#line 1581 "./asn1/lpp/lpp.cnf" proto_item_append_text(actx->created_item, " (units of 30 mns for glonass, hours otherwise)"); @@ -10673,8 +13903,36 @@ dissect_lpp_GNSS_NavListInfo_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } +static int * const T_orbit_IntegrityReq_r17_bits[] = { + &hf_lpp_T_orbit_IntegrityReq_r17_correlationTimeReq, + NULL +}; + +static int +dissect_lpp_T_orbit_IntegrityReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, T_orbit_IntegrityReq_r17_bits, 1, NULL, NULL); + + return offset; +} + + +static const per_sequence_t GNSS_SSR_OrbitCorrectionsReq_r15_eag_1_sequence[] = { + { &hf_lpp_orbit_IntegrityReq_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_orbit_IntegrityReq_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_SSR_OrbitCorrectionsReq_r15_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_SSR_OrbitCorrectionsReq_r15_eag_1_sequence); + + return offset; +} + + static const per_sequence_t GNSS_SSR_OrbitCorrectionsReq_r15_sequence[] = { { &hf_lpp_storedNavList_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_NavListInfo_r15 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SSR_OrbitCorrectionsReq_r15_eag_1 }, { NULL, 0, 0, NULL } }; @@ -10687,8 +13945,53 @@ dissect_lpp_GNSS_SSR_OrbitCorrectionsReq_r15(tvbuff_t *tvb _U_, int offset _U_, } +static const value_string lpp_T_clock_IntegrityParametersReq_r17_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_clock_IntegrityParametersReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_ssr_IntegrityClockBoundsReq_r17_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_ssr_IntegrityClockBoundsReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t GNSS_SSR_ClockCorrectionsReq_r15_eag_1_sequence[] = { + { &hf_lpp_clock_IntegrityParametersReq_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_clock_IntegrityParametersReq_r17 }, + { &hf_lpp_ssr_IntegrityClockBoundsReq_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_ssr_IntegrityClockBoundsReq_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_SSR_ClockCorrectionsReq_r15_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_SSR_ClockCorrectionsReq_r15_eag_1_sequence); + + return offset; +} + + static const per_sequence_t GNSS_SSR_ClockCorrectionsReq_r15_sequence[] = { { &hf_lpp_storedNavList_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_NavListInfo_r15 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SSR_ClockCorrectionsReq_r15_eag_1 }, { NULL, 0, 0, NULL } }; @@ -10701,9 +14004,38 @@ dissect_lpp_GNSS_SSR_ClockCorrectionsReq_r15(tvbuff_t *tvb _U_, int offset _U_, } +static const value_string lpp_T_ssr_IntegrityCodeBiasBoundsReq_r17_vals[] = { + { 0, "requested" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_ssr_IntegrityCodeBiasBoundsReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t GNSS_SSR_CodeBiasReq_r15_eag_1_sequence[] = { + { &hf_lpp_ssr_IntegrityCodeBiasBoundsReq_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_ssr_IntegrityCodeBiasBoundsReq_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_SSR_CodeBiasReq_r15_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_SSR_CodeBiasReq_r15_eag_1_sequence); + + return offset; +} + + static const per_sequence_t GNSS_SSR_CodeBiasReq_r15_sequence[] = { { &hf_lpp_signal_and_tracking_mode_ID_Map_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalIDs }, { &hf_lpp_storedNavList_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_NavListInfo_r15 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SSR_CodeBiasReq_r15_eag_1 }, { NULL, 0, 0, NULL } }; @@ -10749,9 +14081,38 @@ dissect_lpp_GNSS_SSR_URA_Req_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } +static const value_string lpp_T_ssr_IntegrityPhaseBiasBoundsReq_r17_vals[] = { + { 0, "requested" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_ssr_IntegrityPhaseBiasBoundsReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t GNSS_SSR_PhaseBiasReq_r16_eag_1_sequence[] = { + { &hf_lpp_ssr_IntegrityPhaseBiasBoundsReq_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_ssr_IntegrityPhaseBiasBoundsReq_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_SSR_PhaseBiasReq_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_SSR_PhaseBiasReq_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t GNSS_SSR_PhaseBiasReq_r16_sequence[] = { { &hf_lpp_signal_and_tracking_mode_ID_Map_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalIDs }, { &hf_lpp_storedNavList_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_NavListInfo_r15 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SSR_PhaseBiasReq_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -10764,8 +14125,36 @@ dissect_lpp_GNSS_SSR_PhaseBiasReq_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } +static int * const T_stec_IntegrityReq_r17_bits[] = { + &hf_lpp_T_stec_IntegrityReq_r17_correlationTimeReq, + NULL +}; + +static int +dissect_lpp_T_stec_IntegrityReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, T_stec_IntegrityReq_r17_bits, 1, NULL, NULL); + + return offset; +} + + +static const per_sequence_t GNSS_SSR_STEC_CorrectionReq_r16_eag_1_sequence[] = { + { &hf_lpp_stec_IntegrityReq_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_stec_IntegrityReq_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_SSR_STEC_CorrectionReq_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_SSR_STEC_CorrectionReq_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t GNSS_SSR_STEC_CorrectionReq_r16_sequence[] = { - { NULL, ASN1_EXTENSION_ROOT, 0, NULL } + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SSR_STEC_CorrectionReq_r16_eag_1 }, + { NULL, 0, 0, NULL } }; static int @@ -10777,8 +14166,37 @@ dissect_lpp_GNSS_SSR_STEC_CorrectionReq_r16(tvbuff_t *tvb _U_, int offset _U_, a } +static const value_string lpp_T_griddedCorrectionIntegrityReq_r17_vals[] = { + { 0, "requested" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_griddedCorrectionIntegrityReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t GNSS_SSR_GriddedCorrectionReq_r16_eag_1_sequence[] = { + { &hf_lpp_griddedCorrectionIntegrityReq_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_griddedCorrectionIntegrityReq_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_SSR_GriddedCorrectionReq_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_SSR_GriddedCorrectionReq_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t GNSS_SSR_GriddedCorrectionReq_r16_sequence[] = { - { NULL, ASN1_EXTENSION_ROOT, 0, NULL } + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SSR_GriddedCorrectionReq_r16_eag_1 }, + { NULL, 0, 0, NULL } }; static int @@ -10927,6 +14345,19 @@ dissect_lpp_GNSS_PeriodicAssistDataReq_r15_eag_1(tvbuff_t *tvb _U_, int offset _ } +static const per_sequence_t GNSS_PeriodicAssistDataReq_r15_eag_2_sequence[] = { + { &hf_lpp_gnss_Integrity_PeriodicServiceAlertReq_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_GNSS_PeriodicControlParam_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_PeriodicAssistDataReq_r15_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_PeriodicAssistDataReq_r15_eag_2_sequence); + + return offset; +} + + static const per_sequence_t GNSS_PeriodicAssistDataReq_r15_sequence[] = { { &hf_lpp_gnss_RTK_PeriodicObservationsReq_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_PeriodicControlParam_r15 }, { &hf_lpp_glo_RTK_PeriodicBiasInformationReq_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_PeriodicControlParam_r15 }, @@ -10937,6 +14368,7 @@ static const per_sequence_t GNSS_PeriodicAssistDataReq_r15_sequence[] = { { &hf_lpp_gnss_SSR_PeriodicClockCorrectionsReq_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_PeriodicControlParam_r15 }, { &hf_lpp_gnss_SSR_PeriodicCodeBiasReq_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_PeriodicControlParam_r15 }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_PeriodicAssistDataReq_r15_eag_1 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_PeriodicAssistDataReq_r15_eag_2 }, { NULL, 0, 0, NULL } }; @@ -11111,7 +14543,7 @@ dissect_lpp_OCTET_STRING_SIZE_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int dissect_lpp_T_ssid_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1779 "./asn1/lpp/lpp.cnf" +#line 1784 "./asn1/lpp/lpp.cnf" tvbuff_t *ssid_tvb = NULL; offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, @@ -11224,9 +14656,504 @@ dissect_lpp_T_nr_AdType_r16_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac } + +static int +dissect_lpp_INTEGER_1_1024(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 1024U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lpp_INTEGER_0_59(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 59U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lpp_INTEGER_0_23(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 23U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_dl_prs_duration_r17_sequence[] = { + { &hf_lpp_seconds_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_59 }, + { &hf_lpp_minutes_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_59 }, + { &hf_lpp_hours_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_23 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_dl_prs_duration_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_dl_prs_duration_r17, T_dl_prs_duration_r17_sequence); + + return offset; +} + + +static const per_sequence_t DL_PRS_StartTime_and_Duration_r17_sequence[] = { + { &hf_lpp_dl_prs_start_time_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_1024 }, + { &hf_lpp_dl_prs_duration_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_dl_prs_duration_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_DL_PRS_StartTime_and_Duration_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_DL_PRS_StartTime_and_Duration_r17, DL_PRS_StartTime_and_Duration_r17_sequence); + + return offset; +} + + +static const value_string lpp_T_dl_prs_FrequencyRangeReq_r17_vals[] = { + { 0, "fr1" }, + { 1, "fr2" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_dl_prs_FrequencyRangeReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_dl_prs_ResourceSetPeriodicityReq_r17_vals[] = { + { 0, "p4" }, + { 1, "p5" }, + { 2, "p8" }, + { 3, "p10" }, + { 4, "p16" }, + { 5, "p20" }, + { 6, "p32" }, + { 7, "p40" }, + { 8, "p64" }, + { 9, "p80" }, + { 10, "p160" }, + { 11, "p320" }, + { 12, "p640" }, + { 13, "p1280" }, + { 14, "p2560" }, + { 15, "p5120" }, + { 16, "p10240" }, + { 17, "p20480" }, + { 18, "p40960" }, + { 19, "p81920" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_dl_prs_ResourceSetPeriodicityReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 20, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_lpp_INTEGER_1_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 63U, NULL, FALSE); + + return offset; +} + + +static const value_string lpp_T_dl_prs_ResourceRepetitionFactorReq_r17_vals[] = { + { 0, "n2" }, + { 1, "n4" }, + { 2, "n6" }, + { 3, "n8" }, + { 4, "n16" }, + { 5, "n32" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_dl_prs_ResourceRepetitionFactorReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_dl_prs_NumSymbolsReq_r17_vals[] = { + { 0, "n2" }, + { 1, "n4" }, + { 2, "n6" }, + { 3, "n12" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_dl_prs_NumSymbolsReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_dl_prs_CombSizeN_Req_r17_vals[] = { + { 0, "n2" }, + { 1, "n4" }, + { 2, "n6" }, + { 3, "n12" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_dl_prs_CombSizeN_Req_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, NULL, TRUE, 0, NULL); + + return offset; +} + + + +static int +dissect_lpp_ARFCN_ValueNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3279165U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lpp_NR_DL_PRS_ResourceSetID_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, nrMaxNumDL_PRS_ResourceSetsPerTRP_1_r16, NULL, FALSE); + + return offset; +} + + +static const value_string lpp_T_rs_Type_r16_vals[] = { + { 0, "typeC" }, + { 1, "typeD" }, + { 2, "typeC-plus-typeD" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_rs_Type_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_ssb_r16_sequence[] = { + { &hf_lpp_pci_r16 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_PhysCellID_r16 }, + { &hf_lpp_ssb_Index_r16 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_63 }, + { &hf_lpp_rs_Type_r16 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_T_rs_Type_r16 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_ssb_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_ssb_r16, T_ssb_r16_sequence); + + return offset; +} + + + +static int +dissect_lpp_NR_DL_PRS_ResourceID_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, nrMaxNumDL_PRS_ResourcesPerSet_1_r16, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_dl_PRS_r16_sequence[] = { + { &hf_lpp_qcl_DL_PRS_ResourceID_r16, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_ResourceID_r16 }, + { &hf_lpp_qcl_DL_PRS_ResourceSetID_r16, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_ResourceSetID_r16 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_dl_PRS_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_dl_PRS_r16, T_dl_PRS_r16_sequence); + + return offset; +} + + +static const value_string lpp_DL_PRS_QCL_Info_r16_vals[] = { + { 0, "ssb-r16" }, + { 1, "dl-PRS-r16" }, + { 0, NULL } +}; + +static const per_choice_t DL_PRS_QCL_Info_r16_choice[] = { + { 0, &hf_lpp_ssb_r16 , ASN1_NO_EXTENSIONS , dissect_lpp_T_ssb_r16 }, + { 1, &hf_lpp_dl_PRS_r16 , ASN1_NO_EXTENSIONS , dissect_lpp_T_dl_PRS_r16 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lpp_DL_PRS_QCL_Info_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lpp_DL_PRS_QCL_Info_r16, DL_PRS_QCL_Info_r16_choice, + NULL); + + return offset; +} + + +static const value_string lpp_T_dl_prs_QCL_InformationReq_r17_vals[] = { + { 0, "nr-DL-PRS-QCL-Source-r17" }, + { 1, "dl-prs-QCL-Info-requested-r17" }, + { 0, NULL } +}; + +static const per_choice_t T_dl_prs_QCL_InformationReq_r17_choice[] = { + { 0, &hf_lpp_nr_DL_PRS_QCL_Source_r17, ASN1_NO_EXTENSIONS , dissect_lpp_DL_PRS_QCL_Info_r16 }, + { 1, &hf_lpp_dl_prs_QCL_Info_requested_r17, ASN1_NO_EXTENSIONS , dissect_lpp_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lpp_T_dl_prs_QCL_InformationReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lpp_T_dl_prs_QCL_InformationReq_r17, T_dl_prs_QCL_InformationReq_r17_choice, + NULL); + + return offset; +} + + +static const per_sequence_t DL_PRS_QCL_InfoReq_r17_sequence[] = { + { &hf_lpp_nr_DL_PRS_ResourceSetID_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_ResourceSetID_r16 }, + { &hf_lpp_dl_prs_QCL_InformationReq_r17_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_dl_prs_QCL_InformationReq_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_DL_PRS_QCL_InfoReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_DL_PRS_QCL_InfoReq_r17, DL_PRS_QCL_InfoReq_r17_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_QCL_InfoReq_r17_sequence_of[1] = { + { &hf_lpp_dl_prs_QCL_InformationReqSet_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_DL_PRS_QCL_InfoReq_r17 }, +}; + +static int +dissect_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_QCL_InfoReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_QCL_InfoReq_r17, SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_QCL_InfoReq_r17_sequence_of, + 1, nrMaxSetsPerTrpPerFreqLayer_r16, FALSE); + + return offset; +} + + +static const per_sequence_t DL_PRS_QCL_InformationReqPerTRP_r17_sequence[] = { + { &hf_lpp_dl_PRS_ID_r17 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_nr_PhysCellID_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_PhysCellID_r16 }, + { &hf_lpp_nr_CellGlobalID_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NCGI_r15 }, + { &hf_lpp_nr_ARFCN_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_ARFCN_ValueNR_r15 }, + { &hf_lpp_dl_prs_QCL_InformationReqSet_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_QCL_InfoReq_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_DL_PRS_QCL_InformationReqPerTRP_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_DL_PRS_QCL_InformationReqPerTRP_r17, DL_PRS_QCL_InformationReqPerTRP_r17_sequence); + + return offset; +} + + +static const per_sequence_t DL_PRS_QCL_InformationReq_r17_sequence_of[1] = { + { &hf_lpp_DL_PRS_QCL_InformationReq_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_DL_PRS_QCL_InformationReqPerTRP_r17 }, +}; + +static int +dissect_lpp_DL_PRS_QCL_InformationReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_DL_PRS_QCL_InformationReq_r17, DL_PRS_QCL_InformationReq_r17_sequence_of, + 1, nrMaxTRPsPerFreq_r16, FALSE); + + return offset; +} + + +static const per_sequence_t NR_On_Demand_DL_PRS_PerFreqLayer_r17_sequence[] = { + { &hf_lpp_dl_prs_FrequencyRangeReq_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_dl_prs_FrequencyRangeReq_r17 }, + { &hf_lpp_dl_prs_ResourceSetPeriodicityReq_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_dl_prs_ResourceSetPeriodicityReq_r17 }, + { &hf_lpp_dl_prs_ResourceBandwidthReq_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_63 }, + { &hf_lpp_dl_prs_ResourceRepetitionFactorReq_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_dl_prs_ResourceRepetitionFactorReq_r17 }, + { &hf_lpp_dl_prs_NumSymbolsReq_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_dl_prs_NumSymbolsReq_r17 }, + { &hf_lpp_dl_prs_CombSizeN_Req_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_dl_prs_CombSizeN_Req_r17 }, + { &hf_lpp_dl_prs_QCL_InformationReq_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_DL_PRS_QCL_InformationReq_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_On_Demand_DL_PRS_PerFreqLayer_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_On_Demand_DL_PRS_PerFreqLayer_r17, NR_On_Demand_DL_PRS_PerFreqLayer_r17_sequence); + + return offset; +} + + +static const per_sequence_t NR_On_Demand_DL_PRS_Information_r17_sequence_of[1] = { + { &hf_lpp_NR_On_Demand_DL_PRS_Information_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_On_Demand_DL_PRS_PerFreqLayer_r17 }, +}; + +static int +dissect_lpp_NR_On_Demand_DL_PRS_Information_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_On_Demand_DL_PRS_Information_r17, NR_On_Demand_DL_PRS_Information_r17_sequence_of, + 1, nrMaxFreqLayers_r16, FALSE); + + return offset; +} + + + +static int +dissect_lpp_INTEGER_1_maxOD_DL_PRS_Configs_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxOD_DL_PRS_Configs_r17, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t DL_PRS_Configuration_ID_r17_sequence[] = { + { &hf_lpp_nr_dl_prs_configuration_id_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_1_maxOD_DL_PRS_Configs_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_DL_PRS_Configuration_ID_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_DL_PRS_Configuration_ID_r17, DL_PRS_Configuration_ID_r17_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_DL_PRS_Configuration_ID_r17_sequence_of[1] = { + { &hf_lpp_dl_prs_configuration_id_PrefList_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_DL_PRS_Configuration_ID_r17 }, +}; + +static int +dissect_lpp_SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_DL_PRS_Configuration_ID_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_DL_PRS_Configuration_ID_r17, SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_DL_PRS_Configuration_ID_r17_sequence_of, + 1, maxOD_DL_PRS_Configs_r17, FALSE); + + return offset; +} + + +static const per_sequence_t NR_On_Demand_DL_PRS_Request_r17_sequence[] = { + { &hf_lpp_dl_prs_StartTime_and_Duration_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_DL_PRS_StartTime_and_Duration_r17 }, + { &hf_lpp_nr_on_demand_DL_PRS_Information_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_On_Demand_DL_PRS_Information_r17 }, + { &hf_lpp_dl_prs_configuration_id_PrefList_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_DL_PRS_Configuration_ID_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_On_Demand_DL_PRS_Request_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_On_Demand_DL_PRS_Request_r17, NR_On_Demand_DL_PRS_Request_r17_sequence); + + return offset; +} + + +static const value_string lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_02_vals[] = { + { 0, "eAoD" }, + { 1, "eAoA" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_pre_configured_AssistanceDataRequest_r17_02_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_pre_configured_AssistanceDataRequest_r17_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NR_Multi_RTT_RequestAssistanceData_r16_eag_1_sequence[] = { + { &hf_lpp_nr_on_demand_DL_PRS_Request_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_On_Demand_DL_PRS_Request_r17 }, + { &hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_02 }, + { &hf_lpp_pre_configured_AssistanceDataRequest_r17_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_pre_configured_AssistanceDataRequest_r17_02 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_Multi_RTT_RequestAssistanceData_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_Multi_RTT_RequestAssistanceData_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_Multi_RTT_RequestAssistanceData_r16_sequence[] = { { &hf_lpp_nr_PhysCellID_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_PhysCellID_r16 }, { &hf_lpp_nr_AdType_r16_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_nr_AdType_r16_02 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_Multi_RTT_RequestAssistanceData_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -11254,9 +15181,91 @@ dissect_lpp_T_nr_AdType_r16_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac } +static int * const T_nr_PosCalcAssistanceRequest_r17_01_bits[] = { + &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_01_trpLoc, + &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_01_beamInfo, + &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_01_rtdInfo, + &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_01_beamAntInfo, + &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_01_losNlosInfo, + NULL +}; + +static int +dissect_lpp_T_nr_PosCalcAssistanceRequest_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, T_nr_PosCalcAssistanceRequest_r17_01_bits, 5, NULL, NULL); + + return offset; +} + + +static const value_string lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_01_vals[] = { + { 0, "eAoD" }, + { 1, "eAoA" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_nr_DL_PRS_BeamInfoRequest_r17_vals[] = { + { 0, "requested" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_nr_DL_PRS_BeamInfoRequest_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_pre_configured_AssistanceDataRequest_r17_01_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_pre_configured_AssistanceDataRequest_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NR_DL_AoD_RequestAssistanceData_r16_eag_1_sequence[] = { + { &hf_lpp_nr_PosCalcAssistanceRequest_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_PosCalcAssistanceRequest_r17_01 }, + { &hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_01 }, + { &hf_lpp_nr_DL_PRS_BeamInfoRequest_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_DL_PRS_BeamInfoRequest_r17 }, + { &hf_lpp_nr_on_demand_DL_PRS_Request_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_On_Demand_DL_PRS_Request_r17 }, + { &hf_lpp_pre_configured_AssistanceDataRequest_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_pre_configured_AssistanceDataRequest_r17_01 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_AoD_RequestAssistanceData_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_AoD_RequestAssistanceData_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_AoD_RequestAssistanceData_r16_sequence[] = { { &hf_lpp_nr_PhysCellID_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_PhysCellID_r16 }, { &hf_lpp_nr_AdType_r16_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_nr_AdType_r16_01 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_AoD_RequestAssistanceData_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -11284,9 +15293,75 @@ dissect_lpp_T_nr_AdType_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static int * const T_nr_PosCalcAssistanceRequest_r17_bits[] = { + &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_trpLoc, + &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_beamInfo, + &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_rtdInfo, + &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_losNlosInfo, + &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_trpTEG_Info, + NULL +}; + +static int +dissect_lpp_T_nr_PosCalcAssistanceRequest_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 1, 8, FALSE, T_nr_PosCalcAssistanceRequest_r17_bits, 5, NULL, NULL); + + return offset; +} + + +static const value_string lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_vals[] = { + { 0, "eAoD" }, + { 1, "eAoA" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_pre_configured_AssistanceDataRequest_r17_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_pre_configured_AssistanceDataRequest_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NR_DL_TDOA_RequestAssistanceData_r16_eag_1_sequence[] = { + { &hf_lpp_nr_PosCalcAssistanceRequest_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_PosCalcAssistanceRequest_r17 }, + { &hf_lpp_nr_on_demand_DL_PRS_Request_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_On_Demand_DL_PRS_Request_r17 }, + { &hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17 }, + { &hf_lpp_pre_configured_AssistanceDataRequest_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_pre_configured_AssistanceDataRequest_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_TDOA_RequestAssistanceData_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_TDOA_RequestAssistanceData_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_TDOA_RequestAssistanceData_r16_sequence[] = { { &hf_lpp_nr_PhysCellID_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_PhysCellID_r16 }, { &hf_lpp_nr_AdType_r16 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_nr_AdType_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_TDOA_RequestAssistanceData_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -11401,7 +15476,7 @@ static const per_sequence_t RequestAssistanceData_sequence[] = { static int dissect_lpp_RequestAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 131 "./asn1/lpp/lpp.cnf" +#line 136 "./asn1/lpp/lpp.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Request Assistance Data"); @@ -11476,7 +15551,7 @@ dissect_lpp_INTEGER_0_86399(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_lpp_T_notificationOfLeapSecond(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 405 "./asn1/lpp/lpp.cnf" +#line 410 "./asn1/lpp/lpp.cnf" tvbuff_t *notificationOfLeapSecond_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, 2, 2, FALSE, NULL, 0, ¬ificationOfLeapSecond_tvb, NULL); @@ -11484,7 +15559,7 @@ dissect_lpp_T_notificationOfLeapSecond(tvbuff_t *tvb _U_, int offset _U_, asn1_c -#line 409 "./asn1/lpp/lpp.cnf" +#line 414 "./asn1/lpp/lpp.cnf" if (notificationOfLeapSecond_tvb) { guint bitvalue = tvb_get_bits8(notificationOfLeapSecond_tvb, 0, 2); actx->created_item = proto_tree_add_uint(tree, hf_index, notificationOfLeapSecond_tvb, 0, 1, bitvalue); @@ -11995,16 +16070,6 @@ dissect_lpp_T_nBIoT_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } - -static int -dissect_lpp_ARFCN_ValueNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 3279165U, NULL, FALSE); - - return offset; -} - - static const per_sequence_t T_nr_r15_sequence[] = { { &hf_lpp_nrPhysCellId_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_1007 }, { &hf_lpp_nrCellGlobalID_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NCGI_r15 }, @@ -12239,7 +16304,7 @@ dissect_lpp_GNSS_ReferenceLocation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int dissect_lpp_T_dataID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 424 "./asn1/lpp/lpp.cnf" +#line 429 "./asn1/lpp/lpp.cnf" tvbuff_t *dataID_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, 2, 2, FALSE, NULL, 0, &dataID_tvb, NULL); @@ -12247,7 +16312,7 @@ dissect_lpp_T_dataID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr -#line 428 "./asn1/lpp/lpp.cnf" +#line 433 "./asn1/lpp/lpp.cnf" if (dataID_tvb) { guint bitvalue = tvb_get_bits8(dataID_tvb, 0, 2); actx->created_item = proto_tree_add_uint(tree, hf_index, dataID_tvb, 0, 1, bitvalue); @@ -12630,7 +16695,7 @@ dissect_lpp_GNSS_RTK_ReferenceStationInfo_r15(tvbuff_t *tvb _U_, int offset _U_, static int dissect_lpp_T_smoothingIndicator_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 530 "./asn1/lpp/lpp.cnf" +#line 535 "./asn1/lpp/lpp.cnf" tvbuff_t *param_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, 1, 1, FALSE, NULL, 0, ¶m_tvb, NULL); @@ -12638,7 +16703,7 @@ dissect_lpp_T_smoothingIndicator_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx -#line 534 "./asn1/lpp/lpp.cnf" +#line 539 "./asn1/lpp/lpp.cnf" if (param_tvb) { guint bitvalue = tvb_get_bits8(param_tvb, 0, 1); actx->created_item = proto_tree_add_uint(tree, hf_index, param_tvb, 0, 1, bitvalue); @@ -12652,7 +16717,7 @@ dissect_lpp_T_smoothingIndicator_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int dissect_lpp_T_smoothingInterval_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 543 "./asn1/lpp/lpp.cnf" +#line 548 "./asn1/lpp/lpp.cnf" tvbuff_t *param_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, 3, 3, FALSE, NULL, 0, ¶m_tvb, NULL); @@ -12660,7 +16725,7 @@ dissect_lpp_T_smoothingInterval_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ -#line 547 "./asn1/lpp/lpp.cnf" +#line 552 "./asn1/lpp/lpp.cnf" if (param_tvb) { guint bitvalue = tvb_get_bits8(param_tvb, 0, 3); actx->created_item = proto_tree_add_uint(tree, hf_index, param_tvb, 0, 1, bitvalue); @@ -12973,6 +17038,50 @@ dissect_lpp_GNSS_CommonAssistData_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ } +static const per_sequence_t GNSS_Integrity_ServiceParameters_r17_sequence[] = { + { &hf_lpp_irMinimum_r17 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_irMaximum_r17 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_Integrity_ServiceParameters_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_GNSS_Integrity_ServiceParameters_r17, GNSS_Integrity_ServiceParameters_r17_sequence); + + return offset; +} + + +static const per_sequence_t GNSS_Integrity_ServiceAlert_r17_sequence[] = { + { &hf_lpp_ionosphereDoNotUse_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_BOOLEAN }, + { &hf_lpp_troposphereDoNotUse_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_Integrity_ServiceAlert_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_GNSS_Integrity_ServiceAlert_r17, GNSS_Integrity_ServiceAlert_r17_sequence); + + return offset; +} + + +static const per_sequence_t GNSS_CommonAssistData_eag_3_sequence[] = { + { &hf_lpp_gnss_Integrity_ServiceParameters_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_GNSS_Integrity_ServiceParameters_r17 }, + { &hf_lpp_gnss_Integrity_ServiceAlert_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_GNSS_Integrity_ServiceAlert_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_CommonAssistData_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_CommonAssistData_eag_3_sequence); + + return offset; +} + + static const per_sequence_t GNSS_CommonAssistData_sequence[] = { { &hf_lpp_gnss_ReferenceTime, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_ReferenceTime }, { &hf_lpp_gnss_ReferenceLocation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_ReferenceLocation }, @@ -12980,6 +17089,7 @@ static const per_sequence_t GNSS_CommonAssistData_sequence[] = { { &hf_lpp_gnss_EarthOrientationParameters, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_EarthOrientationParameters }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_CommonAssistData_eag_1 }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_CommonAssistData_eag_2 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_CommonAssistData_eag_3 }, { NULL, 0, 0, NULL } }; @@ -13410,6 +17520,20 @@ dissect_lpp_INTEGER_M16777216_16777215(tvbuff_t *tvb _U_, int offset _U_, asn1_c } +static const per_sequence_t BDS_ClockModel2_r16_eag_1_sequence[] = { + { &hf_lpp_bdsTgdB2ap_r17 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_INTEGER_M2048_2047 }, + { &hf_lpp_bdsIscB2ad_r17 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_INTEGER_M2048_2047 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_BDS_ClockModel2_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, BDS_ClockModel2_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t BDS_ClockModel2_r16_sequence[] = { { &hf_lpp_bdsToc_r16 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_2047 }, { &hf_lpp_bdsA0_r16 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_M16777216_16777215 }, @@ -13417,6 +17541,7 @@ static const per_sequence_t BDS_ClockModel2_r16_sequence[] = { { &hf_lpp_bdsA2_r16 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_M1024_1023 }, { &hf_lpp_bdsTgdB1Cp_r16 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_M2048_2047 }, { &hf_lpp_bdsIscB1Cd_r16 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_M2048_2047 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_BDS_ClockModel2_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -13619,7 +17744,7 @@ dissect_lpp_INTEGER_M65536_65535(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_lpp_T_cnavMo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 838 "./asn1/lpp/lpp.cnf" +#line 843 "./asn1/lpp/lpp.cnf" int64_t cnavMo; int curr_offset = offset; offset = dissect_per_constrained_integer_64b(tvb, offset, actx, tree, hf_index, @@ -13628,7 +17753,7 @@ dissect_lpp_T_cnavMo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr -#line 843 "./asn1/lpp/lpp.cnf" +#line 848 "./asn1/lpp/lpp.cnf" proto_item_set_hidden(actx->created_item); actx->created_item = proto_tree_add_int64_format_value(tree, hf_index, tvb, curr_offset>>3, (offset+7-curr_offset)>>3, cnavMo, "%g semi-circles (%"PRId64")", @@ -13642,7 +17767,7 @@ dissect_lpp_T_cnavMo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr static int dissect_lpp_T_cnavE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 849 "./asn1/lpp/lpp.cnf" +#line 854 "./asn1/lpp/lpp.cnf" uint64_t cnavE; int curr_offset = offset; offset = dissect_per_constrained_integer_64b(tvb, offset, actx, tree, hf_index, @@ -13651,7 +17776,7 @@ dissect_lpp_T_cnavE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro -#line 854 "./asn1/lpp/lpp.cnf" +#line 859 "./asn1/lpp/lpp.cnf" proto_item_set_hidden(actx->created_item); actx->created_item = proto_tree_add_uint64_format_value(tree, hf_index, tvb, curr_offset>>3, (offset+7-curr_offset)>>3, cnavE, "%g (%"PRIu64")", @@ -13665,7 +17790,7 @@ dissect_lpp_T_cnavE(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro static int dissect_lpp_T_cnavOmega(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 860 "./asn1/lpp/lpp.cnf" +#line 865 "./asn1/lpp/lpp.cnf" int64_t cnavOmega; int curr_offset = offset; offset = dissect_per_constrained_integer_64b(tvb, offset, actx, tree, hf_index, @@ -13674,7 +17799,7 @@ dissect_lpp_T_cnavOmega(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, -#line 865 "./asn1/lpp/lpp.cnf" +#line 870 "./asn1/lpp/lpp.cnf" proto_item_set_hidden(actx->created_item); actx->created_item = proto_tree_add_int64_format_value(tree, hf_index, tvb, curr_offset>>3, (offset+7-curr_offset)>>3, cnavOmega, "%g semi-circles (%"PRId64")", @@ -13688,7 +17813,7 @@ dissect_lpp_T_cnavOmega(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, static int dissect_lpp_T_cnavOMEGA0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 871 "./asn1/lpp/lpp.cnf" +#line 876 "./asn1/lpp/lpp.cnf" int64_t cnavOMEGA0; int curr_offset = offset; offset = dissect_per_constrained_integer_64b(tvb, offset, actx, tree, hf_index, @@ -13697,7 +17822,7 @@ dissect_lpp_T_cnavOMEGA0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ -#line 876 "./asn1/lpp/lpp.cnf" +#line 881 "./asn1/lpp/lpp.cnf" proto_item_set_hidden(actx->created_item); actx->created_item = proto_tree_add_int64_format_value(tree, hf_index, tvb, curr_offset>>3, (offset+7-curr_offset)>>3, cnavOMEGA0, "%g semi-circles (%"PRId64")", @@ -13711,7 +17836,7 @@ dissect_lpp_T_cnavOMEGA0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ static int dissect_lpp_T_cnavIo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 885 "./asn1/lpp/lpp.cnf" +#line 890 "./asn1/lpp/lpp.cnf" int64_t cnavIo; int curr_offset = offset; offset = dissect_per_constrained_integer_64b(tvb, offset, actx, tree, hf_index, @@ -13720,7 +17845,7 @@ dissect_lpp_T_cnavIo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr -#line 890 "./asn1/lpp/lpp.cnf" +#line 895 "./asn1/lpp/lpp.cnf" proto_item_set_hidden(actx->created_item); actx->created_item = proto_tree_add_int64_format_value(tree, hf_index, tvb, curr_offset>>3, (offset+7-curr_offset)>>3, cnavIo, "%g semi-circles (%"PRId64")", @@ -13766,7 +17891,7 @@ dissect_lpp_NavModelCNAV_KeplerianSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_lpp_T_gloP1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 920 "./asn1/lpp/lpp.cnf" +#line 925 "./asn1/lpp/lpp.cnf" tvbuff_t *gloP1_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, 2, 2, FALSE, NULL, 0, &gloP1_tvb, NULL); @@ -13774,7 +17899,7 @@ dissect_lpp_T_gloP1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro -#line 924 "./asn1/lpp/lpp.cnf" +#line 929 "./asn1/lpp/lpp.cnf" if (gloP1_tvb) { guint bitvalue = tvb_get_bits8(gloP1_tvb, 0, 2); actx->created_item = proto_tree_add_uint(tree, hf_index, gloP1_tvb, 0, 1, bitvalue); @@ -14035,7 +18160,7 @@ dissect_lpp_GNSS_OrbitModel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_lpp_T_svHealthExt_v1240(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 607 "./asn1/lpp/lpp.cnf" +#line 612 "./asn1/lpp/lpp.cnf" tvbuff_t *svHealthExt_tvb = NULL; proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, @@ -14044,7 +18169,7 @@ dissect_lpp_T_svHealthExt_v1240(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a -#line 612 "./asn1/lpp/lpp.cnf" +#line 617 "./asn1/lpp/lpp.cnf" if (svHealthExt_tvb) { subtree = proto_item_add_subtree(actx->created_item, ett_lpp_svHealthExt_v1240); proto_tree_add_bits_item(subtree, hf_lpp_svHealthExt_v1240_e5bhs, svHealthExt_tvb, 0, 2, ENC_BIG_ENDIAN); @@ -14340,7 +18465,7 @@ dissect_lpp_GNSS_AcquisitionAssistance(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_lpp_T_toa(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1077 "./asn1/lpp/lpp.cnf" +#line 1082 "./asn1/lpp/lpp.cnf" guint32 toa, val; int len, old_offset = offset; T_GNSS_ID_enum gnss_id = (T_GNSS_ID_enum)GPOINTER_TO_UINT(actx->private_data); @@ -14350,7 +18475,7 @@ dissect_lpp_T_toa(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto -#line 1083 "./asn1/lpp/lpp.cnf" +#line 1088 "./asn1/lpp/lpp.cnf" len = (offset-old_offset) >> 3 ? (offset-old_offset) >> 3 : 1; val = (gnss_id == T_GNSS_ID_GALILEO) ? 600*toa : 4096*toa; actx->created_item = proto_tree_add_uint_format_value(tree, hf_lpp_toa, tvb, old_offset, len, @@ -14364,7 +18489,7 @@ dissect_lpp_T_toa(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto static int dissect_lpp_T_kepSV_StatusINAV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1110 "./asn1/lpp/lpp.cnf" +#line 1115 "./asn1/lpp/lpp.cnf" tvbuff_t *statusINAV_tvb = NULL; proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, @@ -14373,7 +18498,7 @@ dissect_lpp_T_kepSV_StatusINAV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac -#line 1115 "./asn1/lpp/lpp.cnf" +#line 1120 "./asn1/lpp/lpp.cnf" if (statusINAV_tvb) { subtree = proto_item_add_subtree(actx->created_item, ett_kepSV_StatusINAV); proto_tree_add_bits_item(subtree, hf_lpp_kepSV_StatusINAV_e5bhs, statusINAV_tvb, 0, 2, ENC_BIG_ENDIAN); @@ -14388,7 +18513,7 @@ dissect_lpp_T_kepSV_StatusINAV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_lpp_T_kepSV_StatusFNAV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1122 "./asn1/lpp/lpp.cnf" +#line 1127 "./asn1/lpp/lpp.cnf" tvbuff_t *statusFNAV_tvb = NULL; proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, @@ -14397,7 +18522,7 @@ dissect_lpp_T_kepSV_StatusFNAV(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac -#line 1127 "./asn1/lpp/lpp.cnf" +#line 1132 "./asn1/lpp/lpp.cnf" if (statusFNAV_tvb) { subtree = proto_item_add_subtree(actx->created_item, ett_kepSV_StatusFNAV); proto_tree_add_bits_item(subtree, hf_lpp_kepSV_StatusFNAV_e5ahs, statusFNAV_tvb, 0, 2, ENC_BIG_ENDIAN); @@ -14615,7 +18740,7 @@ dissect_lpp_AlmanacECEF_SBAS_AlmanacSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int dissect_lpp_T_bdsSvHealth_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1289 "./asn1/lpp/lpp.cnf" +#line 1294 "./asn1/lpp/lpp.cnf" tvbuff_t *bdsSvHealth_tvb = NULL; proto_tree *subtree; offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, @@ -14624,7 +18749,7 @@ dissect_lpp_T_bdsSvHealth_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act -#line 1294 "./asn1/lpp/lpp.cnf" +#line 1299 "./asn1/lpp/lpp.cnf" if (bdsSvHealth_tvb) { guint16 bits; subtree = proto_item_add_subtree(actx->created_item, ett_lpp_bdsSvHealth_r12); @@ -14747,7 +18872,7 @@ dissect_lpp_GNSS_AlmanacList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int dissect_lpp_T_toa_ext_v1240(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1089 "./asn1/lpp/lpp.cnf" +#line 1094 "./asn1/lpp/lpp.cnf" guint32 toa_ext, val; int len, old_offset = offset; T_GNSS_ID_enum gnss_id = (T_GNSS_ID_enum)GPOINTER_TO_UINT(actx->private_data); @@ -14757,7 +18882,7 @@ dissect_lpp_T_toa_ext_v1240(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx -#line 1095 "./asn1/lpp/lpp.cnf" +#line 1100 "./asn1/lpp/lpp.cnf" len = (offset-old_offset) >> 3 ? (offset-old_offset) >> 3 : 1; val = (gnss_id == T_GNSS_ID_GALILEO) ? 600*toa_ext : 4096*toa_ext; actx->created_item = proto_tree_add_uint_format_value(tree, hf_lpp_toa_ext_v1240, tvb, old_offset, len, @@ -14870,7 +18995,7 @@ dissect_lpp_UTC_ModelSet1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_lpp_T_utcDN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1358 "./asn1/lpp/lpp.cnf" +#line 1363 "./asn1/lpp/lpp.cnf" tvbuff_t *utcDN_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, 4, 4, FALSE, NULL, 0, &utcDN_tvb, NULL); @@ -14878,7 +19003,7 @@ dissect_lpp_T_utcDN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pro -#line 1362 "./asn1/lpp/lpp.cnf" +#line 1367 "./asn1/lpp/lpp.cnf" if (utcDN_tvb) { guint bitvalue = tvb_get_bits8(utcDN_tvb, 0, 4); actx->created_item = proto_tree_add_uint(tree, hf_index, utcDN_tvb, 0, 1, bitvalue); @@ -14928,7 +19053,7 @@ dissect_lpp_UTC_ModelSet2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_lpp_T_kp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1386 "./asn1/lpp/lpp.cnf" +#line 1391 "./asn1/lpp/lpp.cnf" tvbuff_t *kp_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, 2, 2, FALSE, NULL, 0, &kp_tvb, NULL); @@ -14936,7 +19061,7 @@ dissect_lpp_T_kp(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_ -#line 1390 "./asn1/lpp/lpp.cnf" +#line 1395 "./asn1/lpp/lpp.cnf" if (kp_tvb) { guint bitvalue = tvb_get_bits8(kp_tvb, 0, 2); actx->created_item = proto_tree_add_uint(tree, hf_index, kp_tvb, 0, 1, bitvalue); @@ -15621,6 +19746,52 @@ dissect_lpp_T_satelliteReferenceDatum_r15(tvbuff_t *tvb _U_, int offset _U_, asn } +static const per_sequence_t RAC_OrbitalErrorComponents_r17_sequence[] = { + { &hf_lpp_radial_r17 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_alongTrack_r17 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_crossTrack_r17 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_RAC_OrbitalErrorComponents_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_RAC_OrbitalErrorComponents_r17, RAC_OrbitalErrorComponents_r17_sequence); + + return offset; +} + + +static const per_sequence_t SSR_IntegrityOrbitBounds_r17_sequence[] = { + { &hf_lpp_meanOrbitError_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_RAC_OrbitalErrorComponents_r17 }, + { &hf_lpp_varOrbitError_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_RAC_OrbitalErrorComponents_r17 }, + { &hf_lpp_meanOrbitRateError_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_RAC_OrbitalErrorComponents_r17 }, + { &hf_lpp_varOrbitRateError_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_RAC_OrbitalErrorComponents_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_SSR_IntegrityOrbitBounds_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_SSR_IntegrityOrbitBounds_r17, SSR_IntegrityOrbitBounds_r17_sequence); + + return offset; +} + + +static const per_sequence_t SSR_OrbitCorrectionSatelliteElement_r15_eag_1_sequence[] = { + { &hf_lpp_ssr_IntegrityOrbitBounds_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_SSR_IntegrityOrbitBounds_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_SSR_OrbitCorrectionSatelliteElement_r15_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SSR_OrbitCorrectionSatelliteElement_r15_eag_1_sequence); + + return offset; +} + + static const per_sequence_t SSR_OrbitCorrectionSatelliteElement_r15_sequence[] = { { &hf_lpp_svID_r15 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SV_ID }, { &hf_lpp_iod_r15 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_BIT_STRING_SIZE_11 }, @@ -15630,6 +19801,7 @@ static const per_sequence_t SSR_OrbitCorrectionSatelliteElement_r15_sequence[] = { &hf_lpp_dot_delta_radial_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_M1048576_1048575 }, { &hf_lpp_dot_delta_AlongTrack_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_M262144_262143 }, { &hf_lpp_dot_delta_CrossTrack_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_M262144_262143 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_SSR_OrbitCorrectionSatelliteElement_r15_eag_1 }, { NULL, 0, 0, NULL } }; @@ -15656,12 +19828,55 @@ dissect_lpp_SSR_OrbitCorrectionList_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ } + +static int +dissect_lpp_INTEGER_1_3600(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 3600U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t ORBIT_IntegrityParameters_r17_sequence[] = { + { &hf_lpp_probOnsetConstFault_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_meanConstFaultDuration_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_1_3600 }, + { &hf_lpp_probOnsetSatFault_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_meanSatFaultDuration_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_1_3600 }, + { &hf_lpp_orbitRangeErrorCorrelationTime_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_orbitRangeRateErrorCorrelationTime_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_255 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_ORBIT_IntegrityParameters_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_ORBIT_IntegrityParameters_r17, ORBIT_IntegrityParameters_r17_sequence); + + return offset; +} + + +static const per_sequence_t GNSS_SSR_OrbitCorrections_r15_eag_1_sequence[] = { + { &hf_lpp_orbit_IntegrityParameters_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_ORBIT_IntegrityParameters_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_SSR_OrbitCorrections_r15_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_SSR_OrbitCorrections_r15_eag_1_sequence); + + return offset; +} + + static const per_sequence_t GNSS_SSR_OrbitCorrections_r15_sequence[] = { { &hf_lpp_epochTime_r15 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SystemTime }, { &hf_lpp_ssrUpdateInterval_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_15 }, { &hf_lpp_satelliteReferenceDatum_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_satelliteReferenceDatum_r15 }, { &hf_lpp_iod_ssr_r15 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_15 }, { &hf_lpp_ssr_OrbitCorrectionList_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SSR_OrbitCorrectionList_r15 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SSR_OrbitCorrections_r15_eag_1 }, { NULL, 0, 0, NULL } }; @@ -15674,11 +19889,42 @@ dissect_lpp_GNSS_SSR_OrbitCorrections_r15(tvbuff_t *tvb _U_, int offset _U_, asn } +static const per_sequence_t SSR_IntegrityClockBounds_r17_sequence[] = { + { &hf_lpp_meanClock_r17 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_stdDevClock_r17 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_meanClockRate_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_stdDevClockRate_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_SSR_IntegrityClockBounds_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_SSR_IntegrityClockBounds_r17, SSR_IntegrityClockBounds_r17_sequence); + + return offset; +} + + +static const per_sequence_t SSR_ClockCorrectionSatelliteElement_r15_eag_1_sequence[] = { + { &hf_lpp_ssr_IntegrityClockBounds_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_SSR_IntegrityClockBounds_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_SSR_ClockCorrectionSatelliteElement_r15_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SSR_ClockCorrectionSatelliteElement_r15_eag_1_sequence); + + return offset; +} + + static const per_sequence_t SSR_ClockCorrectionSatelliteElement_r15_sequence[] = { { &hf_lpp_svID_r15 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SV_ID }, { &hf_lpp_delta_Clock_C0_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_M2097152_2097151 }, { &hf_lpp_delta_Clock_C1_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_M1048576_1048575 }, { &hf_lpp_delta_Clock_C2_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_M67108864_67108863 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_SSR_ClockCorrectionSatelliteElement_r15_eag_1 }, { NULL, 0, 0, NULL } }; @@ -15705,11 +19951,40 @@ dissect_lpp_SSR_ClockCorrectionList_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ } +static const per_sequence_t CLOCK_IntegrityParameters_r17_sequence[] = { + { &hf_lpp_clockRangeErrorCorrelationTime_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_clockRangeRateErrorCorrelationTime_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_CLOCK_IntegrityParameters_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_CLOCK_IntegrityParameters_r17, CLOCK_IntegrityParameters_r17_sequence); + + return offset; +} + + +static const per_sequence_t GNSS_SSR_ClockCorrections_r15_eag_1_sequence[] = { + { &hf_lpp_clock_IntegrityParameters_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_CLOCK_IntegrityParameters_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_SSR_ClockCorrections_r15_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_SSR_ClockCorrections_r15_eag_1_sequence); + + return offset; +} + + static const per_sequence_t GNSS_SSR_ClockCorrections_r15_sequence[] = { { &hf_lpp_epochTime_r15 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SystemTime }, { &hf_lpp_ssrUpdateInterval_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_15 }, { &hf_lpp_iod_ssr_r15 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_15 }, { &hf_lpp_ssr_ClockCorrectionList_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SSR_ClockCorrectionList_r15 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SSR_ClockCorrections_r15_eag_1 }, { NULL, 0, 0, NULL } }; @@ -15722,9 +19997,40 @@ dissect_lpp_GNSS_SSR_ClockCorrections_r15(tvbuff_t *tvb _U_, int offset _U_, asn } +static const per_sequence_t SSR_IntegrityCodeBiasBounds_r17_sequence[] = { + { &hf_lpp_meanCodeBias_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_stdDevCodeBias_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_meanCodeBiasRate_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_stdDevCodeBiasRate_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_SSR_IntegrityCodeBiasBounds_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_SSR_IntegrityCodeBiasBounds_r17, SSR_IntegrityCodeBiasBounds_r17_sequence); + + return offset; +} + + +static const per_sequence_t SSR_CodeBiasSignalElement_r15_eag_1_sequence[] = { + { &hf_lpp_ssr_IntegrityCodeBiasBounds_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_SSR_IntegrityCodeBiasBounds_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_SSR_CodeBiasSignalElement_r15_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SSR_CodeBiasSignalElement_r15_eag_1_sequence); + + return offset; +} + + static const per_sequence_t SSR_CodeBiasSignalElement_r15_sequence[] = { { &hf_lpp_signal_and_tracking_mode_ID_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalID }, { &hf_lpp_codeBias_r15 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_M8192_8191 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_SSR_CodeBiasSignalElement_r15_eag_1 }, { NULL, 0, 0, NULL } }; @@ -15873,11 +20179,42 @@ dissect_lpp_GNSS_SSR_URA_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static const per_sequence_t SSR_IntegrityPhaseBiasBounds_r17_sequence[] = { + { &hf_lpp_meanPhaseBias_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_stdDevPhaseBias_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_meanPhaseBiasRate_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_stdDevPhaseBiasRate_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_SSR_IntegrityPhaseBiasBounds_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_SSR_IntegrityPhaseBiasBounds_r17, SSR_IntegrityPhaseBiasBounds_r17_sequence); + + return offset; +} + + +static const per_sequence_t SSR_PhaseBiasSignalElement_r16_eag_1_sequence[] = { + { &hf_lpp_ssr_IntegrityPhaseBiasBounds_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_SSR_IntegrityPhaseBiasBounds_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_SSR_PhaseBiasSignalElement_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SSR_PhaseBiasSignalElement_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t SSR_PhaseBiasSignalElement_r16_sequence[] = { { &hf_lpp_signal_and_tracking_mode_ID_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SignalID }, { &hf_lpp_phaseBias_r16 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_M16384_16383 }, { &hf_lpp_phaseDiscontinuityIndicator_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_3 }, { &hf_lpp_phaseBiasIntegerIndicator_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_3 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_SSR_PhaseBiasSignalElement_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -15950,6 +20287,36 @@ dissect_lpp_GNSS_SSR_PhaseBias_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const per_sequence_t STEC_IntegrityErrorBounds_r17_sequence[] = { + { &hf_lpp_meanIonosphere_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_stdDevIonosphere_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_meanIonosphereRate_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_stdDevIonosphereRate_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_STEC_IntegrityErrorBounds_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_STEC_IntegrityErrorBounds_r17, STEC_IntegrityErrorBounds_r17_sequence); + + return offset; +} + + +static const per_sequence_t STEC_SatElement_r16_eag_1_sequence[] = { + { &hf_lpp_stec_IntegrityErrorBounds_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_STEC_IntegrityErrorBounds_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_STEC_SatElement_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, STEC_SatElement_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t STEC_SatElement_r16_sequence[] = { { &hf_lpp_svID_r16 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SV_ID }, { &hf_lpp_stecQualityIndicator_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_BIT_STRING_SIZE_6 }, @@ -15957,6 +20324,7 @@ static const per_sequence_t STEC_SatElement_r16_sequence[] = { { &hf_lpp_stec_C01_r16 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_M2048_2047 }, { &hf_lpp_stec_C10_r16 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_M2048_2047 }, { &hf_lpp_stec_C11_r16 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_M512_511 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_STEC_SatElement_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -15983,12 +20351,63 @@ dissect_lpp_STEC_SatList_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } + +static int +dissect_lpp_INTEGER_1_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 256U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lpp_INTEGER_1_255(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 255U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t STEC_IntegrityParameters_r17_sequence[] = { + { &hf_lpp_probOnsetIonoFault_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_meanIonoFaultDuration_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_1_256 }, + { &hf_lpp_ionoRangeErrorCorrelationTime_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_255 }, + { &hf_lpp_ionoRangeRateErrorCorrelationTime_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_255 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_STEC_IntegrityParameters_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_STEC_IntegrityParameters_r17, STEC_IntegrityParameters_r17_sequence); + + return offset; +} + + +static const per_sequence_t GNSS_SSR_STEC_Correction_r16_eag_1_sequence[] = { + { &hf_lpp_stec_IntegrityParameters_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_STEC_IntegrityParameters_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_SSR_STEC_Correction_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_SSR_STEC_Correction_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t GNSS_SSR_STEC_Correction_r16_sequence[] = { { &hf_lpp_epochTime_r16 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SystemTime }, { &hf_lpp_ssrUpdateInterval_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_15 }, { &hf_lpp_iod_ssr_r16 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_15 }, { &hf_lpp_correctionPointSetID_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_16383 }, { &hf_lpp_stec_SatList_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_STEC_SatList_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SSR_STEC_Correction_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -16001,9 +20420,44 @@ dissect_lpp_GNSS_SSR_STEC_Correction_r16(tvbuff_t *tvb _U_, int offset _U_, asn1 } +static const per_sequence_t TropoDelayIntegrityErrorBounds_r17_sequence[] = { + { &hf_lpp_meanTroposphereVerticalHydroStaticDelay_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_stdDevTroposphereVerticalHydroStaticDelay_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_meanTroposphereVerticalWetDelay_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_stdDevTroposphereVerticalWetDelay_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_meanTroposphereVerticalHydroStaticDelayRate_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_stdDevTroposphereVerticalHydroStaticDelayRate_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_meanTroposphereVerticalWetDelayRate_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_stdDevTroposphereVerticalWetDelayRate_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_TropoDelayIntegrityErrorBounds_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_TropoDelayIntegrityErrorBounds_r17, TropoDelayIntegrityErrorBounds_r17_sequence); + + return offset; +} + + +static const per_sequence_t TropospericDelayCorrection_r16_eag_1_sequence[] = { + { &hf_lpp_tropoDelayIntegrityErrorBounds_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_TropoDelayIntegrityErrorBounds_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_TropospericDelayCorrection_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, TropospericDelayCorrection_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t TropospericDelayCorrection_r16_sequence[] = { { &hf_lpp_tropoHydroStaticVerticalDelay_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_M256_255 }, { &hf_lpp_tropoWetVerticalDelay_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_M128_127 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_TropospericDelayCorrection_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -16096,6 +20550,36 @@ dissect_lpp_GridList_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ } +static const per_sequence_t SSR_GriddedCorrectionIntegrityParameters_r17_sequence[] = { + { &hf_lpp_probOnsetTroposphereFault_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_meanTroposphereFaultDuration_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_1_256 }, + { &hf_lpp_troposphereRangeErrorCorrelationTime_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_255 }, + { &hf_lpp_troposphereRangeRateErrorCorrelationTime_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_255 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_SSR_GriddedCorrectionIntegrityParameters_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_SSR_GriddedCorrectionIntegrityParameters_r17, SSR_GriddedCorrectionIntegrityParameters_r17_sequence); + + return offset; +} + + +static const per_sequence_t GNSS_SSR_GriddedCorrection_r16_eag_1_sequence[] = { + { &hf_lpp_ssr_GriddedCorrectionIntegrityParameters_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_SSR_GriddedCorrectionIntegrityParameters_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_SSR_GriddedCorrection_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_SSR_GriddedCorrection_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t GNSS_SSR_GriddedCorrection_r16_sequence[] = { { &hf_lpp_epochTime_r16 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SystemTime }, { &hf_lpp_ssrUpdateInterval_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_15 }, @@ -16103,6 +20587,7 @@ static const per_sequence_t GNSS_SSR_GriddedCorrection_r16_sequence[] = { { &hf_lpp_troposphericDelayQualityIndicator_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_BIT_STRING_SIZE_6 }, { &hf_lpp_correctionPointSetID_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_16383 }, { &hf_lpp_gridList_r16 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GridList_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_SSR_GriddedCorrection_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -16450,6 +20935,19 @@ dissect_lpp_GNSS_PeriodicAssistData_r15_eag_1(tvbuff_t *tvb _U_, int offset _U_, } +static const per_sequence_t GNSS_PeriodicAssistData_r15_eag_2_sequence[] = { + { &hf_lpp_gnss_Integrity_PeriodicServiceAlert_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_GNSS_PeriodicControlParam_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_PeriodicAssistData_r15_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_PeriodicAssistData_r15_eag_2_sequence); + + return offset; +} + + static const per_sequence_t GNSS_PeriodicAssistData_r15_sequence[] = { { &hf_lpp_gnss_RTK_PeriodicObservations_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_PeriodicControlParam_r15 }, { &hf_lpp_glo_RTK_PeriodicBiasInformation_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_PeriodicControlParam_r15 }, @@ -16460,6 +20958,7 @@ static const per_sequence_t GNSS_PeriodicAssistData_r15_sequence[] = { { &hf_lpp_gnss_SSR_PeriodicClockCorrections_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_PeriodicControlParam_r15 }, { &hf_lpp_gnss_SSR_PeriodicCodeBias_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_GNSS_PeriodicControlParam_r15 }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_PeriodicAssistData_r15_eag_1 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_PeriodicAssistData_r15_eag_2 }, { NULL, 0, 0, NULL } }; @@ -17957,7 +22456,7 @@ dissect_lpp_T_gN_pressure_v1520(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, -1024, 1023U, NULL, FALSE); -#line 1752 "./asn1/lpp/lpp.cnf" +#line 1757 "./asn1/lpp/lpp.cnf" proto_item_append_text(actx->created_item, "Pa/Km"); @@ -17971,7 +22470,7 @@ dissect_lpp_T_gE_pressure_v1520(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, -1024, 1023U, NULL, FALSE); -#line 1755 "./asn1/lpp/lpp.cnf" +#line 1760 "./asn1/lpp/lpp.cnf" proto_item_append_text(actx->created_item, "Pa/Km"); @@ -18127,7 +22626,7 @@ dissect_lpp_Sensor_ProvideAssistanceData_r14(tvbuff_t *tvb _U_, int offset _U_, static int dissect_lpp_T_transmitterLatitude_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1704 "./asn1/lpp/lpp.cnf" +#line 1709 "./asn1/lpp/lpp.cnf" tvbuff_t *transmitterLatitude_tvb = NULL; guint32 val; @@ -18146,7 +22645,7 @@ dissect_lpp_T_transmitterLatitude_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ct static int dissect_lpp_T_transmitterLongitude_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1715 "./asn1/lpp/lpp.cnf" +#line 1720 "./asn1/lpp/lpp.cnf" tvbuff_t *transmitterLongitude_tvb = NULL; guint32 val; @@ -18165,7 +22664,7 @@ dissect_lpp_T_transmitterLongitude_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int dissect_lpp_T_transmitterAltitude_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1726 "./asn1/lpp/lpp.cnf" +#line 1731 "./asn1/lpp/lpp.cnf" tvbuff_t *transmitterAltitude_tvb = NULL; guint32 val; @@ -18695,16 +23194,6 @@ dissect_lpp_ProvideAssistanceData_r9_IEs_eag_1(tvbuff_t *tvb _U_, int offset _U_ } - -static int -dissect_lpp_NR_DL_PRS_ResourceID_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, nrMaxNumDL_PRS_ResourcesPerSet_1_r16, NULL, FALSE); - - return offset; -} - - static const per_sequence_t SEQUENCE_SIZE_1_nrMaxResourceIDs_r16_OF_NR_DL_PRS_ResourceID_r16_sequence_of[1] = { { &hf_lpp_nr_DL_PRS_ResourceID_List_r16_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_ResourceID_r16 }, }; @@ -18719,16 +23208,6 @@ dissect_lpp_SEQUENCE_SIZE_1_nrMaxResourceIDs_r16_OF_NR_DL_PRS_ResourceID_r16(tvb } - -static int -dissect_lpp_NR_DL_PRS_ResourceSetID_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, nrMaxNumDL_PRS_ResourceSetsPerTRP_1_r16, NULL, FALSE); - - return offset; -} - - static const per_sequence_t DL_PRS_ID_Info_r16_sequence[] = { { &hf_lpp_dl_PRS_ID_r16 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, { &hf_lpp_nr_DL_PRS_ResourceID_List_r16, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_SEQUENCE_SIZE_1_nrMaxResourceIDs_r16_OF_NR_DL_PRS_ResourceID_r16 }, @@ -18764,16 +23243,6 @@ dissect_lpp_T_dl_PRS_SubcarrierSpacing_r16(tvbuff_t *tvb _U_, int offset _U_, as -static int -dissect_lpp_INTEGER_1_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 63U, NULL, FALSE); - - return offset; -} - - - static int dissect_lpp_INTEGER_0_2176(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, @@ -19426,71 +23895,43 @@ dissect_lpp_INTEGER_0_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_ } -static const value_string lpp_T_rs_Type_r16_vals[] = { - { 0, "typeC" }, - { 1, "typeD" }, - { 2, "typeC-plus-typeD" }, - { 0, NULL } -}; - - -static int -dissect_lpp_T_rs_Type_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 3, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const per_sequence_t T_ssb_r16_sequence[] = { - { &hf_lpp_pci_r16 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_PhysCellID_r16 }, - { &hf_lpp_ssb_Index_r16 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_63 }, - { &hf_lpp_rs_Type_r16 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_T_rs_Type_r16 }, +static const per_sequence_t NR_DL_PRSResourcePriorityItem_r17_sequence[] = { + { &hf_lpp_nr_DL_PRS_PrioResourceSetID_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_ResourceSetID_r16 }, + { &hf_lpp_nr_DL_PRS_PrioResourceID_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_ResourceID_r16 }, { NULL, 0, 0, NULL } }; static int -dissect_lpp_T_ssb_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lpp_NR_DL_PRSResourcePriorityItem_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lpp_T_ssb_r16, T_ssb_r16_sequence); + ett_lpp_NR_DL_PRSResourcePriorityItem_r17, NR_DL_PRSResourcePriorityItem_r17_sequence); return offset; } -static const per_sequence_t T_dl_PRS_r16_sequence[] = { - { &hf_lpp_qcl_DL_PRS_ResourceID_r16, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_ResourceID_r16 }, - { &hf_lpp_qcl_DL_PRS_ResourceSetID_r16, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_ResourceSetID_r16 }, +static const per_sequence_t DL_PRS_ResourcePrioritySubset_r17_sequence_of[1] = { + { &hf_lpp_DL_PRS_ResourcePrioritySubset_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRSResourcePriorityItem_r17 }, +}; + +static int +dissect_lpp_DL_PRS_ResourcePrioritySubset_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_DL_PRS_ResourcePrioritySubset_r17, DL_PRS_ResourcePrioritySubset_r17_sequence_of, + 1, maxNumPrioResources_r17, FALSE); + + return offset; +} + + +static const per_sequence_t NR_DL_PRS_Resource_r16_eag_1_sequence[] = { + { &hf_lpp_dl_PRS_ResourcePrioritySubset_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_DL_PRS_ResourcePrioritySubset_r17 }, { NULL, 0, 0, NULL } }; static int -dissect_lpp_T_dl_PRS_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lpp_T_dl_PRS_r16, T_dl_PRS_r16_sequence); - - return offset; -} - - -static const value_string lpp_DL_PRS_QCL_Info_r16_vals[] = { - { 0, "ssb-r16" }, - { 1, "dl-PRS-r16" }, - { 0, NULL } -}; - -static const per_choice_t DL_PRS_QCL_Info_r16_choice[] = { - { 0, &hf_lpp_ssb_r16 , ASN1_NO_EXTENSIONS , dissect_lpp_T_ssb_r16 }, - { 1, &hf_lpp_dl_PRS_r16 , ASN1_NO_EXTENSIONS , dissect_lpp_T_dl_PRS_r16 }, - { 0, NULL, 0, NULL } -}; - -static int -dissect_lpp_DL_PRS_QCL_Info_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, - ett_lpp_DL_PRS_QCL_Info_r16, DL_PRS_QCL_Info_r16_choice, - NULL); +dissect_lpp_NR_DL_PRS_Resource_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_PRS_Resource_r16_eag_1_sequence); return offset; } @@ -19503,6 +23944,7 @@ static const per_sequence_t NR_DL_PRS_Resource_r16_sequence[] = { { &hf_lpp_dl_PRS_ResourceSlotOffset_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_nrMaxResourceOffsetValue_1_r16 }, { &hf_lpp_dl_PRS_ResourceSymbolOffset_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_12 }, { &hf_lpp_dl_PRS_QCL_Info_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_DL_PRS_QCL_Info_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_Resource_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -19607,6 +24049,115 @@ dissect_lpp_NR_DL_PRS_AssistanceDataPerTRP_r16_eag_1(tvbuff_t *tvb _U_, int offs } + +static int +dissect_lpp_INTEGER_0_359(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 359U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lpp_INTEGER_0_60(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 60U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lpp_INTEGER_0_180(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 180U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lpp_INTEGER_0_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 30U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_expectedAoD_r17_sequence[] = { + { &hf_lpp_expectedDL_AzimuthAoD_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_359 }, + { &hf_lpp_expectedDL_AzimuthAoD_Unc_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_60 }, + { &hf_lpp_expectedDL_ZenithAoD_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_180 }, + { &hf_lpp_expectedDL_ZenithAoD_Unc_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_30 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_expectedAoD_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_expectedAoD_r17, T_expectedAoD_r17_sequence); + + return offset; +} + + +static const per_sequence_t T_expectedAoA_r17_sequence[] = { + { &hf_lpp_expectedDL_AzimuthAoA_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_359 }, + { &hf_lpp_expectedDL_AzimuthAoA_Unc_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_60 }, + { &hf_lpp_expectedDL_ZenithAoA_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_180 }, + { &hf_lpp_expectedDL_ZenithAoA_Unc_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_30 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_expectedAoA_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_expectedAoA_r17, T_expectedAoA_r17_sequence); + + return offset; +} + + +static const value_string lpp_NR_DL_PRS_ExpectedAoD_or_AoA_r17_vals[] = { + { 0, "expectedAoD-r17" }, + { 1, "expectedAoA-r17" }, + { 0, NULL } +}; + +static const per_choice_t NR_DL_PRS_ExpectedAoD_or_AoA_r17_choice[] = { + { 0, &hf_lpp_expectedAoD_r17 , ASN1_NO_EXTENSIONS , dissect_lpp_T_expectedAoD_r17 }, + { 1, &hf_lpp_expectedAoA_r17 , ASN1_NO_EXTENSIONS , dissect_lpp_T_expectedAoA_r17 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_PRS_ExpectedAoD_or_AoA_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_DL_PRS_ExpectedAoD_or_AoA_r17, NR_DL_PRS_ExpectedAoD_or_AoA_r17_choice, + NULL); + + return offset; +} + + +static const per_sequence_t NR_DL_PRS_AssistanceDataPerTRP_r16_eag_2_sequence[] = { + { &hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_ExpectedAoD_or_AoA_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_PRS_AssistanceDataPerTRP_r16_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_PRS_AssistanceDataPerTRP_r16_eag_2_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_PRS_AssistanceDataPerTRP_r16_sequence[] = { { &hf_lpp_dl_PRS_ID_r16 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, { &hf_lpp_nr_PhysCellID_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_PhysCellID_r16 }, @@ -19617,6 +24168,7 @@ static const per_sequence_t NR_DL_PRS_AssistanceDataPerTRP_r16_sequence[] = { { &hf_lpp_nr_DL_PRS_ExpectedRSTD_Uncertainty_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_246 }, { &hf_lpp_nr_DL_PRS_Info_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_Info_r16 }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_AssistanceDataPerTRP_r16_eag_1 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_AssistanceDataPerTRP_r16_eag_2 }, { NULL, 0, 0, NULL } }; @@ -19945,6 +24497,8 @@ static const value_string lpp_T_cause_r16_06_vals[] = { { 0, "undefined" }, { 1, "assistanceDataNotSupportedByServer" }, { 2, "assistanceDataSupportedButCurrentlyNotAvailableByServer" }, + { 3, "on-demand-dl-prs-NotSupportedByServer-v1700" }, + { 4, "on-demand-dl-prs-SupportedButCurrentlyNotAvailableByServer-v1700" }, { 0, NULL } }; @@ -19952,7 +24506,7 @@ static const value_string lpp_T_cause_r16_06_vals[] = { static int dissect_lpp_T_cause_r16_06(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 3, NULL, TRUE, 0, NULL); + 3, NULL, TRUE, 2, NULL); return offset; } @@ -20028,10 +24582,114 @@ dissect_lpp_NR_Multi_RTT_Error_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const per_sequence_t On_Demand_DL_PRS_Configuration_r17_sequence[] = { + { &hf_lpp_dl_prs_configuration_id_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_DL_PRS_Configuration_ID_r17 }, + { &hf_lpp_nr_DL_PRS_PositioningFrequencyLayer_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_PositioningFrequencyLayer_r16 }, + { &hf_lpp_nr_DL_PRS_Info_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_Info_r16 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_On_Demand_DL_PRS_Configuration_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_On_Demand_DL_PRS_Configuration_r17, On_Demand_DL_PRS_Configuration_r17_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_On_Demand_DL_PRS_Configuration_r17_sequence_of[1] = { + { &hf_lpp_on_demand_dl_prs_configuration_list_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_On_Demand_DL_PRS_Configuration_r17 }, +}; + +static int +dissect_lpp_SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_On_Demand_DL_PRS_Configuration_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_On_Demand_DL_PRS_Configuration_r17, SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_On_Demand_DL_PRS_Configuration_r17_sequence_of, + 1, maxOD_DL_PRS_Configs_r17, FALSE); + + return offset; +} + + +static const per_sequence_t NR_On_Demand_DL_PRS_Configurations_r17_sequence[] = { + { &hf_lpp_on_demand_dl_prs_configuration_list_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_On_Demand_DL_PRS_Configuration_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_On_Demand_DL_PRS_Configurations_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_On_Demand_DL_PRS_Configurations_r17, NR_On_Demand_DL_PRS_Configurations_r17_sequence); + + return offset; +} + + +static const per_sequence_t NR_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17_sequence_of[1] = { + { &hf_lpp_NR_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_DL_PRS_Configuration_ID_r17 }, +}; + +static int +dissect_lpp_NR_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17, NR_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17_sequence_of, + 1, maxOD_DL_PRS_Configs_r17, FALSE); + + return offset; +} + + +static const per_sequence_t NR_Cell_IDs_r17_sequence[] = { + { &hf_lpp_nr_CellGlobalID_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NCGI_r15 }, + { &hf_lpp_nr_PhysCellID_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_PhysCellID_r16 }, + { &hf_lpp_nr_ARFCN_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_ARFCN_ValueNR_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_Cell_IDs_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_Cell_IDs_r17, NR_Cell_IDs_r17_sequence); + + return offset; +} + + +static const per_sequence_t AreaID_CellList_r17_sequence_of[1] = { + { &hf_lpp_AreaID_CellList_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_Cell_IDs_r17 }, +}; + +static int +dissect_lpp_AreaID_CellList_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_AreaID_CellList_r17, AreaID_CellList_r17_sequence_of, + 1, maxCellIDsPerArea_r17, FALSE); + + return offset; +} + + +static const per_sequence_t NR_Multi_RTT_ProvideAssistanceData_r16_eag_1_sequence[] = { + { &hf_lpp_nr_On_Demand_DL_PRS_Configurations_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_On_Demand_DL_PRS_Configurations_r17 }, + { &hf_lpp_nr_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17 }, + { &hf_lpp_assistanceDataValidityArea_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_AreaID_CellList_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_Multi_RTT_ProvideAssistanceData_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_Multi_RTT_ProvideAssistanceData_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_Multi_RTT_ProvideAssistanceData_r16_sequence[] = { { &hf_lpp_nr_DL_PRS_AssistanceData_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_AssistanceData_r16 }, { &hf_lpp_nr_SelectedDL_PRS_IndexList_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_SelectedDL_PRS_IndexList_r16 }, { &hf_lpp_nr_Multi_RTT_Error_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_Multi_RTT_Error_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_Multi_RTT_ProvideAssistanceData_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -20348,16 +25006,6 @@ dissect_lpp_NR_TRP_LocationInfo_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } - -static int -dissect_lpp_INTEGER_0_359(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 359U, NULL, FALSE); - - return offset; -} - - static const per_sequence_t LCS_GCS_TranslationParameter_r16_sequence[] = { { &hf_lpp_alpha_r16 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_359 }, { &hf_lpp_alpha_fine_r16 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_9 }, @@ -20377,16 +25025,6 @@ dissect_lpp_LCS_GCS_TranslationParameter_r16(tvbuff_t *tvb _U_, int offset _U_, } - -static int -dissect_lpp_INTEGER_0_180(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 180U, NULL, FALSE); - - return offset; -} - - static const per_sequence_t DL_PRS_BeamInfoElement_r16_sequence[] = { { &hf_lpp_dl_PRS_Azimuth_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_359 }, { &hf_lpp_dl_PRS_Azimuth_fine_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_9 }, @@ -20636,10 +25274,405 @@ dissect_lpp_NR_RTD_Info_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } +static const per_sequence_t BeamPowerElement_r17_sequence[] = { + { &hf_lpp_nr_dl_prs_ResourceSetID_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_ResourceSetID_r16 }, + { &hf_lpp_nr_dl_prs_ResourceID_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_ResourceID_r16 }, + { &hf_lpp_nr_dl_prs_RelativePower_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_30 }, + { &hf_lpp_nr_dl_prs_RelativePowerFine_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_9 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_BeamPowerElement_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_BeamPowerElement_r17, BeamPowerElement_r17_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_2_maxNumResourcesPerAngle_r17_OF_BeamPowerElement_r17_sequence_of[1] = { + { &hf_lpp_beamPowerList_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_BeamPowerElement_r17 }, +}; + +static int +dissect_lpp_SEQUENCE_SIZE_2_maxNumResourcesPerAngle_r17_OF_BeamPowerElement_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_SEQUENCE_SIZE_2_maxNumResourcesPerAngle_r17_OF_BeamPowerElement_r17, SEQUENCE_SIZE_2_maxNumResourcesPerAngle_r17_OF_BeamPowerElement_r17_sequence_of, + 2, maxNumResourcesPerAngle_r17, FALSE); + + return offset; +} + + +static const per_sequence_t ElevationElement_R17_sequence[] = { + { &hf_lpp_elevation_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_180 }, + { &hf_lpp_elevation_fine_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_9 }, + { &hf_lpp_beamPowerList_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SEQUENCE_SIZE_2_maxNumResourcesPerAngle_r17_OF_BeamPowerElement_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_ElevationElement_R17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_ElevationElement_R17, ElevationElement_R17_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_1801_OF_ElevationElement_R17_sequence_of[1] = { + { &hf_lpp_elevationList_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_ElevationElement_R17 }, +}; + +static int +dissect_lpp_SEQUENCE_SIZE_1_1801_OF_ElevationElement_R17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_SEQUENCE_SIZE_1_1801_OF_ElevationElement_R17, SEQUENCE_SIZE_1_1801_OF_ElevationElement_R17_sequence_of, + 1, 1801, FALSE); + + return offset; +} + + +static const per_sequence_t NR_TRP_BeamAntennaInfoAzimuthElevation_r17_sequence[] = { + { &hf_lpp_azimuth_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_359 }, + { &hf_lpp_azimuth_fine_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_9 }, + { &hf_lpp_elevationList_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SEQUENCE_SIZE_1_1801_OF_ElevationElement_R17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_TRP_BeamAntennaInfoAzimuthElevation_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_TRP_BeamAntennaInfoAzimuthElevation_r17, NR_TRP_BeamAntennaInfoAzimuthElevation_r17_sequence); + + return offset; +} + + +static const per_sequence_t NR_TRP_BeamAntennaAngles_r17_sequence_of[1] = { + { &hf_lpp_NR_TRP_BeamAntennaAngles_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_TRP_BeamAntennaInfoAzimuthElevation_r17 }, +}; + +static int +dissect_lpp_NR_TRP_BeamAntennaAngles_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_TRP_BeamAntennaAngles_r17, NR_TRP_BeamAntennaAngles_r17_sequence_of, + 1, 3600, FALSE); + + return offset; +} + + +static const per_sequence_t NR_TRP_BeamAntennaInfoPerTRP_r17_sequence[] = { + { &hf_lpp_dl_PRS_ID_r17 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_nr_PhysCellID_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_PhysCellID_r16 }, + { &hf_lpp_nr_CellGlobalID_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NCGI_r15 }, + { &hf_lpp_nr_ARFCN_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_ARFCN_ValueNR_r15 }, + { &hf_lpp_associated_DL_PRS_ID_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_lcs_GCS_TranslationParameter_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_LCS_GCS_TranslationParameter_r16 }, + { &hf_lpp_nr_TRP_BeamAntennaAngles_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_TRP_BeamAntennaAngles_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_TRP_BeamAntennaInfoPerTRP_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_TRP_BeamAntennaInfoPerTRP_r17, NR_TRP_BeamAntennaInfoPerTRP_r17_sequence); + + return offset; +} + + +static const per_sequence_t NR_TRP_BeamAntennaInfoPerFreqLayer_r17_sequence_of[1] = { + { &hf_lpp_NR_TRP_BeamAntennaInfoPerFreqLayer_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_TRP_BeamAntennaInfoPerTRP_r17 }, +}; + +static int +dissect_lpp_NR_TRP_BeamAntennaInfoPerFreqLayer_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_TRP_BeamAntennaInfoPerFreqLayer_r17, NR_TRP_BeamAntennaInfoPerFreqLayer_r17_sequence_of, + 1, nrMaxTRPsPerFreq_r16, FALSE); + + return offset; +} + + +static const per_sequence_t NR_TRP_BeamAntennaInfo_r17_sequence_of[1] = { + { &hf_lpp_NR_TRP_BeamAntennaInfo_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_TRP_BeamAntennaInfoPerFreqLayer_r17 }, +}; + +static int +dissect_lpp_NR_TRP_BeamAntennaInfo_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_TRP_BeamAntennaInfo_r17, NR_TRP_BeamAntennaInfo_r17_sequence_of, + 1, nrMaxFreqLayers_r16, FALSE); + + return offset; +} + + + +static int +dissect_lpp_INTEGER_0_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 10U, NULL, FALSE); + + return offset; +} + + +static const value_string lpp_T_indicator_r17_vals[] = { + { 0, "soft-r17" }, + { 1, "hard-r17" }, + { 0, NULL } +}; + +static const per_choice_t T_indicator_r17_choice[] = { + { 0, &hf_lpp_soft_r17 , ASN1_NO_EXTENSIONS , dissect_lpp_INTEGER_0_10 }, + { 1, &hf_lpp_hard_r17 , ASN1_NO_EXTENSIONS , dissect_lpp_BOOLEAN }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lpp_T_indicator_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lpp_T_indicator_r17, T_indicator_r17_choice, + NULL); + + return offset; +} + + +static const per_sequence_t LOS_NLOS_Indicator_r17_sequence[] = { + { &hf_lpp_indicator_r17 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_indicator_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_LOS_NLOS_Indicator_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_LOS_NLOS_Indicator_r17, LOS_NLOS_Indicator_r17_sequence); + + return offset; +} + + +static const per_sequence_t NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17_sequence_of[1] = { + { &hf_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_LOS_NLOS_Indicator_r17 }, +}; + +static int +dissect_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17, NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17_sequence_of, + 1, nrMaxResourcesPerSet_r16, FALSE); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17_sequence_of[1] = { + { &hf_lpp_perResource_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17 }, +}; + +static int +dissect_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17, SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17_sequence_of, + 1, nrMaxSetsPerTrpPerFreqLayer_r16, FALSE); + + return offset; +} + + +static const value_string lpp_T_nr_los_nlos_indicator_r17_vals[] = { + { 0, "perTrp-r17" }, + { 1, "perResource-r17" }, + { 0, NULL } +}; + +static const per_choice_t T_nr_los_nlos_indicator_r17_choice[] = { + { 0, &hf_lpp_perTrp_r17 , ASN1_NO_EXTENSIONS , dissect_lpp_LOS_NLOS_Indicator_r17 }, + { 1, &hf_lpp_perResource_r17 , ASN1_NO_EXTENSIONS , dissect_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lpp_T_nr_los_nlos_indicator_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lpp_T_nr_los_nlos_indicator_r17, T_nr_los_nlos_indicator_r17_choice, + NULL); + + return offset; +} + + +static const per_sequence_t NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerTRP_r17_sequence[] = { + { &hf_lpp_dl_PRS_ID_r17 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_nr_PhysCellID_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_PhysCellID_r16 }, + { &hf_lpp_nr_CellGlobalID_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NCGI_r15 }, + { &hf_lpp_nr_ARFCN_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_ARFCN_ValueNR_r15 }, + { &hf_lpp_nr_los_nlos_indicator_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_nr_los_nlos_indicator_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerTRP_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerTRP_r17, NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerTRP_r17_sequence); + + return offset; +} + + +static const per_sequence_t NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerFreqLayer_r17_sequence_of[1] = { + { &hf_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerFreqLayer_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerTRP_r17 }, +}; + +static int +dissect_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerFreqLayer_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerFreqLayer_r17, NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerFreqLayer_r17_sequence_of, + 1, nrMaxTRPsPerFreq_r16, FALSE); + + return offset; +} + + +static const per_sequence_t NR_DL_PRS_ExpectedLOS_NLOS_Assistance_r17_sequence_of[1] = { + { &hf_lpp_NR_DL_PRS_ExpectedLOS_NLOS_Assistance_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerFreqLayer_r17 }, +}; + +static int +dissect_lpp_NR_DL_PRS_ExpectedLOS_NLOS_Assistance_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_DL_PRS_ExpectedLOS_NLOS_Assistance_r17, NR_DL_PRS_ExpectedLOS_NLOS_Assistance_r17_sequence_of, + 1, nrMaxFreqLayers_r16, FALSE); + + return offset; +} + + + +static int +dissect_lpp_INTEGER_0_maxNumOfTRP_TxTEGs_1_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxNumOfTRP_TxTEGs_1_r17, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t DL_PRS_TEG_InfoElement_r17_sequence[] = { + { &hf_lpp_dl_prs_trp_Tx_TEG_ID_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_maxNumOfTRP_TxTEGs_1_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_DL_PRS_TEG_InfoElement_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_DL_PRS_TEG_InfoElement_r17, DL_PRS_TEG_InfoElement_r17_sequence); + + return offset; +} + + +static const per_sequence_t DL_PRS_TEG_InfoPerResourceSet_r17_sequence_of[1] = { + { &hf_lpp_DL_PRS_TEG_InfoPerResourceSet_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_DL_PRS_TEG_InfoElement_r17 }, +}; + +static int +dissect_lpp_DL_PRS_TEG_InfoPerResourceSet_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_DL_PRS_TEG_InfoPerResourceSet_r17, DL_PRS_TEG_InfoPerResourceSet_r17_sequence_of, + 1, nrMaxResourcesPerSet_r16, FALSE); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_TEG_InfoPerResourceSet_r17_sequence_of[1] = { + { &hf_lpp_dl_PRS_TEG_InfoSet_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_DL_PRS_TEG_InfoPerResourceSet_r17 }, +}; + +static int +dissect_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_TEG_InfoPerResourceSet_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_TEG_InfoPerResourceSet_r17, SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_TEG_InfoPerResourceSet_r17_sequence_of, + 1, nrMaxSetsPerTrpPerFreqLayer_r16, FALSE); + + return offset; +} + + +static const per_sequence_t NR_DL_PRS_TRP_TEG_InfoPerTRP_r17_sequence[] = { + { &hf_lpp_dl_PRS_ID_r17 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, + { &hf_lpp_nr_PhysCellID_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_PhysCellID_r16 }, + { &hf_lpp_nr_CellGlobalID_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NCGI_r15 }, + { &hf_lpp_nr_ARFCN_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_ARFCN_ValueNR_r15 }, + { &hf_lpp_dl_PRS_TEG_InfoSet_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_TEG_InfoPerResourceSet_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_PRS_TRP_TEG_InfoPerTRP_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_DL_PRS_TRP_TEG_InfoPerTRP_r17, NR_DL_PRS_TRP_TEG_InfoPerTRP_r17_sequence); + + return offset; +} + + +static const per_sequence_t NR_DL_PRS_TRP_TEG_InfoPerFreqLayer_r17_sequence_of[1] = { + { &hf_lpp_NR_DL_PRS_TRP_TEG_InfoPerFreqLayer_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_TRP_TEG_InfoPerTRP_r17 }, +}; + +static int +dissect_lpp_NR_DL_PRS_TRP_TEG_InfoPerFreqLayer_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_DL_PRS_TRP_TEG_InfoPerFreqLayer_r17, NR_DL_PRS_TRP_TEG_InfoPerFreqLayer_r17_sequence_of, + 1, nrMaxTRPsPerFreq_r16, FALSE); + + return offset; +} + + +static const per_sequence_t NR_DL_PRS_TRP_TEG_Info_r17_sequence_of[1] = { + { &hf_lpp_NR_DL_PRS_TRP_TEG_Info_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_PRS_TRP_TEG_InfoPerFreqLayer_r17 }, +}; + +static int +dissect_lpp_NR_DL_PRS_TRP_TEG_Info_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_DL_PRS_TRP_TEG_Info_r17, NR_DL_PRS_TRP_TEG_Info_r17_sequence_of, + 1, nrMaxFreqLayers_r16, FALSE); + + return offset; +} + + +static const per_sequence_t NR_PositionCalculationAssistance_r16_eag_1_sequence[] = { + { &hf_lpp_nr_TRP_BeamAntennaInfo_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_TRP_BeamAntennaInfo_r17 }, + { &hf_lpp_nr_DL_PRS_Expected_LOS_NLOS_Assistance_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_ExpectedLOS_NLOS_Assistance_r17 }, + { &hf_lpp_nr_DL_PRS_TRP_TEG_Info_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_TRP_TEG_Info_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_PositionCalculationAssistance_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_PositionCalculationAssistance_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_PositionCalculationAssistance_r16_sequence[] = { { &hf_lpp_nr_TRP_LocationInfo_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_TRP_LocationInfo_r16 }, { &hf_lpp_nr_DL_PRS_BeamInfo_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_BeamInfo_r16 }, { &hf_lpp_nr_RTD_Info_r16 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_RTD_Info_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_PositionCalculationAssistance_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -20657,6 +25690,8 @@ static const value_string lpp_T_cause_r16_04_vals[] = { { 1, "assistanceDataNotSupportedByServer" }, { 2, "assistanceDataSupportedButCurrentlyNotAvailableByServer" }, { 3, "notProvidedAssistanceDataNotSupportedByServer" }, + { 4, "on-demand-dl-prs-NotSupportedByServer-v1700" }, + { 5, "on-demand-dl-prs-SupportedButCurrentlyNotAvailableByServer-v1700" }, { 0, NULL } }; @@ -20664,7 +25699,7 @@ static const value_string lpp_T_cause_r16_04_vals[] = { static int dissect_lpp_T_cause_r16_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 4, NULL, TRUE, 0, NULL); + 4, NULL, TRUE, 2, NULL); return offset; } @@ -20740,11 +25775,28 @@ dissect_lpp_NR_DL_AoD_Error_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } +static const per_sequence_t NR_DL_AoD_ProvideAssistanceData_r16_eag_1_sequence[] = { + { &hf_lpp_nr_DL_PRS_BeamInfo_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_BeamInfo_r16 }, + { &hf_lpp_nr_On_Demand_DL_PRS_Configurations_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_On_Demand_DL_PRS_Configurations_r17 }, + { &hf_lpp_nr_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17 }, + { &hf_lpp_assistanceDataValidityArea_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_AreaID_CellList_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_AoD_ProvideAssistanceData_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_AoD_ProvideAssistanceData_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_AoD_ProvideAssistanceData_r16_sequence[] = { { &hf_lpp_nr_DL_PRS_AssistanceData_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_AssistanceData_r16 }, { &hf_lpp_nr_SelectedDL_PRS_IndexList_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_SelectedDL_PRS_IndexList_r16 }, { &hf_lpp_nr_PositionCalculationAssistance_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_PositionCalculationAssistance_r16 }, { &hf_lpp_nr_DL_AoD_Error_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_AoD_Error_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_AoD_ProvideAssistanceData_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -20762,6 +25814,8 @@ static const value_string lpp_T_cause_r16_02_vals[] = { { 1, "assistanceDataNotSupportedByServer" }, { 2, "assistanceDataSupportedButCurrentlyNotAvailableByServer" }, { 3, "notProvidedAssistanceDataNotSupportedByServer" }, + { 4, "on-demand-dl-prs-NotSupportedByServer-v1700" }, + { 5, "on-demand-dl-prs-SupportedButCurrentlyNotAvailableByServer-v1700" }, { 0, NULL } }; @@ -20769,7 +25823,7 @@ static const value_string lpp_T_cause_r16_02_vals[] = { static int dissect_lpp_T_cause_r16_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 4, NULL, TRUE, 0, NULL); + 4, NULL, TRUE, 2, NULL); return offset; } @@ -20845,11 +25899,27 @@ dissect_lpp_NR_DL_TDOA_Error_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } +static const per_sequence_t NR_DL_TDOA_ProvideAssistanceData_r16_eag_1_sequence[] = { + { &hf_lpp_nr_On_Demand_DL_PRS_Configurations_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_On_Demand_DL_PRS_Configurations_r17 }, + { &hf_lpp_nr_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17 }, + { &hf_lpp_assistanceDataValidityArea_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_AreaID_CellList_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_TDOA_ProvideAssistanceData_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_TDOA_ProvideAssistanceData_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_TDOA_ProvideAssistanceData_r16_sequence[] = { { &hf_lpp_nr_DL_PRS_AssistanceData_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_AssistanceData_r16 }, { &hf_lpp_nr_SelectedDL_PRS_IndexList_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_SelectedDL_PRS_IndexList_r16 }, { &hf_lpp_nr_PositionCalculationAssistance_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_PositionCalculationAssistance_r16 }, { &hf_lpp_nr_DL_TDOA_Error_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_TDOA_Error_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_TDOA_ProvideAssistanceData_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -20964,7 +26034,7 @@ static const per_sequence_t ProvideAssistanceData_sequence[] = { static int dissect_lpp_ProvideAssistanceData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 134 "./asn1/lpp/lpp.cnf" +#line 139 "./asn1/lpp/lpp.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Provide Assistance Data"); @@ -20996,7 +26066,7 @@ dissect_lpp_LocationInformationType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int dissect_lpp_ReportingDuration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 304 "./asn1/lpp/lpp.cnf" +#line 309 "./asn1/lpp/lpp.cnf" guint32 duration; offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, @@ -21066,7 +26136,7 @@ static const value_string lpp_T_reportingInterval_vals[] = { static int dissect_lpp_T_reportingInterval(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 292 "./asn1/lpp/lpp.cnf" +#line 297 "./asn1/lpp/lpp.cnf" guint32 idx; const gchar *interval[10] = {"", ": 1s", ": 2s", ": 4s", ": 8s", ": 10s", ": 16s", ": 20s", ": 32s", ": 64s"}; @@ -21077,7 +26147,7 @@ dissect_lpp_T_reportingInterval(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a -#line 299 "./asn1/lpp/lpp.cnf" +#line 304 "./asn1/lpp/lpp.cnf" if (idx < 10) { proto_item_append_text(actx->created_item, "%s", interval[idx]); } @@ -21163,6 +26233,7 @@ dissect_lpp_ResponseTime_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static const value_string lpp_T_unit_r15_vals[] = { { 0, "ten-seconds" }, + { 1, "ten-milli-seconds-v1700" }, { 0, NULL } }; @@ -21170,7 +26241,7 @@ static const value_string lpp_T_unit_r15_vals[] = { static int dissect_lpp_T_unit_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 1, NULL, TRUE, 0, NULL); + 1, NULL, TRUE, 1, NULL); return offset; } @@ -21393,6 +26464,155 @@ dissect_lpp_CommonIEsRequestLocationInformation_eag_2(tvbuff_t *tvb _U_, int off } + +static int +dissect_lpp_INTEGER_0_3599999(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3599999U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_gnssTime_r17_01_sequence[] = { + { &hf_lpp_gnss_TOD_msec_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_3599999 }, + { &hf_lpp_gnss_TimeID_r17 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_gnssTime_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_gnssTime_r17_01, T_gnssTime_r17_01_sequence); + + return offset; +} + + +static const per_sequence_t T_e_utraTime_r17_01_sequence[] = { + { &hf_lpp_lte_PhysCellId_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_503 }, + { &hf_lpp_lte_ArfcnEUTRA_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_ARFCN_ValueEUTRA }, + { &hf_lpp_lte_CellGlobalId_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_CellGlobalIdEUTRA_AndUTRA }, + { &hf_lpp_lte_SystemFrameNumber_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_1023 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_e_utraTime_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_e_utraTime_r17_01, T_e_utraTime_r17_01_sequence); + + return offset; +} + + +static const value_string lpp_T_nr_Slot_r17_vals[] = { + { 0, "scs15-r17" }, + { 1, "scs30-r17" }, + { 2, "scs60-r17" }, + { 3, "scs120-r17" }, + { 0, NULL } +}; + +static const per_choice_t T_nr_Slot_r17_choice[] = { + { 0, &hf_lpp_scs15_r17 , ASN1_NO_EXTENSIONS , dissect_lpp_INTEGER_0_9 }, + { 1, &hf_lpp_scs30_r17 , ASN1_NO_EXTENSIONS , dissect_lpp_INTEGER_0_19 }, + { 2, &hf_lpp_scs60_r17 , ASN1_NO_EXTENSIONS , dissect_lpp_INTEGER_0_39 }, + { 3, &hf_lpp_scs120_r17 , ASN1_NO_EXTENSIONS , dissect_lpp_INTEGER_0_79 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lpp_T_nr_Slot_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lpp_T_nr_Slot_r17, T_nr_Slot_r17_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_nrTime_r17_01_sequence[] = { + { &hf_lpp_nr_PhysCellID_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_PhysCellID_r16 }, + { &hf_lpp_nr_ARFCN_r17 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_ARFCN_ValueNR_r15 }, + { &hf_lpp_nr_CellGlobalID_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NCGI_r15 }, + { &hf_lpp_nr_SFN_r17 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_1023 }, + { &hf_lpp_nr_Slot_r17 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_Slot_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_nrTime_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_nrTime_r17_01, T_nrTime_r17_01_sequence); + + return offset; +} + + +static const value_string lpp_T_networkTime_r17_vals[] = { + { 0, "e-utraTime-r17" }, + { 1, "nrTime-r17" }, + { 0, NULL } +}; + +static const per_choice_t T_networkTime_r17_choice[] = { + { 0, &hf_lpp_e_utraTime_r17_02, ASN1_EXTENSION_ROOT , dissect_lpp_T_e_utraTime_r17_01 }, + { 1, &hf_lpp_nrTime_r17_02 , ASN1_EXTENSION_ROOT , dissect_lpp_T_nrTime_r17_01 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lpp_T_networkTime_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lpp_T_networkTime_r17, T_networkTime_r17_choice, + NULL); + + return offset; +} + + +static const per_sequence_t ScheduledLocationTime_r17_sequence[] = { + { &hf_lpp_utcTime_r17_02 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_UTCTime }, + { &hf_lpp_gnssTime_r17_02 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_gnssTime_r17_01 }, + { &hf_lpp_networkTime_r17 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_networkTime_r17 }, + { &hf_lpp_relativeTime_r17_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_1024 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_ScheduledLocationTime_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_ScheduledLocationTime_r17, ScheduledLocationTime_r17_sequence); + + return offset; +} + + + +static int +dissect_lpp_TargetIntegrityRisk_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 10U, 90U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t CommonIEsRequestLocationInformation_eag_3_sequence[] = { + { &hf_lpp_scheduledLocationTime_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_ScheduledLocationTime_r17 }, + { &hf_lpp_targetIntegrityRisk_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_TargetIntegrityRisk_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_CommonIEsRequestLocationInformation_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CommonIEsRequestLocationInformation_eag_3_sequence); + + return offset; +} + + static const per_sequence_t CommonIEsRequestLocationInformation_sequence[] = { { &hf_lpp_locationInformationType, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_LocationInformationType }, { &hf_lpp_triggeredReporting, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_TriggeredReportingCriteria }, @@ -21404,6 +26624,7 @@ static const per_sequence_t CommonIEsRequestLocationInformation_sequence[] = { { &hf_lpp_velocityTypes , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_VelocityTypes }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_CommonIEsRequestLocationInformation_eag_1 }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_CommonIEsRequestLocationInformation_eag_2 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_CommonIEsRequestLocationInformation_eag_3 }, { NULL, 0, 0, NULL } }; @@ -21444,6 +26665,34 @@ dissect_lpp_GNSS_PositioningInstructions_eag_1(tvbuff_t *tvb _U_, int offset _U_ } +static const value_string lpp_T_ha_GNSS_MetricsReq_r17_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_ha_GNSS_MetricsReq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t GNSS_PositioningInstructions_eag_2_sequence[] = { + { &hf_lpp_ha_GNSS_MetricsReq_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_ha_GNSS_MetricsReq_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_PositioningInstructions_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_PositioningInstructions_eag_2_sequence); + + return offset; +} + + static const per_sequence_t GNSS_PositioningInstructions_sequence[] = { { &hf_lpp_gnss_Methods , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID_Bitmap }, { &hf_lpp_fineTimeAssistanceMeasReq, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_BOOLEAN }, @@ -21451,6 +26700,7 @@ static const per_sequence_t GNSS_PositioningInstructions_sequence[] = { { &hf_lpp_multiFreqMeasReq, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_BOOLEAN }, { &hf_lpp_assistanceAvailability, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_BOOLEAN }, { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_PositioningInstructions_eag_1 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_PositioningInstructions_eag_2 }, { NULL, 0, 0, NULL } }; @@ -21816,13 +27066,14 @@ dissect_lpp_T_nr_UE_RxTxTimeDiffMeasurementInfoRequest_r16(tvbuff_t *tvb _U_, in static int * const T_nr_RequestedMeasurements_r16_01_bits[] = { &hf_lpp_T_nr_RequestedMeasurements_r16_01_prsrsrpReq, + &hf_lpp_T_nr_RequestedMeasurements_r16_01_firstPathRsrpReq_r17, NULL }; static int dissect_lpp_T_nr_RequestedMeasurements_r16_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, T_nr_RequestedMeasurements_r16_01_bits, 1, NULL, NULL); + 1, 8, FALSE, T_nr_RequestedMeasurements_r16_01_bits, 2, NULL, NULL); return offset; } @@ -21858,12 +27109,213 @@ dissect_lpp_T_additionalPaths_r16_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } +static const value_string lpp_T_nr_UE_RxTxTEG_Request_r17_vals[] = { + { 0, "case1" }, + { 1, "case2" }, + { 2, "case3" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_nr_UE_RxTxTEG_Request_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 3, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTxTEGs_r17_vals[] = { + { 0, "n0" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n6" }, + { 5, "n8" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTxTEGs_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_02_vals[] = { + { 0, "n0" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n6" }, + { 5, "n8" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_requestedDL_PRS_ProcessingSamples_r17_02_vals[] = { + { 0, "m1" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_requestedDL_PRS_ProcessingSamples_r17_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lpp_LOS_NLOS_IndicatorType1_r17_vals[] = { + { 0, "hardvalue" }, + { 1, "softvalue" }, + { 0, NULL } +}; + + +static int +dissect_lpp_LOS_NLOS_IndicatorType1_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_LOS_NLOS_IndicatorGranularity1_r17_vals[] = { + { 0, "trpspecific" }, + { 1, "resourcespecific" }, + { 0, NULL } +}; + + +static int +dissect_lpp_LOS_NLOS_IndicatorGranularity1_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_nr_los_nlos_IndicatorRequest_r17_02_sequence[] = { + { &hf_lpp_type_r17 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_LOS_NLOS_IndicatorType1_r17 }, + { &hf_lpp_granularity_r17 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_LOS_NLOS_IndicatorGranularity1_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_nr_los_nlos_IndicatorRequest_r17_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_nr_los_nlos_IndicatorRequest_r17_02, T_nr_los_nlos_IndicatorRequest_r17_02_sequence); + + return offset; +} + + +static const value_string lpp_T_additionalPathsExt_r17_01_vals[] = { + { 0, "requested" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_additionalPathsExt_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_additionalPathsDL_PRS_RSRP_Request_r17_01_vals[] = { + { 0, "requested" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_additionalPathsDL_PRS_RSRP_Request_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_multiMeasInSameReport_r17_02_vals[] = { + { 0, "requested" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_multiMeasInSameReport_r17_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_lowerRxBeamSweepingThan8_FR2_r17_03_vals[] = { + { 0, "requested" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_lowerRxBeamSweepingThan8_FR2_r17_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NR_Multi_RTT_RequestLocationInformation_r16_eag_1_sequence[] = { + { &hf_lpp_nr_UE_RxTxTEG_Request_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_UE_RxTxTEG_Request_r17 }, + { &hf_lpp_measureSameDL_PRS_ResourceWithDifferentRxTxTEGs_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTxTEGs_r17 }, + { &hf_lpp_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_02 }, + { &hf_lpp_requestedDL_PRS_ProcessingSamples_r17_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_requestedDL_PRS_ProcessingSamples_r17_02 }, + { &hf_lpp_nr_los_nlos_IndicatorRequest_r17_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_los_nlos_IndicatorRequest_r17_02 }, + { &hf_lpp_additionalPathsExt_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_additionalPathsExt_r17_01 }, + { &hf_lpp_additionalPathsDL_PRS_RSRP_Request_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_additionalPathsDL_PRS_RSRP_Request_r17_01 }, + { &hf_lpp_multiMeasInSameReport_r17_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_multiMeasInSameReport_r17_02 }, + { &hf_lpp_lowerRxBeamSweepingThan8_FR2_r17_03, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_lowerRxBeamSweepingThan8_FR2_r17_03 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_Multi_RTT_RequestLocationInformation_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_Multi_RTT_RequestLocationInformation_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_Multi_RTT_RequestLocationInformation_r16_sequence[] = { { &hf_lpp_nr_UE_RxTxTimeDiffMeasurementInfoRequest_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_nr_UE_RxTxTimeDiffMeasurementInfoRequest_r16 }, { &hf_lpp_nr_RequestedMeasurements_r16_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_nr_RequestedMeasurements_r16_01 }, { &hf_lpp_nr_AssistanceAvailability_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_BOOLEAN }, { &hf_lpp_nr_Multi_RTT_ReportConfig_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_Multi_RTT_ReportConfig_r16 }, { &hf_lpp_additionalPaths_r16_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_additionalPaths_r16_01 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_Multi_RTT_RequestLocationInformation_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -21876,8 +27328,81 @@ dissect_lpp_NR_Multi_RTT_RequestLocationInformation_r16(tvbuff_t *tvb _U_, int o } + +static int +dissect_lpp_INTEGER_9_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 9U, 24U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_nr_los_nlos_IndicatorRequest_r17_01_sequence[] = { + { &hf_lpp_type_r17 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_LOS_NLOS_IndicatorType1_r17 }, + { &hf_lpp_granularity_r17 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_LOS_NLOS_IndicatorGranularity1_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_nr_los_nlos_IndicatorRequest_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_nr_los_nlos_IndicatorRequest_r17_01, T_nr_los_nlos_IndicatorRequest_r17_01_sequence); + + return offset; +} + + +static const value_string lpp_T_requestedDL_PRS_ProcessingSamples_r17_01_vals[] = { + { 0, "m1" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_requestedDL_PRS_ProcessingSamples_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_lowerRxBeamSweepingThan8_FR2_r17_02_vals[] = { + { 0, "requested" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_lowerRxBeamSweepingThan8_FR2_r17_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NR_DL_AoD_ReportConfig_r16_eag_1_sequence[] = { + { &hf_lpp_maxDL_PRS_RSRP_MeasurementsPerTRP_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_INTEGER_9_24 }, + { &hf_lpp_maxDL_PRS_RSRPP_MeasurementsPerTRP_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_24 }, + { &hf_lpp_nr_los_nlos_IndicatorRequest_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_los_nlos_IndicatorRequest_r17_01 }, + { &hf_lpp_requestedDL_PRS_ProcessingSamples_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_requestedDL_PRS_ProcessingSamples_r17_01 }, + { &hf_lpp_lowerRxBeamSweepingThan8_FR2_r17_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_lowerRxBeamSweepingThan8_FR2_r17_02 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_AoD_ReportConfig_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_AoD_ReportConfig_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_AoD_ReportConfig_r16_sequence[] = { { &hf_lpp_maxDL_PRS_RSRP_MeasurementsPerTRP_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_8 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_AoD_ReportConfig_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -21890,9 +27415,38 @@ dissect_lpp_NR_DL_AoD_ReportConfig_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_c } +static const value_string lpp_T_multiMeasInSameReport_r17_01_vals[] = { + { 0, "requested" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_multiMeasInSameReport_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NR_DL_AoD_RequestLocationInformation_r16_eag_1_sequence[] = { + { &hf_lpp_multiMeasInSameReport_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_multiMeasInSameReport_r17_01 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_AoD_RequestLocationInformation_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_AoD_RequestLocationInformation_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_AoD_RequestLocationInformation_r16_sequence[] = { { &hf_lpp_nr_AssistanceAvailability_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_BOOLEAN }, { &hf_lpp_nr_DL_AoD_ReportConfig_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_AoD_ReportConfig_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_AoD_RequestLocationInformation_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -21922,13 +27476,79 @@ dissect_lpp_T_nr_DL_PRS_RstdMeasurementInfoRequest_r16(tvbuff_t *tvb _U_, int of static int * const T_nr_RequestedMeasurements_r16_bits[] = { &hf_lpp_T_nr_RequestedMeasurements_r16_prsrsrpReq, + &hf_lpp_T_nr_RequestedMeasurements_r16_firstPathRsrpReq_r17, NULL }; static int dissect_lpp_T_nr_RequestedMeasurements_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 1, 8, FALSE, T_nr_RequestedMeasurements_r16_bits, 1, NULL, NULL); + 1, 8, FALSE, T_nr_RequestedMeasurements_r16_bits, 2, NULL, NULL); + + return offset; +} + + +static const value_string lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_01_vals[] = { + { 0, "n0" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n6" }, + { 5, "n8" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 6, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_requestedDL_PRS_ProcessingSamples_r17_vals[] = { + { 0, "m1" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_requestedDL_PRS_ProcessingSamples_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_lowerRxBeamSweepingThan8_FR2_r17_01_vals[] = { + { 0, "requested" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_lowerRxBeamSweepingThan8_FR2_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NR_DL_TDOA_ReportConfig_r16_eag_1_sequence[] = { + { &hf_lpp_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_01 }, + { &hf_lpp_requestedDL_PRS_ProcessingSamples_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_requestedDL_PRS_ProcessingSamples_r17 }, + { &hf_lpp_lowerRxBeamSweepingThan8_FR2_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_lowerRxBeamSweepingThan8_FR2_r17_01 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_TDOA_ReportConfig_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_TDOA_ReportConfig_r16_eag_1_sequence); return offset; } @@ -21937,6 +27557,7 @@ dissect_lpp_T_nr_RequestedMeasurements_r16(tvbuff_t *tvb _U_, int offset _U_, as static const per_sequence_t NR_DL_TDOA_ReportConfig_r16_sequence[] = { { &hf_lpp_maxDL_PRS_RSTD_MeasurementsPerTRPPair_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_4 }, { &hf_lpp_timingReportingGranularityFactor_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_5 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_TDOA_ReportConfig_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -21964,12 +27585,105 @@ dissect_lpp_T_additionalPaths_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const value_string lpp_T_nr_UE_RxTEG_Request_r17_vals[] = { + { 0, "requested" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_nr_UE_RxTEG_Request_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_nr_los_nlos_IndicatorRequest_r17_sequence[] = { + { &hf_lpp_type_r17 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_LOS_NLOS_IndicatorType1_r17 }, + { &hf_lpp_granularity_r17 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_LOS_NLOS_IndicatorGranularity1_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_nr_los_nlos_IndicatorRequest_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_nr_los_nlos_IndicatorRequest_r17, T_nr_los_nlos_IndicatorRequest_r17_sequence); + + return offset; +} + + +static const value_string lpp_T_additionalPathsExt_r17_vals[] = { + { 0, "requested" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_additionalPathsExt_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_additionalPathsDL_PRS_RSRP_Request_r17_vals[] = { + { 0, "requested" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_additionalPathsDL_PRS_RSRP_Request_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lpp_T_multiMeasInSameReport_r17_vals[] = { + { 0, "requested" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_multiMeasInSameReport_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NR_DL_TDOA_RequestLocationInformation_r16_eag_1_sequence[] = { + { &hf_lpp_nr_UE_RxTEG_Request_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_UE_RxTEG_Request_r17 }, + { &hf_lpp_nr_los_nlos_IndicatorRequest_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_los_nlos_IndicatorRequest_r17 }, + { &hf_lpp_additionalPathsExt_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_additionalPathsExt_r17 }, + { &hf_lpp_additionalPathsDL_PRS_RSRP_Request_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_additionalPathsDL_PRS_RSRP_Request_r17 }, + { &hf_lpp_multiMeasInSameReport_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_multiMeasInSameReport_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_TDOA_RequestLocationInformation_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_TDOA_RequestLocationInformation_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_TDOA_RequestLocationInformation_r16_sequence[] = { { &hf_lpp_nr_DL_PRS_RstdMeasurementInfoRequest_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_nr_DL_PRS_RstdMeasurementInfoRequest_r16 }, { &hf_lpp_nr_RequestedMeasurements_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_nr_RequestedMeasurements_r16 }, { &hf_lpp_nr_AssistanceAvailability_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_BOOLEAN }, { &hf_lpp_nr_DL_TDOA_ReportConfig_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_TDOA_ReportConfig_r16 }, { &hf_lpp_additionalPaths_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_additionalPaths_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_TDOA_RequestLocationInformation_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -22086,7 +27800,7 @@ static const per_sequence_t RequestLocationInformation_sequence[] = { static int dissect_lpp_RequestLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 137 "./asn1/lpp/lpp.cnf" +#line 142 "./asn1/lpp/lpp.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Request Location Information"); @@ -22637,20 +28351,11 @@ dissect_lpp_CommonIEsProvideLocationInformation_eag_3(tvbuff_t *tvb _U_, int off } -static const per_sequence_t CommonIEsProvideLocationInformation_sequence[] = { - { &hf_lpp_locationEstimate, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_LocationCoordinates }, - { &hf_lpp_velocityEstimate, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_Velocity }, - { &hf_lpp_locationError , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_LocationError }, - { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_CommonIEsProvideLocationInformation_eag_1 }, - { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_CommonIEsProvideLocationInformation_eag_2 }, - { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_CommonIEsProvideLocationInformation_eag_3 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lpp_CommonIEsProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lpp_CommonIEsProvideLocationInformation, CommonIEsProvideLocationInformation_sequence); +dissect_lpp_INTEGER_0_50000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 50000U, NULL, FALSE); return offset; } @@ -22658,9 +28363,58 @@ dissect_lpp_CommonIEsProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U static int -dissect_lpp_INTEGER_0_3599999(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lpp_INTEGER_10_90(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 3599999U, NULL, FALSE); + 10U, 90U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t IntegrityInfo_r17_sequence[] = { + { &hf_lpp_horizontalProtectionLevel_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_50000 }, + { &hf_lpp_verticalProtectionLevel_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_50000 }, + { &hf_lpp_achievableTargetIntegrityRisk_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_10_90 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_IntegrityInfo_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_IntegrityInfo_r17, IntegrityInfo_r17_sequence); + + return offset; +} + + +static const per_sequence_t CommonIEsProvideLocationInformation_eag_4_sequence[] = { + { &hf_lpp_integrityInfo_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_IntegrityInfo_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_CommonIEsProvideLocationInformation_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CommonIEsProvideLocationInformation_eag_4_sequence); + + return offset; +} + + +static const per_sequence_t CommonIEsProvideLocationInformation_sequence[] = { + { &hf_lpp_locationEstimate, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_LocationCoordinates }, + { &hf_lpp_velocityEstimate, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_Velocity }, + { &hf_lpp_locationError , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_LocationError }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_CommonIEsProvideLocationInformation_eag_1 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_CommonIEsProvideLocationInformation_eag_2 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_CommonIEsProvideLocationInformation_eag_3 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_CommonIEsProvideLocationInformation_eag_4 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_CommonIEsProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_CommonIEsProvideLocationInformation, CommonIEsProvideLocationInformation_sequence); return offset; } @@ -23041,9 +28795,77 @@ dissect_lpp_GNSS_SignalMeasurementInformation(tvbuff_t *tvb _U_, int offset _U_, } + +static int +dissect_lpp_INTEGER_0_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 64U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lpp_INTEGER_0_99(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 99U, NULL, FALSE); + + return offset; +} + + +static const value_string lpp_T_fixType_r17_vals[] = { + { 0, "carrier-phase-float" }, + { 1, "carrier-phase-fix" }, + { 0, NULL } +}; + + +static int +dissect_lpp_T_fixType_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t HA_GNSS_Metrics_r17_sequence[] = { + { &hf_lpp_nrOfUsedSatellites_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_64 }, + { &hf_lpp_hdopi_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_256 }, + { &hf_lpp_pdopi_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_256 }, + { &hf_lpp_age_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_99 }, + { &hf_lpp_fixType_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_fixType_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_HA_GNSS_Metrics_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_HA_GNSS_Metrics_r17, HA_GNSS_Metrics_r17_sequence); + + return offset; +} + + +static const per_sequence_t GNSS_LocationInformation_eag_1_sequence[] = { + { &hf_lpp_ha_GNSS_Metrics_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_HA_GNSS_Metrics_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_GNSS_LocationInformation_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, GNSS_LocationInformation_eag_1_sequence); + + return offset; +} + + static const per_sequence_t GNSS_LocationInformation_sequence[] = { { &hf_lpp_measurementReferenceTime, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_MeasurementReferenceTime }, { &hf_lpp_agnss_List , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_ID_Bitmap }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_GNSS_LocationInformation_eag_1 }, { NULL, 0, 0, NULL } }; @@ -23075,7 +28897,7 @@ dissect_lpp_A_GNSS_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, static int dissect_lpp_T_error_Resolution(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 357 "./asn1/lpp/lpp.cnf" +#line 362 "./asn1/lpp/lpp.cnf" tvbuff_t *error_Resolution_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, 2, 2, FALSE, NULL, 0, &error_Resolution_tvb, NULL); @@ -23083,7 +28905,7 @@ dissect_lpp_T_error_Resolution(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac -#line 361 "./asn1/lpp/lpp.cnf" +#line 366 "./asn1/lpp/lpp.cnf" if (error_Resolution_tvb) { guint bitvalue = tvb_get_bits8(error_Resolution_tvb, 0, 2); actx->created_item = proto_tree_add_uint(tree, hf_index, error_Resolution_tvb, 0, 1, bitvalue); @@ -23097,7 +28919,7 @@ dissect_lpp_T_error_Resolution(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac static int dissect_lpp_T_error_Value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 370 "./asn1/lpp/lpp.cnf" +#line 375 "./asn1/lpp/lpp.cnf" tvbuff_t *error_Value_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, 5, 5, FALSE, NULL, 0, &error_Value_tvb, NULL); @@ -23105,7 +28927,7 @@ dissect_lpp_T_error_Value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U -#line 374 "./asn1/lpp/lpp.cnf" +#line 379 "./asn1/lpp/lpp.cnf" if (error_Value_tvb) { guint bitvalue = tvb_get_bits8(error_Value_tvb, 0, 5); actx->created_item = proto_tree_add_uint(tree, hf_index, error_Value_tvb, 0, 1, bitvalue); @@ -23119,7 +28941,7 @@ dissect_lpp_T_error_Value(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U static int dissect_lpp_T_error_NumSamples(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 383 "./asn1/lpp/lpp.cnf" +#line 388 "./asn1/lpp/lpp.cnf" tvbuff_t *error_NumSamples_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, 3, 3, FALSE, NULL, 0, &error_NumSamples_tvb, NULL); @@ -23127,7 +28949,7 @@ dissect_lpp_T_error_NumSamples(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac -#line 387 "./asn1/lpp/lpp.cnf" +#line 392 "./asn1/lpp/lpp.cnf" if (error_NumSamples_tvb) { guint bitvalue = tvb_get_bits8(error_NumSamples_tvb, 0, 3); actx->created_item = proto_tree_add_uint(tree, hf_index, error_NumSamples_tvb, 0, 1, bitvalue); @@ -24273,7 +30095,7 @@ dissect_lpp_WLAN_ProvideLocationInformation_r13(tvbuff_t *tvb _U_, int offset _U static int dissect_lpp_T_btAddr_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1788 "./asn1/lpp/lpp.cnf" +#line 1793 "./asn1/lpp/lpp.cnf" tvbuff_t *btAddr_tvb = NULL; offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, @@ -24861,9 +30683,33 @@ dissect_lpp_T_nr_RelativeTimeDifference_r16(tvbuff_t *tvb _U_, int offset _U_, a } + +static int +dissect_lpp_INTEGER_0_126(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 126U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t NR_AdditionalPath_r16_eag_1_sequence[] = { + { &hf_lpp_nr_DL_PRS_RSRPP_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_126 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_AdditionalPath_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_AdditionalPath_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_AdditionalPath_r16_sequence[] = { { &hf_lpp_nr_RelativeTimeDifference_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_nr_RelativeTimeDifference_r16 }, { &hf_lpp_nr_PathQuality_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_TimingQuality_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_AdditionalPath_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -24936,16 +30782,6 @@ dissect_lpp_NR_TimeStamp_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx -static int -dissect_lpp_INTEGER_0_126(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 126U, NULL, FALSE); - - return offset; -} - - - static int dissect_lpp_INTEGER_0_61(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, @@ -24985,6 +30821,134 @@ dissect_lpp_T_nr_UE_RxTxTimeDiffAdditional_r16(tvbuff_t *tvb _U_, int offset _U_ } + +static int +dissect_lpp_INTEGER_0_maxNumOfRxTxTEGs_1_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxNumOfRxTxTEGs_1_r17, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_case1_r17_sequence[] = { + { &hf_lpp_nr_UE_RxTx_TEG_ID_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_maxNumOfRxTxTEGs_1_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_case1_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_case1_r17, T_case1_r17_sequence); + + return offset; +} + + + +static int +dissect_lpp_INTEGER_1_maxTxTEG_Sets_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxTxTEG_Sets_r17, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_case2_r17_sequence[] = { + { &hf_lpp_nr_UE_RxTx_TEG_ID_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_maxNumOfRxTxTEGs_1_r17 }, + { &hf_lpp_nr_UE_Tx_TEG_Index_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_1_maxTxTEG_Sets_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_case2_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_case2_r17, T_case2_r17_sequence); + + return offset; +} + + + +static int +dissect_lpp_INTEGER_0_maxNumOfRxTEGs_1_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxNumOfRxTEGs_1_r17, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_case3_r17_sequence[] = { + { &hf_lpp_nr_UE_Rx_TEG_ID_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_maxNumOfRxTEGs_1_r17 }, + { &hf_lpp_nr_UE_Tx_TEG_Index_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_1_maxTxTEG_Sets_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_case3_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_case3_r17, T_case3_r17_sequence); + + return offset; +} + + +static const value_string lpp_NR_UE_RxTx_TEG_Info_r17_vals[] = { + { 0, "case1-r17" }, + { 1, "case2-r17" }, + { 2, "case3-r17" }, + { 0, NULL } +}; + +static const per_choice_t NR_UE_RxTx_TEG_Info_r17_choice[] = { + { 0, &hf_lpp_case1_r17 , ASN1_EXTENSION_ROOT , dissect_lpp_T_case1_r17 }, + { 1, &hf_lpp_case2_r17 , ASN1_EXTENSION_ROOT , dissect_lpp_T_case2_r17 }, + { 2, &hf_lpp_case3_r17 , ASN1_EXTENSION_ROOT , dissect_lpp_T_case3_r17 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lpp_NR_UE_RxTx_TEG_Info_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_UE_RxTx_TEG_Info_r17, NR_UE_RxTx_TEG_Info_r17_choice, + NULL); + + return offset; +} + + +static const per_sequence_t NR_AdditionalPathListExt_r17_sequence_of[1] = { + { &hf_lpp_NR_AdditionalPathListExt_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_AdditionalPath_r16 }, +}; + +static int +dissect_lpp_NR_AdditionalPathListExt_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_AdditionalPathListExt_r17, NR_AdditionalPathListExt_r17_sequence_of, + 1, 8, FALSE); + + return offset; +} + + +static const per_sequence_t NR_Multi_RTT_AdditionalMeasurementElement_r16_eag_1_sequence[] = { + { &hf_lpp_nr_UE_RxTx_TEG_Info_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_UE_RxTx_TEG_Info_r17 }, + { &hf_lpp_nr_DL_PRS_FirstPathRSRP_ResultDiff_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_61 }, + { &hf_lpp_nr_los_nlos_IndicatorPerResource_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_LOS_NLOS_Indicator_r17 }, + { &hf_lpp_nr_AdditionalPathListExt_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_AdditionalPathListExt_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_Multi_RTT_AdditionalMeasurementElement_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_Multi_RTT_AdditionalMeasurementElement_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_Multi_RTT_AdditionalMeasurementElement_r16_sequence[] = { { &hf_lpp_nr_DL_PRS_ResourceID_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_ResourceID_r16 }, { &hf_lpp_nr_DL_PRS_ResourceSetID_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_ResourceSetID_r16 }, @@ -24993,6 +30957,7 @@ static const per_sequence_t NR_Multi_RTT_AdditionalMeasurementElement_r16_sequen { &hf_lpp_nr_TimingQuality_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_TimingQuality_r16 }, { &hf_lpp_nr_AdditionalPathList_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_AdditionalPathList_r16 }, { &hf_lpp_nr_TimeStamp_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_TimeStamp_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_Multi_RTT_AdditionalMeasurementElement_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -25019,6 +30984,59 @@ dissect_lpp_NR_Multi_RTT_AdditionalMeasurements_r16(tvbuff_t *tvb _U_, int offse } +static const value_string lpp_T_nr_los_nlos_Indicator_r17_02_vals[] = { + { 0, "perTRP-r17" }, + { 1, "perResource-r17" }, + { 0, NULL } +}; + +static const per_choice_t T_nr_los_nlos_Indicator_r17_02_choice[] = { + { 0, &hf_lpp_perTRP_r17 , ASN1_NO_EXTENSIONS , dissect_lpp_LOS_NLOS_Indicator_r17 }, + { 1, &hf_lpp_perResource_r17_01, ASN1_NO_EXTENSIONS , dissect_lpp_LOS_NLOS_Indicator_r17 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lpp_T_nr_los_nlos_Indicator_r17_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lpp_T_nr_los_nlos_Indicator_r17_02, T_nr_los_nlos_Indicator_r17_02_choice, + NULL); + + return offset; +} + + +static const per_sequence_t NR_Multi_RTT_AdditionalMeasurementsExt_r17_sequence_of[1] = { + { &hf_lpp_NR_Multi_RTT_AdditionalMeasurementsExt_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_Multi_RTT_AdditionalMeasurementElement_r16 }, +}; + +static int +dissect_lpp_NR_Multi_RTT_AdditionalMeasurementsExt_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_Multi_RTT_AdditionalMeasurementsExt_r17, NR_Multi_RTT_AdditionalMeasurementsExt_r17_sequence_of, + 1, maxAddMeasRTT_r17, FALSE); + + return offset; +} + + +static const per_sequence_t NR_Multi_RTT_MeasElement_r16_eag_1_sequence[] = { + { &hf_lpp_nr_UE_RxTx_TEG_Info_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_UE_RxTx_TEG_Info_r17 }, + { &hf_lpp_nr_DL_PRS_FirstPathRSRP_Result_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_126 }, + { &hf_lpp_nr_los_nlos_Indicator_r17_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_los_nlos_Indicator_r17_02 }, + { &hf_lpp_nr_AdditionalPathListExt_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_AdditionalPathListExt_r17 }, + { &hf_lpp_nr_Multi_RTT_AdditionalMeasurementsExt_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_Multi_RTT_AdditionalMeasurementsExt_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_Multi_RTT_MeasElement_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_Multi_RTT_MeasElement_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_Multi_RTT_MeasElement_r16_sequence[] = { { &hf_lpp_dl_PRS_ID_r16 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, { &hf_lpp_nr_PhysCellID_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_PhysCellID_r16 }, @@ -25032,6 +31050,7 @@ static const per_sequence_t NR_Multi_RTT_MeasElement_r16_sequence[] = { { &hf_lpp_nr_TimingQuality_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_TimingQuality_r16 }, { &hf_lpp_nr_DL_PRS_RSRP_Result_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_126 }, { &hf_lpp_nr_Multi_RTT_AdditionalMeasurements_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_Multi_RTT_AdditionalMeasurements_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_Multi_RTT_MeasElement_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -25076,9 +31095,113 @@ dissect_lpp_T_nr_NTA_Offset_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } + +static int +dissect_lpp_INTEGER_0_maxNumOfTxTEGs_1_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxNumOfTxTEGs_1_r17, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lpp_INTEGER_0_2199(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 2199U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_carrierFreq_r17_sequence[] = { + { &hf_lpp_absoluteFrequencyPointA_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_ARFCN_ValueNR_r15 }, + { &hf_lpp_offsetToPointA_r17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_2199 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_T_carrierFreq_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_T_carrierFreq_r17, T_carrierFreq_r17_sequence); + + return offset; +} + + + +static int +dissect_lpp_INTEGER_0_maxNumOfSRS_PosResources_1_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxNumOfSRS_PosResources_1_r17, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_srs_PosResourceList_r17_sequence_of[1] = { + { &hf_lpp_srs_PosResourceList_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_maxNumOfSRS_PosResources_1_r17 }, +}; + +static int +dissect_lpp_T_srs_PosResourceList_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_T_srs_PosResourceList_r17, T_srs_PosResourceList_r17_sequence_of, + 1, maxNumOfSRS_PosResources_r17, FALSE); + + return offset; +} + + +static const per_sequence_t NR_SRS_TxTEG_Element_r17_sequence[] = { + { &hf_lpp_nr_TimeStamp_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_TimeStamp_r16 }, + { &hf_lpp_nr_UE_Tx_TEG_ID_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_maxNumOfTxTEGs_1_r17 }, + { &hf_lpp_carrierFreq_r17 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_carrierFreq_r17 }, + { &hf_lpp_srs_PosResourceList_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_T_srs_PosResourceList_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_SRS_TxTEG_Element_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_SRS_TxTEG_Element_r17, NR_SRS_TxTEG_Element_r17_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxTxTEG_Sets_r17_OF_NR_SRS_TxTEG_Element_r17_sequence_of[1] = { + { &hf_lpp_nr_SRS_TxTEG_Set_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_SRS_TxTEG_Element_r17 }, +}; + +static int +dissect_lpp_SEQUENCE_SIZE_1_maxTxTEG_Sets_r17_OF_NR_SRS_TxTEG_Element_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_SEQUENCE_SIZE_1_maxTxTEG_Sets_r17_OF_NR_SRS_TxTEG_Element_r17, SEQUENCE_SIZE_1_maxTxTEG_Sets_r17_OF_NR_SRS_TxTEG_Element_r17_sequence_of, + 1, maxTxTEG_Sets_r17, FALSE); + + return offset; +} + + +static const per_sequence_t NR_Multi_RTT_SignalMeasurementInformation_r16_eag_1_sequence[] = { + { &hf_lpp_nr_SRS_TxTEG_Set_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_SEQUENCE_SIZE_1_maxTxTEG_Sets_r17_OF_NR_SRS_TxTEG_Element_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_Multi_RTT_SignalMeasurementInformation_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_Multi_RTT_SignalMeasurementInformation_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_Multi_RTT_SignalMeasurementInformation_r16_sequence[] = { { &hf_lpp_nr_Multi_RTT_MeasList_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_Multi_RTT_MeasList_r16 }, { &hf_lpp_nr_NTA_Offset_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_nr_NTA_Offset_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_Multi_RTT_SignalMeasurementInformation_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -25091,9 +31214,37 @@ dissect_lpp_NR_Multi_RTT_SignalMeasurementInformation_r16(tvbuff_t *tvb _U_, int } +static const per_sequence_t SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_Multi_RTT_SignalMeasurementInformation_r16_sequence_of[1] = { + { &hf_lpp_nr_Multi_RTT_SignalMeasurementInstances_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_Multi_RTT_SignalMeasurementInformation_r16 }, +}; + +static int +dissect_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_Multi_RTT_SignalMeasurementInformation_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_Multi_RTT_SignalMeasurementInformation_r16, SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_Multi_RTT_SignalMeasurementInformation_r16_sequence_of, + 1, maxMeasInstances_r17, FALSE); + + return offset; +} + + +static const per_sequence_t NR_Multi_RTT_ProvideLocationInformation_r16_eag_1_sequence[] = { + { &hf_lpp_nr_Multi_RTT_SignalMeasurementInstances_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_Multi_RTT_SignalMeasurementInformation_r16 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_Multi_RTT_ProvideLocationInformation_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_Multi_RTT_ProvideLocationInformation_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_Multi_RTT_ProvideLocationInformation_r16_sequence[] = { { &hf_lpp_nr_Multi_RTT_SignalMeasurementInformation_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_Multi_RTT_SignalMeasurementInformation_r16 }, { &hf_lpp_nr_Multi_RTT_Error_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_Multi_RTT_Error_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_Multi_RTT_ProvideLocationInformation_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -25106,16 +31257,6 @@ dissect_lpp_NR_Multi_RTT_ProvideLocationInformation_r16(tvbuff_t *tvb _U_, int o } - -static int -dissect_lpp_INTEGER_0_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 30U, NULL, FALSE); - - return offset; -} - - static const per_sequence_t NR_DL_AoD_AdditionalMeasurementElement_r16_sequence[] = { { &hf_lpp_nr_DL_PRS_ResourceID_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_ResourceID_r16 }, { &hf_lpp_nr_DL_PRS_ResourceSetID_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_ResourceSetID_r16 }, @@ -25148,6 +31289,77 @@ dissect_lpp_NR_DL_AoD_AdditionalMeasurements_r16(tvbuff_t *tvb _U_, int offset _ } +static const value_string lpp_T_nr_los_nlos_Indicator_r17_01_vals[] = { + { 0, "perTRP-r17" }, + { 1, "perResource-r17" }, + { 0, NULL } +}; + +static const per_choice_t T_nr_los_nlos_Indicator_r17_01_choice[] = { + { 0, &hf_lpp_perTRP_r17 , ASN1_NO_EXTENSIONS , dissect_lpp_LOS_NLOS_Indicator_r17 }, + { 1, &hf_lpp_perResource_r17_01, ASN1_NO_EXTENSIONS , dissect_lpp_LOS_NLOS_Indicator_r17 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lpp_T_nr_los_nlos_Indicator_r17_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lpp_T_nr_los_nlos_Indicator_r17_01, T_nr_los_nlos_Indicator_r17_01_choice, + NULL); + + return offset; +} + + +static const per_sequence_t NR_DL_AoD_AdditionalMeasurementElement_r17_sequence[] = { + { &hf_lpp_nr_DL_PRS_ResourceID_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_ResourceID_r16 }, + { &hf_lpp_nr_DL_PRS_ResourceSetID_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_ResourceSetID_r16 }, + { &hf_lpp_nr_TimeStamp_r17, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_TimeStamp_r16 }, + { &hf_lpp_nr_DL_PRS_RSRP_ResultDiff_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_30 }, + { &hf_lpp_nr_DL_PRS_RxBeamIndex_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_8 }, + { &hf_lpp_nr_DL_PRS_FirstPathRSRP_ResultDiff_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_61 }, + { &hf_lpp_nr_los_nlos_IndicatorPerResource_r17, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_LOS_NLOS_Indicator_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_AoD_AdditionalMeasurementElement_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_DL_AoD_AdditionalMeasurementElement_r17, NR_DL_AoD_AdditionalMeasurementElement_r17_sequence); + + return offset; +} + + +static const per_sequence_t NR_DL_AoD_AdditionalMeasurementsExt_r17_sequence_of[1] = { + { &hf_lpp_NR_DL_AoD_AdditionalMeasurementsExt_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_AoD_AdditionalMeasurementElement_r17 }, +}; + +static int +dissect_lpp_NR_DL_AoD_AdditionalMeasurementsExt_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_DL_AoD_AdditionalMeasurementsExt_r17, NR_DL_AoD_AdditionalMeasurementsExt_r17_sequence_of, + 1, maxAddMeasAoD_r17, FALSE); + + return offset; +} + + +static const per_sequence_t NR_DL_AoD_MeasElement_r16_eag_1_sequence[] = { + { &hf_lpp_nr_DL_PRS_FirstPathRSRP_Result_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_126 }, + { &hf_lpp_nr_los_nlos_Indicator_r17_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_los_nlos_Indicator_r17_01 }, + { &hf_lpp_nr_DL_AoD_AdditionalMeasurementsExt_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_DL_AoD_AdditionalMeasurementsExt_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_AoD_MeasElement_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_AoD_MeasElement_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_AoD_MeasElement_r16_sequence[] = { { &hf_lpp_dl_PRS_ID_r16 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, { &hf_lpp_nr_PhysCellID_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_PhysCellID_r16 }, @@ -25159,6 +31371,7 @@ static const per_sequence_t NR_DL_AoD_MeasElement_r16_sequence[] = { { &hf_lpp_nr_DL_PRS_RSRP_Result_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_126 }, { &hf_lpp_nr_DL_PRS_RxBeamIndex_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_1_8 }, { &hf_lpp_nr_DL_AoD_AdditionalMeasurements_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_AoD_AdditionalMeasurements_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_AoD_MeasElement_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -25221,8 +31434,23 @@ dissect_lpp_T_measurementReferenceTime_r16_01(tvbuff_t *tvb _U_, int offset _U_, } +static const per_sequence_t NR_DL_AoD_LocationInformation_r16_eag_1_sequence[] = { + { &hf_lpp_locationCoordinates_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_LocationCoordinates }, + { &hf_lpp_locationSource_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_LocationSource_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_AoD_LocationInformation_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_AoD_LocationInformation_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_AoD_LocationInformation_r16_sequence[] = { { &hf_lpp_measurementReferenceTime_r16_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_measurementReferenceTime_r16_01 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_AoD_LocationInformation_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -25235,10 +31463,53 @@ dissect_lpp_NR_DL_AoD_LocationInformation_r16(tvbuff_t *tvb _U_, int offset _U_, } +static const per_sequence_t SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_SignalMeasurementInformation_r16_sequence_of[1] = { + { &hf_lpp_nr_DL_AoD_SignalMeasurementInstances_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_AoD_SignalMeasurementInformation_r16 }, +}; + +static int +dissect_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_SignalMeasurementInformation_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_SignalMeasurementInformation_r16, SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_SignalMeasurementInformation_r16_sequence_of, + 1, maxMeasInstances_r17, FALSE); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_LocationInformation_r16_sequence_of[1] = { + { &hf_lpp_nr_DL_AoD_LocationInformationInstances_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_AoD_LocationInformation_r16 }, +}; + +static int +dissect_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_LocationInformation_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_LocationInformation_r16, SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_LocationInformation_r16_sequence_of, + 1, maxMeasInstances_r17, FALSE); + + return offset; +} + + +static const per_sequence_t NR_DL_AoD_ProvideLocationInformation_r16_eag_1_sequence[] = { + { &hf_lpp_nr_DL_AoD_SignalMeasurementInstances_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_SignalMeasurementInformation_r16 }, + { &hf_lpp_nr_DL_AoD_LocationInformationInstances_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_LocationInformation_r16 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_AoD_ProvideLocationInformation_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_AoD_ProvideLocationInformation_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_AoD_ProvideLocationInformation_r16_sequence[] = { { &hf_lpp_nr_DL_AoD_SignalMeasurementInformation_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_AoD_SignalMeasurementInformation_r16 }, { &hf_lpp_nr_dl_AoD_LocationInformation_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_AoD_LocationInformation_r16 }, { &hf_lpp_nr_DL_AoD_Error_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_AoD_Error_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_AoD_ProvideLocationInformation_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -25311,6 +31582,22 @@ dissect_lpp_T_nr_RSTD_ResultDiff_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } +static const per_sequence_t NR_DL_TDOA_AdditionalMeasurementElement_r16_eag_1_sequence[] = { + { &hf_lpp_nr_UE_Rx_TEG_ID_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_maxNumOfRxTEGs_1_r17 }, + { &hf_lpp_nr_DL_PRS_FirstPathRSRP_ResultDiff_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_61 }, + { &hf_lpp_nr_los_nlos_IndicatorPerResource_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_LOS_NLOS_Indicator_r17 }, + { &hf_lpp_nr_AdditionalPathListExt_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_AdditionalPathListExt_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_TDOA_AdditionalMeasurementElement_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_TDOA_AdditionalMeasurementElement_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_TDOA_AdditionalMeasurementElement_r16_sequence[] = { { &hf_lpp_nr_DL_PRS_ResourceID_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_ResourceID_r16 }, { &hf_lpp_nr_DL_PRS_ResourceSetID_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_PRS_ResourceSetID_r16 }, @@ -25319,6 +31606,7 @@ static const per_sequence_t NR_DL_TDOA_AdditionalMeasurementElement_r16_sequence { &hf_lpp_nr_TimingQuality_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_TimingQuality_r16 }, { &hf_lpp_nr_DL_PRS_RSRP_ResultDiff_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_61 }, { &hf_lpp_nr_AdditionalPathList_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_AdditionalPathList_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_TDOA_AdditionalMeasurementElement_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -25345,6 +31633,59 @@ dissect_lpp_NR_DL_TDOA_AdditionalMeasurements_r16(tvbuff_t *tvb _U_, int offset } +static const value_string lpp_T_nr_los_nlos_Indicator_r17_vals[] = { + { 0, "perTRP-r17" }, + { 1, "perResource-r17" }, + { 0, NULL } +}; + +static const per_choice_t T_nr_los_nlos_Indicator_r17_choice[] = { + { 0, &hf_lpp_perTRP_r17 , ASN1_NO_EXTENSIONS , dissect_lpp_LOS_NLOS_Indicator_r17 }, + { 1, &hf_lpp_perResource_r17_01, ASN1_NO_EXTENSIONS , dissect_lpp_LOS_NLOS_Indicator_r17 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lpp_T_nr_los_nlos_Indicator_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lpp_T_nr_los_nlos_Indicator_r17, T_nr_los_nlos_Indicator_r17_choice, + NULL); + + return offset; +} + + +static const per_sequence_t NR_DL_TDOA_AdditionalMeasurementsExt_r17_sequence_of[1] = { + { &hf_lpp_NR_DL_TDOA_AdditionalMeasurementsExt_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_TDOA_AdditionalMeasurementElement_r16 }, +}; + +static int +dissect_lpp_NR_DL_TDOA_AdditionalMeasurementsExt_r17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_NR_DL_TDOA_AdditionalMeasurementsExt_r17, NR_DL_TDOA_AdditionalMeasurementsExt_r17_sequence_of, + 1, maxAddMeasTDOA_r17, FALSE); + + return offset; +} + + +static const per_sequence_t NR_DL_TDOA_MeasElement_r16_eag_1_sequence[] = { + { &hf_lpp_nr_UE_Rx_TEG_ID_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_maxNumOfRxTEGs_1_r17 }, + { &hf_lpp_nr_DL_PRS_FirstPathRSRP_Result_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_126 }, + { &hf_lpp_nr_los_nlos_Indicator_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_T_nr_los_nlos_Indicator_r17 }, + { &hf_lpp_nr_AdditionalPathListExt_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_AdditionalPathListExt_r17 }, + { &hf_lpp_nr_DL_TDOA_AdditionalMeasurementsExt_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_NR_DL_TDOA_AdditionalMeasurementsExt_r17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_TDOA_MeasElement_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_TDOA_MeasElement_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_TDOA_MeasElement_r16_sequence[] = { { &hf_lpp_dl_PRS_ID_r16 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_INTEGER_0_255 }, { &hf_lpp_nr_PhysCellID_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_PhysCellID_r16 }, @@ -25358,6 +31699,7 @@ static const per_sequence_t NR_DL_TDOA_MeasElement_r16_sequence[] = { { &hf_lpp_nr_TimingQuality_r16, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lpp_NR_TimingQuality_r16 }, { &hf_lpp_nr_DL_PRS_RSRP_Result_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_INTEGER_0_126 }, { &hf_lpp_nr_DL_TDOA_AdditionalMeasurements_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_TDOA_AdditionalMeasurements_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_TDOA_MeasElement_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -25421,8 +31763,23 @@ dissect_lpp_T_measurementReferenceTime_r16(tvbuff_t *tvb _U_, int offset _U_, as } +static const per_sequence_t NR_DL_TDOA_LocationInformation_r16_eag_1_sequence[] = { + { &hf_lpp_locationCoordinates_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_LocationCoordinates }, + { &hf_lpp_locationSource_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_LocationSource_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_TDOA_LocationInformation_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_TDOA_LocationInformation_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_TDOA_LocationInformation_r16_sequence[] = { { &hf_lpp_measurementReferenceTime_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_T_measurementReferenceTime_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_TDOA_LocationInformation_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -25435,10 +31792,53 @@ dissect_lpp_NR_DL_TDOA_LocationInformation_r16(tvbuff_t *tvb _U_, int offset _U_ } +static const per_sequence_t SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_SignalMeasurementInformation_r16_sequence_of[1] = { + { &hf_lpp_nr_DL_TDOA_SignalMeasurementInstances_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_TDOA_SignalMeasurementInformation_r16 }, +}; + +static int +dissect_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_SignalMeasurementInformation_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_SignalMeasurementInformation_r16, SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_SignalMeasurementInformation_r16_sequence_of, + 1, maxMeasInstances_r17, FALSE); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_LocationInformation_r16_sequence_of[1] = { + { &hf_lpp_nr_DL_TDOA_LocationInformationInstances_r17_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_TDOA_LocationInformation_r16 }, +}; + +static int +dissect_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_LocationInformation_r16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index, + ett_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_LocationInformation_r16, SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_LocationInformation_r16_sequence_of, + 1, maxMeasInstances_r17, FALSE); + + return offset; +} + + +static const per_sequence_t NR_DL_TDOA_ProvideLocationInformation_r16_eag_1_sequence[] = { + { &hf_lpp_nr_DL_TDOA_SignalMeasurementInstances_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_SignalMeasurementInformation_r16 }, + { &hf_lpp_nr_DL_TDOA_LocationInformationInstances_r17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_LocationInformation_r16 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lpp_NR_DL_TDOA_ProvideLocationInformation_r16_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, NR_DL_TDOA_ProvideLocationInformation_r16_eag_1_sequence); + + return offset; +} + + static const per_sequence_t NR_DL_TDOA_ProvideLocationInformation_r16_sequence[] = { { &hf_lpp_nr_DL_TDOA_SignalMeasurementInformation_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_TDOA_SignalMeasurementInformation_r16 }, { &hf_lpp_nr_dl_tdoa_LocationInformation_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_TDOA_LocationInformation_r16 }, { &hf_lpp_nr_DL_TDOA_Error_r16, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lpp_NR_DL_TDOA_Error_r16 }, + { &dummy_hf_lpp_eag_field , ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lpp_NR_DL_TDOA_ProvideLocationInformation_r16_eag_1 }, { NULL, 0, 0, NULL } }; @@ -25555,7 +31955,7 @@ static const per_sequence_t ProvideLocationInformation_sequence[] = { static int dissect_lpp_ProvideLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 140 "./asn1/lpp/lpp.cnf" +#line 145 "./asn1/lpp/lpp.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Provide Location Information"); @@ -25682,7 +32082,7 @@ static const per_sequence_t Abort_sequence[] = { static int dissect_lpp_Abort(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 143 "./asn1/lpp/lpp.cnf" +#line 148 "./asn1/lpp/lpp.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Abort"); @@ -25769,7 +32169,7 @@ static const per_choice_t Error_choice[] = { static int dissect_lpp_Error(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 146 "./asn1/lpp/lpp.cnf" +#line 151 "./asn1/lpp/lpp.cnf" col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Error"); @@ -25902,7 +32302,7 @@ static const per_sequence_t CipheringKeyData_r15_sequence[] = { static int dissect_lpp_CipheringKeyData_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1797 "./asn1/lpp/lpp.cnf" +#line 1802 "./asn1/lpp/lpp.cnf" lpp_get_private_data(actx->pinfo)->is_ciphered = TRUE; @@ -25954,7 +32354,7 @@ static const per_sequence_t SegmentationInfo_r15_sequence[] = { static int dissect_lpp_SegmentationInfo_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1800 "./asn1/lpp/lpp.cnf" +#line 1805 "./asn1/lpp/lpp.cnf" lpp_get_private_data(actx->pinfo)->is_segmented = TRUE; @@ -25968,7 +32368,7 @@ dissect_lpp_SegmentationInfo_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int dissect_lpp_T_assistanceDataElement_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -#line 1803 "./asn1/lpp/lpp.cnf" +#line 1808 "./asn1/lpp/lpp.cnf" tvbuff_t *assist_data_sib_elem_tvb = NULL; struct lpp_private_data *lpp_data = lpp_get_private_data(actx->pinfo); @@ -26004,6 +32404,12 @@ dissect_lpp_T_assistanceDataElement_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ case LPP_POS_SIB_TYPE_1_8: dissect_GNSS_SSR_CorrectionPoints_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL); break; + case LPP_POS_SIB_TYPE_1_9: + dissect_GNSS_Integrity_ServiceParameters_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL); + break; + case LPP_POS_SIB_TYPE_1_10: + dissect_GNSS_Integrity_ServiceAlert_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL); + break; case LPP_POS_SIB_TYPE_2_1: dissect_GNSS_TimeModelList_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL); break; @@ -26097,6 +32503,15 @@ dissect_lpp_T_assistanceDataElement_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ case LPP_POS_SIB_TYPE_6_3: dissect_NR_UEB_TRP_RTD_Info_r16_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL); break; + case LPP_POS_SIB_TYPE_6_4: + dissect_NR_TRP_BeamAntennaInfo_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL); + break; + case LPP_POS_SIB_TYPE_6_5: + dissect_NR_DL_PRS_TRP_TEG_Info_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL); + break; + case LPP_POS_SIB_TYPE_6_6: + dissect_NR_On_Demand_DL_PRS_Configurations_r17_PDU(assist_data_sib_elem_tvb, actx->pinfo, subtree, NULL); + break; default: break; } @@ -26298,6 +32713,30 @@ static int dissect_NR_DL_PRS_AssistanceData_r16_PDU(tvbuff_t *tvb _U_, packet_in offset += 7; offset >>= 3; return offset; } +static int dissect_NR_DL_PRS_TRP_TEG_Info_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo); + offset = dissect_lpp_NR_DL_PRS_TRP_TEG_Info_r17(tvb, offset, &asn1_ctx, tree, hf_lpp_NR_DL_PRS_TRP_TEG_Info_r17_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_NR_On_Demand_DL_PRS_Configurations_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo); + offset = dissect_lpp_NR_On_Demand_DL_PRS_Configurations_r17(tvb, offset, &asn1_ctx, tree, hf_lpp_NR_On_Demand_DL_PRS_Configurations_r17_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_NR_TRP_BeamAntennaInfo_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo); + offset = dissect_lpp_NR_TRP_BeamAntennaInfo_r17(tvb, offset, &asn1_ctx, tree, hf_lpp_NR_TRP_BeamAntennaInfo_r17_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_GNSS_ReferenceTime_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -26362,6 +32801,22 @@ static int dissect_GNSS_SSR_CorrectionPoints_r16_PDU(tvbuff_t *tvb _U_, packet_i offset += 7; offset >>= 3; return offset; } +static int dissect_GNSS_Integrity_ServiceParameters_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo); + offset = dissect_lpp_GNSS_Integrity_ServiceParameters_r17(tvb, offset, &asn1_ctx, tree, hf_lpp_GNSS_Integrity_ServiceParameters_r17_PDU); + offset += 7; offset >>= 3; + return offset; +} +static int dissect_GNSS_Integrity_ServiceAlert_r17_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { + int offset = 0; + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, pinfo); + offset = dissect_lpp_GNSS_Integrity_ServiceAlert_r17(tvb, offset, &asn1_ctx, tree, hf_lpp_GNSS_Integrity_ServiceAlert_r17_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_GNSS_TimeModelList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -26629,7 +33084,7 @@ static int dissect_NR_UEB_TRP_RTD_Info_r16_PDU(tvbuff_t *tvb _U_, packet_info *p /*--- End of included file: packet-lpp-fn.c ---*/ -#line 2048 "./asn1/lpp/packet-lpp-template.c" +#line 2053 "./asn1/lpp/packet-lpp-template.c" int dissect_lpp_AssistanceDataSIBelement_r15_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, lpp_pos_sib_type_t pos_sib_type) { int offset = 0; @@ -26727,6 +33182,18 @@ void proto_register_lpp(void) { { "NR-DL-PRS-AssistanceData-r16", "lpp.NR_DL_PRS_AssistanceData_r16_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_NR_DL_PRS_TRP_TEG_Info_r17_PDU, + { "NR-DL-PRS-TRP-TEG-Info-r17", "lpp.NR_DL_PRS_TRP_TEG_Info_r17", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_NR_On_Demand_DL_PRS_Configurations_r17_PDU, + { "NR-On-Demand-DL-PRS-Configurations-r17", "lpp.NR_On_Demand_DL_PRS_Configurations_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_NR_TRP_BeamAntennaInfo_r17_PDU, + { "NR-TRP-BeamAntennaInfo-r17", "lpp.NR_TRP_BeamAntennaInfo_r17", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lpp_GNSS_ReferenceTime_PDU, { "GNSS-ReferenceTime", "lpp.GNSS_ReferenceTime_element", FT_NONE, BASE_NONE, NULL, 0, @@ -26759,6 +33226,14 @@ void proto_register_lpp(void) { { "GNSS-SSR-CorrectionPoints-r16", "lpp.GNSS_SSR_CorrectionPoints_r16_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_GNSS_Integrity_ServiceParameters_r17_PDU, + { "GNSS-Integrity-ServiceParameters-r17", "lpp.GNSS_Integrity_ServiceParameters_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_GNSS_Integrity_ServiceAlert_r17_PDU, + { "GNSS-Integrity-ServiceAlert-r17", "lpp.GNSS_Integrity_ServiceAlert_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_GNSS_TimeModelList_PDU, { "GNSS-TimeModelList", "lpp.GNSS_TimeModelList", FT_UINT32, BASE_DEC, NULL, 0, @@ -27827,6 +34302,54 @@ void proto_register_lpp(void) { { "posModes", "lpp.posModes", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_utcTime_r17, + { "utcTime-r17", "lpp.utcTime_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_utcTime_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_gnssTime_r17, + { "gnssTime-r17", "lpp.gnssTime_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_ID_Bitmap", HFILL }}, + { &hf_lpp_e_utraTime_r17, + { "e-utraTime-r17", "lpp.e_utraTime_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_e_utraTime_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_nrTime_r17, + { "nrTime-r17", "lpp.nrTime_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nrTime_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_relativeTime_r17, + { "relativeTime-r17", "lpp.relativeTime_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_relativeTime_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_utcTime_r17_01, + { "utcTime-r17", "lpp.utcTime_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "PositioningModes", HFILL }}, + { &hf_lpp_gnssTime_r17_01, + { "gnssTime-r17", "lpp.gnssTime_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_posModes_r17, + { "posModes-r17", "lpp.posModes_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "PositioningModes", HFILL }}, + { &hf_lpp_gnss_TimeIDs_r17, + { "gnss-TimeIDs-r17", "lpp.gnss_TimeIDs_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_ID_Bitmap", HFILL }}, + { &hf_lpp_e_utraTime_r17_01, + { "e-utraTime-r17", "lpp.e_utraTime_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "PositioningModes", HFILL }}, + { &hf_lpp_nrTime_r17_01, + { "nrTime-r17", "lpp.nrTime_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "PositioningModes", HFILL }}, + { &hf_lpp_relativeTime_r17_01, + { "relativeTime-r17", "lpp.relativeTime_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "PositioningModes", HFILL }}, { &hf_lpp_horizontalVelocity, { "horizontalVelocity", "lpp.horizontalVelocity", FT_BOOLEAN, BASE_NONE, NULL, 0, @@ -27907,6 +34430,14 @@ void proto_register_lpp(void) { { "messageSizeLimitNB-r14", "lpp.messageSizeLimitNB_r14_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_scheduledLocationTime_r17, + { "scheduledLocationTime-r17", "lpp.scheduledLocationTime_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_targetIntegrityRisk_r17, + { "targetIntegrityRisk-r17", "lpp.targetIntegrityRisk_r17", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lpp_reportingAmount, { "reportingAmount", "lpp.reportingAmount", FT_UINT32, BASE_DEC, VALS(lpp_T_reportingAmount_vals), 0, @@ -27991,6 +34522,90 @@ void proto_register_lpp(void) { { "measurementLimit-r14", "lpp.measurementLimit_r14", FT_UINT32, BASE_CUSTOM, CF_FUNC(lpp_measurementLimit_fmt), 0, "INTEGER_1_512", HFILL }}, + { &hf_lpp_utcTime_r17_02, + { "utcTime-r17", "lpp.utcTime_r17", + FT_STRING, BASE_NONE, NULL, 0, + "UTCTime", HFILL }}, + { &hf_lpp_gnssTime_r17_02, + { "gnssTime-r17", "lpp.gnssTime_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_gnssTime_r17_01", HFILL }}, + { &hf_lpp_gnss_TOD_msec_r17, + { "gnss-TOD-msec-r17", "lpp.gnss_TOD_msec_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3599999", HFILL }}, + { &hf_lpp_gnss_TimeID_r17, + { "gnss-TimeID-r17", "lpp.gnss_TimeID_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_ID", HFILL }}, + { &hf_lpp_networkTime_r17, + { "networkTime-r17", "lpp.networkTime_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_networkTime_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_e_utraTime_r17_02, + { "e-utraTime-r17", "lpp.e_utraTime_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_e_utraTime_r17_01", HFILL }}, + { &hf_lpp_lte_PhysCellId_r17, + { "lte-PhysCellId-r17", "lpp.lte_PhysCellId_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_503", HFILL }}, + { &hf_lpp_lte_ArfcnEUTRA_r17, + { "lte-ArfcnEUTRA-r17", "lpp.lte_ArfcnEUTRA_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "ARFCN_ValueEUTRA", HFILL }}, + { &hf_lpp_lte_CellGlobalId_r17, + { "lte-CellGlobalId-r17", "lpp.lte_CellGlobalId_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "CellGlobalIdEUTRA_AndUTRA", HFILL }}, + { &hf_lpp_lte_SystemFrameNumber_r17, + { "lte-SystemFrameNumber-r17", "lpp.lte_SystemFrameNumber_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1023", HFILL }}, + { &hf_lpp_nrTime_r17_02, + { "nrTime-r17", "lpp.nrTime_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nrTime_r17_01", HFILL }}, + { &hf_lpp_nr_PhysCellID_r17, + { "nr-PhysCellID-r17", "lpp.nr_PhysCellID_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "NR_PhysCellID_r16", HFILL }}, + { &hf_lpp_nr_ARFCN_r17, + { "nr-ARFCN-r17", "lpp.nr_ARFCN_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "ARFCN_ValueNR_r15", HFILL }}, + { &hf_lpp_nr_CellGlobalID_r17, + { "nr-CellGlobalID-r17", "lpp.nr_CellGlobalID_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "NCGI_r15", HFILL }}, + { &hf_lpp_nr_SFN_r17, + { "nr-SFN-r17", "lpp.nr_SFN_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1023", HFILL }}, + { &hf_lpp_nr_Slot_r17, + { "nr-Slot-r17", "lpp.nr_Slot_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nr_Slot_r17_vals), 0, + "T_nr_Slot_r17", HFILL }}, + { &hf_lpp_scs15_r17, + { "scs15-r17", "lpp.scs15_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_lpp_scs30_r17, + { "scs30-r17", "lpp.scs30_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_19", HFILL }}, + { &hf_lpp_scs60_r17, + { "scs60-r17", "lpp.scs60_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_39", HFILL }}, + { &hf_lpp_scs120_r17, + { "scs120-r17", "lpp.scs120_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_79", HFILL }}, + { &hf_lpp_relativeTime_r17_02, + { "relativeTime-r17", "lpp.relativeTime_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_1024", HFILL }}, { &hf_lpp_locationEstimate, { "locationEstimate", "lpp.locationEstimate", FT_UINT32, BASE_DEC, VALS(lpp_LocationCoordinates_vals), 0, @@ -28015,6 +34630,10 @@ void proto_register_lpp(void) { { "locationTimestamp-r13", "lpp.locationTimestamp_r13", FT_STRING, BASE_NONE, NULL, 0, "UTCTime", HFILL }}, + { &hf_lpp_integrityInfo_r17, + { "integrityInfo-r17", "lpp.integrityInfo_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_ellipsoidPoint_01, { "ellipsoidPoint", "lpp.ellipsoidPoint_element", FT_NONE, BASE_NONE, NULL, 0, @@ -28079,6 +34698,18 @@ void proto_register_lpp(void) { { "locationfailurecause", "lpp.locationfailurecause", FT_UINT32, BASE_DEC, VALS(lpp_LocationFailureCause_vals), 0, NULL, HFILL }}, + { &hf_lpp_horizontalProtectionLevel_r17, + { "horizontalProtectionLevel-r17", "lpp.horizontalProtectionLevel_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_50000", HFILL }}, + { &hf_lpp_verticalProtectionLevel_r17, + { "verticalProtectionLevel-r17", "lpp.verticalProtectionLevel_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_50000", HFILL }}, + { &hf_lpp_achievableTargetIntegrityRisk_r17, + { "achievableTargetIntegrityRisk-r17", "lpp.achievableTargetIntegrityRisk_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_10_90", HFILL }}, { &hf_lpp_abortCause, { "abortCause", "lpp.abortCause", FT_UINT32, BASE_DEC, VALS(lpp_T_abortCause_vals), 0, @@ -28087,6 +34718,10 @@ void proto_register_lpp(void) { { "errorCause", "lpp.errorCause", FT_UINT32, BASE_DEC, VALS(lpp_T_errorCause_vals), 0, NULL, HFILL }}, + { &hf_lpp_AreaID_CellList_r17_item, + { "NR-Cell-IDs-r17", "lpp.NR_Cell_IDs_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_dl_PRS_ID_r16, { "dl-PRS-ID-r16", "lpp.dl_PRS_ID_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -28103,10 +34738,50 @@ void proto_register_lpp(void) { { "nr-DL-PRS-ResourceSetID-r16", "lpp.nr_DL_PRS_ResourceSetID_r16", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lpp_alpha_r16, + { "alpha-r16", "lpp.alpha_r16", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_359", HFILL }}, + { &hf_lpp_alpha_fine_r16, + { "alpha-fine-r16", "lpp.alpha_fine_r16", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_lpp_beta_r16, + { "beta-r16", "lpp.beta_r16", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_359", HFILL }}, + { &hf_lpp_beta_fine_r16, + { "beta-fine-r16", "lpp.beta_fine_r16", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_lpp_gamma_r16, + { "gamma-r16", "lpp.gamma_r16", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_359", HFILL }}, + { &hf_lpp_gamma_fine_r16, + { "gamma-fine-r16", "lpp.gamma_fine_r16", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_lpp_indicator_r17, + { "indicator-r17", "lpp.indicator_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_indicator_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_soft_r17, + { "soft-r17", "lpp.soft_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_10", HFILL }}, + { &hf_lpp_hard_r17, + { "hard-r17", "lpp.hard_r17", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, { &hf_lpp_NR_AdditionalPathList_r16_item, { "NR-AdditionalPath-r16", "lpp.NR_AdditionalPath_r16_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_NR_AdditionalPathListExt_r17_item, + { "NR-AdditionalPath-r16", "lpp.NR_AdditionalPath_r16_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_nr_RelativeTimeDifference_r16, { "nr-RelativeTimeDifference-r16", "lpp.nr_RelativeTimeDifference_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_nr_RelativeTimeDifference_r16_vals), 0, @@ -28139,6 +34814,10 @@ void proto_register_lpp(void) { { "nr-PathQuality-r16", "lpp.nr_PathQuality_r16_element", FT_NONE, BASE_NONE, NULL, 0, "NR_TimingQuality_r16", HFILL }}, + { &hf_lpp_nr_DL_PRS_RSRPP_r17, + { "nr-DL-PRS-RSRPP-r17", "lpp.nr_DL_PRS_RSRPP_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_126", HFILL }}, { &hf_lpp_nr_DL_PRS_ReferenceInfo_r16, { "nr-DL-PRS-ReferenceInfo-r16", "lpp.nr_DL_PRS_ReferenceInfo_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -28203,6 +34882,10 @@ void proto_register_lpp(void) { { "prs-OnlyTP-r16", "lpp.prs_OnlyTP_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_prs_OnlyTP_r16_vals), 0, NULL, HFILL }}, + { &hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_r17, + { "nr-DL-PRS-ExpectedAoD-or-AoA-r17", "lpp.nr_DL_PRS_ExpectedAoD_or_AoA_r17", + FT_UINT32, BASE_DEC, VALS(lpp_NR_DL_PRS_ExpectedAoD_or_AoA_r17_vals), 0, + NULL, HFILL }}, { &hf_lpp_dl_PRS_SubcarrierSpacing_r16, { "dl-PRS-SubcarrierSpacing-r16", "lpp.dl_PRS_SubcarrierSpacing_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_dl_PRS_SubcarrierSpacing_r16_vals), 0, @@ -28235,6 +34918,46 @@ void proto_register_lpp(void) { { "integerSubframeOffset-r16", "lpp.integerSubframeOffset_r16", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_9", HFILL }}, + { &hf_lpp_expectedAoD_r17, + { "expectedAoD-r17", "lpp.expectedAoD_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_expectedDL_AzimuthAoD_r17, + { "expectedDL-AzimuthAoD-r17", "lpp.expectedDL_AzimuthAoD_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_359", HFILL }}, + { &hf_lpp_expectedDL_AzimuthAoD_Unc_r17, + { "expectedDL-AzimuthAoD-Unc-r17", "lpp.expectedDL_AzimuthAoD_Unc_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_60", HFILL }}, + { &hf_lpp_expectedDL_ZenithAoD_r17, + { "expectedDL-ZenithAoD-r17", "lpp.expectedDL_ZenithAoD_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_180", HFILL }}, + { &hf_lpp_expectedDL_ZenithAoD_Unc_r17, + { "expectedDL-ZenithAoD-Unc-r17", "lpp.expectedDL_ZenithAoD_Unc_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_30", HFILL }}, + { &hf_lpp_expectedAoA_r17, + { "expectedAoA-r17", "lpp.expectedAoA_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_expectedDL_AzimuthAoA_r17, + { "expectedDL-AzimuthAoA-r17", "lpp.expectedDL_AzimuthAoA_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_359", HFILL }}, + { &hf_lpp_expectedDL_AzimuthAoA_Unc_r17, + { "expectedDL-AzimuthAoA-Unc-r17", "lpp.expectedDL_AzimuthAoA_Unc_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_60", HFILL }}, + { &hf_lpp_expectedDL_ZenithAoA_r17, + { "expectedDL-ZenithAoA-r17", "lpp.expectedDL_ZenithAoA_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_180", HFILL }}, + { &hf_lpp_expectedDL_ZenithAoA_Unc_r17, + { "expectedDL-ZenithAoA-Unc-r17", "lpp.expectedDL_ZenithAoA_Unc_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_30", HFILL }}, { &hf_lpp_NR_DL_PRS_BeamInfo_r16_item, { "NR-DL-PRS-BeamInfoPerFreqLayer-r16", "lpp.NR_DL_PRS_BeamInfoPerFreqLayer_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -28279,30 +35002,38 @@ void proto_register_lpp(void) { { "dl-PRS-Elevation-fine-r16", "lpp.dl_PRS_Elevation_fine_r16", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_9", HFILL }}, - { &hf_lpp_alpha_r16, - { "alpha-r16", "lpp.alpha_r16", + { &hf_lpp_NR_DL_PRS_ExpectedLOS_NLOS_Assistance_r17_item, + { "NR-DL-PRS-ExpectedLOS-NLOS-AssistancePerFreqLayer-r17", "lpp.NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerFreqLayer_r17", FT_UINT32, BASE_DEC, NULL, 0, - "INTEGER_0_359", HFILL }}, - { &hf_lpp_alpha_fine_r16, - { "alpha-fine-r16", "lpp.alpha_fine_r16", + NULL, HFILL }}, + { &hf_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerFreqLayer_r17_item, + { "NR-DL-PRS-ExpectedLOS-NLOS-AssistancePerTRP-r17", "lpp.NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerTRP_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_dl_PRS_ID_r17, + { "dl-PRS-ID-r17", "lpp.dl_PRS_ID_r17", FT_UINT32, BASE_DEC, NULL, 0, - "INTEGER_0_9", HFILL }}, - { &hf_lpp_beta_r16, - { "beta-r16", "lpp.beta_r16", + "INTEGER_0_255", HFILL }}, + { &hf_lpp_nr_los_nlos_indicator_r17, + { "nr-los-nlos-indicator-r17", "lpp.nr_los_nlos_indicator_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nr_los_nlos_indicator_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_perTrp_r17, + { "perTrp-r17", "lpp.perTrp_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "LOS_NLOS_Indicator_r17", HFILL }}, + { &hf_lpp_perResource_r17, + { "perResource-r17", "lpp.perResource_r17", FT_UINT32, BASE_DEC, NULL, 0, - "INTEGER_0_359", HFILL }}, - { &hf_lpp_beta_fine_r16, - { "beta-fine-r16", "lpp.beta_fine_r16", + "SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17", HFILL }}, + { &hf_lpp_perResource_r17_item, + { "NR-DL-PRS-ExpectedLOS-NLOS-AssistancePerResource-r17", "lpp.NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17", FT_UINT32, BASE_DEC, NULL, 0, - "INTEGER_0_9", HFILL }}, - { &hf_lpp_gamma_r16, - { "gamma-r16", "lpp.gamma_r16", - FT_UINT32, BASE_DEC, NULL, 0, - "INTEGER_0_359", HFILL }}, - { &hf_lpp_gamma_fine_r16, - { "gamma-fine-r16", "lpp.gamma_fine_r16", - FT_UINT32, BASE_DEC, NULL, 0, - "INTEGER_0_9", HFILL }}, + NULL, HFILL }}, + { &hf_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17_item, + { "LOS-NLOS-Indicator-r17", "lpp.LOS_NLOS_Indicator_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_nr_DL_PRS_ResourceSetList_r16, { "nr-DL-PRS-ResourceSetList-r16", "lpp.nr_DL_PRS_ResourceSetList_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -28423,6 +35154,10 @@ void proto_register_lpp(void) { { "dl-PRS-QCL-Info-r16", "lpp.dl_PRS_QCL_Info_r16", FT_UINT32, BASE_DEC, VALS(lpp_DL_PRS_QCL_Info_r16_vals), 0, NULL, HFILL }}, + { &hf_lpp_dl_PRS_ResourcePrioritySubset_r17, + { "dl-PRS-ResourcePrioritySubset-r17", "lpp.dl_PRS_ResourcePrioritySubset_r17", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lpp_ssb_r16, { "ssb-r16", "lpp.ssb_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -28555,6 +35290,18 @@ void proto_register_lpp(void) { { "n81920-r16", "lpp.n81920_r16", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_81919", HFILL }}, + { &hf_lpp_DL_PRS_ResourcePrioritySubset_r17_item, + { "NR-DL-PRSResourcePriorityItem-r17", "lpp.NR_DL_PRSResourcePriorityItem_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_nr_DL_PRS_PrioResourceSetID_r17, + { "nr-DL-PRS-PrioResourceSetID-r17", "lpp.nr_DL_PRS_PrioResourceSetID_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "NR_DL_PRS_ResourceSetID_r16", HFILL }}, + { &hf_lpp_nr_DL_PRS_PrioResourceID_r17, + { "nr-DL-PRS-PrioResourceID-r17", "lpp.nr_DL_PRS_PrioResourceID_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "NR_DL_PRS_ResourceID_r16", HFILL }}, { &hf_lpp_prs_ProcessingCapabilityBandList_r16, { "prs-ProcessingCapabilityBandList-r16", "lpp.prs_ProcessingCapabilityBandList_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -28571,6 +35318,10 @@ void proto_register_lpp(void) { { "simulLTE-NR-PRS-r16", "lpp.simulLTE_NR_PRS_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_simulLTE_NR_PRS_r16_vals), 0, NULL, HFILL }}, + { &hf_lpp_supportedDL_PRS_ProcessingSamples_RRC_Inactive_r17, + { "supportedDL-PRS-ProcessingSamples-RRC-Inactive-r17", "lpp.supportedDL_PRS_ProcessingSamples_RRC_Inactive_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_supportedDL_PRS_ProcessingSamples_RRC_Inactive_r17_vals), 0, + NULL, HFILL }}, { &hf_lpp_freqBandIndicatorNR_r16, { "freqBandIndicatorNR-r16", "lpp.freqBandIndicatorNR_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -28623,6 +35374,122 @@ void proto_register_lpp(void) { { "scs120-r16", "lpp.scs120_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_scs120_r16_01_vals), 0, "T_scs120_r16_01", HFILL }}, + { &hf_lpp_supportedDL_PRS_ProcessingSamples_r17, + { "supportedDL-PRS-ProcessingSamples-r17", "lpp.supportedDL_PRS_ProcessingSamples_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_supportedDL_PRS_ProcessingSamples_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_prs_ProcessingWindowType1A_r17, + { "prs-ProcessingWindowType1A-r17", "lpp.prs_ProcessingWindowType1A_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_prs_ProcessingWindowType1A_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_prs_ProcessingWindowType1B_r17, + { "prs-ProcessingWindowType1B-r17", "lpp.prs_ProcessingWindowType1B_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_prs_ProcessingWindowType1B_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_prs_ProcessingWindowType2_r17, + { "prs-ProcessingWindowType2-r17", "lpp.prs_ProcessingWindowType2_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_prs_ProcessingWindowType2_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_prs_ProcessingCapabilityOutsideMGinPPW_r17, + { "prs-ProcessingCapabilityOutsideMGinPPW-r17", "lpp.prs_ProcessingCapabilityOutsideMGinPPW_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_3_OF_PRS_ProcessingCapabilityOutsideMGinPPWperType_r17", HFILL }}, + { &hf_lpp_prs_ProcessingCapabilityOutsideMGinPPW_r17_item, + { "PRS-ProcessingCapabilityOutsideMGinPPWperType-r17", "lpp.PRS_ProcessingCapabilityOutsideMGinPPWperType_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_dl_PRS_BufferType_RRC_Inactive_r17, + { "dl-PRS-BufferType-RRC-Inactive-r17", "lpp.dl_PRS_BufferType_RRC_Inactive_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_dl_PRS_BufferType_RRC_Inactive_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_durationOfPRS_Processing_RRC_Inactive_r17, + { "durationOfPRS-Processing-RRC-Inactive-r17", "lpp.durationOfPRS_Processing_RRC_Inactive_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_durationOfPRS_ProcessingSymbols_r17, + { "durationOfPRS-ProcessingSymbols-r17", "lpp.durationOfPRS_ProcessingSymbols_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_durationOfPRS_ProcessingSymbols_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_durationOfPRS_ProcessingSymbolsInEveryTms_r17, + { "durationOfPRS-ProcessingSymbolsInEveryTms-r17", "lpp.durationOfPRS_ProcessingSymbolsInEveryTms_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_durationOfPRS_ProcessingSymbolsInEveryTms_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_maxNumOfDL_PRS_ResProcessedPerSlot_RRC_Inactive_r17, + { "maxNumOfDL-PRS-ResProcessedPerSlot-RRC-Inactive-r17", "lpp.maxNumOfDL_PRS_ResProcessedPerSlot_RRC_Inactive_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_maxNumOfDL_PRS_ResProcessedPerSlot_RRC_Inactive_r17", HFILL }}, + { &hf_lpp_scs15_r17_01, + { "scs15-r17", "lpp.scs15_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_scs15_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_scs30_r17_01, + { "scs30-r17", "lpp.scs30_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_scs30_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_scs60_r17_01, + { "scs60-r17", "lpp.scs60_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_scs60_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_scs120_r17_01, + { "scs120-r17", "lpp.scs120_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_scs120_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_lowerRxBeamSweepingThan8_FR2_r17, + { "lowerRxBeamSweepingThan8-FR2-r17", "lpp.lowerRxBeamSweepingThan8_FR2_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_lowerRxBeamSweepingThan8_FR2_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_prsProcessingType_r17, + { "prsProcessingType-r17", "lpp.prsProcessingType_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_prsProcessingType_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_ppw_dl_PRS_BufferType_r17, + { "ppw-dl-PRS-BufferType-r17", "lpp.ppw_dl_PRS_BufferType_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_ppw_dl_PRS_BufferType_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_ppw_durationOfPRS_Processing1_r17, + { "ppw-durationOfPRS-Processing1-r17", "lpp.ppw_durationOfPRS_Processing1_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_ppw_durationOfPRS_ProcessingSymbolsN_r17, + { "ppw-durationOfPRS-ProcessingSymbolsN-r17", "lpp.ppw_durationOfPRS_ProcessingSymbolsN_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_ppw_durationOfPRS_ProcessingSymbolsN_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_ppw_durationOfPRS_ProcessingSymbolsT_r17, + { "ppw-durationOfPRS-ProcessingSymbolsT-r17", "lpp.ppw_durationOfPRS_ProcessingSymbolsT_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_ppw_durationOfPRS_ProcessingSymbolsT_r17_vals), 0, + "T_ppw_durationOfPRS_ProcessingSymbolsT_r17", HFILL }}, + { &hf_lpp_ppw_durationOfPRS_Processing2_r17, + { "ppw-durationOfPRS-Processing2-r17", "lpp.ppw_durationOfPRS_Processing2_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_ppw_durationOfPRS_ProcessingSymbolsN2_r17, + { "ppw-durationOfPRS-ProcessingSymbolsN2-r17", "lpp.ppw_durationOfPRS_ProcessingSymbolsN2_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_ppw_durationOfPRS_ProcessingSymbolsN2_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_ppw_durationOfPRS_ProcessingSymbolsT2_r17, + { "ppw-durationOfPRS-ProcessingSymbolsT2-r17", "lpp.ppw_durationOfPRS_ProcessingSymbolsT2_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_ppw_durationOfPRS_ProcessingSymbolsT2_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_ppw_maxNumOfDL_PRS_ResProcessedPerSlot_r17, + { "ppw-maxNumOfDL-PRS-ResProcessedPerSlot-r17", "lpp.ppw_maxNumOfDL_PRS_ResProcessedPerSlot_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_ppw_maxNumOfDL_PRS_ResProcessedPerSlot_r17", HFILL }}, + { &hf_lpp_scs15_r17_02, + { "scs15-r17", "lpp.scs15_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_scs15_r17_01_vals), 0, + "T_scs15_r17_01", HFILL }}, + { &hf_lpp_scs30_r17_02, + { "scs30-r17", "lpp.scs30_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_scs30_r17_01_vals), 0, + "T_scs30_r17_01", HFILL }}, + { &hf_lpp_scs60_r17_02, + { "scs60-r17", "lpp.scs60_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_scs60_r17_01_vals), 0, + "T_scs60_r17_01", HFILL }}, + { &hf_lpp_scs120_r17_02, + { "scs120-r17", "lpp.scs120_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_scs120_r17_01_vals), 0, + "T_scs120_r17_01", HFILL }}, { &hf_lpp_dl_PRS_QCL_ProcessingCapabilityBandList_r16, { "dl-PRS-QCL-ProcessingCapabilityBandList-r16", "lpp.dl_PRS_QCL_ProcessingCapabilityBandList_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -28707,6 +35574,162 @@ void proto_register_lpp(void) { { "fr2-r16", "lpp.fr2_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_fr2_r16_vals), 0, NULL, HFILL }}, + { &hf_lpp_NR_DL_PRS_TRP_TEG_Info_r17_item, + { "NR-DL-PRS-TRP-TEG-InfoPerFreqLayer-r17", "lpp.NR_DL_PRS_TRP_TEG_InfoPerFreqLayer_r17", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_NR_DL_PRS_TRP_TEG_InfoPerFreqLayer_r17_item, + { "NR-DL-PRS-TRP-TEG-InfoPerTRP-r17", "lpp.NR_DL_PRS_TRP_TEG_InfoPerTRP_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_dl_PRS_TEG_InfoSet_r17, + { "dl-PRS-TEG-InfoSet-r17", "lpp.dl_PRS_TEG_InfoSet_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_TEG_InfoPerResourceSet_r17", HFILL }}, + { &hf_lpp_dl_PRS_TEG_InfoSet_r17_item, + { "DL-PRS-TEG-InfoPerResourceSet-r17", "lpp.DL_PRS_TEG_InfoPerResourceSet_r17", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_DL_PRS_TEG_InfoPerResourceSet_r17_item, + { "DL-PRS-TEG-InfoElement-r17", "lpp.DL_PRS_TEG_InfoElement_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_dl_prs_trp_Tx_TEG_ID_r17, + { "dl-prs-trp-Tx-TEG-ID-r17", "lpp.dl_prs_trp_Tx_TEG_ID_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_maxNumOfTRP_TxTEGs_1_r17", HFILL }}, + { &hf_lpp_on_demand_dl_prs_configuration_list_r17, + { "on-demand-dl-prs-configuration-list-r17", "lpp.on_demand_dl_prs_configuration_list_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_On_Demand_DL_PRS_Configuration_r17", HFILL }}, + { &hf_lpp_on_demand_dl_prs_configuration_list_r17_item, + { "On-Demand-DL-PRS-Configuration-r17", "lpp.On_Demand_DL_PRS_Configuration_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_dl_prs_configuration_id_r17, + { "dl-prs-configuration-id-r17", "lpp.dl_prs_configuration_id_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_nr_DL_PRS_PositioningFrequencyLayer_r17, + { "nr-DL-PRS-PositioningFrequencyLayer-r17", "lpp.nr_DL_PRS_PositioningFrequencyLayer_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "NR_DL_PRS_PositioningFrequencyLayer_r16", HFILL }}, + { &hf_lpp_nr_DL_PRS_Info_r17, + { "nr-DL-PRS-Info-r17", "lpp.nr_DL_PRS_Info_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "NR_DL_PRS_Info_r16", HFILL }}, + { &hf_lpp_nr_dl_prs_configuration_id_r17, + { "nr-dl-prs-configuration-id-r17", "lpp.nr_dl_prs_configuration_id_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_maxOD_DL_PRS_Configs_r17", HFILL }}, + { &hf_lpp_NR_On_Demand_DL_PRS_Information_r17_item, + { "NR-On-Demand-DL-PRS-PerFreqLayer-r17", "lpp.NR_On_Demand_DL_PRS_PerFreqLayer_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_dl_prs_FrequencyRangeReq_r17, + { "dl-prs-FrequencyRangeReq-r17", "lpp.dl_prs_FrequencyRangeReq_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_dl_prs_FrequencyRangeReq_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_dl_prs_ResourceSetPeriodicityReq_r17, + { "dl-prs-ResourceSetPeriodicityReq-r17", "lpp.dl_prs_ResourceSetPeriodicityReq_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_dl_prs_ResourceSetPeriodicityReq_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_dl_prs_ResourceBandwidthReq_r17, + { "dl-prs-ResourceBandwidthReq-r17", "lpp.dl_prs_ResourceBandwidthReq_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_63", HFILL }}, + { &hf_lpp_dl_prs_ResourceRepetitionFactorReq_r17, + { "dl-prs-ResourceRepetitionFactorReq-r17", "lpp.dl_prs_ResourceRepetitionFactorReq_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_dl_prs_ResourceRepetitionFactorReq_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_dl_prs_NumSymbolsReq_r17, + { "dl-prs-NumSymbolsReq-r17", "lpp.dl_prs_NumSymbolsReq_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_dl_prs_NumSymbolsReq_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_dl_prs_CombSizeN_Req_r17, + { "dl-prs-CombSizeN-Req-r17", "lpp.dl_prs_CombSizeN_Req_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_dl_prs_CombSizeN_Req_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_dl_prs_QCL_InformationReq_r17, + { "dl-prs-QCL-InformationReq-r17", "lpp.dl_prs_QCL_InformationReq_r17", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_DL_PRS_QCL_InformationReq_r17_item, + { "DL-PRS-QCL-InformationReqPerTRP-r17", "lpp.DL_PRS_QCL_InformationReqPerTRP_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_dl_prs_QCL_InformationReqSet_r17, + { "dl-prs-QCL-InformationReqSet-r17", "lpp.dl_prs_QCL_InformationReqSet_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_QCL_InfoReq_r17", HFILL }}, + { &hf_lpp_dl_prs_QCL_InformationReqSet_r17_item, + { "DL-PRS-QCL-InfoReq-r17", "lpp.DL_PRS_QCL_InfoReq_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_nr_DL_PRS_ResourceSetID_r17, + { "nr-DL-PRS-ResourceSetID-r17", "lpp.nr_DL_PRS_ResourceSetID_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "NR_DL_PRS_ResourceSetID_r16", HFILL }}, + { &hf_lpp_dl_prs_QCL_InformationReq_r17_01, + { "dl-prs-QCL-InformationReq-r17", "lpp.dl_prs_QCL_InformationReq_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_dl_prs_QCL_InformationReq_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_nr_DL_PRS_QCL_Source_r17, + { "nr-DL-PRS-QCL-Source-r17", "lpp.nr_DL_PRS_QCL_Source_r17", + FT_UINT32, BASE_DEC, VALS(lpp_DL_PRS_QCL_Info_r16_vals), 0, + "DL_PRS_QCL_Info_r16", HFILL }}, + { &hf_lpp_dl_prs_QCL_Info_requested_r17, + { "dl-prs-QCL-Info-requested-r17", "lpp.dl_prs_QCL_Info_requested_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_dl_prs_StartTime_and_Duration_r17, + { "dl-prs-StartTime-and-Duration-r17", "lpp.dl_prs_StartTime_and_Duration_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_nr_on_demand_DL_PRS_Information_r17, + { "nr-on-demand-DL-PRS-Information-r17", "lpp.nr_on_demand_DL_PRS_Information_r17", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_dl_prs_configuration_id_PrefList_r17, + { "dl-prs-configuration-id-PrefList-r17", "lpp.dl_prs_configuration_id_PrefList_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_DL_PRS_Configuration_ID_r17", HFILL }}, + { &hf_lpp_dl_prs_configuration_id_PrefList_r17_item, + { "DL-PRS-Configuration-ID-r17", "lpp.DL_PRS_Configuration_ID_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_dl_prs_start_time_r17, + { "dl-prs-start-time-r17", "lpp.dl_prs_start_time_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_1024", HFILL }}, + { &hf_lpp_dl_prs_duration_r17, + { "dl-prs-duration-r17", "lpp.dl_prs_duration_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_seconds_r17, + { "seconds-r17", "lpp.seconds_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_59", HFILL }}, + { &hf_lpp_minutes_r17, + { "minutes-r17", "lpp.minutes_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_59", HFILL }}, + { &hf_lpp_hours_r17, + { "hours-r17", "lpp.hours_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_23", HFILL }}, + { &hf_lpp_NR_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17_item, + { "DL-PRS-Configuration-ID-r17", "lpp.DL_PRS_Configuration_ID_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_nr_on_demand_DL_PRS_InformationSup_r17, + { "nr-on-demand-DL-PRS-InformationSup-r17", "lpp.nr_on_demand_DL_PRS_InformationSup_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nr_on_demand_DL_PRS_InformationSup_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_nr_on_demand_DL_PRS_ConfigurationsSup_r17, + { "nr-on-demand-DL-PRS-ConfigurationsSup-r17", "lpp.nr_on_demand_DL_PRS_ConfigurationsSup_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nr_on_demand_DL_PRS_ConfigurationsSup_r17_vals), 0, + NULL, HFILL }}, { &hf_lpp_nr_TRP_LocationInfo_r16, { "nr-TRP-LocationInfo-r16", "lpp.nr_TRP_LocationInfo_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -28719,6 +35742,18 @@ void proto_register_lpp(void) { { "nr-RTD-Info-r16", "lpp.nr_RTD_Info_r16_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_nr_TRP_BeamAntennaInfo_r17, + { "nr-TRP-BeamAntennaInfo-r17", "lpp.nr_TRP_BeamAntennaInfo_r17", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_nr_DL_PRS_Expected_LOS_NLOS_Assistance_r17, + { "nr-DL-PRS-Expected-LOS-NLOS-Assistance-r17", "lpp.nr_DL_PRS_Expected_LOS_NLOS_Assistance_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "NR_DL_PRS_ExpectedLOS_NLOS_Assistance_r17", HFILL }}, + { &hf_lpp_nr_DL_PRS_TRP_TEG_Info_r17, + { "nr-DL-PRS-TRP-TEG-Info-r17", "lpp.nr_DL_PRS_TRP_TEG_Info_r17", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lpp_referenceTRP_RTD_Info_r16, { "referenceTRP-RTD-Info-r16", "lpp.referenceTRP_RTD_Info_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -28887,6 +35922,78 @@ void proto_register_lpp(void) { { "timingQualityResolution-r16", "lpp.timingQualityResolution_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_timingQualityResolution_r16_vals), 0, NULL, HFILL }}, + { &hf_lpp_NR_TRP_BeamAntennaInfo_r17_item, + { "NR-TRP-BeamAntennaInfoPerFreqLayer-r17", "lpp.NR_TRP_BeamAntennaInfoPerFreqLayer_r17", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_NR_TRP_BeamAntennaInfoPerFreqLayer_r17_item, + { "NR-TRP-BeamAntennaInfoPerTRP-r17", "lpp.NR_TRP_BeamAntennaInfoPerTRP_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_associated_DL_PRS_ID_r17, + { "associated-DL-PRS-ID-r17", "lpp.associated_DL_PRS_ID_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_lcs_GCS_TranslationParameter_r17, + { "lcs-GCS-TranslationParameter-r17", "lpp.lcs_GCS_TranslationParameter_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "LCS_GCS_TranslationParameter_r16", HFILL }}, + { &hf_lpp_nr_TRP_BeamAntennaAngles_r17, + { "nr-TRP-BeamAntennaAngles-r17", "lpp.nr_TRP_BeamAntennaAngles_r17", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_NR_TRP_BeamAntennaAngles_r17_item, + { "NR-TRP-BeamAntennaInfoAzimuthElevation-r17", "lpp.NR_TRP_BeamAntennaInfoAzimuthElevation_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_azimuth_r17, + { "azimuth-r17", "lpp.azimuth_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_359", HFILL }}, + { &hf_lpp_azimuth_fine_r17, + { "azimuth-fine-r17", "lpp.azimuth_fine_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_lpp_elevationList_r17, + { "elevationList-r17", "lpp.elevationList_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_1801_OF_ElevationElement_R17", HFILL }}, + { &hf_lpp_elevationList_r17_item, + { "ElevationElement-R17", "lpp.ElevationElement_R17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_elevation_r17, + { "elevation-r17", "lpp.elevation_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_180", HFILL }}, + { &hf_lpp_elevation_fine_r17, + { "elevation-fine-r17", "lpp.elevation_fine_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_lpp_beamPowerList_r17, + { "beamPowerList-r17", "lpp.beamPowerList_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_2_maxNumResourcesPerAngle_r17_OF_BeamPowerElement_r17", HFILL }}, + { &hf_lpp_beamPowerList_r17_item, + { "BeamPowerElement-r17", "lpp.BeamPowerElement_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_nr_dl_prs_ResourceSetID_r17, + { "nr-dl-prs-ResourceSetID-r17", "lpp.nr_dl_prs_ResourceSetID_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "NR_DL_PRS_ResourceSetID_r16", HFILL }}, + { &hf_lpp_nr_dl_prs_ResourceID_r17, + { "nr-dl-prs-ResourceID-r17", "lpp.nr_dl_prs_ResourceID_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "NR_DL_PRS_ResourceID_r16", HFILL }}, + { &hf_lpp_nr_dl_prs_RelativePower_r17, + { "nr-dl-prs-RelativePower-r17", "lpp.nr_dl_prs_RelativePower_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_30", HFILL }}, + { &hf_lpp_nr_dl_prs_RelativePowerFine_r17, + { "nr-dl-prs-RelativePowerFine-r17", "lpp.nr_dl_prs_RelativePowerFine_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, { &hf_lpp_NR_TRP_LocationInfo_r16_item, { "NR-TRP-LocationInfoPerFreqLayer-r16", "lpp.NR_TRP_LocationInfoPerFreqLayer_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -28931,6 +36038,38 @@ void proto_register_lpp(void) { { "dl-PRS-Resource-ARP-location-r16", "lpp.dl_PRS_Resource_ARP_location_r16_element", FT_NONE, BASE_NONE, NULL, 0, "RelativeLocation_r16", HFILL }}, + { &hf_lpp_nr_UE_TEG_ID_CapabilityBandList_r17, + { "nr-UE-TEG-ID-CapabilityBandList-r17", "lpp.nr_UE_TEG_ID_CapabilityBandList_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_nrMaxBands_r16_OF_NR_UE_TEG_ID_CapabilityPerBand_r17", HFILL }}, + { &hf_lpp_nr_UE_TEG_ID_CapabilityBandList_r17_item, + { "NR-UE-TEG-ID-CapabilityPerBand-r17", "lpp.NR_UE_TEG_ID_CapabilityPerBand_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_freqBandIndicatorNR_r17, + { "freqBandIndicatorNR-r17", "lpp.freqBandIndicatorNR_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "FreqBandIndicatorNR_r16", HFILL }}, + { &hf_lpp_nr_UE_RxTEG_ID_MaxSupport_r17, + { "nr-UE-RxTEG-ID-MaxSupport-r17", "lpp.nr_UE_RxTEG_ID_MaxSupport_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nr_UE_RxTEG_ID_MaxSupport_r17_vals), 0, + "T_nr_UE_RxTEG_ID_MaxSupport_r17", HFILL }}, + { &hf_lpp_nr_UE_TxTEG_ID_MaxSupport_r17, + { "nr-UE-TxTEG-ID-MaxSupport-r17", "lpp.nr_UE_TxTEG_ID_MaxSupport_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nr_UE_TxTEG_ID_MaxSupport_r17_vals), 0, + "T_nr_UE_TxTEG_ID_MaxSupport_r17", HFILL }}, + { &hf_lpp_nr_UE_RxTxTEG_ID_MaxSupport_r17, + { "nr-UE-RxTxTEG-ID-MaxSupport-r17", "lpp.nr_UE_RxTxTEG_ID_MaxSupport_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nr_UE_RxTxTEG_ID_MaxSupport_r17_vals), 0, + "T_nr_UE_RxTxTEG_ID_MaxSupport_r17", HFILL }}, + { &hf_lpp_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17, + { "measureSameDL-PRS-ResourceWithDifferentRxTEGs-r17", "lpp.measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_measureSameDL_PRS_ResourceWithDifferentRxTEGsSimul_r17, + { "measureSameDL-PRS-ResourceWithDifferentRxTEGsSimul-r17", "lpp.measureSameDL_PRS_ResourceWithDifferentRxTEGsSimul_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTEGsSimul_r17_vals), 0, + NULL, HFILL }}, { &hf_lpp_srs_CapabilityBandList_r16, { "srs-CapabilityBandList-r16", "lpp.srs_CapabilityBandList_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -28963,6 +36102,22 @@ void proto_register_lpp(void) { { "spatialRelationsSRS-Pos-r16", "lpp.spatialRelationsSRS_Pos_r16_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_posSRS_RRC_Inactive_InInitialUL_BWP_r17, + { "posSRS-RRC-Inactive-InInitialUL-BWP-r17", "lpp.posSRS_RRC_Inactive_InInitialUL_BWP_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_posSRS_RRC_Inactive_OutsideInitialUL_BWP_r17, + { "posSRS-RRC-Inactive-OutsideInitialUL-BWP-r17", "lpp.posSRS_RRC_Inactive_OutsideInitialUL_BWP_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_olpc_SRS_PosRRC_Inactive_r17, + { "olpc-SRS-PosRRC-Inactive-r17", "lpp.olpc_SRS_PosRRC_Inactive_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "OLPC_SRS_Pos_r16", HFILL }}, + { &hf_lpp_spatialRelationsSRS_PosRRC_Inactive_r17, + { "spatialRelationsSRS-PosRRC-Inactive-r17", "lpp.spatialRelationsSRS_PosRRC_Inactive_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "SpatialRelationsSRS_Pos_r16", HFILL }}, { &hf_lpp_olpc_SRS_PosBasedOnPRS_Serving_r16, { "olpc-SRS-PosBasedOnPRS-Serving-r16", "lpp.olpc_SRS_PosBasedOnPRS_Serving_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_olpc_SRS_PosBasedOnPRS_Serving_r16_vals), 0, @@ -29023,6 +36178,86 @@ void proto_register_lpp(void) { { "maxNumberSP-SRS-PosResourcesPerBWP-r16", "lpp.maxNumberSP_SRS_PosResourcesPerBWP_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_maxNumberSP_SRS_PosResourcesPerBWP_r16_vals), 0, NULL, HFILL }}, + { &hf_lpp_maxNumOfSRSposResourceSets_r17, + { "maxNumOfSRSposResourceSets-r17", "lpp.maxNumOfSRSposResourceSets_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxNumOfSRSposResourceSets_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_maxNumOfPeriodicAndSemiPeristentSRSposResources_r17, + { "maxNumOfPeriodicAndSemiPeristentSRSposResources-r17", "lpp.maxNumOfPeriodicAndSemiPeristentSRSposResources_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxNumOfPeriodicAndSemiPeristentSRSposResources_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17, + { "maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot-r17", "lpp.maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17_vals), 0, + "T_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17", HFILL }}, + { &hf_lpp_maxNumOfPeriodicSRSposResources_r17, + { "maxNumOfPeriodicSRSposResources-r17", "lpp.maxNumOfPeriodicSRSposResources_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxNumOfPeriodicSRSposResources_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_maxNumOfPeriodicSRSposResourcesPerSlot_r17, + { "maxNumOfPeriodicSRSposResourcesPerSlot-r17", "lpp.maxNumOfPeriodicSRSposResourcesPerSlot_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxNumOfPeriodicSRSposResourcesPerSlot_r17_vals), 0, + "T_maxNumOfPeriodicSRSposResourcesPerSlot_r17", HFILL }}, + { &hf_lpp_maxNumOfSemiPeristentSRSposResources_r17, + { "maxNumOfSemiPeristentSRSposResources-r17", "lpp.maxNumOfSemiPeristentSRSposResources_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxNumOfSemiPeristentSRSposResources_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17, + { "maxNumOfSemiPersistentSRSposResourcesPerSlot-r17", "lpp.maxNumOfSemiPersistentSRSposResourcesPerSlot_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17_vals), 0, + "T_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17", HFILL }}, + { &hf_lpp_maxSRSposBandwidthForEachSCS_withinCC_FR1_r17, + { "maxSRSposBandwidthForEachSCS-withinCC-FR1-r17", "lpp.maxSRSposBandwidthForEachSCS_withinCC_FR1_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxSRSposBandwidthForEachSCS_withinCC_FR1_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_maxSRSposBandwidthForEachSCS_withinCC_FR2_r17, + { "maxSRSposBandwidthForEachSCS-withinCC-FR2-r17", "lpp.maxSRSposBandwidthForEachSCS_withinCC_FR2_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxSRSposBandwidthForEachSCS_withinCC_FR2_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_maxNumOfSRSposResourceSets_r17_01, + { "maxNumOfSRSposResourceSets-r17", "lpp.maxNumOfSRSposResourceSets_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxNumOfSRSposResourceSets_r17_01_vals), 0, + "T_maxNumOfSRSposResourceSets_r17_01", HFILL }}, + { &hf_lpp_maxNumOfPeriodicSRSposResources_r17_01, + { "maxNumOfPeriodicSRSposResources-r17", "lpp.maxNumOfPeriodicSRSposResources_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxNumOfPeriodicSRSposResources_r17_01_vals), 0, + "T_maxNumOfPeriodicSRSposResources_r17_01", HFILL }}, + { &hf_lpp_maxNumOfPeriodicSRSposResourcesPerSlot_r17_01, + { "maxNumOfPeriodicSRSposResourcesPerSlot-r17", "lpp.maxNumOfPeriodicSRSposResourcesPerSlot_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxNumOfPeriodicSRSposResourcesPerSlot_r17_01_vals), 0, + "T_maxNumOfPeriodicSRSposResourcesPerSlot_r17_01", HFILL }}, + { &hf_lpp_differentNumerologyBetweenSRSposAndInitialBWP_r17, + { "differentNumerologyBetweenSRSposAndInitialBWP-r17", "lpp.differentNumerologyBetweenSRSposAndInitialBWP_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_differentNumerologyBetweenSRSposAndInitialBWP_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_srsPosWithoutRestrictionOnBWP_r17, + { "srsPosWithoutRestrictionOnBWP-r17", "lpp.srsPosWithoutRestrictionOnBWP_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_srsPosWithoutRestrictionOnBWP_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_maxNumOfPeriodicAndSemiPeristentSRSposResources_r17_01, + { "maxNumOfPeriodicAndSemiPeristentSRSposResources-r17", "lpp.maxNumOfPeriodicAndSemiPeristentSRSposResources_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxNumOfPeriodicAndSemiPeristentSRSposResources_r17_01_vals), 0, + "T_maxNumOfPeriodicAndSemiPeristentSRSposResources_r17_01", HFILL }}, + { &hf_lpp_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17_01, + { "maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot-r17", "lpp.maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17_01_vals), 0, + "T_maxNumOfPeriodicAndSemiPeristentSRSposResourcesPerSlot_r17_01", HFILL }}, + { &hf_lpp_differentCenterFreqBetweenSRSposAndInitialBWP_r17, + { "differentCenterFreqBetweenSRSposAndInitialBWP-r17", "lpp.differentCenterFreqBetweenSRSposAndInitialBWP_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_differentCenterFreqBetweenSRSposAndInitialBWP_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_maxNumOfSemiPersistentSRSposResources_r17, + { "maxNumOfSemiPersistentSRSposResources-r17", "lpp.maxNumOfSemiPersistentSRSposResources_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxNumOfSemiPersistentSRSposResources_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17_01, + { "maxNumOfSemiPersistentSRSposResourcesPerSlot-r17", "lpp.maxNumOfSemiPersistentSRSposResourcesPerSlot_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17_01_vals), 0, + "T_maxNumOfSemiPersistentSRSposResourcesPerSlot_r17_01", HFILL }}, + { &hf_lpp_switchingTimeSRS_TX_OtherTX_r17, + { "switchingTimeSRS-TX-OtherTX-r17", "lpp.switchingTimeSRS_TX_OtherTX_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_switchingTimeSRS_TX_OtherTX_r17_vals), 0, + NULL, HFILL }}, { &hf_lpp_referencePointGeographicLocation_r16, { "referencePointGeographicLocation-r16", "lpp.referencePointGeographicLocation_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_referencePointGeographicLocation_r16_vals), 0, @@ -29827,6 +37062,10 @@ void proto_register_lpp(void) { { "interRAT-RSTDmeasurement-r15", "lpp.interRAT_RSTDmeasurement_r15", FT_UINT32, BASE_DEC, VALS(lpp_T_interRAT_RSTDmeasurement_r15_vals), 0, "T_interRAT_RSTDmeasurement_r15", HFILL }}, + { &hf_lpp_scheduledLocationRequestSupported_r17, + { "scheduledLocationRequestSupported-r17", "lpp.scheduledLocationRequestSupported_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "ScheduledLocationTimeSupport_r17", HFILL }}, { &hf_lpp_bandEUTRA, { "bandEUTRA", "lpp.bandEUTRA", FT_UINT32, BASE_DEC, NULL, 0, @@ -29899,6 +37138,14 @@ void proto_register_lpp(void) { { "gnss-SSR-CorrectionPoints-r16", "lpp.gnss_SSR_CorrectionPoints_r16_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_gnss_Integrity_ServiceParameters_r17, + { "gnss-Integrity-ServiceParameters-r17", "lpp.gnss_Integrity_ServiceParameters_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_gnss_Integrity_ServiceAlert_r17, + { "gnss-Integrity-ServiceAlert-r17", "lpp.gnss_Integrity_ServiceAlert_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_GNSS_GenericAssistData_item, { "GNSS-GenericAssistDataElement", "lpp.GNSS_GenericAssistDataElement_element", FT_NONE, BASE_NONE, NULL, 0, @@ -30059,6 +37306,10 @@ void proto_register_lpp(void) { { "gnss-SSR-PeriodicGriddedCorrection-r16", "lpp.gnss_SSR_PeriodicGriddedCorrection_r16_element", FT_NONE, BASE_NONE, NULL, 0, "GNSS_PeriodicControlParam_r15", HFILL }}, + { &hf_lpp_gnss_Integrity_PeriodicServiceAlert_r17, + { "gnss-Integrity-PeriodicServiceAlert-r17", "lpp.gnss_Integrity_PeriodicServiceAlert_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_PeriodicControlParam_r15", HFILL }}, { &hf_lpp_gnss_SystemTime, { "gnss-SystemTime", "lpp.gnss_SystemTime_element", FT_NONE, BASE_NONE, NULL, 0, @@ -30607,6 +37858,22 @@ void proto_register_lpp(void) { { "bitmaskOfGrids-r16", "lpp.bitmaskOfGrids_r16", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_64", HFILL }}, + { &hf_lpp_irMinimum_r17, + { "irMinimum-r17", "lpp.irMinimum_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_irMaximum_r17, + { "irMaximum-r17", "lpp.irMaximum_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_ionosphereDoNotUse_r17, + { "ionosphereDoNotUse-r17", "lpp.ionosphereDoNotUse_r17", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lpp_troposphereDoNotUse_r17, + { "troposphereDoNotUse-r17", "lpp.troposphereDoNotUse_r17", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, { &hf_lpp_GNSS_TimeModelList_item, { "GNSS-TimeModelElement", "lpp.GNSS_TimeModelElement_element", FT_NONE, BASE_NONE, NULL, 0, @@ -30975,6 +38242,14 @@ void proto_register_lpp(void) { { "bdsIscB1Cd-r16", "lpp.bdsIscB1Cd_r16", FT_INT32, BASE_DEC, NULL, 0, "INTEGER_M2048_2047", HFILL }}, + { &hf_lpp_bdsTgdB2ap_r17, + { "bdsTgdB2ap-r17", "lpp.bdsTgdB2ap_r17", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M2048_2047", HFILL }}, + { &hf_lpp_bdsIscB2ad_r17, + { "bdsIscB2ad-r17", "lpp.bdsIscB2ad_r17", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M2048_2047", HFILL }}, { &hf_lpp_navic_Toc_r16, { "navic-Toc-r16", "lpp.navic_Toc_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -32507,6 +39782,10 @@ void proto_register_lpp(void) { { "ssr-OrbitCorrectionList-r15", "lpp.ssr_OrbitCorrectionList_r15", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lpp_orbit_IntegrityParameters_r17, + { "orbit-IntegrityParameters-r17", "lpp.orbit_IntegrityParameters_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_SSR_OrbitCorrectionList_r15_item, { "SSR-OrbitCorrectionSatelliteElement-r15", "lpp.SSR_OrbitCorrectionSatelliteElement_r15_element", FT_NONE, BASE_NONE, NULL, 0, @@ -32535,10 +39814,70 @@ void proto_register_lpp(void) { { "dot-delta-CrossTrack-r15", "lpp.dot_delta_CrossTrack_r15", FT_INT32, BASE_CUSTOM, CF_FUNC(lpp_4_1000000m_s_fmt), 0, "INTEGER_M262144_262143", HFILL }}, + { &hf_lpp_ssr_IntegrityOrbitBounds_r17, + { "ssr-IntegrityOrbitBounds-r17", "lpp.ssr_IntegrityOrbitBounds_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_probOnsetConstFault_r17, + { "probOnsetConstFault-r17", "lpp.probOnsetConstFault_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_meanConstFaultDuration_r17, + { "meanConstFaultDuration-r17", "lpp.meanConstFaultDuration_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_3600", HFILL }}, + { &hf_lpp_probOnsetSatFault_r17, + { "probOnsetSatFault-r17", "lpp.probOnsetSatFault_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_meanSatFaultDuration_r17, + { "meanSatFaultDuration-r17", "lpp.meanSatFaultDuration_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_3600", HFILL }}, + { &hf_lpp_orbitRangeErrorCorrelationTime_r17, + { "orbitRangeErrorCorrelationTime-r17", "lpp.orbitRangeErrorCorrelationTime_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_orbitRangeRateErrorCorrelationTime_r17, + { "orbitRangeRateErrorCorrelationTime-r17", "lpp.orbitRangeRateErrorCorrelationTime_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_meanOrbitError_r17, + { "meanOrbitError-r17", "lpp.meanOrbitError_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "RAC_OrbitalErrorComponents_r17", HFILL }}, + { &hf_lpp_varOrbitError_r17, + { "varOrbitError-r17", "lpp.varOrbitError_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "RAC_OrbitalErrorComponents_r17", HFILL }}, + { &hf_lpp_meanOrbitRateError_r17, + { "meanOrbitRateError-r17", "lpp.meanOrbitRateError_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "RAC_OrbitalErrorComponents_r17", HFILL }}, + { &hf_lpp_varOrbitRateError_r17, + { "varOrbitRateError-r17", "lpp.varOrbitRateError_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "RAC_OrbitalErrorComponents_r17", HFILL }}, + { &hf_lpp_radial_r17, + { "radial-r17", "lpp.radial_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_alongTrack_r17, + { "alongTrack-r17", "lpp.alongTrack_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_crossTrack_r17, + { "crossTrack-r17", "lpp.crossTrack_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, { &hf_lpp_ssr_ClockCorrectionList_r15, { "ssr-ClockCorrectionList-r15", "lpp.ssr_ClockCorrectionList_r15", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lpp_clock_IntegrityParameters_r17, + { "clock-IntegrityParameters-r17", "lpp.clock_IntegrityParameters_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_SSR_ClockCorrectionList_r15_item, { "SSR-ClockCorrectionSatelliteElement-r15", "lpp.SSR_ClockCorrectionSatelliteElement_r15_element", FT_NONE, BASE_NONE, NULL, 0, @@ -32555,6 +39894,34 @@ void proto_register_lpp(void) { { "delta-Clock-C2-r15", "lpp.delta_Clock_C2_r15", FT_INT32, BASE_CUSTOM, CF_FUNC(lpp_2_100000000m_s2_fmt), 0, "INTEGER_M67108864_67108863", HFILL }}, + { &hf_lpp_ssr_IntegrityClockBounds_r17, + { "ssr-IntegrityClockBounds-r17", "lpp.ssr_IntegrityClockBounds_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_clockRangeErrorCorrelationTime_r17, + { "clockRangeErrorCorrelationTime-r17", "lpp.clockRangeErrorCorrelationTime_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_clockRangeRateErrorCorrelationTime_r17, + { "clockRangeRateErrorCorrelationTime-r17", "lpp.clockRangeRateErrorCorrelationTime_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_meanClock_r17, + { "meanClock-r17", "lpp.meanClock_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_stdDevClock_r17, + { "stdDevClock-r17", "lpp.stdDevClock_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_meanClockRate_r17, + { "meanClockRate-r17", "lpp.meanClockRate_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_stdDevClockRate_r17, + { "stdDevClockRate-r17", "lpp.stdDevClockRate_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, { &hf_lpp_ssr_CodeBiasSatList_r15, { "ssr-CodeBiasSatList-r15", "lpp.ssr_CodeBiasSatList_r15", FT_UINT32, BASE_DEC, NULL, 0, @@ -32579,6 +39946,26 @@ void proto_register_lpp(void) { { "codeBias-r15", "lpp.codeBias_r15", FT_INT32, BASE_CUSTOM, CF_FUNC(lpp_1_100000m_fmt), 0, "INTEGER_M8192_8191", HFILL }}, + { &hf_lpp_ssr_IntegrityCodeBiasBounds_r17, + { "ssr-IntegrityCodeBiasBounds-r17", "lpp.ssr_IntegrityCodeBiasBounds_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_meanCodeBias_r17, + { "meanCodeBias-r17", "lpp.meanCodeBias_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_stdDevCodeBias_r17, + { "stdDevCodeBias-r17", "lpp.stdDevCodeBias_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_meanCodeBiasRate_r17, + { "meanCodeBiasRate-r17", "lpp.meanCodeBiasRate_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_stdDevCodeBiasRate_r17, + { "stdDevCodeBiasRate-r17", "lpp.stdDevCodeBiasRate_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, { &hf_lpp_epochTime_r16, { "epochTime-r16", "lpp.epochTime_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -32635,10 +40022,34 @@ void proto_register_lpp(void) { { "phaseBiasIntegerIndicator-r16", "lpp.phaseBiasIntegerIndicator_r16", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_3", HFILL }}, + { &hf_lpp_ssr_IntegrityPhaseBiasBounds_r17, + { "ssr-IntegrityPhaseBiasBounds-r17", "lpp.ssr_IntegrityPhaseBiasBounds_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_meanPhaseBias_r17, + { "meanPhaseBias-r17", "lpp.meanPhaseBias_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_stdDevPhaseBias_r17, + { "stdDevPhaseBias-r17", "lpp.stdDevPhaseBias_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_meanPhaseBiasRate_r17, + { "meanPhaseBiasRate-r17", "lpp.meanPhaseBiasRate_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_stdDevPhaseBiasRate_r17, + { "stdDevPhaseBiasRate-r17", "lpp.stdDevPhaseBiasRate_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, { &hf_lpp_stec_SatList_r16, { "stec-SatList-r16", "lpp.stec_SatList_r16", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lpp_stec_IntegrityParameters_r17, + { "stec-IntegrityParameters-r17", "lpp.stec_IntegrityParameters_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_STEC_SatList_r16_item, { "STEC-SatElement-r16", "lpp.STEC_SatElement_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -32663,6 +40074,42 @@ void proto_register_lpp(void) { { "stec-C11-r16", "lpp.stec_C11_r16", FT_INT32, BASE_DEC, NULL, 0, "INTEGER_M512_511", HFILL }}, + { &hf_lpp_stec_IntegrityErrorBounds_r17, + { "stec-IntegrityErrorBounds-r17", "lpp.stec_IntegrityErrorBounds_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_probOnsetIonoFault_r17, + { "probOnsetIonoFault-r17", "lpp.probOnsetIonoFault_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_meanIonoFaultDuration_r17, + { "meanIonoFaultDuration-r17", "lpp.meanIonoFaultDuration_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_256", HFILL }}, + { &hf_lpp_ionoRangeErrorCorrelationTime_r17, + { "ionoRangeErrorCorrelationTime-r17", "lpp.ionoRangeErrorCorrelationTime_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_255", HFILL }}, + { &hf_lpp_ionoRangeRateErrorCorrelationTime_r17, + { "ionoRangeRateErrorCorrelationTime-r17", "lpp.ionoRangeRateErrorCorrelationTime_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_255", HFILL }}, + { &hf_lpp_meanIonosphere_r17, + { "meanIonosphere-r17", "lpp.meanIonosphere_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_stdDevIonosphere_r17, + { "stdDevIonosphere-r17", "lpp.stdDevIonosphere_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_meanIonosphereRate_r17, + { "meanIonosphereRate-r17", "lpp.meanIonosphereRate_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_stdDevIonosphereRate_r17, + { "stdDevIonosphereRate-r17", "lpp.stdDevIonosphereRate_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, { &hf_lpp_troposphericDelayQualityIndicator_r16, { "troposphericDelayQualityIndicator-r16", "lpp.troposphericDelayQualityIndicator_r16", FT_BYTES, BASE_NONE, NULL, 0, @@ -32671,6 +40118,10 @@ void proto_register_lpp(void) { { "gridList-r16", "lpp.gridList_r16", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lpp_ssr_GriddedCorrectionIntegrityParameters_r17, + { "ssr-GriddedCorrectionIntegrityParameters-r17", "lpp.ssr_GriddedCorrectionIntegrityParameters_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_GridList_r16_item, { "GridElement-r16", "lpp.GridElement_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -32691,6 +40142,10 @@ void proto_register_lpp(void) { { "tropoWetVerticalDelay-r16", "lpp.tropoWetVerticalDelay_r16", FT_INT32, BASE_DEC, NULL, 0, "INTEGER_M128_127", HFILL }}, + { &hf_lpp_tropoDelayIntegrityErrorBounds_r17, + { "tropoDelayIntegrityErrorBounds-r17", "lpp.tropoDelayIntegrityErrorBounds_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_STEC_ResidualSatList_r16_item, { "STEC-ResidualSatElement-r16", "lpp.STEC_ResidualSatElement_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -32707,6 +40162,54 @@ void proto_register_lpp(void) { { "b16-r16", "lpp.b16_r16", FT_INT32, BASE_DEC, NULL, 0, "INTEGER_M32768_32767", HFILL }}, + { &hf_lpp_probOnsetTroposphereFault_r17, + { "probOnsetTroposphereFault-r17", "lpp.probOnsetTroposphereFault_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_meanTroposphereFaultDuration_r17, + { "meanTroposphereFaultDuration-r17", "lpp.meanTroposphereFaultDuration_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_256", HFILL }}, + { &hf_lpp_troposphereRangeErrorCorrelationTime_r17, + { "troposphereRangeErrorCorrelationTime-r17", "lpp.troposphereRangeErrorCorrelationTime_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_255", HFILL }}, + { &hf_lpp_troposphereRangeRateErrorCorrelationTime_r17, + { "troposphereRangeRateErrorCorrelationTime-r17", "lpp.troposphereRangeRateErrorCorrelationTime_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_255", HFILL }}, + { &hf_lpp_meanTroposphereVerticalHydroStaticDelay_r17, + { "meanTroposphereVerticalHydroStaticDelay-r17", "lpp.meanTroposphereVerticalHydroStaticDelay_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_stdDevTroposphereVerticalHydroStaticDelay_r17, + { "stdDevTroposphereVerticalHydroStaticDelay-r17", "lpp.stdDevTroposphereVerticalHydroStaticDelay_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_meanTroposphereVerticalWetDelay_r17, + { "meanTroposphereVerticalWetDelay-r17", "lpp.meanTroposphereVerticalWetDelay_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_stdDevTroposphereVerticalWetDelay_r17, + { "stdDevTroposphereVerticalWetDelay-r17", "lpp.stdDevTroposphereVerticalWetDelay_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_meanTroposphereVerticalHydroStaticDelayRate_r17, + { "meanTroposphereVerticalHydroStaticDelayRate-r17", "lpp.meanTroposphereVerticalHydroStaticDelayRate_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_stdDevTroposphereVerticalHydroStaticDelayRate_r17, + { "stdDevTroposphereVerticalHydroStaticDelayRate-r17", "lpp.stdDevTroposphereVerticalHydroStaticDelayRate_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_meanTroposphereVerticalWetDelayRate_r17, + { "meanTroposphereVerticalWetDelayRate-r17", "lpp.meanTroposphereVerticalWetDelayRate_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lpp_stdDevTroposphereVerticalWetDelayRate_r17, + { "stdDevTroposphereVerticalWetDelayRate-r17", "lpp.stdDevTroposphereVerticalWetDelayRate_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, { &hf_lpp_navic_RefTOWC_r16, { "navic-RefTOWC-r16", "lpp.navic_RefTOWC_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -32951,6 +40454,14 @@ void proto_register_lpp(void) { { "gnss-SSR-CorrectionPointsReq-r16", "lpp.gnss_SSR_CorrectionPointsReq_r16_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_gnss_Integrity_ServiceParametersReq_r17, + { "gnss-Integrity-ServiceParametersReq-r17", "lpp.gnss_Integrity_ServiceParametersReq_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_gnss_Integrity_ServiceAlertReq_r17, + { "gnss-Integrity-ServiceAlertReq-r17", "lpp.gnss_Integrity_ServiceAlertReq_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_GNSS_GenericAssistDataReq_item, { "GNSS-GenericAssistDataReqElement", "lpp.GNSS_GenericAssistDataReqElement_element", FT_NONE, BASE_NONE, NULL, 0, @@ -33103,6 +40614,10 @@ void proto_register_lpp(void) { { "gnss-SSR-PeriodicGriddedCorrectionReq-r16", "lpp.gnss_SSR_PeriodicGriddedCorrectionReq_r16_element", FT_NONE, BASE_NONE, NULL, 0, "GNSS_PeriodicControlParam_r15", HFILL }}, + { &hf_lpp_gnss_Integrity_PeriodicServiceAlertReq_r17, + { "gnss-Integrity-PeriodicServiceAlertReq-r17", "lpp.gnss_Integrity_PeriodicServiceAlertReq_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "GNSS_PeriodicControlParam_r15", HFILL }}, { &hf_lpp_gnss_TimeReqPrefList, { "gnss-TimeReqPrefList", "lpp.gnss_TimeReqPrefList", FT_UINT32, BASE_DEC, NULL, 0, @@ -33299,10 +40814,26 @@ void proto_register_lpp(void) { { "storedNavList-r15", "lpp.storedNavList_r15", FT_UINT32, BASE_DEC, NULL, 0, "GNSS_NavListInfo_r15", HFILL }}, + { &hf_lpp_orbit_IntegrityReq_r17, + { "orbit-IntegrityReq-r17", "lpp.orbit_IntegrityReq_r17", + FT_BYTES, BASE_NONE, NULL, 0, + "T_orbit_IntegrityReq_r17", HFILL }}, + { &hf_lpp_clock_IntegrityParametersReq_r17, + { "clock-IntegrityParametersReq-r17", "lpp.clock_IntegrityParametersReq_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_clock_IntegrityParametersReq_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_ssr_IntegrityClockBoundsReq_r17, + { "ssr-IntegrityClockBoundsReq-r17", "lpp.ssr_IntegrityClockBoundsReq_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_ssr_IntegrityClockBoundsReq_r17_vals), 0, + NULL, HFILL }}, { &hf_lpp_signal_and_tracking_mode_ID_Map_r15, { "signal-and-tracking-mode-ID-Map-r15", "lpp.signal_and_tracking_mode_ID_Map_r15_element", FT_NONE, BASE_NONE, NULL, 0, "GNSS_SignalIDs", HFILL }}, + { &hf_lpp_ssr_IntegrityCodeBiasBoundsReq_r17, + { "ssr-IntegrityCodeBiasBoundsReq-r17", "lpp.ssr_IntegrityCodeBiasBoundsReq_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_ssr_IntegrityCodeBiasBoundsReq_r17_vals), 0, + NULL, HFILL }}, { &hf_lpp_signal_and_tracking_mode_ID_Map_r16, { "signal-and-tracking-mode-ID-Map-r16", "lpp.signal_and_tracking_mode_ID_Map_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -33311,6 +40842,18 @@ void proto_register_lpp(void) { { "storedNavList-r16", "lpp.storedNavList_r16", FT_UINT32, BASE_DEC, NULL, 0, "GNSS_NavListInfo_r15", HFILL }}, + { &hf_lpp_ssr_IntegrityPhaseBiasBoundsReq_r17, + { "ssr-IntegrityPhaseBiasBoundsReq-r17", "lpp.ssr_IntegrityPhaseBiasBoundsReq_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_ssr_IntegrityPhaseBiasBoundsReq_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_stec_IntegrityReq_r17, + { "stec-IntegrityReq-r17", "lpp.stec_IntegrityReq_r17", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_griddedCorrectionIntegrityReq_r17, + { "griddedCorrectionIntegrityReq-r17", "lpp.griddedCorrectionIntegrityReq_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_griddedCorrectionIntegrityReq_r17_vals), 0, + NULL, HFILL }}, { &hf_lpp_dgnss_SignalsReq_r16, { "dgnss-SignalsReq-r16", "lpp.dgnss_SignalsReq_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -33491,6 +41034,30 @@ void proto_register_lpp(void) { { "agnss-List", "lpp.agnss_List_element", FT_NONE, BASE_NONE, NULL, 0, "GNSS_ID_Bitmap", HFILL }}, + { &hf_lpp_ha_GNSS_Metrics_r17, + { "ha-GNSS-Metrics-r17", "lpp.ha_GNSS_Metrics_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_nrOfUsedSatellites_r17, + { "nrOfUsedSatellites-r17", "lpp.nrOfUsedSatellites_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_64", HFILL }}, + { &hf_lpp_hdopi_r17, + { "hdopi-r17", "lpp.hdopi_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_256", HFILL }}, + { &hf_lpp_pdopi_r17, + { "pdopi-r17", "lpp.pdopi_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_256", HFILL }}, + { &hf_lpp_age_r17, + { "age-r17", "lpp.age_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_99", HFILL }}, + { &hf_lpp_fixType_r17, + { "fixType-r17", "lpp.fixType_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_fixType_r17_vals), 0, + NULL, HFILL }}, { &hf_lpp_gnss_PositioningInstructions, { "gnss-PositioningInstructions", "lpp.gnss_PositioningInstructions_element", FT_NONE, BASE_NONE, NULL, 0, @@ -33515,6 +41082,10 @@ void proto_register_lpp(void) { { "ha-GNSS-Req-r15", "lpp.ha_GNSS_Req_r15", FT_UINT32, BASE_DEC, VALS(lpp_T_ha_GNSS_Req_r15_vals), 0, NULL, HFILL }}, + { &hf_lpp_ha_GNSS_MetricsReq_r17, + { "ha-GNSS-MetricsReq-r17", "lpp.ha_GNSS_MetricsReq_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_ha_GNSS_MetricsReq_r17_vals), 0, + NULL, HFILL }}, { &hf_lpp_gnss_SupportList, { "gnss-SupportList", "lpp.gnss_SupportList", FT_UINT32, BASE_DEC, NULL, 0, @@ -33535,6 +41106,10 @@ void proto_register_lpp(void) { { "periodicAssistanceData-r15", "lpp.periodicAssistanceData_r15", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_scheduledLocationRequestSupported_r17_01, + { "scheduledLocationRequestSupported-r17", "lpp.scheduledLocationRequestSupported_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "ScheduledLocationTimeSupportPerMode_r17", HFILL }}, { &hf_lpp_GNSS_SupportList_item, { "GNSS-SupportElement", "lpp.GNSS_SupportElement_element", FT_NONE, BASE_NONE, NULL, 0, @@ -33579,6 +41154,10 @@ void proto_register_lpp(void) { { "ha-gnss-Modes-r15", "lpp.ha_gnss_Modes_r15_element", FT_NONE, BASE_NONE, NULL, 0, "PositioningModes", HFILL }}, + { &hf_lpp_ha_gnss_MetricsSupport_r17, + { "ha-gnss-MetricsSupport-r17", "lpp.ha_gnss_MetricsSupport_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_ha_gnss_MetricsSupport_r17_vals), 0, + "T_ha_gnss_MetricsSupport_r17", HFILL }}, { &hf_lpp_gnss_CommonAssistanceDataSupport, { "gnss-CommonAssistanceDataSupport", "lpp.gnss_CommonAssistanceDataSupport_element", FT_NONE, BASE_NONE, NULL, 0, @@ -33611,6 +41190,14 @@ void proto_register_lpp(void) { { "gnss-RTK-AuxiliaryStationDataSupport-r15", "lpp.gnss_RTK_AuxiliaryStationDataSupport_r15_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_gnss_Integrity_ServiceParametersSupport_r17, + { "gnss-Integrity-ServiceParametersSupport-r17", "lpp.gnss_Integrity_ServiceParametersSupport_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_gnss_Integrity_ServiceAlertSupport_r17, + { "gnss-Integrity-ServiceAlertSupport-r17", "lpp.gnss_Integrity_ServiceAlertSupport_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_gnss_SystemTime_01, { "gnss-SystemTime", "lpp.gnss_SystemTime_element", FT_NONE, BASE_NONE, NULL, 0, @@ -33767,14 +41354,42 @@ void proto_register_lpp(void) { { "link-combinations-support-r15", "lpp.link_combinations_support_r15", FT_UINT32, BASE_DEC, NULL, 0, "GNSS_Link_CombinationsList_r15", HFILL }}, + { &hf_lpp_orbit_IntegritySup_r17, + { "orbit-IntegritySup-r17", "lpp.orbit_IntegritySup_r17", + FT_BYTES, BASE_NONE, NULL, 0, + "T_orbit_IntegritySup_r17", HFILL }}, + { &hf_lpp_clock_IntegrityParameterSupport_r17, + { "clock-IntegrityParameterSupport-r17", "lpp.clock_IntegrityParameterSupport_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_clock_IntegrityParameterSupport_r17_vals), 0, + "T_clock_IntegrityParameterSupport_r17", HFILL }}, + { &hf_lpp_ssr_IntegrityClockBoundsSupport_r17, + { "ssr-IntegrityClockBoundsSupport-r17", "lpp.ssr_IntegrityClockBoundsSupport_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_ssr_IntegrityClockBoundsSupport_r17_vals), 0, + "T_ssr_IntegrityClockBoundsSupport_r17", HFILL }}, { &hf_lpp_signal_and_tracking_mode_ID_Sup_r15, { "signal-and-tracking-mode-ID-Sup-r15", "lpp.signal_and_tracking_mode_ID_Sup_r15_element", FT_NONE, BASE_NONE, NULL, 0, "GNSS_SignalIDs", HFILL }}, + { &hf_lpp_ssr_IntegrityCodeBiasBoundsSup_r17, + { "ssr-IntegrityCodeBiasBoundsSup-r17", "lpp.ssr_IntegrityCodeBiasBoundsSup_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_ssr_IntegrityCodeBiasBoundsSup_r17_vals), 0, + NULL, HFILL }}, { &hf_lpp_signal_and_tracking_mode_ID_Sup_r16, { "signal-and-tracking-mode-ID-Sup-r16", "lpp.signal_and_tracking_mode_ID_Sup_r16_element", FT_NONE, BASE_NONE, NULL, 0, "GNSS_SignalIDs", HFILL }}, + { &hf_lpp_ssr_IntegrityPhaseBiasBoundsSup_r17, + { "ssr-IntegrityPhaseBiasBoundsSup-r17", "lpp.ssr_IntegrityPhaseBiasBoundsSup_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_ssr_IntegrityPhaseBiasBoundsSup_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_stec_IntegritySup_r17, + { "stec-IntegritySup-r17", "lpp.stec_IntegritySup_r17", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_griddedCorrectionIntegritySup_r17, + { "griddedCorrectionIntegritySup-r17", "lpp.griddedCorrectionIntegritySup_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_griddedCorrectionIntegritySup_r17_vals), 0, + NULL, HFILL }}, { &hf_lpp_gnssSignalIDs_r16, { "gnssSignalIDs-r16", "lpp.gnssSignalIDs_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -34807,6 +42422,10 @@ void proto_register_lpp(void) { { "nr-UL-SRS-Capability-r16", "lpp.nr_UL_SRS_Capability_r16_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_nr_UE_TEG_Capability_r17, + { "nr-UE-TEG-Capability-r17", "lpp.nr_UE_TEG_Capability_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_nr_ECID_SignalMeasurementInformation_r16, { "nr-ECID-SignalMeasurementInformation-r16", "lpp.nr_ECID_SignalMeasurementInformation_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -34899,6 +42518,10 @@ void proto_register_lpp(void) { { "triggeredReporting-r16", "lpp.triggeredReporting_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_triggeredReporting_r16_vals), 0, NULL, HFILL }}, + { &hf_lpp_ten_ms_unit_ResponseTime_r17, + { "ten-ms-unit-ResponseTime-r17", "lpp.ten_ms_unit_ResponseTime_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_ten_ms_unit_ResponseTime_r17_vals), 0, + "T_ten_ms_unit_ResponseTime_r17", HFILL }}, { &hf_lpp_locationServerErrorCauses_r16, { "locationServerErrorCauses-r16", "lpp.locationServerErrorCauses_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -34947,10 +42570,38 @@ void proto_register_lpp(void) { { "nr-DL-TDOA-Error-r16", "lpp.nr_DL_TDOA_Error_r16", FT_UINT32, BASE_DEC, VALS(lpp_NR_DL_TDOA_Error_r16_vals), 0, NULL, HFILL }}, + { &hf_lpp_nr_On_Demand_DL_PRS_Configurations_r17, + { "nr-On-Demand-DL-PRS-Configurations-r17", "lpp.nr_On_Demand_DL_PRS_Configurations_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_nr_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17, + { "nr-On-Demand-DL-PRS-Configurations-Selected-IndexList-r17", "lpp.nr_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_assistanceDataValidityArea_r17, + { "assistanceDataValidityArea-r17", "lpp.assistanceDataValidityArea_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "AreaID_CellList_r17", HFILL }}, { &hf_lpp_nr_AdType_r16, { "nr-AdType-r16", "lpp.nr_AdType_r16", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_nr_PosCalcAssistanceRequest_r17, + { "nr-PosCalcAssistanceRequest-r17", "lpp.nr_PosCalcAssistanceRequest_r17", + FT_BYTES, BASE_NONE, NULL, 0, + "T_nr_PosCalcAssistanceRequest_r17", HFILL }}, + { &hf_lpp_nr_on_demand_DL_PRS_Request_r17, + { "nr-on-demand-DL-PRS-Request-r17", "lpp.nr_on_demand_DL_PRS_Request_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17, + { "nr-DL-PRS-ExpectedAoD-or-AoA-Request-r17", "lpp.nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_vals), 0, + "T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17", HFILL }}, + { &hf_lpp_pre_configured_AssistanceDataRequest_r17, + { "pre-configured-AssistanceDataRequest-r17", "lpp.pre_configured_AssistanceDataRequest_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_pre_configured_AssistanceDataRequest_r17_vals), 0, + "T_pre_configured_AssistanceDataRequest_r17", HFILL }}, { &hf_lpp_nr_DL_TDOA_SignalMeasurementInformation_r16, { "nr-DL-TDOA-SignalMeasurementInformation-r16", "lpp.nr_DL_TDOA_SignalMeasurementInformation_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -34959,6 +42610,22 @@ void proto_register_lpp(void) { { "nr-dl-tdoa-LocationInformation-r16", "lpp.nr_dl_tdoa_LocationInformation_r16_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_nr_DL_TDOA_SignalMeasurementInstances_r17, + { "nr-DL-TDOA-SignalMeasurementInstances-r17", "lpp.nr_DL_TDOA_SignalMeasurementInstances_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_SignalMeasurementInformation_r16", HFILL }}, + { &hf_lpp_nr_DL_TDOA_SignalMeasurementInstances_r17_item, + { "NR-DL-TDOA-SignalMeasurementInformation-r16", "lpp.NR_DL_TDOA_SignalMeasurementInformation_r16_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_nr_DL_TDOA_LocationInformationInstances_r17, + { "nr-DL-TDOA-LocationInformationInstances-r17", "lpp.nr_DL_TDOA_LocationInformationInstances_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_LocationInformation_r16", HFILL }}, + { &hf_lpp_nr_DL_TDOA_LocationInformationInstances_r17_item, + { "NR-DL-TDOA-LocationInformation-r16", "lpp.NR_DL_TDOA_LocationInformation_r16_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_dl_PRS_ReferenceInfo_r16, { "dl-PRS-ReferenceInfo-r16", "lpp.dl_PRS_ReferenceInfo_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -35019,10 +42686,42 @@ void proto_register_lpp(void) { { "nr-DL-TDOA-AdditionalMeasurements-r16", "lpp.nr_DL_TDOA_AdditionalMeasurements_r16", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lpp_nr_UE_Rx_TEG_ID_r17, + { "nr-UE-Rx-TEG-ID-r17", "lpp.nr_UE_Rx_TEG_ID_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_maxNumOfRxTEGs_1_r17", HFILL }}, + { &hf_lpp_nr_DL_PRS_FirstPathRSRP_Result_r17, + { "nr-DL-PRS-FirstPathRSRP-Result-r17", "lpp.nr_DL_PRS_FirstPathRSRP_Result_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_126", HFILL }}, + { &hf_lpp_nr_los_nlos_Indicator_r17, + { "nr-los-nlos-Indicator-r17", "lpp.nr_los_nlos_Indicator_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nr_los_nlos_Indicator_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_perTRP_r17, + { "perTRP-r17", "lpp.perTRP_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "LOS_NLOS_Indicator_r17", HFILL }}, + { &hf_lpp_perResource_r17_01, + { "perResource-r17", "lpp.perResource_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "LOS_NLOS_Indicator_r17", HFILL }}, + { &hf_lpp_nr_AdditionalPathListExt_r17, + { "nr-AdditionalPathListExt-r17", "lpp.nr_AdditionalPathListExt_r17", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_nr_DL_TDOA_AdditionalMeasurementsExt_r17, + { "nr-DL-TDOA-AdditionalMeasurementsExt-r17", "lpp.nr_DL_TDOA_AdditionalMeasurementsExt_r17", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lpp_NR_DL_TDOA_AdditionalMeasurements_r16_item, { "NR-DL-TDOA-AdditionalMeasurementElement-r16", "lpp.NR_DL_TDOA_AdditionalMeasurementElement_r16_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_NR_DL_TDOA_AdditionalMeasurementsExt_r17_item, + { "NR-DL-TDOA-AdditionalMeasurementElement-r16", "lpp.NR_DL_TDOA_AdditionalMeasurementElement_r16_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_nr_RSTD_ResultDiff_r16, { "nr-RSTD-ResultDiff-r16", "lpp.nr_RSTD_ResultDiff_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_nr_RSTD_ResultDiff_r16_vals), 0, @@ -35055,6 +42754,14 @@ void proto_register_lpp(void) { { "nr-DL-PRS-RSRP-ResultDiff-r16", "lpp.nr_DL_PRS_RSRP_ResultDiff_r16", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_61", HFILL }}, + { &hf_lpp_nr_DL_PRS_FirstPathRSRP_ResultDiff_r17, + { "nr-DL-PRS-FirstPathRSRP-ResultDiff-r17", "lpp.nr_DL_PRS_FirstPathRSRP_ResultDiff_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_61", HFILL }}, + { &hf_lpp_nr_los_nlos_IndicatorPerResource_r17, + { "nr-los-nlos-IndicatorPerResource-r17", "lpp.nr_los_nlos_IndicatorPerResource_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "LOS_NLOS_Indicator_r17", HFILL }}, { &hf_lpp_measurementReferenceTime_r16, { "measurementReferenceTime-r16", "lpp.measurementReferenceTime_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_measurementReferenceTime_r16_vals), 0, @@ -35067,6 +42774,14 @@ void proto_register_lpp(void) { { "utc-time-r16", "lpp.utc_time_r16", FT_STRING, BASE_NONE, NULL, 0, "UTCTime", HFILL }}, + { &hf_lpp_locationCoordinates_r17, + { "locationCoordinates-r17", "lpp.locationCoordinates_r17", + FT_UINT32, BASE_DEC, VALS(lpp_LocationCoordinates_vals), 0, + "LocationCoordinates", HFILL }}, + { &hf_lpp_locationSource_r17, + { "locationSource-r17", "lpp.locationSource_r17", + FT_BYTES, BASE_NONE, NULL, 0, + "LocationSource_r13", HFILL }}, { &hf_lpp_nr_DL_PRS_RstdMeasurementInfoRequest_r16, { "nr-DL-PRS-RstdMeasurementInfoRequest-r16", "lpp.nr_DL_PRS_RstdMeasurementInfoRequest_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_nr_DL_PRS_RstdMeasurementInfoRequest_r16_vals), 0, @@ -35087,6 +42802,34 @@ void proto_register_lpp(void) { { "additionalPaths-r16", "lpp.additionalPaths_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_additionalPaths_r16_vals), 0, NULL, HFILL }}, + { &hf_lpp_nr_UE_RxTEG_Request_r17, + { "nr-UE-RxTEG-Request-r17", "lpp.nr_UE_RxTEG_Request_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nr_UE_RxTEG_Request_r17_vals), 0, + "T_nr_UE_RxTEG_Request_r17", HFILL }}, + { &hf_lpp_nr_los_nlos_IndicatorRequest_r17, + { "nr-los-nlos-IndicatorRequest-r17", "lpp.nr_los_nlos_IndicatorRequest_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nr_los_nlos_IndicatorRequest_r17", HFILL }}, + { &hf_lpp_type_r17, + { "type-r17", "lpp.type_r17", + FT_UINT32, BASE_DEC, VALS(lpp_LOS_NLOS_IndicatorType1_r17_vals), 0, + "LOS_NLOS_IndicatorType1_r17", HFILL }}, + { &hf_lpp_granularity_r17, + { "granularity-r17", "lpp.granularity_r17", + FT_UINT32, BASE_DEC, VALS(lpp_LOS_NLOS_IndicatorGranularity1_r17_vals), 0, + "LOS_NLOS_IndicatorGranularity1_r17", HFILL }}, + { &hf_lpp_additionalPathsExt_r17, + { "additionalPathsExt-r17", "lpp.additionalPathsExt_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_additionalPathsExt_r17_vals), 0, + "T_additionalPathsExt_r17", HFILL }}, + { &hf_lpp_additionalPathsDL_PRS_RSRP_Request_r17, + { "additionalPathsDL-PRS-RSRP-Request-r17", "lpp.additionalPathsDL_PRS_RSRP_Request_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_additionalPathsDL_PRS_RSRP_Request_r17_vals), 0, + "T_additionalPathsDL_PRS_RSRP_Request_r17", HFILL }}, + { &hf_lpp_multiMeasInSameReport_r17, + { "multiMeasInSameReport-r17", "lpp.multiMeasInSameReport_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_multiMeasInSameReport_r17_vals), 0, + "T_multiMeasInSameReport_r17", HFILL }}, { &hf_lpp_maxDL_PRS_RSTD_MeasurementsPerTRPPair_r16, { "maxDL-PRS-RSTD-MeasurementsPerTRPPair-r16", "lpp.maxDL_PRS_RSTD_MeasurementsPerTRPPair_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -35095,6 +42838,18 @@ void proto_register_lpp(void) { { "timingReportingGranularityFactor-r16", "lpp.timingReportingGranularityFactor_r16", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_5", HFILL }}, + { &hf_lpp_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_01, + { "measureSameDL-PRS-ResourceWithDifferentRxTEGs-r17", "lpp.measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_01_vals), 0, + "T_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_01", HFILL }}, + { &hf_lpp_requestedDL_PRS_ProcessingSamples_r17, + { "requestedDL-PRS-ProcessingSamples-r17", "lpp.requestedDL_PRS_ProcessingSamples_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_requestedDL_PRS_ProcessingSamples_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_lowerRxBeamSweepingThan8_FR2_r17_01, + { "lowerRxBeamSweepingThan8-FR2-r17", "lpp.lowerRxBeamSweepingThan8_FR2_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_lowerRxBeamSweepingThan8_FR2_r17_01_vals), 0, + "T_lowerRxBeamSweepingThan8_FR2_r17_01", HFILL }}, { &hf_lpp_nr_DL_TDOA_Mode_r16, { "nr-DL-TDOA-Mode-r16", "lpp.nr_DL_TDOA_Mode_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -35123,6 +42878,58 @@ void proto_register_lpp(void) { { "periodicalReporting-r16", "lpp.periodicalReporting_r16_element", FT_NONE, BASE_NONE, NULL, 0, "PositioningModes", HFILL }}, + { &hf_lpp_ten_ms_unit_ResponseTime_r17_01, + { "ten-ms-unit-ResponseTime-r17", "lpp.ten_ms_unit_ResponseTime_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "PositioningModes", HFILL }}, + { &hf_lpp_nr_PosCalcAssistanceSupport_r17, + { "nr-PosCalcAssistanceSupport-r17", "lpp.nr_PosCalcAssistanceSupport_r17", + FT_BYTES, BASE_NONE, NULL, 0, + "T_nr_PosCalcAssistanceSupport_r17", HFILL }}, + { &hf_lpp_nr_los_nlos_AssistanceDataSupport_r17, + { "nr-los-nlos-AssistanceDataSupport-r17", "lpp.nr_los_nlos_AssistanceDataSupport_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nr_los_nlos_AssistanceDataSupport_r17", HFILL }}, + { &hf_lpp_type_r17_01, + { "type-r17", "lpp.type_r17", + FT_UINT32, BASE_DEC, VALS(lpp_LOS_NLOS_IndicatorType2_r17_vals), 0, + "LOS_NLOS_IndicatorType2_r17", HFILL }}, + { &hf_lpp_granularity_r17_01, + { "granularity-r17", "lpp.granularity_r17", + FT_UINT32, BASE_DEC, VALS(lpp_LOS_NLOS_IndicatorGranularity2_r17_vals), 0, + "LOS_NLOS_IndicatorGranularity2_r17", HFILL }}, + { &hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17, + { "nr-DL-PRS-ExpectedAoD-or-AoA-Sup-r17", "lpp.nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_nr_DL_TDOA_On_Demand_DL_PRS_Support_r17, + { "nr-DL-TDOA-On-Demand-DL-PRS-Support-r17", "lpp.nr_DL_TDOA_On_Demand_DL_PRS_Support_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "NR_On_Demand_DL_PRS_Support_r17", HFILL }}, + { &hf_lpp_nr_los_nlos_IndicatorSupport_r17, + { "nr-los-nlos-IndicatorSupport-r17", "lpp.nr_los_nlos_IndicatorSupport_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nr_los_nlos_IndicatorSupport_r17", HFILL }}, + { &hf_lpp_additionalPathsExtSupport_r17, + { "additionalPathsExtSupport-r17", "lpp.additionalPathsExtSupport_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_additionalPathsExtSupport_r17_vals), 0, + "T_additionalPathsExtSupport_r17", HFILL }}, + { &hf_lpp_nr_dl_prs_AssistanceDataValidity_r17, + { "nr-dl-prs-AssistanceDataValidity-r17", "lpp.nr_dl_prs_AssistanceDataValidity_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_area_validity_r17, + { "area-validity-r17", "lpp.area_validity_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_maxNrOfAreas_r17", HFILL }}, + { &hf_lpp_multiMeasInSameMeasReport_r17, + { "multiMeasInSameMeasReport-r17", "lpp.multiMeasInSameMeasReport_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_multiMeasInSameMeasReport_r17_vals), 0, + "T_multiMeasInSameMeasReport_r17", HFILL }}, + { &hf_lpp_mg_ActivationRequest_r17, + { "mg-ActivationRequest-r17", "lpp.mg_ActivationRequest_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_mg_ActivationRequest_r17_vals), 0, + "T_mg_ActivationRequest_r17", HFILL }}, { &hf_lpp_dl_RSTD_MeasurementPerPairOfTRP_FR1_r16, { "dl-RSTD-MeasurementPerPairOfTRP-FR1-r16", "lpp.dl_RSTD_MeasurementPerPairOfTRP_FR1_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -35139,6 +42946,22 @@ void proto_register_lpp(void) { { "supportOfDL-PRS-RSRP-MeasFR2-r16", "lpp.supportOfDL_PRS_RSRP_MeasFR2_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_supportOfDL_PRS_RSRP_MeasFR2_r16_vals), 0, NULL, HFILL }}, + { &hf_lpp_dl_tdoa_MeasCapabilityBandList_r17, + { "dl-tdoa-MeasCapabilityBandList-r17", "lpp.dl_tdoa_MeasCapabilityBandList_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_nrMaxBands_r16_OF_DL_TDOA_MeasCapabilityPerBand_r17", HFILL }}, + { &hf_lpp_dl_tdoa_MeasCapabilityBandList_r17_item, + { "DL-TDOA-MeasCapabilityPerBand-r17", "lpp.DL_TDOA_MeasCapabilityPerBand_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_supportOfDL_PRS_FirstPathRSRP_r17, + { "supportOfDL-PRS-FirstPathRSRP-r17", "lpp.supportOfDL_PRS_FirstPathRSRP_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_supportOfDL_PRS_FirstPathRSRP_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_dl_PRS_MeasRRC_Inactive_r17, + { "dl-PRS-MeasRRC-Inactive-r17", "lpp.dl_PRS_MeasRRC_Inactive_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_dl_PRS_MeasRRC_Inactive_r17_vals), 0, + NULL, HFILL }}, { &hf_lpp_locationServerErrorCauses_r16_01, { "locationServerErrorCauses-r16", "lpp.locationServerErrorCauses_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -35159,10 +42982,30 @@ void proto_register_lpp(void) { { "nr-DL-AoD-Error-r16", "lpp.nr_DL_AoD_Error_r16", FT_UINT32, BASE_DEC, VALS(lpp_NR_DL_AoD_Error_r16_vals), 0, NULL, HFILL }}, + { &hf_lpp_nr_DL_PRS_BeamInfo_r17, + { "nr-DL-PRS-BeamInfo-r17", "lpp.nr_DL_PRS_BeamInfo_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "NR_DL_PRS_BeamInfo_r16", HFILL }}, { &hf_lpp_nr_AdType_r16_01, { "nr-AdType-r16", "lpp.nr_AdType_r16", FT_BYTES, BASE_NONE, NULL, 0, "T_nr_AdType_r16_01", HFILL }}, + { &hf_lpp_nr_PosCalcAssistanceRequest_r17_01, + { "nr-PosCalcAssistanceRequest-r17", "lpp.nr_PosCalcAssistanceRequest_r17", + FT_BYTES, BASE_NONE, NULL, 0, + "T_nr_PosCalcAssistanceRequest_r17_01", HFILL }}, + { &hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_01, + { "nr-DL-PRS-ExpectedAoD-or-AoA-Request-r17", "lpp.nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_01_vals), 0, + "T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_01", HFILL }}, + { &hf_lpp_nr_DL_PRS_BeamInfoRequest_r17, + { "nr-DL-PRS-BeamInfoRequest-r17", "lpp.nr_DL_PRS_BeamInfoRequest_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nr_DL_PRS_BeamInfoRequest_r17_vals), 0, + "T_nr_DL_PRS_BeamInfoRequest_r17", HFILL }}, + { &hf_lpp_pre_configured_AssistanceDataRequest_r17_01, + { "pre-configured-AssistanceDataRequest-r17", "lpp.pre_configured_AssistanceDataRequest_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_pre_configured_AssistanceDataRequest_r17_01_vals), 0, + "T_pre_configured_AssistanceDataRequest_r17_01", HFILL }}, { &hf_lpp_nr_DL_AoD_SignalMeasurementInformation_r16, { "nr-DL-AoD-SignalMeasurementInformation-r16", "lpp.nr_DL_AoD_SignalMeasurementInformation_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -35171,6 +43014,22 @@ void proto_register_lpp(void) { { "nr-dl-AoD-LocationInformation-r16", "lpp.nr_dl_AoD_LocationInformation_r16_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_nr_DL_AoD_SignalMeasurementInstances_r17, + { "nr-DL-AoD-SignalMeasurementInstances-r17", "lpp.nr_DL_AoD_SignalMeasurementInstances_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_SignalMeasurementInformation_r16", HFILL }}, + { &hf_lpp_nr_DL_AoD_SignalMeasurementInstances_r17_item, + { "NR-DL-AoD-SignalMeasurementInformation-r16", "lpp.NR_DL_AoD_SignalMeasurementInformation_r16_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_nr_DL_AoD_LocationInformationInstances_r17, + { "nr-DL-AoD-LocationInformationInstances-r17", "lpp.nr_DL_AoD_LocationInformationInstances_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_LocationInformation_r16", HFILL }}, + { &hf_lpp_nr_DL_AoD_LocationInformationInstances_r17_item, + { "NR-DL-AoD-LocationInformation-r16", "lpp.NR_DL_AoD_LocationInformation_r16_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_nr_DL_AoD_MeasList_r16, { "nr-DL-AoD-MeasList-r16", "lpp.nr_DL_AoD_MeasList_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -35187,14 +43046,42 @@ void proto_register_lpp(void) { { "nr-DL-AoD-AdditionalMeasurements-r16", "lpp.nr_DL_AoD_AdditionalMeasurements_r16", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lpp_nr_los_nlos_Indicator_r17_01, + { "nr-los-nlos-Indicator-r17", "lpp.nr_los_nlos_Indicator_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nr_los_nlos_Indicator_r17_01_vals), 0, + "T_nr_los_nlos_Indicator_r17_01", HFILL }}, + { &hf_lpp_nr_DL_AoD_AdditionalMeasurementsExt_r17, + { "nr-DL-AoD-AdditionalMeasurementsExt-r17", "lpp.nr_DL_AoD_AdditionalMeasurementsExt_r17", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lpp_NR_DL_AoD_AdditionalMeasurements_r16_item, { "NR-DL-AoD-AdditionalMeasurementElement-r16", "lpp.NR_DL_AoD_AdditionalMeasurementElement_r16_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_NR_DL_AoD_AdditionalMeasurementsExt_r17_item, + { "NR-DL-AoD-AdditionalMeasurementElement-r17", "lpp.NR_DL_AoD_AdditionalMeasurementElement_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_nr_DL_PRS_RSRP_ResultDiff_r16_01, { "nr-DL-PRS-RSRP-ResultDiff-r16", "lpp.nr_DL_PRS_RSRP_ResultDiff_r16", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_30", HFILL }}, + { &hf_lpp_nr_DL_PRS_ResourceID_r17, + { "nr-DL-PRS-ResourceID-r17", "lpp.nr_DL_PRS_ResourceID_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "NR_DL_PRS_ResourceID_r16", HFILL }}, + { &hf_lpp_nr_TimeStamp_r17, + { "nr-TimeStamp-r17", "lpp.nr_TimeStamp_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "NR_TimeStamp_r16", HFILL }}, + { &hf_lpp_nr_DL_PRS_RSRP_ResultDiff_r17, + { "nr-DL-PRS-RSRP-ResultDiff-r17", "lpp.nr_DL_PRS_RSRP_ResultDiff_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_30", HFILL }}, + { &hf_lpp_nr_DL_PRS_RxBeamIndex_r17, + { "nr-DL-PRS-RxBeamIndex-r17", "lpp.nr_DL_PRS_RxBeamIndex_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_8", HFILL }}, { &hf_lpp_measurementReferenceTime_r16_01, { "measurementReferenceTime-r16", "lpp.measurementReferenceTime_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_measurementReferenceTime_r16_01_vals), 0, @@ -35207,10 +43094,34 @@ void proto_register_lpp(void) { { "nr-DL-AoD-ReportConfig-r16", "lpp.nr_DL_AoD_ReportConfig_r16_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_multiMeasInSameReport_r17_01, + { "multiMeasInSameReport-r17", "lpp.multiMeasInSameReport_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_multiMeasInSameReport_r17_01_vals), 0, + "T_multiMeasInSameReport_r17_01", HFILL }}, { &hf_lpp_maxDL_PRS_RSRP_MeasurementsPerTRP_r16, { "maxDL-PRS-RSRP-MeasurementsPerTRP-r16", "lpp.maxDL_PRS_RSRP_MeasurementsPerTRP_r16", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_1_8", HFILL }}, + { &hf_lpp_maxDL_PRS_RSRP_MeasurementsPerTRP_r17, + { "maxDL-PRS-RSRP-MeasurementsPerTRP-r17", "lpp.maxDL_PRS_RSRP_MeasurementsPerTRP_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_9_24", HFILL }}, + { &hf_lpp_maxDL_PRS_RSRPP_MeasurementsPerTRP_r17, + { "maxDL-PRS-RSRPP-MeasurementsPerTRP-r17", "lpp.maxDL_PRS_RSRPP_MeasurementsPerTRP_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_24", HFILL }}, + { &hf_lpp_nr_los_nlos_IndicatorRequest_r17_01, + { "nr-los-nlos-IndicatorRequest-r17", "lpp.nr_los_nlos_IndicatorRequest_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nr_los_nlos_IndicatorRequest_r17_01", HFILL }}, + { &hf_lpp_requestedDL_PRS_ProcessingSamples_r17_01, + { "requestedDL-PRS-ProcessingSamples-r17", "lpp.requestedDL_PRS_ProcessingSamples_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_requestedDL_PRS_ProcessingSamples_r17_01_vals), 0, + "T_requestedDL_PRS_ProcessingSamples_r17_01", HFILL }}, + { &hf_lpp_lowerRxBeamSweepingThan8_FR2_r17_02, + { "lowerRxBeamSweepingThan8-FR2-r17", "lpp.lowerRxBeamSweepingThan8_FR2_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_lowerRxBeamSweepingThan8_FR2_r17_02_vals), 0, + "T_lowerRxBeamSweepingThan8_FR2_r17_02", HFILL }}, { &hf_lpp_nr_DL_AoD_Mode_r16, { "nr-DL-AoD-Mode-r16", "lpp.nr_DL_AoD_Mode_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -35223,6 +43134,46 @@ void proto_register_lpp(void) { { "nr-DL-AoD-MeasurementCapability-r16", "lpp.nr_DL_AoD_MeasurementCapability_r16_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_nr_PosCalcAssistanceSupport_r17_01, + { "nr-PosCalcAssistanceSupport-r17", "lpp.nr_PosCalcAssistanceSupport_r17", + FT_BYTES, BASE_NONE, NULL, 0, + "T_nr_PosCalcAssistanceSupport_r17_01", HFILL }}, + { &hf_lpp_nr_los_nlos_AssistanceDataSupport_r17_01, + { "nr-los-nlos-AssistanceDataSupport-r17", "lpp.nr_los_nlos_AssistanceDataSupport_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nr_los_nlos_AssistanceDataSupport_r17_01", HFILL }}, + { &hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_01, + { "nr-DL-PRS-ExpectedAoD-or-AoA-Sup-r17", "lpp.nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17", + FT_BYTES, BASE_NONE, NULL, 0, + "T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_01", HFILL }}, + { &hf_lpp_nr_DL_PRS_BeamInfoSup_r17, + { "nr-DL-PRS-BeamInfoSup-r17", "lpp.nr_DL_PRS_BeamInfoSup_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nr_DL_PRS_BeamInfoSup_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_dl_PRS_ResourcePrioritySubset_Sup_r17, + { "dl-PRS-ResourcePrioritySubset-Sup-r17", "lpp.dl_PRS_ResourcePrioritySubset_Sup_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_dl_PRS_ResourcePrioritySubset_Sup_r17_vals), 0, + "T_dl_PRS_ResourcePrioritySubset_Sup_r17", HFILL }}, + { &hf_lpp_nr_DL_AoD_On_Demand_DL_PRS_Support_r17, + { "nr-DL-AoD-On-Demand-DL-PRS-Support-r17", "lpp.nr_DL_AoD_On_Demand_DL_PRS_Support_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "NR_On_Demand_DL_PRS_Support_r17", HFILL }}, + { &hf_lpp_nr_los_nlos_IndicatorSupport_r17_01, + { "nr-los-nlos-IndicatorSupport-r17", "lpp.nr_los_nlos_IndicatorSupport_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nr_los_nlos_IndicatorSupport_r17_01", HFILL }}, + { &hf_lpp_nr_dl_prs_AssistanceDataValidity_r17_01, + { "nr-dl-prs-AssistanceDataValidity-r17", "lpp.nr_dl_prs_AssistanceDataValidity_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nr_dl_prs_AssistanceDataValidity_r17_01", HFILL }}, + { &hf_lpp_multiMeasInSameMeasReport_r17_01, + { "multiMeasInSameMeasReport-r17", "lpp.multiMeasInSameMeasReport_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_multiMeasInSameMeasReport_r17_01_vals), 0, + "T_multiMeasInSameMeasReport_r17_01", HFILL }}, + { &hf_lpp_mg_ActivationRequest_r17_01, + { "mg-ActivationRequest-r17", "lpp.mg_ActivationRequest_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_mg_ActivationRequest_r17_01_vals), 0, + "T_mg_ActivationRequest_r17_01", HFILL }}, { &hf_lpp_maxDL_PRS_RSRP_MeasurementFR1_r16, { "maxDL-PRS-RSRP-MeasurementFR1-r16", "lpp.maxDL_PRS_RSRP_MeasurementFR1_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -35239,6 +43190,14 @@ void proto_register_lpp(void) { { "DL-AoD-MeasCapabilityPerBand-r16", "lpp.DL_AoD_MeasCapabilityPerBand_r16_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_maxDL_PRS_RSRP_MeasurementFR1_r17, + { "maxDL-PRS-RSRP-MeasurementFR1-r17", "lpp.maxDL_PRS_RSRP_MeasurementFR1_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxDL_PRS_RSRP_MeasurementFR1_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_maxDL_PRS_RSRP_MeasurementFR2_r17, + { "maxDL-PRS-RSRP-MeasurementFR2-r17", "lpp.maxDL_PRS_RSRP_MeasurementFR2_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxDL_PRS_RSRP_MeasurementFR2_r17_vals), 0, + NULL, HFILL }}, { &hf_lpp_simul_NR_DL_AoD_DL_TDOA_r16, { "simul-NR-DL-AoD-DL-TDOA-r16", "lpp.simul_NR_DL_AoD_DL_TDOA_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_simul_NR_DL_AoD_DL_TDOA_r16_vals), 0, @@ -35247,6 +43206,14 @@ void proto_register_lpp(void) { { "simul-NR-DL-AoD-Multi-RTT-r16", "lpp.simul_NR_DL_AoD_Multi_RTT_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_simul_NR_DL_AoD_Multi_RTT_r16_vals), 0, "T_simul_NR_DL_AoD_Multi_RTT_r16", HFILL }}, + { &hf_lpp_maxDL_PRS_FirstPathRSRP_MeasPerTRP_r17, + { "maxDL-PRS-FirstPathRSRP-MeasPerTRP-r17", "lpp.maxDL_PRS_FirstPathRSRP_MeasPerTRP_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_maxDL_PRS_FirstPathRSRP_MeasPerTRP_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_dl_PRS_MeasRRC_Inactive_r17_01, + { "dl-PRS-MeasRRC-Inactive-r17", "lpp.dl_PRS_MeasRRC_Inactive_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_dl_PRS_MeasRRC_Inactive_r17_01_vals), 0, + "T_dl_PRS_MeasRRC_Inactive_r17_01", HFILL }}, { &hf_lpp_locationServerErrorCauses_r16_02, { "locationServerErrorCauses-r16", "lpp.locationServerErrorCauses_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -35271,10 +43238,26 @@ void proto_register_lpp(void) { { "nr-AdType-r16", "lpp.nr_AdType_r16", FT_BYTES, BASE_NONE, NULL, 0, "T_nr_AdType_r16_02", HFILL }}, + { &hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_02, + { "nr-DL-PRS-ExpectedAoD-or-AoA-Request-r17", "lpp.nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_02_vals), 0, + "T_nr_DL_PRS_ExpectedAoD_or_AoA_Request_r17_02", HFILL }}, + { &hf_lpp_pre_configured_AssistanceDataRequest_r17_02, + { "pre-configured-AssistanceDataRequest-r17", "lpp.pre_configured_AssistanceDataRequest_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_pre_configured_AssistanceDataRequest_r17_02_vals), 0, + "T_pre_configured_AssistanceDataRequest_r17_02", HFILL }}, { &hf_lpp_nr_Multi_RTT_SignalMeasurementInformation_r16, { "nr-Multi-RTT-SignalMeasurementInformation-r16", "lpp.nr_Multi_RTT_SignalMeasurementInformation_r16_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_nr_Multi_RTT_SignalMeasurementInstances_r17, + { "nr-Multi-RTT-SignalMeasurementInstances-r17", "lpp.nr_Multi_RTT_SignalMeasurementInstances_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_Multi_RTT_SignalMeasurementInformation_r16", HFILL }}, + { &hf_lpp_nr_Multi_RTT_SignalMeasurementInstances_r17_item, + { "NR-Multi-RTT-SignalMeasurementInformation-r16", "lpp.NR_Multi_RTT_SignalMeasurementInformation_r16_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_nr_Multi_RTT_MeasList_r16, { "nr-Multi-RTT-MeasList-r16", "lpp.nr_Multi_RTT_MeasList_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -35283,6 +43266,14 @@ void proto_register_lpp(void) { { "nr-NTA-Offset-r16", "lpp.nr_NTA_Offset_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_nr_NTA_Offset_r16_vals), 0, "T_nr_NTA_Offset_r16", HFILL }}, + { &hf_lpp_nr_SRS_TxTEG_Set_r17, + { "nr-SRS-TxTEG-Set-r17", "lpp.nr_SRS_TxTEG_Set_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxTxTEG_Sets_r17_OF_NR_SRS_TxTEG_Element_r17", HFILL }}, + { &hf_lpp_nr_SRS_TxTEG_Set_r17_item, + { "NR-SRS-TxTEG-Element-r17", "lpp.NR_SRS_TxTEG_Element_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_NR_Multi_RTT_MeasList_r16_item, { "NR-Multi-RTT-MeasElement-r16", "lpp.NR_Multi_RTT_MeasElement_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -35295,14 +43286,74 @@ void proto_register_lpp(void) { { "nr-Multi-RTT-AdditionalMeasurements-r16", "lpp.nr_Multi_RTT_AdditionalMeasurements_r16", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lpp_nr_UE_RxTx_TEG_Info_r17, + { "nr-UE-RxTx-TEG-Info-r17", "lpp.nr_UE_RxTx_TEG_Info_r17", + FT_UINT32, BASE_DEC, VALS(lpp_NR_UE_RxTx_TEG_Info_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_nr_los_nlos_Indicator_r17_02, + { "nr-los-nlos-Indicator-r17", "lpp.nr_los_nlos_Indicator_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nr_los_nlos_Indicator_r17_02_vals), 0, + "T_nr_los_nlos_Indicator_r17_02", HFILL }}, + { &hf_lpp_nr_Multi_RTT_AdditionalMeasurementsExt_r17, + { "nr-Multi-RTT-AdditionalMeasurementsExt-r17", "lpp.nr_Multi_RTT_AdditionalMeasurementsExt_r17", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lpp_NR_Multi_RTT_AdditionalMeasurements_r16_item, { "NR-Multi-RTT-AdditionalMeasurementElement-r16", "lpp.NR_Multi_RTT_AdditionalMeasurementElement_r16_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lpp_NR_Multi_RTT_AdditionalMeasurementsExt_r17_item, + { "NR-Multi-RTT-AdditionalMeasurementElement-r16", "lpp.NR_Multi_RTT_AdditionalMeasurementElement_r16_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_nr_UE_RxTxTimeDiffAdditional_r16, { "nr-UE-RxTxTimeDiffAdditional-r16", "lpp.nr_UE_RxTxTimeDiffAdditional_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_nr_UE_RxTxTimeDiffAdditional_r16_vals), 0, NULL, HFILL }}, + { &hf_lpp_nr_UE_Tx_TEG_ID_r17, + { "nr-UE-Tx-TEG-ID-r17", "lpp.nr_UE_Tx_TEG_ID_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_maxNumOfTxTEGs_1_r17", HFILL }}, + { &hf_lpp_carrierFreq_r17, + { "carrierFreq-r17", "lpp.carrierFreq_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_absoluteFrequencyPointA_r17, + { "absoluteFrequencyPointA-r17", "lpp.absoluteFrequencyPointA_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "ARFCN_ValueNR_r15", HFILL }}, + { &hf_lpp_offsetToPointA_r17, + { "offsetToPointA-r17", "lpp.offsetToPointA_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_2199", HFILL }}, + { &hf_lpp_srs_PosResourceList_r17, + { "srs-PosResourceList-r17", "lpp.srs_PosResourceList_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "T_srs_PosResourceList_r17", HFILL }}, + { &hf_lpp_srs_PosResourceList_r17_item, + { "srs-PosResourceList-r17 item", "lpp.srs_PosResourceList_r17_item", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_maxNumOfSRS_PosResources_1_r17", HFILL }}, + { &hf_lpp_case1_r17, + { "case1-r17", "lpp.case1_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_nr_UE_RxTx_TEG_ID_r17, + { "nr-UE-RxTx-TEG-ID-r17", "lpp.nr_UE_RxTx_TEG_ID_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_maxNumOfRxTxTEGs_1_r17", HFILL }}, + { &hf_lpp_case2_r17, + { "case2-r17", "lpp.case2_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_nr_UE_Tx_TEG_Index_r17, + { "nr-UE-Tx-TEG-Index-r17", "lpp.nr_UE_Tx_TEG_Index_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_maxTxTEG_Sets_r17", HFILL }}, + { &hf_lpp_case3_r17, + { "case3-r17", "lpp.case3_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lpp_nr_UE_RxTxTimeDiffMeasurementInfoRequest_r16, { "nr-UE-RxTxTimeDiffMeasurementInfoRequest-r16", "lpp.nr_UE_RxTxTimeDiffMeasurementInfoRequest_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_nr_UE_RxTxTimeDiffMeasurementInfoRequest_r16_vals), 0, @@ -35319,6 +43370,42 @@ void proto_register_lpp(void) { { "additionalPaths-r16", "lpp.additionalPaths_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_additionalPaths_r16_01_vals), 0, "T_additionalPaths_r16_01", HFILL }}, + { &hf_lpp_nr_UE_RxTxTEG_Request_r17, + { "nr-UE-RxTxTEG-Request-r17", "lpp.nr_UE_RxTxTEG_Request_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_nr_UE_RxTxTEG_Request_r17_vals), 0, + "T_nr_UE_RxTxTEG_Request_r17", HFILL }}, + { &hf_lpp_measureSameDL_PRS_ResourceWithDifferentRxTxTEGs_r17, + { "measureSameDL-PRS-ResourceWithDifferentRxTxTEGs-r17", "lpp.measureSameDL_PRS_ResourceWithDifferentRxTxTEGs_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTxTEGs_r17_vals), 0, + NULL, HFILL }}, + { &hf_lpp_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_02, + { "measureSameDL-PRS-ResourceWithDifferentRxTEGs-r17", "lpp.measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_02_vals), 0, + "T_measureSameDL_PRS_ResourceWithDifferentRxTEGs_r17_02", HFILL }}, + { &hf_lpp_requestedDL_PRS_ProcessingSamples_r17_02, + { "requestedDL-PRS-ProcessingSamples-r17", "lpp.requestedDL_PRS_ProcessingSamples_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_requestedDL_PRS_ProcessingSamples_r17_02_vals), 0, + "T_requestedDL_PRS_ProcessingSamples_r17_02", HFILL }}, + { &hf_lpp_nr_los_nlos_IndicatorRequest_r17_02, + { "nr-los-nlos-IndicatorRequest-r17", "lpp.nr_los_nlos_IndicatorRequest_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nr_los_nlos_IndicatorRequest_r17_02", HFILL }}, + { &hf_lpp_additionalPathsExt_r17_01, + { "additionalPathsExt-r17", "lpp.additionalPathsExt_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_additionalPathsExt_r17_01_vals), 0, + "T_additionalPathsExt_r17_01", HFILL }}, + { &hf_lpp_additionalPathsDL_PRS_RSRP_Request_r17_01, + { "additionalPathsDL-PRS-RSRP-Request-r17", "lpp.additionalPathsDL_PRS_RSRP_Request_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_additionalPathsDL_PRS_RSRP_Request_r17_01_vals), 0, + "T_additionalPathsDL_PRS_RSRP_Request_r17_01", HFILL }}, + { &hf_lpp_multiMeasInSameReport_r17_02, + { "multiMeasInSameReport-r17", "lpp.multiMeasInSameReport_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_multiMeasInSameReport_r17_02_vals), 0, + "T_multiMeasInSameReport_r17_02", HFILL }}, + { &hf_lpp_lowerRxBeamSweepingThan8_FR2_r17_03, + { "lowerRxBeamSweepingThan8-FR2-r17", "lpp.lowerRxBeamSweepingThan8_FR2_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_lowerRxBeamSweepingThan8_FR2_r17_03_vals), 0, + "T_lowerRxBeamSweepingThan8_FR2_r17_03", HFILL }}, { &hf_lpp_maxDL_PRS_RxTxTimeDiffMeasPerTRP_r16, { "maxDL-PRS-RxTxTimeDiffMeasPerTRP-r16", "lpp.maxDL_PRS_RxTxTimeDiffMeasPerTRP_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -35339,6 +43426,42 @@ void proto_register_lpp(void) { { "periodicalReporting-r16", "lpp.periodicalReporting_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_periodicalReporting_r16_01_vals), 0, "T_periodicalReporting_r16_01", HFILL }}, + { &hf_lpp_ten_ms_unit_ResponseTime_r17_02, + { "ten-ms-unit-ResponseTime-r17", "lpp.ten_ms_unit_ResponseTime_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_ten_ms_unit_ResponseTime_r17_01_vals), 0, + "T_ten_ms_unit_ResponseTime_r17_01", HFILL }}, + { &hf_lpp_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_02, + { "nr-DL-PRS-ExpectedAoD-or-AoA-Sup-r17", "lpp.nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17", + FT_BYTES, BASE_NONE, NULL, 0, + "T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_02", HFILL }}, + { &hf_lpp_nr_Multi_RTT_On_Demand_DL_PRS_Support_r17, + { "nr-Multi-RTT-On-Demand-DL-PRS-Support-r17", "lpp.nr_Multi_RTT_On_Demand_DL_PRS_Support_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "NR_On_Demand_DL_PRS_Support_r17", HFILL }}, + { &hf_lpp_nr_UE_RxTx_TEG_ID_ReportingSupport_r17, + { "nr-UE-RxTx-TEG-ID-ReportingSupport-r17", "lpp.nr_UE_RxTx_TEG_ID_ReportingSupport_r17", + FT_BYTES, BASE_NONE, NULL, 0, + "T_nr_UE_RxTx_TEG_ID_ReportingSupport_r17", HFILL }}, + { &hf_lpp_nr_los_nlos_IndicatorSupport_r17_02, + { "nr-los-nlos-IndicatorSupport-r17", "lpp.nr_los_nlos_IndicatorSupport_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nr_los_nlos_IndicatorSupport_r17_02", HFILL }}, + { &hf_lpp_additionalPathsExtSupport_r17_01, + { "additionalPathsExtSupport-r17", "lpp.additionalPathsExtSupport_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_additionalPathsExtSupport_r17_01_vals), 0, + "T_additionalPathsExtSupport_r17_01", HFILL }}, + { &hf_lpp_nr_dl_prs_AssistanceDataValidity_r17_02, + { "nr-dl-prs-AssistanceDataValidity-r17", "lpp.nr_dl_prs_AssistanceDataValidity_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nr_dl_prs_AssistanceDataValidity_r17_02", HFILL }}, + { &hf_lpp_multiMeasInSameMeasReport_r17_02, + { "multiMeasInSameMeasReport-r17", "lpp.multiMeasInSameMeasReport_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_multiMeasInSameMeasReport_r17_02_vals), 0, + "T_multiMeasInSameMeasReport_r17_02", HFILL }}, + { &hf_lpp_mg_ActivationRequest_r17_02, + { "mg-ActivationRequest-r17", "lpp.mg_ActivationRequest_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_mg_ActivationRequest_r17_02_vals), 0, + "T_mg_ActivationRequest_r17_02", HFILL }}, { &hf_lpp_maxNrOfRx_TX_MeasFR1_r16, { "maxNrOfRx-TX-MeasFR1-r16", "lpp.maxNrOfRx_TX_MeasFR1_r16", FT_UINT32, BASE_DEC, NULL, 0, @@ -35363,6 +43486,22 @@ void proto_register_lpp(void) { { "srs-AssocPRS-MultiLayersFR2-r16", "lpp.srs_AssocPRS_MultiLayersFR2_r16", FT_UINT32, BASE_DEC, VALS(lpp_T_srs_AssocPRS_MultiLayersFR2_r16_vals), 0, NULL, HFILL }}, + { &hf_lpp_multi_RTT_MeasCapabilityBandList_r17, + { "multi-RTT-MeasCapabilityBandList-r17", "lpp.multi_RTT_MeasCapabilityBandList_r17", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_nrMaxBands_r16_OF_Multi_RTT_MeasCapabilityPerBand_r17", HFILL }}, + { &hf_lpp_multi_RTT_MeasCapabilityBandList_r17_item, + { "Multi-RTT-MeasCapabilityPerBand-r17", "lpp.Multi_RTT_MeasCapabilityPerBand_r17_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lpp_supportOfDL_PRS_FirstPathRSRP_r17_01, + { "supportOfDL-PRS-FirstPathRSRP-r17", "lpp.supportOfDL_PRS_FirstPathRSRP_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_supportOfDL_PRS_FirstPathRSRP_r17_01_vals), 0, + "T_supportOfDL_PRS_FirstPathRSRP_r17_01", HFILL }}, + { &hf_lpp_dl_PRS_MeasRRC_Inactive_r17_02, + { "dl-PRS-MeasRRC-Inactive-r17", "lpp.dl_PRS_MeasRRC_Inactive_r17", + FT_UINT32, BASE_DEC, VALS(lpp_T_dl_PRS_MeasRRC_Inactive_r17_02_vals), 0, + "T_dl_PRS_MeasRRC_Inactive_r17_02", HFILL }}, { &hf_lpp_locationServerErrorCauses_r16_03, { "locationServerErrorCauses-r16", "lpp.locationServerErrorCauses_r16_element", FT_NONE, BASE_NONE, NULL, 0, @@ -35547,6 +43686,14 @@ void proto_register_lpp(void) { { "ue-assisted-NB-TDD-r15", "lpp.T.otdoa.Mode.ue.assisted.NB.TDD.r15", FT_BOOLEAN, 8, NULL, 0x20, NULL, HFILL }}, + { &hf_lpp_T_orbit_IntegrityReq_r17_correlationTimeReq, + { "correlationTimeReq", "lpp.T.orbit.IntegrityReq.r17.correlationTimeReq", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lpp_T_stec_IntegrityReq_r17_correlationTimeReq, + { "correlationTimeReq", "lpp.T.stec.IntegrityReq.r17.correlationTimeReq", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, { &hf_lpp_T_periodicAssistanceData_r15_solicited, { "solicited", "lpp.T.periodicAssistanceData.r15.solicited", FT_BOOLEAN, 8, NULL, 0x80, @@ -35679,6 +43826,14 @@ void proto_register_lpp(void) { { "model-5", "lpp.T.utc.Model.model.5", FT_BOOLEAN, 8, NULL, 0x08, NULL, HFILL }}, + { &hf_lpp_T_orbit_IntegritySup_r17_correlationTimeSup, + { "correlationTimeSup", "lpp.T.orbit.IntegritySup.r17.correlationTimeSup", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lpp_T_stec_IntegritySup_r17_correlationTimeSup, + { "correlationTimeSup", "lpp.T.stec.IntegritySup.r17.correlationTimeSup", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, { &hf_lpp_T_gnss_ids_gps, { "gps", "lpp.T.gnss.ids.gps", FT_BOOLEAN, 8, NULL, 0x80, @@ -35907,10 +44062,58 @@ void proto_register_lpp(void) { { "posCalc", "lpp.T.nr.AdType.r16.posCalc", FT_BOOLEAN, 8, NULL, 0x40, NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_trpLoc, + { "trpLoc", "lpp.T.nr.PosCalcAssistanceRequest.r17.trpLoc", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_beamInfo, + { "beamInfo", "lpp.T.nr.PosCalcAssistanceRequest.r17.beamInfo", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_rtdInfo, + { "rtdInfo", "lpp.T.nr.PosCalcAssistanceRequest.r17.rtdInfo", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_losNlosInfo, + { "losNlosInfo", "lpp.T.nr.PosCalcAssistanceRequest.r17.losNlosInfo", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_trpTEG_Info, + { "trpTEG-Info", "lpp.T.nr.PosCalcAssistanceRequest.r17.trpTEG.Info", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, { &hf_lpp_T_nr_RequestedMeasurements_r16_prsrsrpReq, { "prsrsrpReq", "lpp.T.nr.RequestedMeasurements.r16.prsrsrpReq", FT_BOOLEAN, 8, NULL, 0x80, NULL, HFILL }}, + { &hf_lpp_T_nr_RequestedMeasurements_r16_firstPathRsrpReq_r17, + { "firstPathRsrpReq-r17", "lpp.T.nr.RequestedMeasurements.r16.firstPathRsrpReq.r17", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceSupport_r17_trpLocSup, + { "trpLocSup", "lpp.T.nr.PosCalcAssistanceSupport.r17.trpLocSup", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceSupport_r17_beamInfoSup, + { "beamInfoSup", "lpp.T.nr.PosCalcAssistanceSupport.r17.beamInfoSup", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceSupport_r17_rtdInfoSup, + { "rtdInfoSup", "lpp.T.nr.PosCalcAssistanceSupport.r17.rtdInfoSup", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceSupport_r17_trpTEG_InfoSup, + { "trpTEG-InfoSup", "lpp.T.nr.PosCalcAssistanceSupport.r17.trpTEG.InfoSup", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_eAoD, + { "eAoD", "lpp.T.nr.DL.PRS.ExpectedAoD.or.AoA.Sup.r17.eAoD", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_eAoA, + { "eAoA", "lpp.T.nr.DL.PRS.ExpectedAoD.or.AoA.Sup.r17.eAoA", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, { &hf_lpp_T_nr_AdType_r16_01_dl_prs, { "dl-prs", "lpp.T.nr.AdType.r16.01.dl.prs", FT_BOOLEAN, 8, NULL, 0x80, @@ -35919,6 +44122,50 @@ void proto_register_lpp(void) { { "posCalc", "lpp.T.nr.AdType.r16.01.posCalc", FT_BOOLEAN, 8, NULL, 0x40, NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_01_trpLoc, + { "trpLoc", "lpp.T.nr.PosCalcAssistanceRequest.r17.01.trpLoc", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_01_beamInfo, + { "beamInfo", "lpp.T.nr.PosCalcAssistanceRequest.r17.01.beamInfo", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_01_rtdInfo, + { "rtdInfo", "lpp.T.nr.PosCalcAssistanceRequest.r17.01.rtdInfo", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_01_beamAntInfo, + { "beamAntInfo", "lpp.T.nr.PosCalcAssistanceRequest.r17.01.beamAntInfo", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceRequest_r17_01_losNlosInfo, + { "losNlosInfo", "lpp.T.nr.PosCalcAssistanceRequest.r17.01.losNlosInfo", + FT_BOOLEAN, 8, NULL, 0x08, + NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceSupport_r17_01_trpLocSup, + { "trpLocSup", "lpp.T.nr.PosCalcAssistanceSupport.r17.01.trpLocSup", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceSupport_r17_01_beamInfoSup, + { "beamInfoSup", "lpp.T.nr.PosCalcAssistanceSupport.r17.01.beamInfoSup", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceSupport_r17_01_rtdInfoSup, + { "rtdInfoSup", "lpp.T.nr.PosCalcAssistanceSupport.r17.01.rtdInfoSup", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, + { &hf_lpp_T_nr_PosCalcAssistanceSupport_r17_01_beamAntInfoSup, + { "beamAntInfoSup", "lpp.T.nr.PosCalcAssistanceSupport.r17.01.beamAntInfoSup", + FT_BOOLEAN, 8, NULL, 0x10, + NULL, HFILL }}, + { &hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_01_eAoD, + { "eAoD", "lpp.T.nr.DL.PRS.ExpectedAoD.or.AoA.Sup.r17.01.eAoD", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_01_eAoA, + { "eAoA", "lpp.T.nr.DL.PRS.ExpectedAoD.or.AoA.Sup.r17.01.eAoA", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, { &hf_lpp_T_nr_AdType_r16_02_dl_prs, { "dl-prs", "lpp.T.nr.AdType.r16.02.dl.prs", FT_BOOLEAN, 8, NULL, 0x80, @@ -35931,9 +44178,33 @@ void proto_register_lpp(void) { { "prsrsrpReq", "lpp.T.nr.RequestedMeasurements.r16.01.prsrsrpReq", FT_BOOLEAN, 8, NULL, 0x80, NULL, HFILL }}, + { &hf_lpp_T_nr_RequestedMeasurements_r16_01_firstPathRsrpReq_r17, + { "firstPathRsrpReq-r17", "lpp.T.nr.RequestedMeasurements.r16.01.firstPathRsrpReq.r17", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_02_eAoD, + { "eAoD", "lpp.T.nr.DL.PRS.ExpectedAoD.or.AoA.Sup.r17.02.eAoD", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_02_eAoA, + { "eAoA", "lpp.T.nr.DL.PRS.ExpectedAoD.or.AoA.Sup.r17.02.eAoA", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lpp_T_nr_UE_RxTx_TEG_ID_ReportingSupport_r17_case1, + { "case1", "lpp.T.nr.UE.RxTx.TEG.ID.ReportingSupport.r17.case1", + FT_BOOLEAN, 8, NULL, 0x80, + NULL, HFILL }}, + { &hf_lpp_T_nr_UE_RxTx_TEG_ID_ReportingSupport_r17_case2, + { "case2", "lpp.T.nr.UE.RxTx.TEG.ID.ReportingSupport.r17.case2", + FT_BOOLEAN, 8, NULL, 0x40, + NULL, HFILL }}, + { &hf_lpp_T_nr_UE_RxTx_TEG_ID_ReportingSupport_r17_case3, + { "case3", "lpp.T.nr.UE.RxTx.TEG.ID.ReportingSupport.r17.case3", + FT_BOOLEAN, 8, NULL, 0x20, + NULL, HFILL }}, /*--- End of included file: packet-lpp-hfarr.c ---*/ -#line 2079 "./asn1/lpp/packet-lpp-template.c" +#line 2084 "./asn1/lpp/packet-lpp-template.c" { &hf_lpp_svHealthExt_v1240_e5bhs, { "E5b Signal Health Status", "lpp.svHealthExt_v1240.e5bhs", FT_UINT8, BASE_DEC, VALS(lpp_signal_health_status_vals), 0, @@ -36074,6 +44345,9 @@ void proto_register_lpp(void) { &ett_lpp_PolygonPoints, &ett_lpp_PositioningModes, &ett_lpp_T_posModes, + &ett_lpp_ScheduledLocationTimeSupport_r17, + &ett_lpp_ScheduledLocationTimeSupportPerMode_r17, + &ett_lpp_T_gnssTime_r17, &ett_lpp_VelocityTypes, &ett_lpp_CommonIEsRequestCapabilities, &ett_lpp_T_lpp_message_segmentation_req_r14, @@ -36092,16 +44366,29 @@ void proto_register_lpp(void) { &ett_lpp_ResponseTime, &ett_lpp_ResponseTimeNB_r14, &ett_lpp_MessageSizeLimitNB_r14, + &ett_lpp_ScheduledLocationTime_r17, + &ett_lpp_T_gnssTime_r17_01, + &ett_lpp_T_networkTime_r17, + &ett_lpp_T_e_utraTime_r17_01, + &ett_lpp_T_nrTime_r17_01, + &ett_lpp_T_nr_Slot_r17, &ett_lpp_CommonIEsProvideLocationInformation, &ett_lpp_LocationCoordinates, &ett_lpp_Velocity, &ett_lpp_LocationError, &ett_lpp_LocationSource_r13, + &ett_lpp_IntegrityInfo_r17, &ett_lpp_CommonIEsAbort, &ett_lpp_CommonIEsError, + &ett_lpp_AreaID_CellList_r17, + &ett_lpp_NR_Cell_IDs_r17, &ett_lpp_DL_PRS_ID_Info_r16, &ett_lpp_SEQUENCE_SIZE_1_nrMaxResourceIDs_r16_OF_NR_DL_PRS_ResourceID_r16, + &ett_lpp_LCS_GCS_TranslationParameter_r16, + &ett_lpp_LOS_NLOS_Indicator_r17, + &ett_lpp_T_indicator_r17, &ett_lpp_NR_AdditionalPathList_r16, + &ett_lpp_NR_AdditionalPathListExt_r17, &ett_lpp_NR_AdditionalPath_r16, &ett_lpp_T_nr_RelativeTimeDifference_r16, &ett_lpp_NR_DL_PRS_AssistanceData_r16, @@ -36112,13 +44399,21 @@ void proto_register_lpp(void) { &ett_lpp_NR_DL_PRS_AssistanceDataPerTRP_r16, &ett_lpp_NR_DL_PRS_PositioningFrequencyLayer_r16, &ett_lpp_NR_DL_PRS_SFN0_Offset_r16, + &ett_lpp_NR_DL_PRS_ExpectedAoD_or_AoA_r17, + &ett_lpp_T_expectedAoD_r17, + &ett_lpp_T_expectedAoA_r17, &ett_lpp_NR_DL_PRS_BeamInfo_r16, &ett_lpp_NR_DL_PRS_BeamInfoPerFreqLayer_r16, &ett_lpp_NR_DL_PRS_BeamInfoPerTRP_r16, &ett_lpp_DL_PRS_BeamInfoSet_r16, &ett_lpp_DL_PRS_BeamInfoResourceSet_r16, &ett_lpp_DL_PRS_BeamInfoElement_r16, - &ett_lpp_LCS_GCS_TranslationParameter_r16, + &ett_lpp_NR_DL_PRS_ExpectedLOS_NLOS_Assistance_r17, + &ett_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerFreqLayer_r17, + &ett_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerTRP_r17, + &ett_lpp_T_nr_los_nlos_indicator_r17, + &ett_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17, + &ett_lpp_NR_DL_PRS_ExpectedLOS_NLOS_AssistancePerResource_r17, &ett_lpp_NR_DL_PRS_Info_r16, &ett_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_NR_DL_PRS_ResourceSet_r16, &ett_lpp_NR_DL_PRS_ResourceSet_r16, @@ -36136,12 +44431,21 @@ void proto_register_lpp(void) { &ett_lpp_T_scs30_r16, &ett_lpp_T_scs60_r16, &ett_lpp_T_scs120_r16, + &ett_lpp_DL_PRS_ResourcePrioritySubset_r17, + &ett_lpp_NR_DL_PRSResourcePriorityItem_r17, &ett_lpp_NR_DL_PRS_ProcessingCapability_r16, &ett_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_PRS_ProcessingCapabilityPerBand_r16, &ett_lpp_PRS_ProcessingCapabilityPerBand_r16, &ett_lpp_T_supportedBandwidthPRS_r16, &ett_lpp_T_durationOfPRS_Processing_r16, &ett_lpp_T_maxNumOfDL_PRS_ResProcessedPerSlot_r16, + &ett_lpp_SEQUENCE_SIZE_1_3_OF_PRS_ProcessingCapabilityOutsideMGinPPWperType_r17, + &ett_lpp_T_durationOfPRS_Processing_RRC_Inactive_r17, + &ett_lpp_T_maxNumOfDL_PRS_ResProcessedPerSlot_RRC_Inactive_r17, + &ett_lpp_PRS_ProcessingCapabilityOutsideMGinPPWperType_r17, + &ett_lpp_T_ppw_durationOfPRS_Processing1_r17, + &ett_lpp_T_ppw_durationOfPRS_Processing2_r17, + &ett_lpp_T_ppw_maxNumOfDL_PRS_ResProcessedPerSlot_r17, &ett_lpp_NR_DL_PRS_QCL_ProcessingCapability_r16, &ett_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_DL_PRS_QCL_ProcessingCapabilityPerBand_r16, &ett_lpp_DL_PRS_QCL_ProcessingCapabilityPerBand_r16, @@ -36153,6 +44457,29 @@ void proto_register_lpp(void) { &ett_lpp_SEQUENCE_SIZE_1_maxSimultaneousBands_r16_OF_FreqBandIndicatorNR_r16, &ett_lpp_T_maxNrOfDL_PRS_ResourcesAcrossAllFL_TRP_ResourceSet_r16, &ett_lpp_T_fr1_FR2Mix_r16, + &ett_lpp_NR_DL_PRS_TRP_TEG_Info_r17, + &ett_lpp_NR_DL_PRS_TRP_TEG_InfoPerFreqLayer_r17, + &ett_lpp_NR_DL_PRS_TRP_TEG_InfoPerTRP_r17, + &ett_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_TEG_InfoPerResourceSet_r17, + &ett_lpp_DL_PRS_TEG_InfoPerResourceSet_r17, + &ett_lpp_DL_PRS_TEG_InfoElement_r17, + &ett_lpp_NR_On_Demand_DL_PRS_Configurations_r17, + &ett_lpp_SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_On_Demand_DL_PRS_Configuration_r17, + &ett_lpp_On_Demand_DL_PRS_Configuration_r17, + &ett_lpp_DL_PRS_Configuration_ID_r17, + &ett_lpp_NR_On_Demand_DL_PRS_Information_r17, + &ett_lpp_NR_On_Demand_DL_PRS_PerFreqLayer_r17, + &ett_lpp_DL_PRS_QCL_InformationReq_r17, + &ett_lpp_DL_PRS_QCL_InformationReqPerTRP_r17, + &ett_lpp_SEQUENCE_SIZE_1_nrMaxSetsPerTrpPerFreqLayer_r16_OF_DL_PRS_QCL_InfoReq_r17, + &ett_lpp_DL_PRS_QCL_InfoReq_r17, + &ett_lpp_T_dl_prs_QCL_InformationReq_r17, + &ett_lpp_NR_On_Demand_DL_PRS_Request_r17, + &ett_lpp_SEQUENCE_SIZE_1_maxOD_DL_PRS_Configs_r17_OF_DL_PRS_Configuration_ID_r17, + &ett_lpp_DL_PRS_StartTime_and_Duration_r17, + &ett_lpp_T_dl_prs_duration_r17, + &ett_lpp_NR_On_Demand_DL_PRS_Configurations_Selected_IndexList_r17, + &ett_lpp_NR_On_Demand_DL_PRS_Support_r17, &ett_lpp_NR_PositionCalculationAssistance_r16, &ett_lpp_NR_RTD_Info_r16, &ett_lpp_ReferenceTRP_RTD_Info_r16, @@ -36173,6 +44500,15 @@ void proto_register_lpp(void) { &ett_lpp_NR_TimeStamp_r16, &ett_lpp_T_nr_Slot_r16, &ett_lpp_NR_TimingQuality_r16, + &ett_lpp_NR_TRP_BeamAntennaInfo_r17, + &ett_lpp_NR_TRP_BeamAntennaInfoPerFreqLayer_r17, + &ett_lpp_NR_TRP_BeamAntennaInfoPerTRP_r17, + &ett_lpp_NR_TRP_BeamAntennaAngles_r17, + &ett_lpp_NR_TRP_BeamAntennaInfoAzimuthElevation_r17, + &ett_lpp_SEQUENCE_SIZE_1_1801_OF_ElevationElement_R17, + &ett_lpp_ElevationElement_R17, + &ett_lpp_SEQUENCE_SIZE_2_maxNumResourcesPerAngle_r17_OF_BeamPowerElement_r17, + &ett_lpp_BeamPowerElement_r17, &ett_lpp_NR_TRP_LocationInfo_r16, &ett_lpp_NR_TRP_LocationInfoPerFreqLayer_r16, &ett_lpp_SEQUENCE_SIZE_1_nrMaxTRPsPerFreq_r16_OF_TRP_LocationInfoElement_r16, @@ -36181,6 +44517,9 @@ void proto_register_lpp(void) { &ett_lpp_DL_PRS_ResourceSets_TRP_Element_r16, &ett_lpp_SEQUENCE_SIZE_1_nrMaxResourcesPerSet_r16_OF_DL_PRS_Resource_ARP_Element_r16, &ett_lpp_DL_PRS_Resource_ARP_Element_r16, + &ett_lpp_NR_UE_TEG_Capability_r17, + &ett_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_NR_UE_TEG_ID_CapabilityPerBand_r17, + &ett_lpp_NR_UE_TEG_ID_CapabilityPerBand_r17, &ett_lpp_NR_UL_SRS_Capability_r16, &ett_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_SRS_CapabilityPerBand_r16, &ett_lpp_SEQUENCE_SIZE_1_nrMaxConfiguredBands_r16_OF_SRS_PosResourcesPerBand_r16, @@ -36188,6 +44527,8 @@ void proto_register_lpp(void) { &ett_lpp_OLPC_SRS_Pos_r16, &ett_lpp_SpatialRelationsSRS_Pos_r16, &ett_lpp_SRS_PosResourcesPerBand_r16, + &ett_lpp_PosSRS_RRC_Inactive_InInitialUL_BWP_r17, + &ett_lpp_PosSRS_RRC_Inactive_OutsideInitialUL_BWP_r17, &ett_lpp_ReferencePoint_r16, &ett_lpp_T_referencePointGeographicLocation_r16, &ett_lpp_RelativeLocation_r16, @@ -36289,6 +44630,8 @@ void proto_register_lpp(void) { &ett_lpp_SEQUENCE_SIZE_0_63_OF_RelativeLocationElement_r16, &ett_lpp_RelativeLocationElement_r16, &ett_lpp_GNSS_SSR_ArrayOfCorrectionPoints_r16, + &ett_lpp_GNSS_Integrity_ServiceParameters_r17, + &ett_lpp_GNSS_Integrity_ServiceAlert_r17, &ett_lpp_GNSS_TimeModelList, &ett_lpp_GNSS_TimeModelElement, &ett_lpp_GNSS_DifferentialCorrections, @@ -36383,14 +44726,20 @@ void proto_register_lpp(void) { &ett_lpp_GNSS_SSR_OrbitCorrections_r15, &ett_lpp_SSR_OrbitCorrectionList_r15, &ett_lpp_SSR_OrbitCorrectionSatelliteElement_r15, + &ett_lpp_ORBIT_IntegrityParameters_r17, + &ett_lpp_SSR_IntegrityOrbitBounds_r17, + &ett_lpp_RAC_OrbitalErrorComponents_r17, &ett_lpp_GNSS_SSR_ClockCorrections_r15, &ett_lpp_SSR_ClockCorrectionList_r15, &ett_lpp_SSR_ClockCorrectionSatelliteElement_r15, + &ett_lpp_CLOCK_IntegrityParameters_r17, + &ett_lpp_SSR_IntegrityClockBounds_r17, &ett_lpp_GNSS_SSR_CodeBias_r15, &ett_lpp_SSR_CodeBiasSatList_r15, &ett_lpp_SSR_CodeBiasSatElement_r15, &ett_lpp_SSR_CodeBiasSignalList_r15, &ett_lpp_SSR_CodeBiasSignalElement_r15, + &ett_lpp_SSR_IntegrityCodeBiasBounds_r17, &ett_lpp_GNSS_SSR_URA_r16, &ett_lpp_SSR_URA_SatList_r16, &ett_lpp_SSR_URA_SatElement_r16, @@ -36399,9 +44748,12 @@ void proto_register_lpp(void) { &ett_lpp_SSR_PhaseBiasSatElement_r16, &ett_lpp_SSR_PhaseBiasSignalList_r16, &ett_lpp_SSR_PhaseBiasSignalElement_r16, + &ett_lpp_SSR_IntegrityPhaseBiasBounds_r17, &ett_lpp_GNSS_SSR_STEC_Correction_r16, &ett_lpp_STEC_SatList_r16, &ett_lpp_STEC_SatElement_r16, + &ett_lpp_STEC_IntegrityParameters_r17, + &ett_lpp_STEC_IntegrityErrorBounds_r17, &ett_lpp_GNSS_SSR_GriddedCorrection_r16, &ett_lpp_GridList_r16, &ett_lpp_GridElement_r16, @@ -36409,6 +44761,8 @@ void proto_register_lpp(void) { &ett_lpp_STEC_ResidualSatList_r16, &ett_lpp_STEC_ResidualSatElement_r16, &ett_lpp_T_stecResidualCorrection_r16, + &ett_lpp_SSR_GriddedCorrectionIntegrityParameters_r17, + &ett_lpp_TropoDelayIntegrityErrorBounds_r17, &ett_lpp_NavIC_DifferentialCorrections_r16, &ett_lpp_NavIC_CorrectionListAutoNav_r16, &ett_lpp_NavIC_CorrectionElementAutoNav_r16, @@ -36430,6 +44784,8 @@ void proto_register_lpp(void) { &ett_lpp_GNSS_RTK_ReferenceStationInfoReq_r15, &ett_lpp_GNSS_RTK_AuxiliaryStationDataReq_r15, &ett_lpp_GNSS_SSR_CorrectionPointsReq_r16, + &ett_lpp_GNSS_Integrity_ServiceParametersReq_r17, + &ett_lpp_GNSS_Integrity_ServiceAlertReq_r17, &ett_lpp_GNSS_TimeModelListReq, &ett_lpp_GNSS_TimeModelElementReq, &ett_lpp_GNSS_DifferentialCorrectionsReq, @@ -36458,11 +44814,13 @@ void proto_register_lpp(void) { &ett_lpp_GNSS_RTK_ResidualsReq_r15, &ett_lpp_GNSS_RTK_FKP_GradientsReq_r15, &ett_lpp_GNSS_SSR_OrbitCorrectionsReq_r15, + &ett_lpp_T_orbit_IntegrityReq_r17, &ett_lpp_GNSS_SSR_ClockCorrectionsReq_r15, &ett_lpp_GNSS_SSR_CodeBiasReq_r15, &ett_lpp_GNSS_SSR_URA_Req_r16, &ett_lpp_GNSS_SSR_PhaseBiasReq_r16, &ett_lpp_GNSS_SSR_STEC_CorrectionReq_r16, + &ett_lpp_T_stec_IntegrityReq_r17, &ett_lpp_GNSS_SSR_GriddedCorrectionReq_r16, &ett_lpp_NavIC_DifferentialCorrectionsReq_r16, &ett_lpp_NavIC_GridModelReq_r16, @@ -36486,6 +44844,7 @@ void proto_register_lpp(void) { &ett_lpp_GNSS_SatMeasList, &ett_lpp_GNSS_SatMeasElement, &ett_lpp_GNSS_LocationInformation, + &ett_lpp_HA_GNSS_Metrics_r17, &ett_lpp_A_GNSS_RequestLocationInformation, &ett_lpp_GNSS_PositioningInstructions, &ett_lpp_A_GNSS_ProvideCapabilities, @@ -36502,6 +44861,8 @@ void proto_register_lpp(void) { &ett_lpp_GNSS_EarthOrientationParametersSupport, &ett_lpp_GNSS_RTK_ReferenceStationInfoSupport_r15, &ett_lpp_GNSS_RTK_AuxiliaryStationDataSupport_r15, + &ett_lpp_GNSS_Integrity_ServiceParametersSupport_r17, + &ett_lpp_GNSS_Integrity_ServiceAlertSupport_r17, &ett_lpp_GNSS_GenericAssistanceDataSupport, &ett_lpp_GNSS_GenericAssistDataSupportElement, &ett_lpp_GNSS_TimeModelListSupport, @@ -36525,11 +44886,13 @@ void proto_register_lpp(void) { &ett_lpp_GNSS_RTK_ResidualsSupport_r15, &ett_lpp_GNSS_RTK_FKP_GradientsSupport_r15, &ett_lpp_GNSS_SSR_OrbitCorrectionsSupport_r15, + &ett_lpp_T_orbit_IntegritySup_r17, &ett_lpp_GNSS_SSR_ClockCorrectionsSupport_r15, &ett_lpp_GNSS_SSR_CodeBiasSupport_r15, &ett_lpp_GNSS_SSR_URA_Support_r16, &ett_lpp_GNSS_SSR_PhaseBiasSupport_r16, &ett_lpp_GNSS_SSR_STEC_CorrectionSupport_r16, + &ett_lpp_T_stec_IntegritySup_r17, &ett_lpp_GNSS_SSR_GriddedCorrectionSupport_r16, &ett_lpp_NavIC_DifferentialCorrectionsSupport_r16, &ett_lpp_NavIC_GridModelSupport_r16, @@ -36679,21 +45042,34 @@ void proto_register_lpp(void) { &ett_lpp_NR_DL_TDOA_ProvideAssistanceData_r16, &ett_lpp_NR_DL_TDOA_RequestAssistanceData_r16, &ett_lpp_T_nr_AdType_r16, + &ett_lpp_T_nr_PosCalcAssistanceRequest_r17, &ett_lpp_NR_DL_TDOA_ProvideLocationInformation_r16, + &ett_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_SignalMeasurementInformation_r16, + &ett_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_TDOA_LocationInformation_r16, &ett_lpp_NR_DL_TDOA_SignalMeasurementInformation_r16, &ett_lpp_NR_DL_TDOA_MeasList_r16, &ett_lpp_NR_DL_TDOA_MeasElement_r16, &ett_lpp_T_nr_RSTD_r16, + &ett_lpp_T_nr_los_nlos_Indicator_r17, &ett_lpp_NR_DL_TDOA_AdditionalMeasurements_r16, + &ett_lpp_NR_DL_TDOA_AdditionalMeasurementsExt_r17, &ett_lpp_NR_DL_TDOA_AdditionalMeasurementElement_r16, &ett_lpp_T_nr_RSTD_ResultDiff_r16, &ett_lpp_NR_DL_TDOA_LocationInformation_r16, &ett_lpp_T_measurementReferenceTime_r16, &ett_lpp_NR_DL_TDOA_RequestLocationInformation_r16, &ett_lpp_T_nr_RequestedMeasurements_r16, + &ett_lpp_T_nr_los_nlos_IndicatorRequest_r17, &ett_lpp_NR_DL_TDOA_ReportConfig_r16, &ett_lpp_NR_DL_TDOA_ProvideCapabilities_r16, + &ett_lpp_T_nr_PosCalcAssistanceSupport_r17, + &ett_lpp_T_nr_los_nlos_AssistanceDataSupport_r17, + &ett_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17, + &ett_lpp_T_nr_los_nlos_IndicatorSupport_r17, + &ett_lpp_T_nr_dl_prs_AssistanceDataValidity_r17, &ett_lpp_NR_DL_TDOA_MeasurementCapability_r16, + &ett_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_DL_TDOA_MeasCapabilityPerBand_r17, + &ett_lpp_DL_TDOA_MeasCapabilityPerBand_r17, &ett_lpp_NR_DL_TDOA_RequestCapabilities_r16, &ett_lpp_NR_DL_TDOA_Error_r16, &ett_lpp_NR_DL_TDOA_LocationServerErrorCauses_r16, @@ -36701,17 +45077,29 @@ void proto_register_lpp(void) { &ett_lpp_NR_DL_AoD_ProvideAssistanceData_r16, &ett_lpp_NR_DL_AoD_RequestAssistanceData_r16, &ett_lpp_T_nr_AdType_r16_01, + &ett_lpp_T_nr_PosCalcAssistanceRequest_r17_01, &ett_lpp_NR_DL_AoD_ProvideLocationInformation_r16, + &ett_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_SignalMeasurementInformation_r16, + &ett_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_DL_AoD_LocationInformation_r16, &ett_lpp_NR_DL_AoD_SignalMeasurementInformation_r16, &ett_lpp_NR_DL_AoD_MeasList_r16, &ett_lpp_NR_DL_AoD_MeasElement_r16, + &ett_lpp_T_nr_los_nlos_Indicator_r17_01, &ett_lpp_NR_DL_AoD_AdditionalMeasurements_r16, + &ett_lpp_NR_DL_AoD_AdditionalMeasurementsExt_r17, &ett_lpp_NR_DL_AoD_AdditionalMeasurementElement_r16, + &ett_lpp_NR_DL_AoD_AdditionalMeasurementElement_r17, &ett_lpp_NR_DL_AoD_LocationInformation_r16, &ett_lpp_T_measurementReferenceTime_r16_01, &ett_lpp_NR_DL_AoD_RequestLocationInformation_r16, &ett_lpp_NR_DL_AoD_ReportConfig_r16, + &ett_lpp_T_nr_los_nlos_IndicatorRequest_r17_01, &ett_lpp_NR_DL_AoD_ProvideCapabilities_r16, + &ett_lpp_T_nr_PosCalcAssistanceSupport_r17_01, + &ett_lpp_T_nr_los_nlos_AssistanceDataSupport_r17_01, + &ett_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_01, + &ett_lpp_T_nr_los_nlos_IndicatorSupport_r17_01, + &ett_lpp_T_nr_dl_prs_AssistanceDataValidity_r17_01, &ett_lpp_NR_DL_AoD_MeasurementCapability_r16, &ett_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_DL_AoD_MeasCapabilityPerBand_r16, &ett_lpp_DL_AoD_MeasCapabilityPerBand_r16, @@ -36723,18 +45111,36 @@ void proto_register_lpp(void) { &ett_lpp_NR_Multi_RTT_RequestAssistanceData_r16, &ett_lpp_T_nr_AdType_r16_02, &ett_lpp_NR_Multi_RTT_ProvideLocationInformation_r16, + &ett_lpp_SEQUENCE_SIZE_1_maxMeasInstances_r17_OF_NR_Multi_RTT_SignalMeasurementInformation_r16, &ett_lpp_NR_Multi_RTT_SignalMeasurementInformation_r16, + &ett_lpp_SEQUENCE_SIZE_1_maxTxTEG_Sets_r17_OF_NR_SRS_TxTEG_Element_r17, &ett_lpp_NR_Multi_RTT_MeasList_r16, &ett_lpp_NR_Multi_RTT_MeasElement_r16, &ett_lpp_T_nr_UE_RxTxTimeDiff_r16, + &ett_lpp_T_nr_los_nlos_Indicator_r17_02, &ett_lpp_NR_Multi_RTT_AdditionalMeasurements_r16, + &ett_lpp_NR_Multi_RTT_AdditionalMeasurementsExt_r17, &ett_lpp_NR_Multi_RTT_AdditionalMeasurementElement_r16, &ett_lpp_T_nr_UE_RxTxTimeDiffAdditional_r16, + &ett_lpp_NR_SRS_TxTEG_Element_r17, + &ett_lpp_T_carrierFreq_r17, + &ett_lpp_T_srs_PosResourceList_r17, + &ett_lpp_NR_UE_RxTx_TEG_Info_r17, + &ett_lpp_T_case1_r17, + &ett_lpp_T_case2_r17, + &ett_lpp_T_case3_r17, &ett_lpp_NR_Multi_RTT_RequestLocationInformation_r16, &ett_lpp_T_nr_RequestedMeasurements_r16_01, + &ett_lpp_T_nr_los_nlos_IndicatorRequest_r17_02, &ett_lpp_NR_Multi_RTT_ReportConfig_r16, &ett_lpp_NR_Multi_RTT_ProvideCapabilities_r16, + &ett_lpp_T_nr_DL_PRS_ExpectedAoD_or_AoA_Sup_r17_02, + &ett_lpp_T_nr_UE_RxTx_TEG_ID_ReportingSupport_r17, + &ett_lpp_T_nr_los_nlos_IndicatorSupport_r17_02, + &ett_lpp_T_nr_dl_prs_AssistanceDataValidity_r17_02, &ett_lpp_NR_Multi_RTT_MeasurementCapability_r16, + &ett_lpp_SEQUENCE_SIZE_1_nrMaxBands_r16_OF_Multi_RTT_MeasCapabilityPerBand_r17, + &ett_lpp_Multi_RTT_MeasCapabilityPerBand_r17, &ett_lpp_NR_Multi_RTT_RequestCapabilities_r16, &ett_lpp_NR_Multi_RTT_Error_r16, &ett_lpp_NR_Multi_RTT_LocationServerErrorCauses_r16, @@ -36747,7 +45153,7 @@ void proto_register_lpp(void) { &ett_lpp_NR_UEB_TRP_RTD_Info_r16, /*--- End of included file: packet-lpp-ettarr.c ---*/ -#line 2130 "./asn1/lpp/packet-lpp-template.c" +#line 2135 "./asn1/lpp/packet-lpp-template.c" }; diff --git a/epan/dissectors/packet-lpp.h b/epan/dissectors/packet-lpp.h index 1824680a40..95ffd427f3 100644 --- a/epan/dissectors/packet-lpp.h +++ b/epan/dissectors/packet-lpp.h @@ -64,6 +64,9 @@ typedef enum { LPP_POS_SIB_TYPE_6_1, LPP_POS_SIB_TYPE_6_2, LPP_POS_SIB_TYPE_6_3, + LPP_POS_SIB_TYPE_6_4, + LPP_POS_SIB_TYPE_6_5, + LPP_POS_SIB_TYPE_6_6, } lpp_pos_sib_type_t; int dissect_lpp_AssistanceDataSIBelement_r15_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, lpp_pos_sib_type_t pos_sib_type); @@ -110,6 +113,6 @@ int dissect_lpp_Sensor_MotionInformation_r15_PDU(tvbuff_t *tvb _U_, packet_info int dissect_lpp_DisplacementTimeStamp_r15_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_); /*--- End of included file: packet-lpp-exp.h ---*/ -#line 62 "./asn1/lpp/packet-lpp-template.h" +#line 67 "./asn1/lpp/packet-lpp-template.h" #endif /* PACKET_LPP_H */