module ieee802-dot1q-preemption { yang-version "1.1"; namespace urn:ieee:std:802.1Q:yang:ieee802-dot1q-preemption; prefix preempt; organization "IEEE 802.1 Working Group"; contact "WG-URL: http://www.ieee802.org/1/ WG-EMail: stds-802-1-l@ieee.org Contact: IEEE 802.1 Working Group Chair Postal: C/O IEEE 802.1 Working Group IEEE Standards Association 445 Hoes Lane Piscataway, NJ 08854 USA E-mail: STDS-802-1-CHAIRS@IEEE.ORG"; description "This module provides for management of IEEE Std 802.1Q Bridges that support frame preemption. Copyright (C) IEEE (2023). This version of this YANG module is part of IEEE Std 802.1Q; see the standard itself for full legal notices."; revision 2023-10-26 { description "Published as part of IEEE Std 802.1Qcw-2023. The following reference statement identifies each referenced IEEE Standard as updated by applicable amendments."; reference "IEEE Std 802.1Q Bridges and Bridged Networks: IEEE Std 802.1Q-2022, IEEE Std 802.1Qcz-2023, IEEE Std 802.1Qcw-2023."; } feature frame-preemption { description "Frame preemption supported."; reference "IEEE Std 802.1Q"; } typedef frame-preemption-status-enum { type enumeration { enum express { description "Frames queued for the priority are to be transmitted using the express service for the Port."; } enum preemptable { description "Frames queued for the priority are to be transmitted using the preemptable service for the Port."; } } description "Frame preemption status of each priority."; } grouping preemption-parameters { description "preemption-parameters comprises all of the parameters associated with frame preemption configuration."; container frame-preemption-parameters { description "A table containing a set of frame preemption parameters, one for each Port. All writeable objects in this table must be persistent over power up restart/reboot."; reference "12.30.1 of IEEE Std 802.1Q"; container frame-preemption-status-table { description "The framePreemptionStatusTable consists of 8 frame-preemption status parameter leafs, one per priority"; reference "12.30.1.1 of IEEE Std 802.1Q"; leaf priority0 { type frame-preemption-status-enum; default "express"; description "The value of the frame-preemption status parameter for the priority 0. The default value of the parameter is express (1). The value of this object MUST be retained across reinitializations of the management system."; reference "12.30.1.1.1 of IEEE Std 802.1Q"; } leaf priority1 { type frame-preemption-status-enum; default "express"; description "The value of the frame-preemption status parameter for the priority 1. The default value of the parameter is express (1). The value of this object MUST be retained across reinitializations of the management system."; reference "12.30.1.1.1 of IEEE Std 802.1Q"; } leaf priority2 { type frame-preemption-status-enum; default "express"; description "The value of the frame-preemption status parameter for the priority 2. The default value of the parameter is express (1). The value of this object MUST be retained across reinitializations of the management system."; reference "12.30.1.1.1 of IEEE Std 802.1Q"; } leaf priority3 { type frame-preemption-status-enum; default "express"; description "The value of the frame-preemption status parameter for the priority 3. The default value of the parameter is express (1). The value of this object MUST be retained across reinitializations of the management system."; reference "12.30.1.1.1 of IEEE Std 802.1Q"; } leaf priority4 { type frame-preemption-status-enum; default "express"; description "The value of the frame-preemption-status parameter for the priority 4. The default value of the parameter is express (1). The value of this object MUST be retained across reinitializations of the management system."; reference "12.30.1.1.1 of IEEE Std 802.1Q"; } leaf priority5 { type frame-preemption-status-enum; default "express"; description "The value of the frame-preemption status parameter for the priority 5. The default value of the parameter is express (1). The value of this object MUST be retained across reinitializations of the management system."; reference "12.30.1.1.1 of IEEE Std 802.1Q"; } leaf priority6 { type frame-preemption-status-enum; default "express"; description "The value of the frame-preemption status parameter for the priority 6. The default value of the parameter is express (1). The value of this object MUST be retained across reinitializations of the management system."; reference "12.30.1.1.1 of IEEE Std 802.1Q"; } leaf priority7 { type frame-preemption-status-enum; default "express"; description "The value of the frame-preemption status parameter for the priority 7. The default value of the parameter is express (1). The value of this object MUST be retained across reinitializations of the management system."; reference "12.30.1.1.1 of IEEE Std 802.1Q"; } } leaf hold-advance { type uint32; units "nanoseconds"; config false; description "The value of the holdAdvance parameter for the Port in nanoseconds. There is no default value; the holdAdvance is a property of the underlying MAC."; reference "12.30.1.2 of IEEE Std 802.1Q"; } leaf release-advance { type uint32; units "nanoseconds"; config false; description "The value of the releaseAdvance parameter for the Port in nanoseconds. There is no default value; the releaseAdvance is a property of the underlying MAC."; reference "12.30.1.3 of IEEE Std 802.1Q"; } leaf preemption-active { type boolean; config false; description "TRUE if preemption is both supported by the MAC and currently active."; reference "12.30.1.4 of IEEE Std 802.1Q"; } leaf hold-request { type enumeration { enum hold { value 1; description "A hold request has been issued to the MAC."; } enum release { value 2; description "A release request has been issued to the MAC."; } } config false; description "The value of the holdRequest parameter for the Port, either hold (1) or release (2). The value of this object is release (2) on system initialization."; reference "12.30.1.5 of IEEE Std 802.1Q"; } } } }