--- /dev/null
+module o-ran-sc-hardware-v1 {
+ yang-version 1.1;
+ namespace "urn:o-ran:sc:hardware:1.0";
+ prefix ohw;
+
+ import o-ran-sc-root-v1 {
+ prefix root;
+ }
+ import ietf-hardware {
+ prefix hw;
+ reference
+ "RFC 8348: A YANG Data Model for Hardware Management";
+ }
+
+ organization
+ "O-RAN Software Community";
+ contact
+ "www.o-ran-sc.org";
+ description
+ "This module augements the o-ran-sc-controlled-element and
+ o-ran-sc-controlled-function object by adding ietf-hardware.
+
+ Copyright 2020 the O-RAN Alliance.
+
+ Licensed under the Apache License, Version 2.0 (the 'License');
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an 'AS IS' BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.";
+
+ revision 2020-03-09 {
+ description
+ "initial revision";
+ reference
+ "O-RAN-OAM-Interface-Specification (O1)";
+ }
+
+ /*
+ * Typedefs
+ */
+
+ typedef hardware-ref {
+ type leafref {
+ path "/hw:hardware/hw:component/hw:name";
+ }
+ description
+ "This type is used by data models that need to reference
+ hardware.";
+ }
+
+ /*
+ * Groupings
+ */
+
+ grouping hardware-grp {
+ leaf-list hardware-reference {
+ type hardware-ref;
+ config false;
+ description
+ "A list of ietf-hardware references using the hardware name as key.";
+ }
+ description
+ "A group adding ietf-hardware references.";
+ }
+
+ /*
+ * Data nodes
+ */
+
+ augment "/root:controlled-element" {
+ uses hardware-grp;
+ description
+ "An augmentation, which adds ietf-hardware
+ to root:controlled-element.";
+ }
+
+ augment "/root:controlled-element/root:controlled-function" {
+ uses hardware-grp;
+ description
+ "An augmentation, which adds ietf-hardware
+ to root:controlled-function.";
+ }
+}