openconfig-platform-types

This module defines data types (e.g., YANG identities) to support the OpenConfig component inventory model.

  • Version: 2019-06-03

    openconfig-platform-types@2019-06-03


    
      module openconfig-platform-types {
    
        yang-version 1;
    
        namespace
          "http://openconfig.net/yang/platform-types";
    
        prefix oc-platform-types;
    
        import openconfig-types {
          prefix oc-types;
        }
        import openconfig-extensions {
          prefix oc-ext;
        }
    
        organization "OpenConfig working group";
    
        contact
          "OpenConfig working group
        www.openconfig.net";
    
        description
          "This module defines data types (e.g., YANG identities)
        to support the OpenConfig component inventory model.";
    
        revision "2019-06-03" {
          description
            "Add OpenConfig component operating system patch type.";
          reference
            "1.0.0";
    
        }
    
        revision "2018-11-21" {
          description
            "Add OpenConfig module metadata extensions.";
          reference
            "0.10.1";
    
        }
    
        revision "2018-11-16" {
          description
            "Added FEC_MODE_TYPE and FEC_STATUS_TYPE";
          reference
            "0.10.0";
    
        }
    
        revision "2018-05-05" {
          description
            "Added min-max-time to
          avg-min-max-instant-stats-precision1-celsius,
          added new CONTROLLER_CARD identity";
          reference
            "0.9.0";
    
        }
    
        revision "2018-01-16" {
          description
            "Added new per-component common data; add temp alarm";
          reference
            "0.8.0";
    
        }
    
        revision "2017-12-14" {
          description
            "Added anchor containers for component data, added new
          component types";
          reference
            "0.7.0";
    
        }
    
        revision "2017-08-16" {
          description
            "Added power state enumerated type";
          reference
            "0.6.0";
    
        }
    
        revision "2016-12-22" {
          description
            "Added temperature state variable to component";
          reference
            "0.5.0";
    
        }
    
        oc-ext:openconfig-version "1.0.0";
        oc-ext:regexp-posix;
        oc-ext:catalog-organization "openconfig";
        oc-ext:origin "openconfig";
    
        grouping avg-min-max-instant-stats-precision1-celsius {
          description
            "Common grouping for recording temperature values in
          Celsius with 1 decimal precision. Values include the
          instantaneous, average, minimum, and maximum statistics";
          leaf instant {
            type decimal64 {
              fraction-digits 1;
            }
            units "celsius";
            description
              "The instantaneous value of the statistic.";
          }
    
          leaf avg {
            type decimal64 {
              fraction-digits 1;
            }
            units "celsius";
            description
              "The arithmetic mean value of the statistic over the
            sampling period.";
          }
    
          leaf min {
            type decimal64 {
              fraction-digits 1;
            }
            units "celsius";
            description
              "The minimum value of the statistic over the sampling
            period";
          }
    
          leaf max {
            type decimal64 {
              fraction-digits 1;
            }
            units "celsius";
            description
              "The maximum value of the statistic over the sampling
            period";
          }
    
          uses oc-types:stat-interval-state;
    
          uses oc-types:min-max-time;
        }  // grouping avg-min-max-instant-stats-precision1-celsius
    
        identity OPENCONFIG_HARDWARE_COMPONENT {
          description
            "Base identity for hardware related components in a managed
          device.  Derived identities are partially based on contents
          of the IANA Entity MIB.";
          reference
            "IANA Entity MIB and RFC 6933";
    
        }
    
        identity OPENCONFIG_SOFTWARE_COMPONENT {
          description
            "Base identity for software-related components in a managed
          device";
        }
    
        identity CHASSIS {
          base OPENCONFIG_HARDWARE_COMPONENT;
          description
            "Chassis component, typically with multiple slots / shelves";
        }
    
        identity BACKPLANE {
          base OPENCONFIG_HARDWARE_COMPONENT;
          description
            "Backplane component for aggregating traffic, typically
          contained in a chassis component";
        }
    
        identity FABRIC {
          base OPENCONFIG_HARDWARE_COMPONENT;
          description
            "Interconnect between ingress and egress ports on the
          device (e.g., a crossbar switch).";
        }
    
        identity POWER_SUPPLY {
          base OPENCONFIG_HARDWARE_COMPONENT;
          description
            "Component that is supplying power to the device";
        }
    
        identity FAN {
          base OPENCONFIG_HARDWARE_COMPONENT;
          description
            "Cooling fan, or could be some other heat-reduction component";
        }
    
        identity SENSOR {
          base OPENCONFIG_HARDWARE_COMPONENT;
          description
            "Physical sensor, e.g., a temperature sensor in a chassis";
        }
    
        identity FRU {
          base OPENCONFIG_HARDWARE_COMPONENT;
          description
            "Replaceable hardware component that does not have a more
          specific defined schema.";
        }
    
        identity LINECARD {
          base OPENCONFIG_HARDWARE_COMPONENT;
          description
            "Linecard component, typically inserted into a chassis slot";
        }
    
        identity CONTROLLER_CARD {
          base OPENCONFIG_HARDWARE_COMPONENT;
          description
            "A type of linecard whose primary role is management or control
           rather than data forwarding.";
        }
    
        identity PORT {
          base OPENCONFIG_HARDWARE_COMPONENT;
          description
            "Physical port, e.g., for attaching pluggables and networking
          cables";
        }
    
        identity TRANSCEIVER {
          base OPENCONFIG_HARDWARE_COMPONENT;
          description
            "Pluggable module present in a port";
        }
    
        identity CPU {
          base OPENCONFIG_HARDWARE_COMPONENT;
          description
            "Processing unit, e.g., a management processor";
        }
    
        identity STORAGE {
          base OPENCONFIG_HARDWARE_COMPONENT;
          description
            "A storage subsystem on the device (disk, SSD, etc.)";
        }
    
        identity INTEGRATED_CIRCUIT {
          base OPENCONFIG_HARDWARE_COMPONENT;
          description
            "A special purpose processing unit, typically for traffic
          switching/forwarding (e.g., switching ASIC, NPU, forwarding
          chip, etc.)";
        }
    
        identity OPERATING_SYSTEM {
          base OPENCONFIG_SOFTWARE_COMPONENT;
          description
            "Operating system running on a component";
        }
    
        identity OPERATING_SYSTEM_UPDATE {
          base OPENCONFIG_SOFTWARE_COMPONENT;
          description
            "An operating system update - which should be a subcomponent
          of the `OPERATING_SYSTEM` running on a component. An update is
          defined to be a set of software changes that are atomically
          installed (and uninstalled) together. Multiple updates may be
          present for the Operating System. A system should not list all
          installed software packages using this type -- but rather
          updates that are bundled together as a single installable
          item";
        }
    
        identity COMPONENT_OPER_STATUS {
          description
            "Current operational status of a platform component";
        }
    
        identity ACTIVE {
          base COMPONENT_OPER_STATUS;
          description
            "Component is enabled and active (i.e., up)";
        }
    
        identity INACTIVE {
          base COMPONENT_OPER_STATUS;
          description
            "Component is enabled but inactive (i.e., down)";
        }
    
        identity DISABLED {
          base COMPONENT_OPER_STATUS;
          description
            "Component is administratively disabled.";
        }
    
        identity FEC_MODE_TYPE {
          description
            "Base identity for FEC operational modes.";
        }
    
        identity FEC_ENABLED {
          base FEC_MODE_TYPE;
          description
            "FEC is administratively enabled.";
        }
    
        identity FEC_DISABLED {
          base FEC_MODE_TYPE;
          description
            "FEC is administratively disabled.";
        }
    
        identity FEC_AUTO {
          base FEC_MODE_TYPE;
          description
            "System will determine whether to enable or disable
          FEC on a transceiver.";
        }
    
        identity FEC_STATUS_TYPE {
          description
            "Base identity for FEC operational statuses.";
        }
    
        identity FEC_STATUS_LOCKED {
          base FEC_STATUS_TYPE;
          description
            "FEC is operationally locked.";
        }
    
        identity FEC_STATUS_UNLOCKED {
          base FEC_STATUS_TYPE;
          description
            "FEC is operationally unlocked.";
        }
    
        typedef component-power-type {
          type enumeration {
            enum "POWER_ENABLED" {
              value 0;
              description
                "Enable power on the component";
            }
            enum "POWER_DISABLED" {
              value 1;
              description
                "Disable power on the component";
            }
          }
          description
            "A generic type reflecting whether a hardware component
          is powered on or off";
        }
      }  // module openconfig-platform-types
    

© 2023 YumaWorks, Inc. All rights reserved.