1 module o-ran-module-cap {
3 namespace "urn:o-ran:module-cap:1.0";
4 prefix "o-ran-module-cap";
6 import o-ran-compression-factors {
8 revision-date 2020-08-10;
11 organization "O-RAN Alliance";
17 "This module defines the module capabilities for
20 Copyright 2020 the O-RAN Alliance.
22 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS'
23 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
24 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
25 ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
26 LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
27 CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
28 SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
29 INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
30 CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
31 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32 POSSIBILITY OF SUCH DAMAGE.
34 Redistribution and use in source and binary forms, with or without
35 modification, are permitted provided that the following conditions are met:
37 * Redistributions of source code must retain the above copyright notice,
38 this list of conditions and the above disclaimer.
39 * Redistributions in binary form must reproduce the above copyright notice,
40 this list of conditions and the above disclaimer in the documentation
41 and/or other materials provided with the distribution.
42 * Neither the Members of the O-RAN Alliance nor the names of its
43 contributors may be used to endorse or promote products derived from
44 this software without specific prior written permission.";
46 revision "2020-08-10" {
50 1) added RO capability to expose O-RU's ability to support udCompLen record in U-Plane section header fields
51 2) feature indicating support for static PRACH configuration introduced
52 3) feature indicating support for static SRS configuration introduced
53 4) feature indicating support for TDD pattern configuration introduced
54 5) backward compatible change to introduce new O-RU's features related
55 to Section Description Priority to serve for CUS-Plane C";
57 reference "ORAN-WG4.M.0-v04.00";
60 revision "2020-04-17" {
64 1) Adding optional little endian support
65 2) Added support for Dynamic Spectrum Sharing feature
66 3) Enable number-of-ru-ports to be different between dl and ul
67 4) Enable regularizationFactor to be signalled outside of section type 6
68 5) Enable PRACH preamble formats supported to be signalled by O-RU
69 6) adding support for selective RE sending
70 7) supporting new section extension for grouping multiple ports
71 8) signalling to enable O-RU to ndicate is requires unique ecpri sequence id
72 for eAxC_IDs serving for UL and DL for the same carrier component";
74 reference "ORAN-WG4.M.0-v03.00";
77 revision "2019-07-03" {
81 1) backward compatible change to introduce new RW leafs for use in
82 constraints in uplane-config and laa models.
83 2) removing unnecessary relations to band 46 in uplink";
85 reference "ORAN-WG4.M.0-v01.00";
88 revision "2019-02-04" {
92 1) imported model from xRAN
93 2) changed namespace and reference from xran to o-ran";
95 reference "ORAN-WG4.M.0-v01.00";
100 "Indicates that the Radio Unit supports LAA.";
103 feature EAXC-ID-GROUP-SUPPORTED {
105 "indicates that the Radio Unit supports EAXC-ID-GROUP-SUPPORTED.";
108 feature TRANSPORT-FRAGMENTATION {
110 "This leaf is used to indicate whether the O-RU supports O-RAN Radio Transport Fragmentation";
115 "Indicates that the Radio Unit supports Dynamic Spectrum Sharing between LTE and NR.";
118 feature PRACH-STATIC-CONFIGURATION-SUPPORTED {
120 "This leaf is used to indicate O-RU's support for configuration of PRACH (Physical Random Access Channel) pattern in the static manner, so that PRACH U-Plane traffic can be processed by RU without receiving C-Plane messages conveying the PRACH configuration.";
123 feature SRS-STATIC-CONFIGURATION-SUPPORTED {
125 "This leaf is used to indicate O-RU's support for configuration of SRS (Sounding Reference Signal Channel) pattern in the static manner, so that SRS U-Plane traffic can be processed by RU without receiving C-Plane messages conveying the SRS configuration.";
128 feature CONFIGURABLE-TDD-PATTERN-SUPPORTED {
130 "This leaf is used to indicate O-RU's support for configurable TDD pattern.";
133 typedef sub-band-string {
137 description "Sub bands definition";
140 typedef scs-config-type {
145 "15kHz sub carrier spacing";
150 "30kHz sub carrier spacing";
155 "60kHz sub carrier spacing";
160 "120kHz sub carrier spacing";
165 "240kHz sub carrier spacing";
170 "1,25kHz sub carrier spacing";
175 "3.75kHz sub carrier spacing";
180 "5kHz sub carrier spacing";
185 "7.5kHz sub carrier spacing";
190 "Scs configuration type definition";
193 grouping compression-method-grouping {
195 "Grouping for compression method.";
197 leaf compression-method {
199 enum BLOCK_FLOATING_POINT {
201 "Block floating point compression and decompression will be used";
206 "Block scaling compression and decompresion will be used";
211 "u-Law compression and decompresion method will be used";
216 "Beamspace compression and decompression will be used";
221 "Modulation compression and decompression will be used";
224 enum BLOCK-FLOATING-POINT-SELECTIVE-RE-SENDING {
226 "block floating point with selective re sending
227 compression and decompression will be used";
229 enum MODULATION-COMPRESSION-SELECTIVE-RE-SENDING {
231 "modulation compression with selective re sending
232 compression and decompression will be used";
236 "Compresion method which can be supported by the O-RU.
237 An O-RU may further refine the applicability of compression
238 methods per endpoint using o-ran-uplane-conf.yang model";
242 grouping sub-band-max-min-ul-dl-frequency {
244 "Grouping for defining max and min supported frequency - dl and ul.";
246 leaf max-supported-frequency-dl {
249 "This value indicates Maximum supported downlink frequency in the
250 LAA subband. Value unit is Hz.";
253 leaf min-supported-frequency-dl {
256 "This value indicates Minimum supported downlink frequency in the
257 LAA subband. Value unit is Hz.";
261 grouping format-of-iq-sample {
263 "Indicates module capabilities about IQ samples";
265 leaf dynamic-compression-supported {
269 "Informs if radio supports dynamic compression method";
272 leaf realtime-variable-bit-width-supported {
276 "Informs if O-RU supports realtime variable bit with";
279 list compression-method-supported {
280 uses cf:compression-details;
282 leaf-list fs-offset {
283 if-feature cf:CONFIGURABLE-FS-OFFSET;
287 "List of fs offset values supported with this IQ format / compression method;
288 fs-offset adjusts FS (full scale) value of IQ format relative to FS derived from unmodified IQ format.
289 Please refer to CU-Plane specification for details";
293 "List of supported compression methods by O-RU
294 Note: if O-RU supports different compression methods per endpoint
295 then please refer to endpoints to have information what
296 exactly is supported on paticular endpoint";
299 leaf variable-bit-width-per-channel-supported {
300 when "/module-capability/ru-capabilities/format-of-iq-sample/realtime-variable-bit-width-supported = 'true'";
304 "Informs if variable bit width per channel is supported or not";
307 leaf syminc-supported {
311 "Informs if symbol number increment command in a C-Plane is
315 leaf regularization-factor-se-supported {
319 "Informs if regularizationFactor in section type 5 is
320 supported(true) or not(false)";
323 leaf little-endian-supported {
328 "All O-RUs support bigendian byte order. This node informs if module supports the
329 the optional capability for little endian byte order for C/U plane data flows.
331 Note - little endian support does not invalidate bigendian support.";
338 "Grouping for scs-a and scs-b";
340 type scs-config-type;
342 "Sub-carrier spacing configuration";
345 type scs-config-type;
347 "Sub-carrier spacing configuration";
351 grouping ul-mixed-num-required-guard-rbs {
353 "Required number of guard resource blocks for the combination of
354 subcarrier spacing values for uplink";
356 leaf number-of-guard-rbs-ul{
359 "This value indicates the required number of guard resource blocks
360 between the mixed numerologies, the RB using scs-a and the RB
361 using scs-b. It's number is based on scs-a";
365 grouping dl-mixed-num-required-guard-rbs {
367 "Required number of guard resource blocks for the combination of
368 subcarrier spacing values for uplink";
370 leaf number-of-guard-rbs-dl{
373 "This value indicates the required number of guard resource blocks
374 between the mixed numerologies, the RB using scs-a and the RB
375 using scs-b. It's number is based on scs-a";
379 grouping ru-capabilities {
381 "Structure representing set of capabilities.";
383 leaf ru-supported-category {
387 "Informs that precoding is not supported in O-RU";
391 "Informs that precoding is supported in O-RU";
396 "Informs about which category O-RU supports";
399 leaf number-of-ru-ports {
403 "Assuming all endpoints support time-managed traffic AND non-time-managed traffic (choice is as per configuration)
404 - the number of O-RU ports is the product of number of spatial streams (leaf number-of-spatial-streams) and number of numerologies O-RU supports.
405 For example, if the number of spatial streams is 4 then the number of O-RU ports is 8 when PUSCH and PRACH are processed in the different endpoints.
406 In case there are specific endpoints that support non-time-managed traffic only
407 - the number of O-RU ports calculated with above mentioned equation is extended by number of endpoints supporting only non-time-managed traffic.";
409 leaf number-of-ru-ports-ul {
412 "Assuming all endpoints support time-managed traffic AND non-time-managed traffic (choice is as per configuration)
413 - the number of O-RU ports for uplink is the product of number of spatial streams (leaf number-of-spatial-streams) and number of numerologies O-RU supports.
414 For example, if the number of spatial streams is 4 then the number of O-RU ports is 8 when PUSCH and PRACH are processed in the different endpoints.
415 In case there are specific endpoints that support non-time-managed traffic only
416 - the number of O-RU ports calculated with above mentioned equation is extended by number of endpoints supporting only non-time-managed traffic.";
418 leaf number-of-ru-ports-dl {
421 "Assuming all endpoints support time-managed traffic AND non-time-managed traffic (choice is as per configuration)
422 - the number of O-RU ports for downlink is the product of number of spatial streams (leaf number-of-spatial-streams) and number of numerologies O-RU supports.
423 For example, if the number of spatial streams is 4 then the number of O-RU ports is 8 when SSB and non-SSB are processed in the different endpoints.
424 In case there are specific endpoints that support non-time-managed traffic only
425 - the number of O-RU ports calculated with above mentioned equation is extended by number of endpoints supporting only non-time-managed traffic.";
428 leaf number-of-spatial-streams {
431 "This value indicates the number of spatial streams supported at O-RU for DL and UL.
432 For DL, it is same as the number of antenna ports specified in 3GPP TS38.214, Section 5.2 and 3GPP TS36.213, Section 5.2.";
435 leaf max-power-per-pa-antenna {
440 "This value indicates Maximum Power per PA per antenna. Value unit is dBm.";
443 leaf min-power-per-pa-antenna {
448 "This value indicates Minimum Power per PA per antenna. Value unit is dBm.";
451 leaf fronthaul-split-option {
456 "This value indicates the Fronthaul Split Option, i.e., 2 or 7 in this release.";
459 container format-of-iq-sample {
461 "Indicates module capabilities about IQ samples";
463 uses format-of-iq-sample;
466 list ul-mixed-num-required-guard-rbs {
469 "List of required number of guard resource blocks
470 for the combination of subcarrier spacing values for downlink";
472 uses ul-mixed-num-required-guard-rbs;
474 list dl-mixed-num-required-guard-rbs {
477 "List of required number of guard resource blocks
478 for the combination of subcarrier spacing values for uplink";
480 uses dl-mixed-num-required-guard-rbs;
483 leaf energy-saving-by-transmission-blanks {
487 "Parameter informs if unit supports energy saving by transmission blanking";
489 container eaxcid-grouping-capabilities {
490 if-feature o-ran-module-cap:EAXC-ID-GROUP-SUPPORTED;
492 "a container with parameters for eaxcid grouping";
493 leaf max-num-tx-eaxc-id-groups {
496 "Maximum number of configurable tx-eaxc-id-group supported by O-RU.";
498 leaf max-num-tx-eaxc-ids-per-group {
501 "Maximum number of member-tx-eaxc-id in single tx-eaxc-id-group supported by O-RU.";
503 leaf max-num-rx-eaxc-id-groups {
506 "the maximum number of groups with the eAxC IDs those are assigned to low-level-rx-links.";
508 leaf max-num-rx-eaxc-ids-per-group {
511 "the maximum number of eAxC IDs per rx-eaxc-id-group.";
515 leaf dynamic-transport-delay-management-supported {
519 "Parameter informs if unit supports dynamic transport delay management through eCPRI Msg 5";
522 leaf support-only-unique-ecpri-seqid-per-eaxc {
526 "Parameter informs if O-RU expects unique ecpri sequence id for eAxC_IDs serving
527 for UL and DL for the same carrier component.
529 Note: If this is set to TRUE, the O-DU can decide to either use different eAxC_IDs for UL and
530 DL or can generate unique sequence ID per eAxC_ID.
532 TAKE NOTE: This leaf is backwards compatible from an O-RU persepctive BUT an O-RU that
533 sets this leaf to TRUE may result in incompatibilities when operating with an O-DU
534 designed according to the O-RAN CUS-Plane Specification v02.00, e.g., if the O-DU is
535 incapable of using different eAxC values between UL and DL";
538 container coupling-methods {
540 "O-RU's capabilities related to supported C-Plane and U-Plane coupling methods";
542 leaf coupling-via-frequency-and-time {
545 "Coupling via frequency and time; see methods of coupling of C-plane and U-plane in CUS-Plane specification";
548 leaf coupling-via-frequency-and-time-with-priorities {
551 "Coupling via Frequency and time with priorities; see methods of coupling of C-plane and U-plane in CUS-Plane specification.
552 Note: If coupling-via-frequency-and-time-with-priorities is 'true' then coupling-via-frequency-and-time shall also be 'true'.";
556 leaf ud-comp-len-supported {
559 "This property informs if O-RU supports optional field udCompLen in U-Plane messages.
560 Only in case this leaf is present and its value is TRUE, O-RU supports U-Plane messages
561 containing udCompLen field in section header.";
565 grouping sub-band-info {
566 description "container for collection of leafs for LAA subband 46";
567 list sub-band-frequency-ranges {
569 description "frequency information on a per sub-band basis";
571 type sub-band-string;
572 description "Sub band when band 46";
574 uses sub-band-max-min-ul-dl-frequency;
576 leaf number-of-laa-scarriers {
579 "This value indicates the number of LAA secondary carriers supported at O-RU.";
582 leaf maximum-laa-buffer-size {
585 "Maximum O-RU buffer size in Kilobytes (KB) per CC. This parameter is
586 needed at the O-DU to know how much data can be sent in advance
587 and stored at the O-RU to address the LBT uncertainity.";
590 leaf maximum-processing-time {
594 "Maximum O-RU Processing time in microseconds at the O-RU to handle the
595 received/transmitted packets from/to the O-DU. This parameter is
596 needed at the O-DU to determine the time where it needs to send
597 the data to the O-RU.";
600 leaf self-configure {
602 description "This value indicates that the O-RU can manage the contention window locally. ";
606 grouping support-for-dl {
608 "Grouping for DL specific parameters";
610 leaf max-supported-frequency-dl {
613 "This value indicates Maximum supported downlink frequency. Value unit is Hz.";
616 leaf min-supported-frequency-dl {
619 "This value indicates Minimum supported downlink frequency. Value unit is Hz.";
622 leaf max-supported-bandwidth-dl {
625 "This value indicates Maximum total downlink bandwidth in module. Value unit is Hz.";
628 leaf max-num-carriers-dl {
631 "This value indicates Maximum number of downlink carriers in module.";
634 leaf max-carrier-bandwidth-dl {
637 "This value indicates Maximum bandwidth per downlink carrier. Value unit is Hz.";
640 leaf min-carrier-bandwidth-dl {
643 "This value indicates Minimum bandwidth per downlink carrier. Value unit is Hz.";
646 leaf-list supported-technology-dl {
649 description "LTE is supported in DL path.";
652 description "NR is supported in DL path.";
655 if-feature DSS_LTE_NR;
657 "DSS is supported in the DL, which implicitly means LTE and NR are also
658 BOTH supported in the DL.";
663 "This list provides information regarding technologies supported in DL path";
667 grouping support-for-ul {
669 "Grouping for UL specific parameters";
671 leaf max-supported-frequency-ul {
674 "This value indicates Maximum supported uplink frequency. Value unit is Hz.";
677 leaf min-supported-frequency-ul {
680 "This value indicates Minimum supported uplink frequency. Value unit is Hz.";
683 leaf max-supported-bandwidth-ul {
686 "This value indicates Maximum total uplink bandwidth in module. Value unit is Hz.";
689 leaf max-num-carriers-ul {
692 "This value indicates Maximum number of uplink carriers in module.";
695 leaf max-carrier-bandwidth-ul {
698 "This value indicates Maximum bandwidth per uplink carrier. Value unit is Hz.";
701 leaf min-carrier-bandwidth-ul {
704 "This value indicates Minimum bandwidth per uplink carrier. Value unit is Hz.";
707 leaf-list supported-technology-ul {
710 description "LTE is supported in UL path.";
713 description "NR is supported in UL path.";
716 if-feature DSS_LTE_NR;
718 "DSS is supported in the UL, which implicitly means LTE and NR are also
719 BOTH supported in the UL.";
724 "This list provides information regarding technologies supported in UL path";
728 grouping band-capabilities {
730 "Capabilities that are needed to be defined per each band";
738 container sub-band-info {
739 when "../band-number = '46'";
740 if-feature "o-ran-module-cap:LAA";
741 description "container for collection of leafs for LAA subband 46";
748 leaf max-num-component-carriers {
750 description "maximum number of component carriers supported by the O-RU";
755 description "maximum number of bands supported by the O-RU";
758 leaf max-num-sectors {
760 description "maximum number of sectors supported by the O-RU";
763 leaf max-power-per-antenna {
768 "This value indicates Maximum Power per band per antenna. Value unit is dBm.";
771 leaf min-power-per-antenna {
776 "This value indicates Minimum Power per band per antenna. Value unit is dBm.";
779 leaf codebook-configuration_ng {
782 "This parameter informs the precoder codebook_ng that are used for precoding";
785 leaf codebook-configuration_n1 {
788 "This parameter informs the precoder codebook_n1 that are used for precoding";
791 leaf codebook-configuration_n2 {
794 "This parameter informs the precoder codebook_n2 that are used for precoding";
798 container module-capability {
801 "module capability object responsible for providing module capability.";
803 container ru-capabilities {
806 "Structure representing set of capabilities.";
808 uses ru-capabilities;
811 list band-capabilities {
815 "Capabilities that are needed to be defined per each band";
817 uses band-capabilities;
819 container rw-sub-band-info {
820 if-feature "o-ran-module-cap:LAA";
821 description "config true leafrefs for use as constraints for config true leafs";
822 leaf rw-number-of-laa-scarriers {
824 path "/module-capability/band-capabilities/sub-band-info/number-of-laa-scarriers";
825 require-instance false;
828 "This value indicates the number of LAA secondary carriers supported at O-RU.";
830 leaf rw-self-configure {
832 path "/module-capability/band-capabilities/sub-band-info/self-configure";
833 require-instance false;
836 "This value indicates that the O-RU can manage the contention window locally.";