+ grouping u-plane-transmission-control {
+ description
+ "Configuration for UL U-plane transmission control";
+
+ leaf transmission-window-control {
+ if-feature "feat:STATIC-TRANSMISSION-WINDOW-CONTROL or feat:DYNAMIC-TRANSMISSION-WINDOW-CONTROL";
+ type enumeration {
+ enum NONE {
+ description
+ "O-RU will use normal transmission type with normal transmission window";
+ }
+ enum STATIC {
+ if-feature feat:STATIC-TRANSMISSION-WINDOW-CONTROL;
+ description
+ "O-RU will use transmission window offset and size and transmission type as configured over M-plane";
+ }
+ enum DYNAMIC {
+ if-feature feat:DYNAMIC-TRANSMISSION-WINDOW-CONTROL;
+ description
+ "O-RU will use transmission window offset and size and transmission type as requested over C-plane";
+ }
+ }
+ default NONE;
+
+ description
+ "Selects type of UL U-plane transmission window control for the endpoint";
+ }
+
+ leaf transmission-window-schedule {
+ when "(../transmission-window-control = 'STATIC')";
+ if-feature feat:STATIC-TRANSMISSION-WINDOW-CONTROL;
+ type union {
+ type empty;
+ type leafref {
+ path "/user-plane-configuration/transmission-window-schedules/id";
+ }
+ }
+ description
+ "Identifies U-plane transmission window schedule (which provides a list of symbol-specific offsets)
+ to be used by the endpoint.
+ Symbol-specific offset values from the schedule are added to endpoint specific offset value
+ from transmission-window-offset.
+ If this element is not present, the O-RU assumes as all symbol specific offsets are zero.
+ For restrictions on values of symbol-specific offsets see description of transmission-window-offset.
+ This parameter shall not be set to value other than empty if transmission control is not enabled
+ by transmission-window-control.";
+ }
+
+ leaf transmission-window-offset {
+ when "(../transmission-window-control = 'STATIC')";
+ if-feature feat:STATIC-TRANSMISSION-WINDOW-CONTROL;
+ type uint16;
+ units "number of symbols";
+ default 0;
+ description
+ "Transmission window offset.
+ The effective symbol-specific offset is sum of endpoint-specific offset value from transmission-window-offset
+ and symbol-specific offset from transmission-window-schedules referenced by transmission-window-schedule.
+
+ If this element is not present then O-RU assumes transmission-window-offset is zero.
+ This parameter shall not be set to value other than 0 if transmission control is not enabled
+ by transmission-window-control.
+
+ There is no direct upper bound for this parameter (except value range defined by leaf type) but there are
+ restrictions on combination of values of transmission-window-offset, transmission-window-offset,
+ symbol-specific offset from transmission-window-schedules and transmission-window-size.
+
+ Specifically, if endpoint is set for delay managed operation (non-time-managed-delay-enabled = FALSE)
+ then O-RU handles U-Plane transmission as delay managed traffic and combination of values of
+ transmission-window-offset, symbol-specific offset from transmission-window-schedules and
+ transmission-window-size must not exceed O-RU buffering capacity (transmission-buffering-capacity)
+ for the requested reception schedule.
+
+ If endpoint is set for non-delay managed operation (non-time-managed-delay-enabled = TRUE)
+ then O-RU handles U-Plane transmission on best effort basis. In this case any combination of values
+ of transmission-window-offset, symbol-specific offset from transmission-window-schedules and
+ transmission-window-size is permitted. This does not remove restrictions on parameters due to restrictions
+ defined for value type or restrictions that depend on INDEPENDENT-TRANSMISSION-WINDOW-CONTROL feature
+
+ Additional restrictions on values (and presence) of transmission-window-schedule, transmission-window-offset
+ and transmission-window-size depend on presence of INDEPENDENT-TRANSMISSION-WINDOW-CONTROL feature.
+
+ If INDEPENDENT-TRANSMISSION-WINDOW-CONTROL feature is not supported then all endpoints with
+ transmission control enabled that handle the same carrier type and SCS must be configured
+ (via M-plane or C-plane) with parameter values resulting in transmission windows that coincide
+ between the endpoints. That is, for every symbol N, the effective transmission window for symbol N
+ must be shared (start at the same time and end at the same time) by all the endpoints handling
+ same carrier type and SCS. This restriction applies only to endpoints that have transmission
+ control enabled.
+
+ If INDEPENDENT-TRANSMISSION-WINDOW-CONTROL feature is supported then restriction described
+ above does not apply and a different transmission window (window offset and window size)
+ can be used for every endpoint capable of transmission window control.";
+ }
+
+ leaf transmission-window-size {
+ when "(../transmission-window-control = 'STATIC')";
+ if-feature feat:STATIC-TRANSMISSION-WINDOW-CONTROL;
+ type uint16 {
+ range "0..10000";
+ }
+ units "microsecond";
+ default 0;
+ description
+ "Transmission window size to be used; only values that are compatible with SCS used
+ for the endpoint are allowed.
+ Minimum supported value is determined by SCS specific transmission window size
+ reported by O-RU in ru-delay-profile.
+
+ Client can use special value 0 (zero) instead of the SCS specific transmission window
+ size reported by O-RU in ru-delay-profile with the same effect.
+ This parameter shall not be set to value other than 0 if transmission control is not enabled
+ (transmission-window-control = NONE) or the endpoint is set for non-delay managed operation
+ (non-time-managed-delay-enabled = TRUE).
+
+ There is no direct upper bound for this parameter (except value range defined by leaf type) but there are
+ restrictions on combination of values of transmission-window-offset, transmission-window-offset,
+ symbol-specific offset from transmission-window-schedules and transmission-window-size.
+ See description of transmission-window-offset for more details.";
+ }
+
+ leaf transmission-type {
+ when "(../transmission-window-control = 'STATIC')";
+ if-feature "feat:STATIC-TRANSMISSION-WINDOW-CONTROL and feat:UNIFORMLY-DISTRIBUTED-TRANSMISSION";
+ type enumeration {
+ enum NORMAL {
+ description
+ "Normal transmission (unspecified within transmission window)";
+ }
+ enum UNIFORMLY-DISTRIBUTED {
+ if-feature feat:UNIFORMLY-DISTRIBUTED-TRANSMISSION;
+ description
+ "Uniformly distributed over transmission window: each of N messages in the window
+ transmitted at random time in a separate subwindow; subwindow size is window size / N ";
+ }
+ }
+
+ description "Type of delay supported by the endpoint";
+ }
+ }
+
+ grouping tx-endpoint-compression-grouping {
+ description
+ "Grouping for endpoint compression";
+
+ container compression {
+ presence
+ "This container shall exists to avoid misaligned compression
+ methods between devices";
+
+ description
+ "Container which consists of global configurable parameters for compression";
+
+ uses cf:compression-details;
+
+ leaf fs-offset {
+ if-feature cf:CONFIGURABLE-FS-OFFSET;
+ type uint8;
+ default 0;
+ description
+ "Adjusts FS (full scale) value of IQ format relative to FS derived from unmodified IQ format.
+ Please refer to CU-Plane specification for details";
+ }
+
+ list dynamic-compression-configuration {
+ when "../compression-type = 'DYNAMIC'";
+ key "id";
+ unique "compression-method iq-bitwidth fs-offset";
+ description
+ "List of possible configuration in case dynamic configuration is used
+ Note: In case of empty list all available compressions can be chosen dynamically
+ and default fs-offset is taken (0).
+ If the feature CONFIGURABLE-FS-OFFSET is not supported,
+ fs-offset will not be considered as one of the criteria for unique statement.
+ Refer to RFC7950 clause 7.8.3 for details of unique statement";
+
+ leaf id {
+ type uint16;
+ description
+ "Identification number for particular compression";
+ }
+
+ uses cf:compression-method-grouping;
+
+ leaf fs-offset {
+ if-feature cf:CONFIGURABLE-FS-OFFSET;
+ type uint8;
+ default 0;
+ description
+ "Adjusts FS (full scale) value of IQ format relative to FS derived from unmodified IQ format.
+ Please refer to CU-Plane specification for details";
+ }
+
+ leaf channel-information-iq-bitwidth {
+ type uint8{
+ range "1..16";
+ }
+ status deprecated;
+ description
+ "I/Q bitwidth for channel information in Section Type6.
+ Leaf is deprecated as it should be independent of dynamic compression,
+ NETCONF client instead uses channel-information-bitwidth schema node";
+ }
+ }
+
+ leaf channel-information-bitwidth {
+ type uint8{
+ range "1..16";
+ }
+ description
+ "I/Q bitwidth for channel information in Section Type6.
+ maximum value of 16bit is limitted by 4bit ciIqWidth in the C-Plane message.
+ Note: This parameter shall be used when the NETCONF client does not make use of
+ the CHANNEL-INFORMATION-COMPRESSION feature.";
+ }
+
+ list channel-information-compressions {
+ if-feature "feat:CHANNEL-INFORMATION-COMPRESSION";
+ key id;
+
+ leaf id {
+ type uint16;
+ description
+ "Identification number for particular channel information compression";
+ }
+
+ leaf channel-information-compression-method {
+ type cf:ci-compression-method-def;
+ description
+ "Channel information compression method";
+ }
+
+ leaf iq-bitwidth {
+ type uint8{
+ range "1..16";
+ }
+ description
+ "Bitwidth to be used in compression, maximum value of 16bit is limitted by 4bit ciIqWidth in the C-Plane message.
+
+ When this schema node is used in the configuration, the O-RU shall ignore the configuration of the
+ /low-level-tx-endpoints/compression/channel-information-bitwidth schema node";
+ }
+
+ description
+ "List of available compressions, that can be dynamically choosen, for channel information (e.g. ST6) for this endpoint.
+ Note1: When only one compression is listed here, it implies that channel information compression
+ is static and mentioned compression is taken into use.
+ Note2: O-RU Shall reject configuration with compressions that are not supported";
+ }
+
+ list bf-weights-compressions {
+ key id;
+
+ leaf id {
+ type uint16;
+ description
+ "Identification number for particular beamforming compression";
+ }
+
+ leaf bf-weights-compression {
+ type cf:bf-compression-method-def;
+ description
+ "Beamforming weight compression method";
+ }
+
+ leaf iq-bitwidth {
+ type uint8;
+ description
+ "Bitwidth to be used in compression";
+ }
+
+ description
+ "List of available compressions, that can be dynamically choosen, for beamforming weights for this endpoint.
+ Note1: When only one compression is listed here, it implies that beamforming weights compression
+ is static and mentioned compression is taken into use.
+ Note2: O-RU Shall reject configuration with compressions that are not supported";
+ }
+ }
+ }
+
+ grouping rx-endpoint-compression-grouping {
+ description
+ "Grouping for endpoint compression";
+
+ container compression {
+ presence
+ "This container shall exists to avoid misaligned compression
+ methods between devices";
+
+ description
+ "Container which consists of global configurable parameters for compression";
+
+ uses cf:compression-details;
+
+ leaf fs-offset {
+ if-feature cf:CONFIGURABLE-FS-OFFSET;
+ type uint8;
+ default 0;
+ description
+ "Adjusts FS (full scale) value of IQ format relative to FS derived from unmodified IQ format.
+ Please refer to CU-Plane specification for details";
+ }
+
+ list dynamic-compression-configuration {
+ when "../compression-type = 'DYNAMIC'";
+ key "id";
+ unique "compression-method iq-bitwidth fs-offset";
+ description
+ "List of possible configuration in case dynamic configuration is used
+ Note: In case of empty list all available compressions can be chosen dynamically
+ and default fs-offset is taken (0).
+ If the feature CONFIGURABLE-FS-OFFSET is not supported,
+ fs-offset will not be considered as one of the criteria for unique statement.
+ Refer to RFC7950 clause 7.8.3 for details of unique statement";
+
+ leaf id {
+ type uint16;
+ description
+ "Identification number for particular compression";
+ }
+
+ uses cf:compression-method-grouping;
+
+ leaf fs-offset {
+ if-feature cf:CONFIGURABLE-FS-OFFSET;
+ type uint8;
+ default 0;
+ description
+ "Adjusts FS (full scale) value of IQ format relative to FS derived from unmodified IQ format.
+ Please refer to CU-Plane specification for details";
+ }
+ }
+
+ list bf-weights-compressions {
+ key id;
+
+ leaf id {
+ type uint16;
+ description
+ "Identification number for particular beamforming compression";
+ }
+
+ leaf bf-weights-compression {
+ type cf:bf-compression-method-def;
+ description
+ "Beamforming weight compression method";
+ }
+
+ leaf iq-bitwidth {
+ type uint8;
+ description
+ "Bitwidth to be used in compression";
+ }
+
+ description
+ "List of available compressions, that can be dynamically choosen, for beamforming weights for this endpoint.
+ Note1: When only one compression is listed here, it implies that beamforming weights compression
+ is static and mentioned compression is taken into use.
+ Note2: O-RU Shall reject configuration with compressions that are not supported";
+ }
+ }
+ }
+
+ grouping supported-section-type4-config {
+ description
+ "Set of parameters required for section type 4 slot configuration message.";
+ list st4-supported-commands {
+ key "st4-command-type";
+
+ description
+ "This parameter specifies the list of Section Type 4 command types supported by O-RU.";
+ leaf st4-command-type {
+ type enumeration {
+ enum TIME_DOMAIN_BEAM_CONFIG {
+ description "O-RU support for receiving time domain beamforming command.";
+ }
+ enum TDD_CONFIG_PATTERN {
+ description "O-RU support for receiving TDD symbol pattern for a given slot.";
+ }
+ }
+ description
+ "Section Type 4 command types supported by O-RU.";
+ }
+ }
+
+ list st4-reception-mask {
+ key "cmd-scope";
+
+ description
+ "List of symbol mask per command scope, specifying the O-RU capability to receive Section Type 4 message for a
+ given command scope only for symbols for which the corresponding bit is set to '1' in the bitmask. If the O-RU
+ receives a Section Type 4 message with associated command for a symbol whose bit value is set to '0' in this
+ bitmask, the O-RU shall reject the Section Type 4 message";
+
+ leaf cmd-scope {
+ type enumeration {
+ enum ARRAY-COMMAND {
+ description
+ "Command applies to all endpoints assigned to the tx-array(s) and/or rx-array(s).If the O-RU
+ is operating with multiple O-DUs, the scope of an individual O-DU is limited, to the
+ endpoints assigned to the O-DU which was the originator of the command.";
+ }
+ enum CARRIER-COMMAND {
+ description
+ "Command applies to all endpoints assigned to the tx-array-carrier and/or rx-array-carrier.";
+ }
+ enum O-RU-COMMAND {
+ description
+ "O-RU level command, i.e., one that applies to all arrays and carriers. If the O-RU
+ is operating with multiple O-DUs, the scope of an individual O-DU is limited, as
+ specified in CUS-Plane specification, clause 7.5.2.17.";
+ }
+ }
+ description "Command scope for section type 4 commands";
+ }
+
+ leaf st4-reception-bitmask {
+ type uint16;
+ description
+ "This parameter specifies the O-RU capability to receive Section Type 4 message with associated commands for the symbols
+ for which the corresponding bit is set to '1' in the bitmask. If the O-RU receives a Section Type 4 message with
+ associated command for a symbol whose bit value is set to '0' in this bitmask, the O-RU shall reject the Section Type 4 message";
+ }
+ }
+ }
+