netconfcentral logo

ieee802-ethernet-pse@2017-10-18



  module ieee802-ethernet-pse {

    yang-version 1.1;

    namespace
      "urn:ieee:std:802.3:yang:ieee802-ethernet-pse";

    prefix pse;

    import ietf-interfaces {
      prefix if;
    }
    import ieee802-ethernet-interface {
      prefix eth-if;
    }

    organization
      "IEEE 802.3 Ethernet Working Group
     Web URL: http://www.ieee802.org/3/";

    contact
      "Web URL: http://www.ieee802.org/3/cf/";

    description
      "This module contains YANG defintions for configuring and
     managing ports with Power Over Ethernet feature defined by
     IEEE 802.3. It provides functionality roughly equivalent to
     that of the POWER-ETHERNET-MIB defined in RFC3621.";

    revision "2017-10-18" {
      description
        "Restructed to be NMDA compliant.";
      reference
        "IEEE P802.3.2 (IEEE 802.3cf) YANG Data Model Definitions Task
        Force";

    }

    revision "2017-09-11" {
      description "revision for D1.2";
      reference
        "P802.3.2 D1.2";

    }

    revision "2017-03-02" {
      description
        "Initial revision of YANG module for IEEE 802.3 PSE.";
      reference
        "IEEE P802.3.2 (IEEE P802.3cf) YANG Data Model Definitions Task
        Force";

    }

    revision "2017-01-25" {
      description
        "revision for IEEE 802.3 PSE.

       changes from previous version:
       - remove power management into a separate module.
       - provide the pse module for both multi-pair PSE and single pair PSE
       (PoDL PSE). ";
      reference
        "IEEE P802.3.2 (IEEE 802.3cf) YANG Data Model Definitions Task
        Force";

    }

    revision "2016-12-26" {
      description
        "Initial revision of YANG model for IEEE 802.3 multi-pair PSE.

       changes from previous version:
       - augement from ieee802-ethernet-interface and keep consist with it.
       - change the module name to multi-pair pse.";
      reference
        "IEEE P802.3.2 (IEEE 802.3cf) YANG Data Model Definitions Task
        Force";

    }


    typedef pse-detection-state {
      type enumeration {
        enum "disabled" {
          value 1;
          description "PSE disabled";
        }
        enum "searching" {
          value 2;
          description "PSE is searching";
        }
        enum "deliveringPower" {
          value 3;
          description
            "PSE is delivering power";
        }
        enum "fault" {
          value 4;
          description "PSE fault detected";
        }
        enum "test" {
          value 5;
          description "PSE test mode";
        }
        enum "otherFault" {
          value 6;
          description
            "PSE implementation specific fault detected";
        }
      }
      description
        "detection state of a multi-pair PSE";
      reference
        "IEEE Std 802.3, 30.9.1.1.5";

    }

    typedef podl-detection-state {
      type enumeration {
        enum "unkown" {
          value 1;
          description "true state unknown";
        }
        enum "disabled" {
          value 2;
          description "PoDL PSE is disabled";
        }
        enum "searching" {
          value 3;
          description "PoDL PSE searching";
        }
        enum "deliveringPower" {
          value 4;
          description
            "PoDL PSE delivering power";
        }
        enum "sleep" {
          value 5;
          description "PoDL PSE sleep";
        }
        enum "idle" {
          value 6;
          description "PoDL PSE idle";
        }
        enum "error" {
          value 7;
          description "PoDL PSE error";
        }
      }
      description
        "detection state of a PoDL PSE";
      reference
        "IEEE Std 802.3, 30.15.1.3";

    }

    typedef power-class {
      type enumeration {
        enum "class0" {
          value 1;
          description "class 0";
        }
        enum "class1" {
          value 2;
          description "class 1";
        }
        enum "class2" {
          value 3;
          description "class 2";
        }
        enum "class3" {
          value 4;
          description "class 3";
        }
        enum "class4" {
          value 5;
          description "class 4";
        }
        enum "class5" {
          value 6;
          description "class 5";
        }
        enum "class6" {
          value 7;
          description "class 6";
        }
        enum "class7" {
          value 8;
          description "class 7";
        }
        enum "class8" {
          value 9;
          description "class 8";
        }
        enum "class9" {
          value 10;
          description
            "class 9 only for PoDL PSE";
        }
      }
      description "power class";
      reference
        "IEEE Std 802.3, 30.9.1.1.6 aPSEPowerClassification";

    }

    identity pse-pair-mode {
      base 
      description
        "Base type for wire pair mode for pse power to pd.";
    }

    identity multi-pair-mode {
      base 
      description
        "Pse using 2 or 4 pair wire to supply power to pd.";
    }

    identity podl-mode {
      base 
      description
        "Pse using only 1 pair wire to supply power to pd.";
    }
  }  // module ieee802-ethernet-pse