This module contains YANG definitions for configuring and managing ports with Power Over Ethernet features defined by IEEE Std 8...
Version: 2025-04-17
module ieee802-ethernet-pse-2 { yang-version 1.1; namespace "urn:ieee:std:802.3:yang:ieee802-ethernet-pse-2"; prefix ieee802-pse-2024; import ietf-interfaces { prefix if; reference "IETF RFC 8343"; } import ietf-yang-types { prefix yang; reference "IETF RFC 6991"; } import ieee802-ethernet-interface { prefix ieee802-eth-if; } organization "IEEE 802.3 Ethernet Working Group Web URL: http://www.ieee802.org/3/"; contact "Web URL: http://www.ieee802.org/3/"; description "This module contains YANG definitions for configuring and managing ports with Power Over Ethernet features defined by IEEE Std 802.3-2022. This module is based on,and superscedes ieee802-ethernet-pse.yang from IEEE Std 802.3.2-2019."; revision "2025-04-17" { description "Updates under IEEE Std 802.3.2-202x, Draft D3.3"; reference "IEEE Std IEEE Std 802.3.2-202x, unless dated explicitly"; } feature multi-pair-pse { description "This object indicates the support for IEEE Std 802.3 Clause 33 and/or 145."; } feature single-pair-pse { description "This object indicates the support for IEEE Std 802.3 Clause 104."; } typedef multi-pair-detection-state { type enumeration { enum "disabled" { value 0; description "PSE disabled."; } enum "searching" { value 1; description "PSE is searching."; } enum "deliveringPower" { value 2; description "PSE is delivering power."; } enum "fault" { value 3; description "PSE fault detected."; } enum "test" { value 4; description "PSE test mode."; } enum "otherFault" { value 5; 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 single-pair-detection-state { type enumeration { enum "unknown" { value 0; description "True detection state unknown."; } enum "disabled" { value 1; description "PSE is disabled."; } enum "searching" { value 2; description "PSE is searching."; } enum "deliveringPower" { value 3; description "PSE is delivering power."; } enum "sleep" { value 4; description "PSE is in sleep state."; } enum "idle" { value 5; description "PSE is idle."; } enum "error" { value 6; description "PSE error."; } } description "Detection state of a single-pair PSE."; reference "IEEE Std 802.3, 30.15.1.1.3"; } typedef multi-pair-power-class { type enumeration { enum "class0" { value 0; description "Class 0"; } enum "class1" { value 1; description "Class 1"; } enum "class2" { value 2; description "Class 2"; } enum "class3" { value 3; description "Class 3"; } enum "class4" { value 4; description "Class 4"; } enum "class5" { value 5; description "Class 5"; } enum "class6" { value 6; description "Class 6"; } enum "class7" { value 7; description "Class 7"; } enum "class8" { value 8; description "Class 8"; } } description "Multi-pair PoE power class."; reference "IEEE Std 802.3, 30.9.1.1.6 aPSEPowerClassification "; } typedef pse-support { type enumeration { enum "two-pair" { value 0; description "PSE port supports IEEE Std 802.3, Clause 33."; } enum "four-pair" { value 1; description "PSE port supports IEEE Std 802.3, Clause 33 and 145."; } enum "single-pair" { value 2; description "PSE port supports IEEE Std 802.3, Clause 104."; } } description "PSE support."; } typedef multi-pair-powering-pairs { type enumeration { enum "signal" { value 0; description "Using signal pairs."; } enum "spare" { value 1; description "Using spare pairs."; } enum "both" { value 2; description "Using signal and spare pairs."; } } description "Powering pairs."; } typedef single-pair-pd-type { type enumeration { enum "unknown" { value 0; description "Unknown PD type"; } enum "typeA" { value 1; description "TypeA PD"; } enum "typeB" { value 2; description "TypeB PD"; } enum "typeC" { value 3; description "TypeC PD"; } enum "typeD" { value 4; description "TypeD PD"; } enum "typeE" { value 5; description "TypeE PD"; } enum "typeF" { value 6; description "TypeF PD"; } } description "Single-pair PoE PD type."; reference "IEEE Std 802.3, 30.15.1.1.5 aPoDLPSEDetectedPDType"; } typedef single-pair-pse-type { type enumeration { enum "unknown" { value 0; description "Unknown PSE type."; } enum "typeA" { value 1; description "TypeA PSE"; } enum "typeB" { value 2; description "TypeB PSE"; } enum "typeC" { value 3; description "TypeC PSE"; } enum "typeD" { value 4; description "TypeD PSE"; } enum "typeE" { value 5; description "TypeE PSE"; } enum "typeF" { value 6; description "TypeF PSE"; } } description "Single-pair PoE PSE type."; reference "IEEE Std 802.3, 30.15.1.1.5 aPoDLPSEDetectedPDType"; } typedef single-pair-power-class { type enumeration { enum "class0" { value 0; description "Class 0"; } enum "class1" { value 1; description "Class 1"; } enum "class2" { value 2; description "Class 2"; } enum "class3" { value 3; description "Class 3"; } enum "class4" { value 4; description "Class 4"; } enum "class5" { value 5; description "Class 5"; } enum "class6" { value 6; description "Class 6"; } enum "class7" { value 7; description "Class 7"; } enum "class8" { value 8; description "Class 8"; } enum "class9" { value 9; description "Class 9"; } enum "class10" { value 10; description "Class 10"; } enum "class11" { value 11; description "Class 11"; } enum "class12" { value 12; description "Class 12"; } enum "class13" { value 13; description "Class 13"; } enum "class14" { value 14; description "Class 14"; } enum "class15" { value 15; description "Class 15"; } enum "unknown" { value 16; description "Initializing, true Power Class not yet known."; } } description "Single-pair PoE power class."; reference "IEEE Std 802.3, 30.15.1.1.6 aPoDLPSEDetectedPDPowerClass"; } augment /if:interfaces/if:interface/ieee802-eth-if:ethernet { description "Augments ethernet interface configuration model with nodes specific to Multi-pair and Single-pair PoE."; container pse-2 { description "Multi-pair and Single-pair PoE port configuration. Discontinuities in the values of counters in this container can occur at re-initialization of the management system, and at other times as indicated by the value of the 'discontinuity-time' leaf defined in the ietf-interfaces YANG module (IETF RFC 8343)."; reference "IEEE Std 802.3, 30.9.1 multi-pair PoE PSE and IEEE Std 802.3, 30.15.1 single-pair PoE PSE"; leaf supported-pse-type { type pse-support; config false; description "The PSE types are supported."; } container multi-pair { if-feature multi-pair-pse; presence "PSE port supports IEEE Std 802.3 Clause 33 and/or Clause 145."; description "PSE port configuration in IEEE Std 802.3, 30.9.1."; leaf pse-enable { type boolean; default "false"; description "When true enables the PSE function on the port, when false disables the PSE function on the port."; reference "IEEE Std 802.3, 30.9.1.2.1 acPSEAdminControl"; } leaf pse-state { type boolean; config false; description "The PSE enabled state on the port."; reference "IEEE Std 802.3, 30.9.1.1.2 aPSEAdminState"; } leaf multi-pair-powering-pairs { type multi-pair-powering-pairs; description "The PSE pairs in use. If the value of pairs-control-ability is true, this object is writeable."; reference "IEEE Std 802.3, 30.9.1.1.4 aPSEPowerPairs"; } leaf pairs-control-ability { type boolean; default "true"; config false; description "Can the PSE Port control switching the power sourcing pins."; reference "IEEE Std 802.3, 30.9.1.1.3 aPSEPowerPairsControlAbility"; } leaf detection-status { type multi-pair-detection-state; config false; description "The operational status of the port PD detection."; reference "IEEE Std 802.3, 30.9.1.1.5 aPSEPowerDetectionStatus"; } leaf classifications { when "../detection-status = 'deliveringPower'" { description "This node only applies when the detection status is deliveringPower."; } type multi-pair-power-class; config false; description "The power class of the detected PD."; reference "IEEE Std 802.3, 30.9.1.1.6 aPSEPowerClassfication"; } container statistics { config false; description "Multi-pair PoE Statistics information for the port."; leaf power-denied { type yang:counter64; description "The number of times the PSE denied power."; reference "IEEE Std 802.3, 30.9.1.1.14"; } leaf invalid-signature { type yang:counter64; description "The number of times the PSE detected an invalid signature."; reference "IEEE Std 802.3, 30.9.1.1.11"; } leaf mps-absent { type yang:counter64; description "The number of times the PSE lost the 'Maintain Power Signature'(MPS)."; reference "IEEE Std 802.3, 30.9.1.1.20"; } leaf overload { type yang:counter64; status deprecated; description "The number of times the PSE detected an output current overload."; reference "IEEE Std 802.3, 30.9.1.1.17"; } leaf short { type yang:counter64; status deprecated; description "This object is deprecated as it's not defined in base standard."; } leaf cumulative-energy { type yang:counter64; units "millijoules"; description "The cumulative energy supplied by the PSE."; reference "IEEE Std 802.3, 30.9.1.1.25"; } } // container statistics leaf actual-power { type uint32; units "milliwatts"; config false; description "The actual power drawn by a PD over the port."; reference "IEEE Std 802.3, 30.9.1.1.23"; } leaf power-accuracy { type int64; units "milliwatts"; config false; description "The power accuracy of the port."; reference "IEEE Std 802.3, 30.9.1.1.24"; } } // container multi-pair container single-pair { if-feature single-pair-pse; presence "PSE port supports IEEE Std 802.3 Clause 104."; description "Single-pair PSE configuration as defined in IEEE Std 802.3, 30.15.1."; leaf pse-enable { type boolean; default "false"; description "When true enables the PSE function on the port, when false disables the PSE function on the port."; reference "IEEE Std 802.3, 30.15.1.1.2 aPoDLPSEAdminState"; } leaf detection-status { type single-pair-detection-state; config false; description "Indicates the current status of the Single-pair PSE."; reference "IEEE Std 802.3, 30.15.1.1.3 aPoDLPSEPowerDetectionStatus"; } leaf single-pair-type { type single-pair-pse-type; config false; description "Single-pair PSE type."; reference "IEEE Std 802.3, 30.15.1.1.4 aPoDLPSEType"; } leaf detected-pd-type { when "../detection-status = 'deliveringPower'" { description "This node only applies when the detection status is delivering power."; } type single-pair-pd-type; config false; description "Indicates the detected type of the single-pair PD."; reference "IEEE Std 802.3, 30.15.1.1.5 aPoDLPSEDetectedPDType"; } leaf pd-power-class { when "../detection-status = 'deliveringPower'" { description "This node only applies when the detection status is delivering power."; } type single-pair-power-class; config false; description "The power class of the detected PD."; reference "IEEE Std 802.3, 30.15.1.1.6 aPoDLPSEDetectedPDPowerClass"; } container statistics { config false; description "Single-pair PoE Statistics information for the port."; leaf power-denied { type yang:counter64; description "The number of times the PSE denied power."; reference "IEEE Std 802.3, 30.15.1.1.9 aPoDLPSEPowerDeniedCounter"; } leaf invalid-signature { type yang:counter64; description "The number of times the PSE detected an invalid signature."; reference "IEEE Std 802.3, 30.15.1.1.7 aPoDLPSEInvalidSignatureCounter"; } leaf invalid-class { type yang:counter64; description "The number of times PD classification timed out or did not get valid class information from SCCP."; reference "IEEE Std 802.3, 30.15.1.1.8 aPoDLPSEInvalidClassCounter"; } leaf overload { type yang:counter64; description "The number of times the PSE detected an output current overload."; reference "IEEE Std 802.3, 30.15.1.1.10 aPoDLPSEOverLoadCounter"; } leaf fvs-absence { type yang:counter64; description "The number of times the PSE lost the 'Maintain Full Voltage Signature'(MFVS)."; reference "IEEE Std 802.3, 30.15.1.1.11 aPoDLPSEMaintainFullVoltageSignatureAbsentCounter"; } leaf cumulative-energy { type yang:counter64; units "millijoules"; description "The cumulative energy supplied by the PSE as measured at the MDI."; reference "IEEE Std 802.3, 30.15.1.1.14 aPoDLPSECumulativeEnergy"; } } // container statistics leaf actual-power { type uint32; units "milliwatts"; config false; description "The actual power drawn by a PD over the port."; reference "IEEE Std 802.3, 30.15.1.1.12 aPoDLPSEActualPower"; } leaf power-accuracy { type int64; units "milliwatts"; config false; description "The power accuracy of the port."; reference "IEEE Std 802.3, 30.15.1.1.13 aPoDLPSEPowerAccuracy"; } } // container single-pair } // container pse-2 } } // module ieee802-ethernet-pse-2
© 2024 YumaWorks, Inc. All rights reserved.