Cisco-IOS-XE-device-hardware-oper

This module contains a collection of YANG definitions for Device Hardware operational data. Copyright (c) 2017-2020 by Cisco Sys...

  • Version: 2021-03-01

    Cisco-IOS-XE-device-hardware-oper@2021-03-01


    
      module Cisco-IOS-XE-device-hardware-oper {
    
        yang-version 1;
    
        namespace
          "http://cisco.com/ns/yang/Cisco-IOS-XE-device-hardware-oper";
    
        prefix device-hardware-xe-oper;
    
        import ietf-yang-types {
          prefix yang;
        }
        import cisco-semver {
          prefix cisco-semver;
        }
    
        organization "Cisco Systems, Inc.";
    
        contact
          "Cisco Systems, Inc.
         Customer Service
    
         Postal: 170 W Tasman Drive
         San Jose, CA 95134
    
         Tel: +1 1800 553-NETS
    
         E-mail: cs-yang@cisco.com";
    
        description
          "This module contains a collection of YANG definitions
         for Device Hardware operational data.
         Copyright (c) 2017-2020 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2021-03-01" {
          description
            "- Added hardware type SSD
           - Added 'lifetime' information for hardware type SSD";
          reference
            "1.6.0";
    
        }
    
        revision "2020-11-01" {
          description
            "- Added BP FRU type
           - Added a changed configuration leaf";
          reference
            "1.5.0";
    
        }
    
        revision "2020-07-01" {
          description
            "- Added device-system-data type 'reboot-reason-type'.
           - Added FC FRU type";
          reference
            "1.4.0";
    
        }
    
        revision "2019-11-01" {
          description "Update copyright";
          reference
            "1.3.1";
    
        }
    
        revision "2019-03-28" {
          description
            "- Added device alarm type 'Info'.
           - Added semantic version";
          reference
            "1.3.0";
    
        }
    
        revision "2018-10-29" {
          description
            "- Added extensions to device inventory
           - Cleaned up spelling errors in descriptions.";
          reference
            "1.2.0";
    
        }
    
        revision "2018-06-18" {
          description "Add entity information";
          reference
            "1.1.0";
    
        }
    
        revision "2017-11-01" {
          description "Initial revision";
          reference
            "1.0.0";
    
        }
    
        cisco-semver:module-version "1.6.0";
        cisco-semver:module-version "1.5.0";
        cisco-semver:module-version "1.4.0";
        cisco-semver:module-version "1.3.1";
        cisco-semver:module-version "1.3.0";
        cisco-semver:module-version "1.2.0";
        cisco-semver:module-version "1.1.0";
        cisco-semver:module-version "1.0.0";
    
        typedef b-fru {
          type enumeration {
            enum "device-hardware-fru-rp" {
              value 0;
              description "A Route Processor";
            }
            enum "device-hardware-fru-esp" {
              value 1;
              description
                "An Embedded Services Processor";
            }
            enum "device-hardware-fru-cp" {
              value 2;
              description "A Carrier Card";
            }
            enum "device-hardware-fru-max" {
              value 3;
              description
                "An illegal value for FRU type";
            }
            enum "device-hardware-fru-fc" {
              value 4;
              description "A Fabric Card";
            }
            enum "device-hardware-fru-bp" {
              value 5;
              description "A Bootstrap Plane";
            }
          }
          description
            "The Field Replaceable Unit type";
        }
    
        typedef high-availability-role {
          type enumeration {
            enum "ha-role-active" {
              value 0;
              description "The role is Active ";
            }
            enum "ha-role-standby" {
              value 1;
              description "The role is Standby";
            }
            enum "ha-role-unknown" {
              value 2;
              description "The role is unknown";
            }
          }
          description
            "The High Availability role";
        }
    
        typedef reboot-reason-type {
          type enumeration {
            enum "normal" {
              value 0;
              description
                "System reboot reason is determined to be
               normal and intentional";
            }
            enum "abnormal" {
              value 1;
              description
                "System reboot reason is determined to be
               abnormal or unintentional";
            }
          }
          description
            "Reboot-reason normality classification type";
        }
    
        typedef hw-type {
          type enumeration {
            enum "hw-type-unknown" {
              value 0;
              description
                "Unknown Hardware Type";
            }
            enum "hw-type-chassis" {
              value 1;
              description "Chassis";
            }
            enum "hw-type-cpu" {
              value 2;
              description
                "Central Processing Unit";
            }
            enum "hw-type-dram" {
              value 3;
              description
                "Dynamic Random Access Memory";
            }
            enum "hw-type-flash" {
              value 4;
              description "Flash";
            }
            enum "hw-type-emmc" {
              value 5;
              description
                "embedded Memory Controller";
            }
            enum "hw-type-sdcard" {
              value 6;
              description "SD-Card";
            }
            enum "hw-type-usb" {
              value 7;
              description "Universal Serial Bus";
            }
            enum "hw-type-pim" {
              value 8;
              description
                "Pluggable interface model";
            }
            enum "hw-type-transceiver" {
              value 9;
              description "Transceiver";
            }
            enum "hw-type-fantray" {
              value 10;
              description "Fan tray";
            }
            enum "hw-type-pem" {
              value 11;
              description "Power Entry Module";
            }
            enum "hw-type-ssd" {
              value 12;
              description "SSD Memory";
            }
          }
          description
            "The broad type of hardware device";
        }
    
        typedef alarm-severity {
          type enumeration {
            enum "alarm-severity-critical" {
              value 0;
              description "Critical Alarms";
            }
            enum "alarm-severity-major" {
              value 1;
              description "Major Alarms";
            }
            enum "alarm-severity-minor" {
              value 2;
              description "Minor Alarms";
            }
            enum "alarm-severity-info" {
              value 3;
              description "INFO Alarms";
            }
          }
          description "Alarm severity";
        }
    
        typedef hw-category {
          type enumeration {
            enum "hw-class-virtual" {
              value 0;
              description
                "Internal Virtual Device";
            }
            enum "hw-class-physical" {
              value 1;
              description "Physical HW Device";
            }
          }
          description "Device Category";
        }
    
        typedef module-status {
          type enumeration {
            enum "module-status-invalid" {
              value 0;
              description
                "An invalid value for module status";
            }
            enum "module-status-unknown" {
              value 1;
              description
                "An unknown value for module status";
            }
            enum "module-status-booting" {
              value 2;
              description
                "The module is currently booting";
            }
            enum "module-status-online" {
              value 3;
              description
                "The module is online and operational";
            }
            enum "module-status-disabled" {
              value 4;
              description
                "The module is disabled";
            }
            enum "module-status-failed" {
              value 5;
              description
                "The module has failed";
            }
            enum "module-status-removed" {
              value 6;
              description
                "The module has been removed";
            }
            enum "module-status-stopped" {
              value 7;
              description
                "The module is stopped.";
            }
            enum "module-status-incompatible" {
              value 8;
              description
                "The module hardware version is incompatible
               with the current software version";
            }
            enum "module-status-cpld-failed" {
              value 9;
              description
                "A Complex Programmable Logic Device (CPLD)
               has failed. The module will not be usable";
            }
            enum "module-status-actrpcpldfailed" {
              value 10;
              description
                "A Complex Programmable Logic Device (CPLD)
               has failed on the active RP. The module will
               not be usable";
            }
            enum "module-status-mdr" {
              value 11;
              description
                "The module is currently undergoing a Minimal
               Disruptive Restart";
            }
          }
          description
            "The status that the module is in";
        }
    
        grouping svc-loc {
          description "Service Location details";
          leaf fru {
            type b-fru;
            description
              "Field Replaceable Unit type";
          }
    
          leaf slotnum {
            type int16;
            description "Slot number";
          }
    
          leaf baynum {
            type int16;
            description "Bay number";
          }
    
          leaf chassisnum {
            type int16;
            description "Chassis number";
          }
        }  // grouping svc-loc
    
        grouping hw-alarm-key {
          description
            "The key to the hardware table";
          leaf alarm-id {
            type uint32;
            description "The Alarm Identifier";
          }
    
          leaf alarm-instance {
            type uint32;
            description
              "The instance of this alarm. This corresponds to the
             entity index";
          }
        }  // grouping hw-alarm-key
    
        grouping hw-alarm {
          description "The alarm information";
          leaf alarm-name {
            type string;
            description "The name of the alarm";
          }
    
          leaf alarm-category {
            type alarm-severity;
            description
              "The category (or severity) of the alarm that is being asserted";
          }
    
          leaf alarm-time {
            type yang:date-and-time;
            description
              "Time the alarm was raised";
          }
    
          leaf alarm-description {
            type string;
            description
              "Description of the alarm";
          }
        }  // grouping hw-alarm
    
        grouping device-system-data {
          description "Device system data";
          leaf current-time {
            type yang:date-and-time;
            description
              "Current time on device in UTC";
          }
    
          leaf boot-time {
            type yang:date-and-time;
            description
              "This timestamp indicates the time that the system was last
             restarted.  The value is the timestamp in seconds relative
             to the Unix Epoch (Jan 1, 1970 00:00:00 UTC).";
          }
    
          leaf software-version {
            type string;
            description "Software version";
          }
    
          leaf rommon-version {
            type string;
            description "Rommon version";
          }
    
          leaf last-reboot-reason {
            type string;
            description "Last reboot reason";
          }
    
          leaf reason-severity {
            type reboot-reason-type;
            description
              "Reboot reason severity,
             either normal, i.e. intentional;
             or abnormal, i.e., unintentional";
          }
    
          leaf unsaved-config {
            type boolean;
            description
              "Indicate whether the device configuration has changed,
             but has not been saved to non volatile RAM. This leaf
             mirrors the state used when IOS asks the user about
             config that has changed upon issuing a reload. As such,
             it might indicate that the configuration is dirty, when
             there are no actual changes.";
          }
        }  // grouping device-system-data
    
        grouping device-inventory-key {
          description
            "Key to the device inventory";
          leaf hw-type {
            type hw-type;
            description
              "Type of the hardware being represented";
          }
    
          leaf hw-dev-index {
            type uint32;
            description
              "The physical index of the inventory item";
          }
        }  // grouping device-inventory-key
    
        grouping device-inventory {
          description "inventory";
          leaf version {
            type string;
            description "Version of this device";
          }
    
          leaf part-number {
            type string;
            description
              "The part number of this device. This
             is only valid if the device is a field replaceable
             unit";
          }
    
          leaf serial-number {
            type string;
            description
              "The serial number of the device. This is only
             valid if the device is individually trackable";
          }
    
          leaf hw-description {
            type string;
            description
              "Description of the device";
          }
    
          leaf dev-name {
            type string;
            description "Name of the Device";
          }
    
          leaf field-replaceable {
            type boolean;
            description
              "The device is field replaceable or not";
          }
    
          leaf hw-class {
            type hw-category;
            description "The Device Category";
          }
    
          choice hw-type-discr-choice {
            description "Hardware Type options";
            leaf lifetime {
              type uint16;
              units "percentage";
              description "Lifetime of SSD";
            }
          }  // choice hw-type-discr-choice
        }  // grouping device-inventory
    
        grouping device-hardware {
          description "Device hardware";
          list device-inventory {
            key "hw-type hw-dev-index";
            description
              "All the inventory in the hardware";
            uses device-hardware-xe-oper:device-inventory-key;
    
            uses device-hardware-xe-oper:device-inventory;
          }  // list device-inventory
    
          list device-alarm {
            key "alarm-id alarm-instance";
            description "The current alarms";
            uses device-hardware-xe-oper:hw-alarm-key;
    
            uses device-hardware-xe-oper:hw-alarm;
          }  // list device-alarm
    
          container device-system-data {
            presence "device-system-data";
            description
              "The current device system data";
            uses device-hardware-xe-oper:device-system-data;
          }  // container device-system-data
        }  // grouping device-hardware
    
        grouping entity-information {
          description
            "Information that describes the entity at the service location";
          leaf physical-index {
            type uint32;
            description
              "The SNMP physical index of this entity";
          }
    
          leaf status {
            type module-status;
            description
              "The current status of the entity";
          }
    
          leaf description {
            type string;
            description
              "The detailed description of this entity";
          }
    
          leaf status-last-change {
            type yang:date-and-time;
            description
              "The timestamp when the entity transitioned into
             its reported status";
          }
    
          leaf high-availability-state {
            type high-availability-role;
            description
              "The location's high availability state";
          }
    
          leaf chassis-state {
            type high-availability-role;
            description
              "The chassis role status";
          }
        }  // grouping entity-information
    
        container device-hardware-data {
          config false;
          description "Device Hardware";
          list entity-information {
            key "fru slotnum baynum chassisnum";
            description "The entity information";
            uses device-hardware-xe-oper:svc-loc;
    
            uses device-hardware-xe-oper:entity-information;
          }  // list entity-information
    
          container device-hardware {
            presence "device-hardware";
            description
              "The device hardware model";
            uses device-hardware-xe-oper:device-hardware;
          }  // container device-hardware
        }  // container device-hardware-data
      }  // module Cisco-IOS-XE-device-hardware-oper
    

© 2023 YumaWorks, Inc. All rights reserved.