Merge "Update YANG models for OpenFronthaul M-Plane."
[sim/o1-interface.git] / ntsimulator / deploy / o-ran-ru-fh / yang / o-ran-sync.yang
@@ -19,7 +19,7 @@ module o-ran-sync {
   description
     "This module defines synchronization mechanism for the O-RAN Equipment.
 
-    Copyright 2020 the O-RAN Alliance.
+    Copyright 2021 the O-RAN Alliance.
 
     THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS'
     AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
@@ -45,17 +45,46 @@ module o-ran-sync {
     contributors may be used to endorse or promote products derived from
     this software without specific prior written permission.";
 
+  revision "2022-08-15" {
+    description
+      "version 8.1.0
+
+      1) clarifiy description of quality-level";
+
+    reference "ORAN-WG4.M.0-v08.00";
+  }
+
+  revision "2021-12-01" {
+    description
+      "version 8.0.0
+
+      1) typographical corrections in descriptions.
+      2) add support for boundary clock indication";
+
+    reference "ORAN-WG4.M.0-v08.00";
+  }
+
+  revision "2021-03-22" {
+    description
+      "version 1.4.0
+
+      1) typographical corrections in descriptions.
+      2) Description alignment with specification.";
+
+    reference "ORAN-WG4.M.0-v04.00";
+  }
+
   revision "2020-08-10" {
     description
       "version 1.3.0
 
-      1) Update description of ENCHANCED under container sync-capability leaf sync-t-tsc with
+      1) Update description of ENCHANCED (sic) under container sync-capability leaf sync-t-tsc with
          correct reference to IEEE 802.1CM sections.
       2) Add description that CLASS_B and ENHANCED are as per IEEE802.1CM.
       3) Add freq-error and time-error leafs under container sync-status. This allows an O-DU to
          query the O-RU using NETCONF <get> procedure about the phase and frequency errors at
          any time.
-      4) Move delay-assymmetry outside of container g-8275-1-config as the delay assymetry
+      4) Move delay-asymmetry outside of container g-8275-1-config as the delay asymmetry
          is applicable to G.8275.2 as well
       5) Add gnss-rx-error in gnss-data for LLS-C4 configuration
       6) Correct the description of state enumerations under synce-status. The earlier
@@ -92,15 +121,6 @@ module o-ran-sync {
     reference "ORAN-WG4.M.0-v01.00";
   }
 
