+++ /dev/null
-module org-openroadm-ethernet-interfaces {
- namespace "http://org/openroadm/ethernet-interfaces";
- prefix org-openroadm-eth-interfaces;
-
- import org-openroadm-device {
- prefix org-openroadm-device;
- }
- import org-openroadm-interfaces {
- prefix openROADM-if;
- }
-
- organization "Open ROADM MSA";
- contact
- "OpenROADM.org";
- description
- "YANG definitions for device facility ethernet interfaces.
-
- Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
- AT&T Intellectual Property. All other rights reserved.
-
- Redistribution and use in source and binary forms, with or without modification,
- are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this
- list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation and/or
- other materials provided with the distribution.
- * Neither the Members of the Open ROADM MSA Agreement nor the names of its
- contributors may be used to endorse or promote products derived from this software
- without specific prior written permission.
-
- THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT ''AS IS''
- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT BE LIABLE FOR ANY DIRECT,
- INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
- OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE.
-
- Also contains code components extracted from IETF Interfaces. These code components
- are copyrighted and licensed as follows:
-
- Copyright (c) 2016 IETF Trust and the persons identified as the document authors.
- All rights reserved.
-
- This document is subject to BCP 78 and the IETF Trust’s Legal Provisions Relating
- to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of
- publication of this document. Please review these documents carefully, as they
- describe your rights and restrictions with respect to this document. Code Components
- extracted from this document must include Simplified BSD License text as described in
- Section 4.e of the Trust Legal Provisions and are provided without warranty as
- described in the Simplified BSD License.";
-
- revision 2016-10-14 {
- description
- "Version 1.2";
- }
-
- grouping eth-attributes {
- leaf speed {
- type uint32;
- description
- "Set speed of the interface, unit mbps.
- This is for ETH facility. ";
- }
- leaf fec {
- type enumeration {
- enum off;
- enum rsfec;
- }
- description "Forward Error Correction Choices. ";
- }
- leaf duplex {
- type enumeration {
- enum "half" {
- value 0;
- description
- "half duplex";
- }
- enum "full" {
- value 1;
- description
- "full duplex";
- }
- }
- default "full";
- description
- "Set duplex selections.";
- }
- leaf mtu {
- type uint32 {
- range "1518..9000";
- }
- default "1522";
- description
- "Set Maximum Frame Size.";
- }
- leaf auto-negotiation {
- type enumeration {
- enum "enabled" {
- value 1;
- description
- "Auto Negotiation enabled";
- }
- enum "disabled" {
- value 0;
- description
- "Auto Negotiation disabled";
- }
- }
- default "enabled";
- description
- "Set Auto Negotiation: Enabled/Disabled.";
- }
- leaf curr-speed {
- config false;
- type string;
- description
- "speed (UNKNOWN/AUTO/10/100/1000/10000) corresponding to the interface";
- }
- leaf curr-duplex {
- config false;
- type string;
- description
- "duplex (HALF/FULL) corresponding to the interface";
- }
- }
-
- grouping ethernet-container {
- container ethernet {
- description
- "Ethernet Interfaces";
- uses eth-attributes;
- }
- }
-
- augment "/org-openroadm-device:org-openroadm-device/org-openroadm-device:interface" {
- when "org-openroadm-device:type = 'openROADM-if:ethernetCsmacd'";
- uses ethernet-container;
- }
-}