3GPP Message Dictionary

PUSCH-Config

TS 38.331 V18.5.1 2025-03
PUSCH-Config ::= SEQUENCE {
    dataScramblingIdentityPUSCH             INTEGER (0..1023)                                                   OPTIONAL,   -- Need S
    txConfig                                ENUMERATED {codebook, nonCodebook}                                  OPTIONAL,   -- Need S
    dmrs-UplinkForPUSCH-MappingTypeA        CHOICE {release NULL, setup DMRS-UplinkConfig }                                  OPTIONAL,   -- Need M
    dmrs-UplinkForPUSCH-MappingTypeB        CHOICE {release NULL, setup DMRS-UplinkConfig }                                  OPTIONAL,   -- Need M
    pusch-PowerControl                      PUSCH-PowerControl                                                  OPTIONAL,   -- Need M
    frequencyHopping                        ENUMERATED {intraSlot, interSlot}                                   OPTIONAL,   -- Need S
    frequencyHoppingOffsetLists             SEQUENCE (SIZE (1..4)) OF INTEGER (1.. maxNrofPhysicalResourceBlocks-1)
                                                                                                                OPTIONAL,   -- Need M
    resourceAllocation                      ENUMERATED { resourceAllocationType0, resourceAllocationType1, dynamicSwitch},
    pusch-TimeDomainAllocationList          CHOICE {release NULL, setup PUSCH-TimeDomainResourceAllocationList }             OPTIONAL,   -- Need M
    pusch-AggregationFactor                 ENUMERATED { n2, n4, n8 }                                           OPTIONAL,   -- Need S
    mcs-Table                               ENUMERATED {qam256, qam64LowSE}                                     OPTIONAL,   -- Need S
    mcs-TableTransformPrecoder              ENUMERATED {qam256, qam64LowSE}                                     OPTIONAL,   -- Need S
    transformPrecoder                       ENUMERATED {enabled, disabled}                                      OPTIONAL,   -- Need S
    codebookSubset                          ENUMERATED {fullyAndPartialAndNonCoherent, partialAndNonCoherent,nonCoherent}
                                                                                                          OPTIONAL, -- Cond codebookBased
    maxRank                                 INTEGER (1..4)                                                OPTIONAL, -- Cond codebookBased
    rbg-Size                                ENUMERATED { config2}                                         OPTIONAL, -- Need S
    uci-OnPUSCH                             CHOICE {release NULL, setup UCI-OnPUSCH}                                   OPTIONAL, -- Need M
    tp-pi2BPSK                              ENUMERATED {enabled}                                          OPTIONAL, -- Need S
    ...,
    [[
    minimumSchedulingOffsetK2-r16           CHOICE {release NULL, setup MinSchedulingOffsetK2-Values-r16 }             OPTIONAL,  -- Need M
    ul-AccessConfigListDCI-0-1-r16          CHOICE {release NULL, setup UL-AccessConfigListDCI-0-1-r16 }               OPTIONAL,  -- Need M
    -- Start of the parameters for DCI format 0_2 introduced in V16.1.0
    harq-ProcessNumberSizeDCI-0-2-r16                       INTEGER (0..4)                                OPTIONAL,   -- Need R
    dmrs-SequenceInitializationDCI-0-2-r16                  ENUMERATED {enabled}                          OPTIONAL,   -- Need S
    numberOfBitsForRV-DCI-0-2-r16                           INTEGER (0..2)                                OPTIONAL,   -- Need R
    antennaPortsFieldPresenceDCI-0-2-r16                    ENUMERATED {enabled}                          OPTIONAL,   -- Need S
    dmrs-UplinkForPUSCH-MappingTypeA-DCI-0-2-r16            CHOICE {release NULL, setup DMRS-UplinkConfig }            OPTIONAL,   -- Need M
    dmrs-UplinkForPUSCH-MappingTypeB-DCI-0-2-r16            CHOICE {release NULL, setup DMRS-UplinkConfig }            OPTIONAL,   -- Need M
    frequencyHoppingDCI-0-2-r16                             CHOICE {
        pusch-RepTypeA                                          ENUMERATED {intraSlot, interSlot},
        pusch-RepTypeB                                          ENUMERATED {interRepetition, interSlot}
    }                                                                                                     OPTIONAL,   -- Need S
    frequencyHoppingOffsetListsDCI-0-2-r16  CHOICE {release NULL, setup FrequencyHoppingOffsetListsDCI-0-2-r16}        OPTIONAL,  -- Need M
    codebookSubsetDCI-0-2-r16               ENUMERATED {fullyAndPartialAndNonCoherent, partialAndNonCoherent,nonCoherent}
                                                                                                          OPTIONAL,   -- Cond codebookBased
    invalidSymbolPatternIndicatorDCI-0-2-r16                ENUMERATED {enabled}                          OPTIONAL,   -- Need S
    maxRankDCI-0-2-r16                                      INTEGER (1..4)                                OPTIONAL,   -- Cond codebookBased
    mcs-TableDCI-0-2-r16                                    ENUMERATED {qam256, qam64LowSE}               OPTIONAL,   -- Need S
    mcs-TableTransformPrecoderDCI-0-2-r16                   ENUMERATED {qam256, qam64LowSE}               OPTIONAL,   -- Need S
    priorityIndicatorDCI-0-2-r16                            ENUMERATED {enabled}                          OPTIONAL,   -- Need S
    pusch-RepTypeIndicatorDCI-0-2-r16                       ENUMERATED { pusch-RepTypeA, pusch-RepTypeB}  OPTIONAL,  -- Need R
    resourceAllocationDCI-0-2-r16                           ENUMERATED { resourceAllocationType0, resourceAllocationType1, dynamicSwitch}
                                                                                                          OPTIONAL,   -- Need M
    resourceAllocationType1GranularityDCI-0-2-r16           ENUMERATED { n2,n4,n8,n16 }                   OPTIONAL,   -- Need S
    uci-OnPUSCH-ListDCI-0-2-r16                             CHOICE {release NULL, setup UCI-OnPUSCH-ListDCI-0-2-r16}   OPTIONAL,   -- Need M
    pusch-TimeDomainAllocationListDCI-0-2-r16               CHOICE {release NULL, setup PUSCH-TimeDomainResourceAllocationList-r16 }
                                                                                                          OPTIONAL,   -- Need M
    -- End of the parameters for DCI format 0_2 introduced in V16.1.0
    -- Start of the parameters for DCI format 0_1 introduced in V16.1.0
    pusch-TimeDomainAllocationListDCI-0-1-r16               CHOICE {release NULL, setup PUSCH-TimeDomainResourceAllocationList-r16 }
                                                                                                          OPTIONAL,   -- Need M
    invalidSymbolPatternIndicatorDCI-0-1-r16          ENUMERATED {enabled}                                OPTIONAL,   -- Need S
    priorityIndicatorDCI-0-1-r16                      ENUMERATED {enabled}                                OPTIONAL,   -- Need S
    pusch-RepTypeIndicatorDCI-0-1-r16                 ENUMERATED { pusch-RepTypeA, pusch-RepTypeB}        OPTIONAL,   -- Need R
    frequencyHoppingDCI-0-1-r16                 ENUMERATED {interRepetition, interSlot}                   OPTIONAL,   -- Cond RepTypeB
    uci-OnPUSCH-ListDCI-0-1-r16                 CHOICE {release NULL, setup UCI-OnPUSCH-ListDCI-0-1-r16  }             OPTIONAL,  -- Need M
    -- End of the parameters for DCI format 0_1 introduced in V16.1.0
    invalidSymbolPattern-r16                    InvalidSymbolPattern-r16                                  OPTIONAL,   -- Need S
    pusch-PowerControl-v1610                CHOICE {release NULL, setup PUSCH-PowerControl-v1610}                       OPTIONAL,   -- Need M
    ul-FullPowerTransmission-r16            ENUMERATED {fullpower, fullpowerMode1, fullpowerMode2}         OPTIONAL,   -- Need R
    pusch-TimeDomainAllocationListForMultiPUSCH-r16  CHOICE {release NULL, setup PUSCH-TimeDomainResourceAllocationList-r16 }
                                                                                                          OPTIONAL,  --  Need M
    numberOfInvalidSymbolsForDL-UL-Switching-r16        INTEGER (1..4)                                    OPTIONAL    -- Cond RepTypeB2
    ]],
    [[
    ul-AccessConfigListDCI-0-2-r17          CHOICE {release NULL, setup UL-AccessConfigListDCI-0-2-r17 }               OPTIONAL,  -- Need M
    betaOffsetsCrossPri0-r17                CHOICE {release NULL, setup BetaOffsetsCrossPriSel-r17 }                   OPTIONAL,  -- Need M
    betaOffsetsCrossPri1-r17                CHOICE {release NULL, setup BetaOffsetsCrossPriSel-r17 }                   OPTIONAL,  -- Need M
    betaOffsetsCrossPri0DCI-0-2-r17         CHOICE {release NULL, setup BetaOffsetsCrossPriSelDCI-0-2-r17 }            OPTIONAL,  -- Need M
    betaOffsetsCrossPri1DCI-0-2-r17         CHOICE {release NULL, setup BetaOffsetsCrossPriSelDCI-0-2-r17 }            OPTIONAL,  -- Need M
    mappingPattern-r17                      ENUMERATED {cyclicMapping, sequentialMapping}                 OPTIONAL,  -- Cond SRSsets
    secondTPCFieldDCI-0-1-r17               ENUMERATED {enabled}                                          OPTIONAL,  -- Need R
    secondTPCFieldDCI-0-2-r17               ENUMERATED {enabled}                                          OPTIONAL,  -- Need R
    sequenceOffsetForRV-r17                 INTEGER (0..3)                                                OPTIONAL,  -- Need R
    ul-AccessConfigListDCI-0-1-r17          CHOICE {release NULL, setup UL-AccessConfigListDCI-0-1-r17 }                OPTIONAL,  -- Need M
    minimumSchedulingOffsetK2-r17           CHOICE {release NULL, setup MinSchedulingOffsetK2-Values-r17 }              OPTIONAL,  -- Need M
    availableSlotCounting-r17               ENUMERATED { enabled }                                         OPTIONAL,  -- Need S
    dmrs-BundlingPUSCH-Config-r17           CHOICE {release NULL, setup DMRS-BundlingPUSCH-Config-r17 }                 OPTIONAL,  -- Need M
    harq-ProcessNumberSizeDCI-0-2-v1700     INTEGER (5)                                                    OPTIONAL,  -- Need R
    harq-ProcessNumberSizeDCI-0-1-r17       INTEGER (5)                                                    OPTIONAL,  -- Need R
    mpe-ResourcePoolToAddModList-r17       SEQUENCE (SIZE(1..maxMPE-Resources-r17)) OF MPE-Resource-r17    OPTIONAL,  -- Need N
    mpe-ResourcePoolToReleaseList-r17      SEQUENCE (SIZE(1..maxMPE-Resources-r17)) OF MPE-ResourceId-r17  OPTIONAL   -- Need N
    ]],
    [[
    maxRank-v1810                           INTEGER (5..8)                                              OPTIONAL, -- Need R
    sTx-2Panel-r18                          ENUMERATED {enabled}                                           OPTIONAL,  -- Need R
    multipanelSchemeSDM-r18                 SDM-Scheme-r18                                                 OPTIONAL,  -- Need R
    multipanelSchemeSFN-r18                 SFN-Scheme-r18                                                 OPTIONAL,  -- Need R
    codebookTypeUL-r18                      CHOICE {release NULL, setup CodebookTypeUL-r18 }                            OPTIONAL,  -- Need M
    applyIndicatedTCI-State-r18             ENUMERATED {first, second}                                     OPTIONAL,  -- Need R
    dynamicTransformPrecoderFieldPresenceDCI-0-1-r18    ENUMERATED {enabled}                               OPTIONAL,  -- Need R
    dynamicTransformPrecoderFieldPresenceDCI-0-2-r18    ENUMERATED {enabled}                               OPTIONAL,  -- Need R
    pusch-ConfigDCI-0-3-r18                 CHOICE {release NULL, setup PUSCH-ConfigDCI-0-3-r18 }                       OPTIONAL   -- Need M
    ]]
}