-  typedef geographic-coordinate-degree {
-           type decimal64 {
-             fraction-digits 8;
-           }
-           description
-             "Decimal degree (DD) used to express latitude and longitude
-              geographic coordinates.";
-       }
-
   feature GNSS {
     description
       "This feature indicates that the equipment supports integrated GNSS functionality.";
@@ -108,9 +128,18 @@ module o-ran-sync {
 
   feature ANTI-JAM {
     description
-      "This feature indicates that the equipment supports Anti-jam fuctionality";
+      "This feature indicates that the equipment supports Anti-jam functionality";
   }
 
+  typedef geographic-coordinate-degree {
+           type decimal64 {
+             fraction-digits 8;
+           }
+           description
+             "Decimal degree (DD) used to express latitude and longitude
+              geographic coordinates.";
+       }
+
   grouping sync-group {
     description "This group represents the state and status of timing and synchronization of the O-RU";
     container sync-status {
@@ -215,6 +244,12 @@ module o-ran-sync {
 
         reference "IEEE 802.1CM";
       }
+
+      leaf boundary-clock-supported {
+        type boolean;
+        description
+          "This parameter indicates whether O-RU supports the T-BC profiles in ITU-T G.8275.1.";
+      }
     }
 
     container ptp-config {
@@ -242,7 +277,7 @@ module o-ran-sync {
         type enumeration {
           enum G_8275_1 {
             description
-              "Usage of multicast over ethernet";
+              "Usage of multicast over Ethernet";
           }
 
           enum G_8275_2 {
@@ -252,7 +287,7 @@ module o-ran-sync {
         }
         default "G_8275_1";
         description
-          "Type of profile to be used in ptp setting";
+          "Type of profile to be used in PTP setting";
       }
       leaf delay-asymmetry {
         type int16 {
@@ -261,46 +296,46 @@ module o-ran-sync {
         default 0;
         description
           "Defines static phase error in the recovered PTP timing signal to be compensated at the O-RU.
-          The error is defined in units of nanoseconds in the range ±10 000 ns.
+          The error is defined in units of nanoseconds in the range +/-10 000 ns.
 
           If the deprecated delay-asymmetry schema node in the g-8275-1-config container is configured
           together with this schema node, then the O-RU shall use this schema node and ignore the
           value in the g-8275-1-config container.";
       }
 
-       container g-8275-1-config {
-         when "../ptp-profile='G_8275_1'";
+      container g-8275-1-config {
+        when "../ptp-profile='G_8275_1'";
 
-         description
-           "Container allowing for configuration of G8275.1";
+        description
+          "Container allowing for configuration of G8275.1";
 
-          leaf multicast-mac-address {
-            type enumeration {
-              enum FORWARDABLE {
-                description
-                  "means, that PTP shall use 01-1B-19-00-00-00 destination MAC address";
-              }
-              enum NONFORWARDABLE {
-                description
-                  "means, that PTP shall use 01-80-C2-00-00-0E destination MAC address";
-              }
+        leaf multicast-mac-address {
+          type enumeration {
+            enum FORWARDABLE {
+              description
+                "means, that PTP shall use 01-1B-19-00-00-00 destination MAC address";
+            }
+            enum NONFORWARDABLE {
+              description
+                "means, that PTP shall use 01-80-C2-00-00-0E destination MAC address";
             }
-            default FORWARDABLE;
-            description
-              "The parameter defines destination MAC address, used by the DU in the egress PTP messages.";
           }
+          default FORWARDABLE;
+          description
+            "The parameter defines destination MAC address, used by the DU in the egress PTP messages.";
+        }
 
-          leaf delay-asymmetry {
-            type int16 {
-              range -10000..10000;
-            }
-            default 0;
-            status deprecated;
-            description
-              "Defines static phase error in the recovered PTP timing signal to be compensated at the O-RU.
-              The error is defined in units of nanoseconds in the range ±10 000 ns.";
+        leaf delay-asymmetry {
+          type int16 {
+            range -10000..10000;
           }
-       }
+          default 0;
+          status deprecated;
+          description
+            "Defines static phase error in the recovered PTP timing signal to be compensated at the O-RU.
+            The error is defined in units of nanoseconds in the range +/-10 000 ns.";
+        }
+      }
 
       container g-8275-2-config {
         when "../ptp-profile='G_8275_2'";
@@ -320,7 +355,7 @@ module o-ran-sync {
         list master-ip-configuration {
           key local-priority;
           description
-            "The parameter defines list of ip configuration of devices acting as ptp signal source.";
+            "The parameter defines list of IP configuration of devices acting as PTP signal source.";
           leaf local-priority {
             type uint8;
             description
@@ -356,13 +391,13 @@ module o-ran-sync {
 
     container ptp-status {
       description
-        "ptp status container";
+        "PTP status container";
       leaf reporting-period {
         type uint8;
         default 10;
         description
           "This parameter defines minimum period in seconds between reports,
-          sent by the NETCONF Client, for parameters in this container.";
+          sent by the O-RU, for parameters in this container.";
       }
       leaf lock-state {
         type enumeration {
@@ -398,7 +433,7 @@ module o-ran-sync {
         config false;
         description
           "This parameter contains identity of the clock,
-            according to IEEE 1588-2008 defintion, controlled by the O-RU.
+            according to IEEE 1588-2008 definition, controlled by the O-RU.
           The string shall be formatted as an 8-octet hex value with the '0x' prefix.";
       }
 
@@ -414,7 +449,7 @@ module o-ran-sync {
         config false;
 
         description
-          "Synchronisation sources";
+          "Synchronization sources";
 
         leaf local-port-number {
           type leafref {
@@ -430,28 +465,28 @@ module o-ran-sync {
             enum PARENT {
               description
                 "Indicates that this source is the current master clock, i.e. the clock,
-                which the clock, controlled by the Netconf Server, is synchronized to";
+                which the clock, controlled by the NETCONF Server, is synchronized to";
             }
             enum OK {
               description
                 "Indicates that this source is an alternate master, which the clock,
-                controlled by the Netconf Server, can potentially synchronize to,
+                controlled by the NETCONF Server, can potentially synchronize to,
                 i.e. clock class and priority, announced by the master clock is lower,
-                compared to those of the clock, controlled by the Netconf Server,
+                compared to those of the clock, controlled by the NETCONF Server,
                 and and the clock class is accepted";
             }
             enum NOK {
               description
                 "Indicates that this source is an alternate master, which the clock,
-                controlled by the Netconf Server, has an operational connection to,
+                controlled by the NETCONF Server, has an operational connection to,
                 but the class or priority of the master clock is higher or equal
-                to those of the clock, controlled by the Netconf Server,
+                to those of the clock, controlled by the NETCONF Server,
                 or the clock class is not accepted";
             }
             enum DISABLED {
               description
                 "Indicates that this source is an alternate master, which the clock,
-                controlled by the Netconf Server, has no operational connection to";
+                controlled by the NETCONF Server, has no operational connection to";
             }
           }
           description
@@ -689,7 +724,7 @@ module o-ran-sync {
           default 10;
           description
             "This parameter defines minimum period in seconds between reports,
-             sent by the NETCONF client, for parameters in this container.";
+             sent by the O-RU, for parameters in this container.";
       }
 
       leaf lock-state {
@@ -733,16 +768,16 @@ module o-ran-sync {
             enum OK {
               description
                 "Indicates that this source is an alternate SyncE source, which the clock,
-                controlled by the Netconf Server, can potentially synchronize to, when the
+                controlled by the NETCONF Server, can potentially synchronize to, when the
                 clock quality of the primary SyncE signal advertised in ESMC packets is
                 lower than the expected or configured clock quality; or when this source
-                clock quality is better than the primary SyncE source clock quality";
+                clock's quality is better than the primary SyncE source clock quality";
             }
             enum NOK {
               description
                 "Indicates that this source is an alternate SyncE source, and the O-RU
                  has an operational connection to this alternate SyncE source, but the
-                 clock quality is not in the configured acceptable range";
+                 clock's quality is not in the configured acceptable range";
             }
             enum DISABLED {
               description
@@ -760,7 +795,9 @@ module o-ran-sync {
           }
           description
             "This parameter contains value of the SSM clock quality level,
-            received in SSM messages from the SyncE source.";
+            received in SSM messages from the SyncE source.
+            If multiple clock sources are available, the O-RU can select the
+            reference clock source based on the SSM quality level";
         }
         min-elements 1;
         description
@@ -849,7 +886,7 @@ module o-ran-sync {
         default 10;
         description
           "This parameter defines minimum period in seconds between reports,
-          sent by the NETCONF Client, for parameters in this container.";
+          sent by the O-RU, for parameters in this container.";
       }
       leaf name {
         type string {
@@ -949,7 +986,7 @@ module o-ran-sync {
 
   notification ptp-state-change {
     description
-      "Notification used to inform about ptp synchronization state change";
+      "Notification used to inform about PTP synchronization state change";
 
     leaf ptp-state{
       type leafref{
@@ -961,7 +998,7 @@ module o-ran-sync {
   }
   notification synce-state-change {
     description
-      "Notification used to inform about synce synchronization state change";
+      "Notification used to inform about syncE synchronization state change";
 
     leaf synce-state{
       type leafref{
@@ -974,7 +1011,7 @@ module o-ran-sync {
   notification gnss-state-change {
     if-feature GNSS;
     description
-      "Notification used to inform about gnss synchronization state change";
+      "Notification used to inform about GNSS synchronization state change";
 
     leaf gnss-state{
       type leafref{