Update YANG models for OpenFronthaul M-Plane.
[sim/o1-interface.git] / ntsimulator / deploy / o-ran-ru-fh / yang / o-ran-operations.yang
@@ -29,7 +29,7 @@ module o-ran-operations {
   description
     "This module defines the YANG model used for O-RAN operations.
 
-    Copyright 2019 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
@@ -55,6 +55,44 @@ module o-ran-operations {
     contributors may be used to endorse or promote products derived from
     this software without specific prior written permission.";
 
+  revision "2022-08-15" {
+    description
+      "version 10.0.0
+
+      1) added current-datetime leaf";
+
+    reference "ORAN-WG4.M.0-v10.00";
+  }
+
+  revision "2021-12-01" {
+    description
+      "version 8.0.0
+
+      1) typographical corrections in descriptions
+      2) new schema node maximum-simultaneous-netconf-sessions";
+
+    reference "ORAN-WG4.M.0-v08.00";
+  }
+
+  revision "2021-07-26" {
+    description
+      "version 7.0.0
+
+      1) new leaf for max-call-home-attempts";
+
+    reference "ORAN-WG4.M.0-v07.00";
+  }
+
+  revision "2021-03-22" {
+    description
+      "version 6.0.0
+
+      1) typographical corrections in descriptions.
+      2) new descriptions for NETCONF/TLS call home";
+
+    reference "ORAN-WG4.M.0-v06.00";
+  }
+
   revision "2020-12-10" {
     description
       "version 5.0.0
@@ -113,6 +151,7 @@ module o-ran-operations {
   }
 
   grouping operational-group {
+    description "operational grouping";
 
 // Container used for WG4 specific declarations
     container declarations {
@@ -146,14 +185,14 @@ module o-ran-operations {
       }
 
       list supported-header-mechanism {
-        description "list provides information regarding type and version of headers.";
         key protocol;
+        description "list provides information regarding type and version of headers.";
 
         leaf protocol {
           type enumeration {
             enum ECPRI {
               description
-                "Indicates that an O-RU supports the ecpri header format
+                "Indicates that an O-RU supports the eCPRI header format
                 for the C/U plane";
             }
             enum IEEE-1914-3 {
@@ -195,6 +234,14 @@ module o-ran-operations {
         type version;
         description "Parameter provides highest pnfRegistrationFields version device is compliant with.";
       }
+      leaf maximum-simultaneous-netconf-sessions {
+        type uint8 {
+          range "2..max";
+        }
+        default 2;
+        description
+          "The maximum number of simultaneous NETCONF sessions able to be supported by the O-RU";
+      }
     }
 
     container operational-state {
@@ -209,12 +256,12 @@ module o-ran-operations {
           }
           enum SUPERVISION-WATCHDOG {
             description
-              "Equipment restarted because it's supervision wathcdog timer wasn't reset
+              "Equipment restarted because it's supervision watchdog timer wasn't reset
               by a NETCONF client (inferring loss of NETCONF connectivity)";
           }
           enum MPLANE-TRIGGERED-RESTART {
             description
-              "Equipment restarted because of an M-plane issued  rpc";
+              "Equipment restarted because of an M-plane issued RPC";
           }
           enum SOFTWARE-FAILURE {
             description
@@ -236,6 +283,18 @@ module o-ran-operations {
         description
           "The system date and time when the system last restarted.";
       }
+      leaf current-datetime {
+        type yang:date-and-time;
+        description
+          "An optional leaf to enable the O-RU to report its current system date and time.
+
+          O-RUs that support a realtime clock may use it to set its current-datetime.
+          O-RUs that support GNSS may use GNSS derived time to set its current-datetime.
+          Other O-RUs can set the current-datetime from PTP synchronization.
+
+          An O-RU may ommit the leaf if its current-datetime is not set, e.g., using one
+          of the examples listed above.";
+      }
     }
 
 
@@ -277,18 +336,31 @@ module o-ran-operations {
       description
         "A common timer used by the O-RAN equipment to trigger the repeated call
         home procedure to all identified call home servers to which the O-RAN
-        equipment has not already an established SSH connection.
+        equipment has not already an established NETCONF connection.
+
+        Irrespective of the name of the leaf, the timer applies eaqually to
+        call home procedures using NETCONF/SSH and those using NETCONF/TLS.
 
         A value of 0 means that the O-RAN equipment shall disable operation
         of the timer triggered NETCONF call home procedure.";
     }
+
+    leaf max-call-home-attempts {
+      type uint8 {
+        range "0 .. 20";
+      }
+      description
+        "A counter to repeat Call Home procedures.
+        Note: In case counter is set with value zero
+        O-RU shall not repeat Call Home procedure";
+    }
   }
 
 // Top level container
 
   container operational-info{
     description
-      "a collection of operational infor for the O-RU";
+      "a collection of operational information for the O-RU";
     uses operational-group;
 
   }