blob: b46cb7d2d251dba5936ed1143e8619a0dfba6f00 [file] [log] [blame]
module ietf-system-microsemi {
namespace "http://www.microsemi.com/microsemi-edge-assure/msea-system";
prefix "sys-ms";
import ietf-yang-types {
prefix yang;
revision-date 2013-07-15;
}
import ietf-inet-types {
prefix inet;
revision-date 2013-07-15;
}
import msea-types {
prefix msea;
revision-date 2016-02-29;
}
import ietf-system {
prefix sys;
revision-date 2014-08-06;
}
// import ietf-netconf-acm {
// prefix nacm;
// revision-date 2012-02-22;
// }
/*** META INFORMATION ***/
organization
"Microsemi Inc., FTD Division";
contact
"Web URL: http://www.microsemi.com/
E-mail: info@microsemi.com
Postal: Microsemi Corporation Corporate Headquarters
One Enterprise Aliso Viejo,
CA 92656
U.S.A.
Phone: +1 949 380 6100
Fax: +1 949 215-4996";
description
"This YANG module extends the IETF System objects with some extra configuration attributes
Copyright 2015 Microsemi Inc.
All rights reserved.";
reference "RFC 7317: A YANG Data Model for System Management";
revision "2016-05-05" {
description
"Updated for ZTP support - Sean Condon, Microsemi";
}
revision "2015-10-01" {
description
"Initial version to augment IETF-SYSTEM YANG module - Sean Condon, Microsemi";
}
typedef identifier {
type string {
length "1..255";
pattern "[a-zA-Z0-9\-._]*";
}
description
"A simple string with only alphabetic or numeric and dash, dot and underscore";
}
grouping upgrade-file-attributes {
leaf file-name {
type string;
description "The name of the update TAR file as found on the device";
}
leaf file-date {
type yang:date-and-time;
description "The date of the update TAR file as found on the device";
}
leaf file-size {
type uint32;
description "The size of the update TAR file as found on the device";
}
}
grouping upgrade-attributes {
description "Attributes from the /update.tar file";
leaf version {
type uint32;
description "The version of this portion of the /update.tar";
}
leaf crc32 {
type uint32;
description "The CRC32 value of this portion of the /update.tar";
}
leaf length {
type uint32;
description "The length of this portion of the /update.tar";
}
}
grouping ddm-attributes {
leaf high-alarm-thresh {
description "The high alarm threshold value";
type decimal64 {
fraction-digits 6;
}
}
leaf high-warn-thresh {
description "The high warn threshold value";
type decimal64 {
fraction-digits 6;
}
}
leaf low-warn-thresh {
description "The low warn threshold value";
type decimal64 {
fraction-digits 6;
}
}
leaf low-alarm-thresh {
description "The low alarm threshold value";
type decimal64 {
fraction-digits 6;
}
}
}
feature serial-number {
description "Set of readonly attributes that identify the hardware";
}
feature remote-upgrade {
description
"Indicates that the device supports upgrade of fabric, linux and fabric header.
This expects a file /update.tar on the device -
put there through SFTP or some other file transfer method";
}
augment "/sys:system" {
description
"Extends the SYSTEM with some extra configuration attributes required for setup.";
leaf asset-tag { //Microsemi specific configuration attribute
type identifier;
description
"An asset tag field for the device.";
}
leaf description { //Microsemi specific configuration attribute
type string {
length "0..256";
pattern "[a-zA-Z0-9\\-_. ,]*";
}
description "A description for the device.";
}
leaf longitude { //Microsemi specific configuration attribute
type decimal64 {
fraction-digits 7;
range "-180..180";
}
description
"Longitude for the device expressed in decimal degrees.
Positive values represent East and negative values represent West";
}
leaf latitude { //Microsemi specific configuration attribute
type decimal64 {
fraction-digits 7;
range "-90..90";
}
description
"Latitude for the device expressed in decimal degrees
Positive values represent North and negative values represent South";
}
}
augment "/sys:system-state" {
description
"Extends the SYSTEM-STATE with some extra configuration attributes required for setup.
All attributes are automatically config=false because they extend system-state";
container remote-upgrade {
description "Details of the /update.tar file present on the system.
These are all read-only because they are under system-state";
choice file-present-choice {
case not-present {
leaf file-not-found {
type string;
description "Gives the name of the expected file. Usually /update.tar";
}
}
case file-present {
uses upgrade-file-attributes;
leaf file-validity {
type string;
description "Gives an indication if the file is valid, or if not, the reason why";
}
container fabric-image {
uses upgrade-attributes;
}
container linux-image {
uses upgrade-attributes;
}
}
}
}
leaf hostname {
type string;
description "The hostname of the system. When DHCP or ZTP
is active the hostname will not be configured through NETCONF";
}
container ntp {
if-feature sys:ntp;
description "The list of NTP servers active on the system. When DHCP or ZTP
is active the NTP servers will not be configured through NETCONF";
leaf-list server {
type string;
description "An NTP server active on the system";
}
}
container dns-resolver {
description "The list of DNS servers active on the system. When DHCP or ZTP
is active the DNS servers will not be configured through NETCONF";
leaf-list server {
type string;
description "A DNS server active on the system";
}
leaf-list search {
type string;
description "A DNS search domain active on the system";
}
}
container diagnostic-monitoring {
container temperature {
description "The temperature and thresholds of the device";
leaf measured {
description "The measured transceiver temperature at the current time";
type decimal64 {
fraction-digits 6;
}
units "°C";
reference
"SFF-8472 Specification for Diagnostic Monitoring Interface for Optical
Transceivers Rev 12.1 September 12, 2014 Section 9.1";
}
uses ddm-attributes;
}
container voltage {
description "The core voltage and thresholds of the device";
leaf measured {
description "The measured voltage at the current time";
type decimal64 {
fraction-digits 6;
}
units "V";
reference
"SFF-8472 Specification for Diagnostic Monitoring Interface for Optical
Transceivers Rev 12.1 September 12, 2014 Section 9.1";
}
uses ddm-attributes;
}
container tx-bias {
description "The transmit (Tx) bias and thresholds of the device";
leaf measured {
description "The measured transmit (Tx) bias at the current time";
type decimal64 {
fraction-digits 6;
}
units "mA";
reference
"SFF-8472 Specification for Diagnostic Monitoring Interface for Optical
Transceivers Rev 12.1 September 12, 2014 Section 9.1";
}
uses ddm-attributes;
}
container tx-power {
description "The transmit (Tx) power and thresholds of the device";
leaf measured {
description "The measured transmit (Tx) power at the current time";
type decimal64 {
fraction-digits 6;
}
units "mV";
reference
"SFF-8472 Specification for Diagnostic Monitoring Interface for Optical
Transceivers Rev 12.1 September 12, 2014 Section 9.1";
}
uses ddm-attributes;
}
container rx-power {
description "The receive (Rx) power and thresholds of the device";
leaf measured {
description "The measured receive (Rx) power at the current time";
type decimal64 {
fraction-digits 6;
}
units "mV";
reference
"SFF-8472 Specification for Diagnostic Monitoring Interface for Optical
Transceivers Rev 12.1 September 12, 2014 Section 9.1";
}
uses ddm-attributes;
}
}
}
augment "/sys:system-state/sys:platform" {
description
"Extends the SYSTEM-STATE platform with some extra configuration attributes required for setup.
All attributes are automatically config=false because they extend system-state";
container device-identification {
if-feature serial-number;
config false;
leaf vendor-name {
type string;
description
"Device Vendor Name";
reference
"SFF-8472 Specification for Diagnostic Monitoring Interface for Optical
Transceivers Rev 12.1 September 12, 2014 Table 4-1 Address A0H Bytes 20-35";
}
leaf vendor-part-number {
type string;
description
"Device Vendor Part Number";
reference
"SFF-8472 Specification for Diagnostic Monitoring Interface for Optical
Transceivers Rev 12.1 September 12, 2014 Table 4-1 Address A0H Bytes 40-55";
}
leaf vendor-revision {
type string;
description
"Device Vendor Revision";
reference
"SFF-8472 Specification for Diagnostic Monitoring Interface for Optical
Transceivers Rev 12.1 September 12, 2014 Table 4-1 Address A0H Bytes 56-59";
}
leaf serial-number {
type string;
description
"Device Serial Number";
reference
"SFF-8472 Specification for Diagnostic Monitoring Interface for Optical
Transceivers Rev 12.1 September 12, 2014 Table 4-1 Address A0H Bytes 68-83";
}
container processor {
description "Details of the processor hardware in the device";
leaf serialnumber {
type yang:hex-string;
description "The serial number of the processor";
}
leaf x509-device-certificate-pem {
type string;
description "X509 Device certificate in PEM (Base 64 format)";
}
}
}
}
}