Release version 1.3.1
[ccsdk/features.git] / sdnr / wt / devicemanager-onap / onf14 / provider / src / main / yang / wire-interface-2-0.yang
1 module wire-interface-2-0 {\r
2   yang-version 1.1;\r
3   namespace "urn:onf:yang:wire-interface-2-0";\r
4   prefix wire-interface;\r
5 \r
6   import ietf-yang-types {\r
7     prefix yang;\r
8   }\r
9   import core-model-1-4 {\r
10     prefix core-model;\r
11   }\r
12 \r
13   organization\r
14     "openBackhaul.com proposal to Open Networking Foundation (ONF)";\r
15   contact\r
16     "WG Web : https://github.com/openBackhaul/Overview\r
17      WG List: WireInterface@openBackhaul.com\r
18      Editor : Thorsten Heinze\r
19      Email  : Thorsten.Heinze@openBackhaul.com";\r
20   description\r
21     "This model is for vendor agnostic management of Ethernet PHY interfaces.\r
22      Supported: '10BASE5', 'FOIRL', '10BASE2', '10BROAD36', '10BASE-T', '10BASE-FP', '10BASE-FB', '10BASE-FL', '100BASE-T4', '100BASE-TX', '100BASE-BX10D', '100BASE-BX10U', '100BASE-FX', '100BASE-LX10', '100BASE-T2', '1000BASE-X', '1000BASE-BX10D', '1000BASE-BX10U', '1000BASE-LX', '1000BASE-LX10', '1000BASE-SX', '1000BASE-CX', '1000BASE-KX', '1000BASE-T', '10GBASE-X', '10GBASE-LX4', '10GBASE-KX4', '10GBASE-R', '10GBASE-ER', '10GBASE-LR', '10GBASE-SR', '10GBASE-LRM', '10GBASE-KR', '10GBASE-T', '10GBASE-PR-D1', '10GBASE-PR-D2', '10GBASE-PR-D3', '10GBASE-PR-D4', '10GBASE-PR-U1', '10GBASE-PR-U2', '10GBASE-PR-U3', '10GBASE-PR-U4', '40GBASE-R', '40GBASE-KR4', '40GBASE-CR4', '40GBASE-SR4', '4x10GBASE-SR', '40GBASE-LR4', '40GBASE-ER4', '40GBASE-FR', '100GBASE-R', '100GBASE-CR4', '100GBASE-KR4', '100GBASE-KP4', '100GBASE-CR10', '100GBASE-SR4', '100GBASE-SR10', '2x40GBASE-SR', '10x10GBASE-SR', '12x10GBASE-SR', '100GBASE-LR4', '100GBASE-ER4' and 'NOT_YET_DEFINED.\r
23      NOT supported: '2BASE-TL', '10PASS-TS', '1000BASE-PX10-D', '1000BASE-PX10-U', '1000BASE-PX20-D', '1000BASE-PX20-U', '1000BASE-PX30-D', '1000BASE-PX30-U', '1000BASE-PX40-D', '1000BASE-PX40-U', '10GBASE-W', '10GBASE-EW', '10GBASE-LW', '10GBASE-SW', '10/1GBASE-PRX-D1', '10/1GBASE-PRX-D2', '10/1GBASE-PRX-D3', '10/1GBASE-PRX-D4', '10/1GBASE-PRX-U1', '10/1GBASE-PRX-U2', '10/1GBASE-PRX-U3' and '10/1GBASE-PRX-U4'.\r
24 \r
25      Copyright 2019 openBackhaul.com\r
26 \r
27      Licensed under the Apache License, Version 2.0 (the 'License');\r
28      you may not use this file except in compliance with the License.\r
29      You may obtain a copy of the License at\r
30      http://www.apache.org/licenses/LICENSE-2.0\r
31      Unless required by applicable law or agreed to in writing, software\r
32      distributed under the License is distributed on an 'AS IS' BASIS,\r
33      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
34      See the License for the specific language governing permissions and\r
35      limitations under the License.";\r
36 \r
37   revision 2020-01-23 {\r
38     description\r
39       "Model for the Transport SDN Pilot at Telefonica Germany.\r
40        Please view https://github.com/openBackhaul/wireInterface/issues for changes.";\r
41     reference\r
42       "https://github.com/openBackhaul/wireInterface/tree/tsp: Model definition\r
43        https://github.com/openBackhaul/onfCoreIm/tree/tsp: ONF TR-512 Core IM incl. Profile and enhanced Equipment definition";\r
44   }\r
45   revision 2019-11-22 {\r
46     description\r
47       "Model for the Transport SDN Pilot at Telefonica Germany.\r
48        Please view https://github.com/openBackhaul/wireInterface/issues for changes.";\r
49     reference\r
50       "https://github.com/openBackhaul/wireInterface/tree/tsp: Model definition\r
51        https://github.com/openBackhaul/onfCoreIm/tree/tsp: ONF TR-512 Core IM incl. Profile and enhanced Equipment definition";\r
52   }\r
53   revision 2019-10-30 {\r
54     description\r
55       "Model for the Transport SDN Pilot at Telefonica Germany.\r
56        Please view https://github.com/openBackhaul/wireInterface/issues for changes.";\r
57     reference\r
58       "https://github.com/openBackhaul/wireInterface/tree/tsp: Model definition\r
59        https://github.com/openBackhaul/onfCoreIm/tree/tsp: ONF TR-512 Core IM incl. Profile and enhanced Equipment definition";\r
60   }\r
61   revision 2019-07-11 {\r
62     description\r
63       "Model for the Transport SDN Pilot at Telefonica Germany.\r
64        Please view https://github.com/openBackhaul/wireInterface/issues for changes.";\r
65     reference\r
66       "https://github.com/openBackhaul/wireInterface/tree/tsp: Model definition\r
67        https://github.com/openBackhaul/onfCoreIm/tree/tsp: ONF TR-512 Core IM incl. Profile and enhanced Equipment definition";\r
68   }\r
69 \r
70   identity LAYER_PROTOCOL_NAME_TYPE_WIRE_LAYER {\r
71     base core-model:LAYER_PROTOCOL_NAME_TYPE;\r
72     description\r
73       "none";\r
74   }\r
75 \r
76   augment "/core-model:control-construct/core-model:logical-termination-point/core-model:layer-protocol" {\r
77     when "derived-from-or-self(./core-model:layer-protocol-name, 'wire-interface:LAYER_PROTOCOL_NAME_TYPE_WIRE_LAYER')";\r
78     uses wire-interface-lp-spec;\r
79     description\r
80       "none";\r
81   }\r
82 \r
83   /****************************************\r
84    * package notifications\r
85    **************************************/ \r
86 \r
87   notification object-creation-notification {\r
88     uses object-creation-notification;\r
89     description\r
90       "none";\r
91   }\r
92 \r
93   grouping object-creation-notification {\r
94     leaf counter {\r
95       type int32;\r
96       default "-1";\r
97       config false;\r
98       description\r
99         "Counts object creation notifications.";\r
100     }\r
101     leaf timestamp {\r
102       type yang:date-and-time;\r
103       default "2010-11-20T14:00:00+01:00";\r
104       config false;\r
105       description\r
106         "none";\r
107     }\r
108     leaf object-id-ref {\r
109       type leafref {\r
110         path "/core-model:control-construct/core-model:logical-termination-point/core-model:uuid";\r
111         require-instance false;\r
112       }\r
113       config false;\r
114       description\r
115         "none";\r
116     }\r
117     leaf object-type {\r
118       type string;\r
119       default "Type of created object not specified.";\r
120       config false;\r
121       description\r
122         "none";\r
123     }\r
124     description\r
125       "none";\r
126   }\r
127 \r
128   notification object-deletion-notification {\r
129     uses object-deletion-notification;\r
130     description\r
131       "none";\r
132   }\r
133 \r
134   grouping object-deletion-notification {\r
135     leaf counter {\r
136       type int32;\r
137       default "-1";\r
138       config false;\r
139       description\r
140         "Counts object deletion notifications.";\r
141     }\r
142     leaf timestamp {\r
143       type yang:date-and-time;\r
144       default "2010-11-20T14:00:00+01:00";\r
145       config false;\r
146       description\r
147         "none";\r
148     }\r
149     leaf object-id-ref {\r
150       type leafref {\r
151         path "/core-model:control-construct/core-model:logical-termination-point/core-model:uuid";\r
152         require-instance false;\r
153       }\r
154       config false;\r
155       description\r
156         "none";\r
157     }\r
158     description\r
159       "none";\r
160   }\r
161 \r
162   notification attribute-value-changed-notification {\r
163     uses attribute-value-changed-notification;\r
164     description\r
165       "none";\r
166   }\r
167 \r
168   grouping attribute-value-changed-notification {\r
169     leaf counter {\r
170       type int32;\r
171       default "-1";\r
172       config false;\r
173       description\r
174         "Counts attribute value changed notifications.";\r
175     }\r
176     leaf timestamp {\r
177       type yang:date-and-time;\r
178       default "2010-11-20T14:00:00+01:00";\r
179       config false;\r
180       description\r
181         "none";\r
182     }\r
183     leaf object-id-ref {\r
184       type leafref {\r
185         path "/core-model:control-construct/core-model:logical-termination-point/core-model:uuid";\r
186         require-instance false;\r
187       }\r
188       config false;\r
189       description\r
190         "none";\r
191     }\r
192     leaf attribute-name {\r
193       type string;\r
194       default "Attribute name not specified.";\r
195       config false;\r
196       description\r
197         "Name of the attribute that has been changed.";\r
198     }\r
199     leaf new-value {\r
200       type string;\r
201       default "New value not specified.";\r
202       config false;\r
203       description\r
204         "Attribute value converted to a string (xml, json, ...)";\r
205     }\r
206     description\r
207       "none";\r
208   }\r
209 \r
210   notification problem-notification {\r
211     uses problem-notification;\r
212     description\r
213       "none";\r
214   }\r
215 \r
216   grouping problem-notification {\r
217     leaf counter {\r
218       type int32;\r
219       default "-1";\r
220       config false;\r
221       description\r
222         "Counts problem notifications";\r
223     }\r
224     leaf timestamp {\r
225       type yang:date-and-time;\r
226       default "2010-11-20T14:00:00+01:00";\r
227       config false;\r
228       description\r
229         "none";\r
230     }\r
231     leaf object-id-ref {\r
232       type leafref {\r
233         path "/core-model:control-construct/core-model:logical-termination-point/core-model:uuid";\r
234         require-instance false;\r
235       }\r
236       config false;\r
237       description\r
238         "none";\r
239     }\r
240     leaf problem {\r
241       type string;\r
242       default "Problem name not specified.";\r
243       config false;\r
244       description\r
245         "Name of the problem according to supportedAlarmList";\r
246     }\r
247     leaf severity {\r
248       type severity-type;\r
249       default "SEVERITY_TYPE_WARNING";\r
250       config false;\r
251       description\r
252         "Severity of the problem according to problemKindSeverity";\r
253     }\r
254     description\r
255       "none";\r
256   }\r
257 \r
258   /****************************************\r
259    * grouping statements for object classes\r
260    **************************************/ \r
261   /****************************************\r
262    * package super-classes\r
263    **************************************/ \r
264 \r
265   grouping current-problem {\r
266     leaf sequence-number {\r
267       type int16;\r
268       config false;\r
269       description\r
270         "Unique sequence number of the current problem object.";\r
271     }\r
272     leaf timestamp {\r
273       type yang:date-and-time;\r
274       default "2010-11-20T14:00:00+01:00";\r
275       config false;\r
276       description\r
277         "Time when the alarm was raised";\r
278     }\r
279     leaf problem-severity {\r
280       type severity-type;\r
281       default "SEVERITY_TYPE_NOT_YET_DEFINED";\r
282       config false;\r
283       description\r
284         "Severity of the alarm.";\r
285     }\r
286     description\r
287       "none";\r
288   }\r
289 \r
290   grouping current-performance {\r
291     leaf timestamp {\r
292       type yang:date-and-time;\r
293       default "2010-11-20T14:00:00+01:00";\r
294       config false;\r
295       description\r
296         "The timestamp associated with when the current data was collected.";\r
297     }\r
298     leaf suspect-interval-flag {\r
299       type boolean;\r
300       default "false";\r
301       config false;\r
302       description\r
303         "This attribute is used to indicate that the performance data for the current period may not be reliable. Some reasons for this to occur are:\r
304             â€“ Suspect data were detected by the actual resource doing data collection.\r
305             â€“ Transition of the administrativeState attribute to/from the 'lock' state.\r
306             â€“ Transition of the operationalState to/from the 'disabled' state.\r
307             â€“ Scheduler setting that inhibits the collection function.\r
308             â€“ The performance counters were reset during the interval.\r
309             â€“ The currentData (or subclass) object instance was created during the monitoring period.";\r
310     }\r
311     leaf elapsed-time {\r
312       type int64;\r
313       units "s";\r
314       default "-1";\r
315       config false;\r
316       description\r
317         "Number of seconds that elapsed since the last reset of the counter.";\r
318     }\r
319     leaf scanner-id {\r
320       type string;\r
321       default "Scanner ID not defined.";\r
322       config false;\r
323       description\r
324         "none";\r
325     }\r
326     leaf granularity-period {\r
327       type granularity-period-type;\r
328       config false;\r
329       description\r
330         "Time period between reset of the underlying counter.";\r
331     }\r
332     description\r
333       "none";\r
334   }\r
335 \r
336   grouping historical-performance {\r
337     leaf suspect-interval-flag {\r
338       type boolean;\r
339       default "false";\r
340       config false;\r
341       description\r
342         "This attribute indicates that the data collected during the interval is suspect.";\r
343     }\r
344     leaf history-data-id {\r
345       type string;\r
346       default "History Data ID not defined.";\r
347       config false;\r
348       description\r
349         "none";\r
350     }\r
351     leaf granularity-period {\r
352       type granularity-period-type;\r
353       config false;\r
354       description\r
355         "Time period between reset of the underlying counter.";\r
356     }\r
357     leaf period-end-time {\r
358       type yang:date-and-time;\r
359       config false;\r
360       description\r
361         "Time when the counter values have been recorded and the counter reset.";\r
362     }\r
363     description\r
364       "none";\r
365   }\r
366 \r
367   grouping wire-interface-lp-spec {\r
368     container wire-interface-pac {\r
369       uses wire-interface-pac;\r
370       description\r
371         "none";\r
372     }\r
373     description\r
374       "none";\r
375   }\r
376 \r
377   grouping wire-interface-pac {\r
378     container wire-interface-capability {\r
379       config false;\r
380       uses wire-interface-capability;\r
381       description\r
382         "none";\r
383     }\r
384     container wire-interface-configuration {\r
385       uses wire-interface-configuration;\r
386       description\r
387         "none";\r
388     }\r
389     container wire-interface-status {\r
390       config false;\r
391       uses wire-interface-status;\r
392       description\r
393         "none";\r
394     }\r
395     container wire-interface-current-problems {\r
396       config false;\r
397       uses wire-interface-current-problems;\r
398       description\r
399         "none";\r
400     }\r
401     container wire-interface-current-performance {\r
402       config false;\r
403       uses wire-interface-current-performance;\r
404       description\r
405         "none";\r
406     }\r
407     container wire-interface-historical-performances {\r
408       config false;\r
409       uses wire-interface-historical-performances;\r
410       description\r
411         "none";\r
412     }\r
413     description\r
414       "none";\r
415   }\r
416 \r
417   grouping wire-interface-capability {\r
418     list supported-pmd-kind-list {\r
419       key "pmd-name";\r
420       config false;\r
421       min-elements 1;\r
422       uses pmd-kind;\r
423       description\r
424         "List of Physical Medium Dependent (PMD) that can be operated";\r
425     }\r
426     leaf auto-pmd-negotiation-is-avail {\r
427       type boolean;\r
428       default "false";\r
429       config false;\r
430       description\r
431         "1 = device is supporting auto-negotiation";\r
432     }\r
433     leaf auto-negotiation-pmd-selection-is-avail {\r
434       type boolean;\r
435       default "false";\r
436       config false;\r
437       description\r
438         "1 = device is supporting restricting auto-negotiation on a pre-defined list of PMDs";\r
439     }\r
440     leaf-list supported-signal-ordering-kind-list {\r
441       type signal-ordering-kind-type;\r
442       config false;\r
443       min-elements 1;\r
444       description\r
445         "Describes the different (e.g. MDI, MDI-X) ways of ordering the signals on the physical medium";\r
446     }\r
447     leaf auto-signal-ordering-is-avail {\r
448       type boolean;\r
449       default "false";\r
450       config false;\r
451       description\r
452         "1 = there is a mechanism for automatically crossing over tx and rx implemented";\r
453     }\r
454     leaf configuration-of-rx-sync-preference-is-avail {\r
455       type boolean;\r
456       default "false";\r
457       config false;\r
458       description\r
459         "1 = Configuration of the behavior during the synchronization of transmitter and receiver is available. This attribute has nothing to do with clock signals.";\r
460     }\r
461     leaf mii-kind {\r
462       type mii-kind-type;\r
463       default "MII_KIND_TYPE_NOT_YET_DEFINED";\r
464       config false;\r
465       description\r
466         "Kind of Medium Independent Interface (MII) provided by this Medium Attachment Unit (MAU) (e.g. SFP, moldered port)";\r
467     }\r
468     leaf mdi-kind {\r
469       type mdi-kind-type;\r
470       default "MDI_KIND_TYPE_NOT_YET_DEFINED";\r
471       config false;\r
472       description\r
473         "Kind of Medium Dependent Interface (MDI) provided by this Medium Attachment Unit (MAU)";\r
474     }\r
475     leaf required-medium-kind {\r
476       type medium-kind-type;\r
477       default "MEDIUM_KIND_TYPE_NOT_YET_DEFINED";\r
478       config false;\r
479       description\r
480         "Kind of medium required for operating this Medium Attachment Unit (MAU), more like an information field";\r
481     }\r
482     leaf-list wavelength-min-list {\r
483       type int32;\r
484       units "pm";\r
485       default "-1";\r
486       config false;\r
487       max-elements 3;\r
488       description\r
489         "Source: SFF-8690. Minimum laser wavelength in pico meter, -1 = not applicable, 0 = not known, if (wavelengthMin==wavelengthMax): wavelength cannot be configured; multiplicity=0..3 for 10GBASE-LX4 according to 802.3 53.5. Value to be read from the EPROM of the SFP.";\r
490     }\r
491     leaf-list wavelength-max-list {\r
492       type int32;\r
493       units "pm";\r
494       default "-1";\r
495       config false;\r
496       max-elements 3;\r
497       description\r
498         "Source: SFF-8690. Maximum laser wavelength in pico meter, -1 = not applicable, 0 = not known, if (wavelengthMax==wavelengthMin): wavelength cannot be configured; multiplicity=0..3 for 10GBASE-LX4 according to 802.3 53.5. Value to be read from the EPROM of the SFP.";\r
499     }\r
500     leaf wavelength-grid-min {\r
501       type int32;\r
502       units "pm";\r
503       default "-1";\r
504       config false;\r
505       description\r
506         "Source: SFF-8690. Minimum grid spacing supported by the transceiver, -1 = not applicable, 0 = not known";\r
507     }\r
508     leaf short-reach-mode-is-avail {\r
509       type boolean;\r
510       default "false";\r
511       config false;\r
512       description\r
513         "1 = Indicates that Short Reach Mode for 10GBASE-T according to 802.3 45.2.1.64 is available";\r
514     }\r
515     leaf eee-is-avail {\r
516       type boolean;\r
517       default "false";\r
518       config false;\r
519       description\r
520         "1 = Indicates that Energy-Efficient Ethernet (EEE) is available at the device.";\r
521     }\r
522     leaf unidirectional-operation-is-avail {\r
523       type boolean;\r
524       default "false";\r
525       config false;\r
526       description\r
527         "Source: 802.3. 1 = Medium Attachment Unit (MAU) able to transmit from Media Independent Interface (MII) regardless of whether the MAU has determined that a valid link has been established, 0 = MAU able to transmit from MII only when the MAU has determined that a valid link has been established";\r
528     }\r
529     leaf rxlevel-low-threshold {\r
530       type int8;\r
531       units "dBm";\r
532       default "99";\r
533       config false;\r
534       description\r
535         "Threshold for alarming low RX levels. Value pre-defined by SFP manufacturer (SFF- 8472)";\r
536     }\r
537     leaf rxlevel-high-threshold {\r
538       type int8;\r
539       units "dBm";\r
540       default "99";\r
541       config false;\r
542       description\r
543         "Threshold for alarming high RX levels. Value pre-defined by SFP manufacturer (SFF- 8472)";\r
544     }\r
545     leaf temperature-low-threshold {\r
546       type int8;\r
547       units "Celsius";\r
548       default "-99";\r
549       config false;\r
550       description\r
551         "Threshold for alarming low temperature values. Value pre-defined by SFP manufacturer (SFF- 8472)\r
552          Might move to somewhere in the Physical Segment of the Core IM";\r
553     }\r
554     leaf temperature-high-threshold {\r
555       type int8;\r
556       units "Celsius";\r
557       default "-99";\r
558       config false;\r
559       description\r
560         "Threshold for alarming high temperature values. Value pre-defined by SFP manufacturer (SFF- 8472)\r
561          Might move to somewhere in the Physical Segment of the Core IM";\r
562     }\r
563     leaf configuration-of-number-of-bip-errors-per-ses-is-avail {\r
564       type boolean;\r
565       default "false";\r
566       config false;\r
567       description\r
568         "1 = SET operation on the Line SES threshold defined by aLineSESThreshold in 30.8.1.1.11 of 802.3-2015 is available.";\r
569     }\r
570     leaf admin-shut-down-is-avail {\r
571       type boolean;\r
572       default "false";\r
573       config false;\r
574       description\r
575         "1 = Manual switching on and off of the interface without deleting it (underlying OSI network layers are also not affected) is available.";\r
576     }\r
577     leaf isolation-is-avail {\r
578       type boolean;\r
579       default "false";\r
580       config false;\r
581       description\r
582         "1 = Separation of the PHY from higher network layers is supported by the device. Maintenance feature. Source: 802.3. ";\r
583     }\r
584     leaf-list supported-loop-back-kind-list {\r
585       type loop-back-type;\r
586       config false;\r
587       min-elements 1;\r
588       max-elements 5;\r
589       description\r
590         "Source: 802.3 45.2.1.12.1 PMA remote loopback ability. List of supported kinds of looping back of header information to the remote site.";\r
591     }\r
592     leaf maintenance-timer-range {\r
593       type string;\r
594       default "Range of the maintenance timer not yet defined.";\r
595       config false;\r
596       description\r
597         "Available time periods for maintenance configurations (e.g. the loop back) to be described. Concrete values shall be separated by commas (e.g. '10, 60, 360'). Ranges shall be expressed as two values separated by a minus (e.g. '10-360').";\r
598     }\r
599     leaf-list supported-alarm-list {\r
600       type string;\r
601       config false;\r
602       min-elements 1;\r
603       description\r
604         "Available alarms to be listed. Mandatory: 'rxLos'. Optional: 'txFault', 'tempHigh', 'tempLow', 'rxLevelHigh', 'rxLevelLow', 'vccHigh', 'vccLow', 'txBiasHigh', 'txBiasLow', 'txPowerHigh', 'txPowerLow', 'laserTempHigh', 'laserTempLow', 'tecCurrentHigh', 'tecCurrentLow'. Further alarms might be added by the device.";\r
605     }\r
606     leaf performance-monitoring-is-avail {\r
607       type boolean;\r
608       default "false";\r
609       config false;\r
610       description\r
611         "1 = Collection and aggregation of performance values is available.";\r
612     }\r
613     description\r
614       "none";\r
615   }\r
616 \r
617   grouping wire-interface-configuration {\r
618     leaf interface-name {\r
619       type string;\r
620       default "Interface name not yet defined.";\r
621       description\r
622         "Description of the interface, could be a name, could be a number. Free text field to be filled by the operator.";\r
623     }\r
624     leaf interface-is-on {\r
625       type boolean;\r
626       default "false";\r
627       description\r
628         "Source: 802.3 according 30.3.2.2.1 acPhyAdminControl. 1 = Activation of the interface (it gets powered and can be managed even if the transceiver is not yet transmitting or receiving). In case there is no Medium Attachment Unit (MAU) (e.g. no SFP in the cage) SETting (interfaceIsOn=1) must be ignored and GETing must return (interfaceIsOn=0)";\r
629     }\r
630     leaf remote-wire-interface-name {\r
631       type string;\r
632       default "Remote wire interface name not yet defined.";\r
633       description\r
634         "Text field for defining the wire interface this one is connected with. Ideally used for entering unique numbers or names for unambiguously identifying the connection within the network";\r
635     }\r
636     leaf-list transceiver-is-on-list {\r
637       type boolean;\r
638       default "false";\r
639       max-elements 11;\r
640       description\r
641         "Source: 802.3 45.2.1.8 PMD transmit disable register (Register 1.9). 1 = Activation of the transmitter and receiver (e.g. laser) of the PHY; transceiverIsOnList[0]:total interface; transceiverIsOnList[1..10] different lanes of a multilane Medium Attachment Unit (MAU)";\r
642     }\r
643     leaf auto-pmd-negotiation-is-on {\r
644       type boolean;\r
645       default "false";\r
646       description\r
647         "Only relevant if (autoPmdNegotiationIsAvail == 1). 1 = Auto-negotiation is switched on";\r
648     }\r
649     leaf fixed-pmd-kind {\r
650       type leafref {\r
651         path "/core-model:control-construct/core-model:logical-termination-point/core-model:layer-protocol/wire-interface:wire-interface-pac/wire-interface:wire-interface-capability/wire-interface:supported-pmd-kind-list/wire-interface:pmd-name";\r
652         require-instance false;\r
653       }\r
654       must 'boolean(/core-model:control-construct/core-model:logical-termination-point/core-model:layer-protocol/wire-interface:wire-interface-pac/wire-interface:wire-interface-capability/wire-interface:supported-pmd-kind-list[pmd-name=current()])';\r
655       description\r
656         "If (autoPmdNegotiationIsOn==0) : Configuration of the concrete kind of Physical Medium Dependent (PMD). If (autoNegotiationIsOn=1) value of this field becomes irrelevant";\r
657     }\r
658     leaf-list auto-negotiation-pmd-list {\r
659       type leafref {\r
660         path "/core-model:control-construct/core-model:logical-termination-point/core-model:layer-protocol/wire-interface:wire-interface-pac/wire-interface:wire-interface-capability/wire-interface:supported-pmd-kind-list/wire-interface:pmd-name";\r
661         require-instance false;\r
662       }\r
663       must 'boolean(/core-model:control-construct/core-model:logical-termination-point/core-model:layer-protocol/wire-interface:wire-interface-pac/wire-interface:wire-interface-capability/wire-interface:supported-pmd-kind-list[pmd-name=current()])';\r
664       description\r
665         "If (autoPmdNegotiationIsOn==1) AND (autoNegotiationPmdSelectionIsAvail==1), this list defines the selection of PMDs the automated negotiation process is allowed to choose from. If no entry, the automated negotiation process is allowed to choose from all available PMDs.";\r
666     }\r
667     leaf auto-signal-ordering-is-on {\r
668       type boolean;\r
669       default "false";\r
670       description\r
671         "Only relevant if (autoSignalOrderingIsAvail == 1). 1 = e.g. auto-MDI-X is switched on";\r
672     }\r
673     leaf fixed-signal-ordering-kind {\r
674       type signal-ordering-kind-type;\r
675       default "SIGNAL_ORDERING_KIND_TYPE_NOT_YET_DEFINED";\r
676       description\r
677         "If (autoSignalOrderingIsOn==0) configuration of the concrete kind of signal ordering on the media (e.g. MDI, or MDI-X). If (autoSignalOrderingIsOn=1) value of this field becomes irrelevant";\r
678     }\r
679     leaf-list wavelength-list {\r
680       type int32;\r
681       units "pm";\r
682       default "-1";\r
683       max-elements 3;\r
684       description\r
685         "Source: SFF-8690. Wavelength of the signal of laser in pico meter; multiplicity=0..3 for 10GBASE-LX4 according to 802.3 53.5";\r
686     }\r
687     leaf rx-sync-preference {\r
688       type rx-sync-preference-type;\r
689       default "RX_SYNC_PREFERENCE_TYPE_NOT_YET_DEFINED";\r
690       description\r
691         "Source: 802.3. Only relevant if (configurationOfRxSyncPreferenceIsAvail == 1). Configuration of the behavior during the negotiation of the wire interface (master), which is sending a continuous stream of symbols for the remote site (slave) to synchronize its receiver on it. This attribute is for synchronizing transmitter and receiver and has nothing to do with clock signals.";\r
692     }\r
693     leaf short-reach-mode-is-on {\r
694       type boolean;\r
695       default "false";\r
696       description\r
697         "Only relevant if (shortReachModeIsAvail == 1). Activation of the Short Reach Mode for 10GBASE-T according to 802.3 45.2.1.64";\r
698     }\r
699     leaf eee-is-on {\r
700       type boolean;\r
701       default "false";\r
702       description\r
703         "Only relevant if (eeeIsAvail == 1). 1 = Energy Efficient Ethernet is activated\n";\r
704     }\r
705     leaf unidirectional-operation-is-on {\r
706       type boolean;\r
707       default "false";\r
708       description\r
709         "Source: 802.3. Only relevant if (unidirectionalOperationIsAvail == 1). 1 = Enable transmit from media independent interface regardless of whether the PHY has determined that a valid link has been established, 0 = Enable transmit from media independent interface only when the PHY has determined that a valid link has been established";\r
710     }\r
711     leaf number-of-bip-errors-per-ses {\r
712       type int16;\r
713       default "-1";\r
714       description\r
715         "Only relevant if (configurationOfNumberOfBipErrorsPerSesIsAvail == 1). SET operation on the Line SES threshold defined by aLineSESThreshold in 30.8.1.1.11 of 802.3-2015. This attribute configures the minimum number of BIP errors that have to occur in one second to count this second as a SES instead of an ES. According to 802.3, a value of 9835 should be the hardware default value, which should also apply after restarting the interface.";\r
716     }\r
717     leaf restart-pmd-negotiation-is-on {\r
718       type boolean;\r
719       default "false";\r
720       description\r
721         "Source: 802.3. Restarts the auto negotiation process";\r
722     }\r
723     leaf isolation-is-on {\r
724       type boolean;\r
725       default "false";\r
726       description\r
727         "Maintenance Feature. Only relevant if (isolationIsAvail == 1). Source: 802.3. 1 = Activation of the separation of the PHY from higher network layers. Maintenance feature.";\r
728     }\r
729     leaf loop-back-kind-on {\r
730       type loop-back-type;\r
731       default "LOOP_BACK_TYPE_NONE";\r
732       description\r
733         "Maintenance Feature. Source:802.3 according 22.2.4.1.2 Loopback. The currently configured type of looping back of the wire interface header shall be expressed here. The received header is returned to the remote site.";\r
734     }\r
735     leaf maintenance-timer {\r
736       type int32;\r
737       units "s";\r
738       default "-1";\r
739       description\r
740         "Time of existence of any maintenance configuration (e.g. the loop back). Valid values are defined in WireInterface::WireInterfaceCapability::maintenanceTimerRange. In case the hardware would implement just a single timer for maintenance at all kinds and instances of interfaces, this attribute should affect this single timer.";\r
741     }\r
742     list problem-kind-severity-list {\r
743       key "problem-kind-name";\r
744       min-elements 1;\r
745       uses problem-kind-severity-type;\r
746       description\r
747         "Severity of the problem to be configured.";\r
748     }\r
749     leaf performance-monitoring-is-on {\r
750       type boolean;\r
751       default "false";\r
752       description\r
753         "Only relevant if (performanceMonitoringIsAvail==1). 1 = Collection and aggregation of performance values is switched on.";\r
754     }\r
755     description\r
756       "none";\r
757   }\r
758 \r
759   grouping wire-interface-status {\r
760     leaf interface-status {\r
761       type interface-status-type;\r
762       default "INTERFACE_STATUS_TYPE_NOT_YET_DEFINED";\r
763       config false;\r
764       description\r
765         "Source: 802.3 according 30.3.2.1.7 aPhyAdminState. 1 = A Physical layer entity (PHY) exists (including Medium Attachment Unit (e.g. SFP) ) and it is powered and can be managed";\r
766     }\r
767     leaf-list receive-signal-is-detected-list {\r
768       type boolean;\r
769       default "false";\r
770       config false;\r
771       max-elements 11;\r
772       description\r
773         "Source: 802.3 45.2.1.9 PMD receive signal detect. 1 = Receiver (e.g. laser) detects signal; receiveSignalIsDetected[0]:total interface; receiveSignalIsDetected[1..10] different lanes of a multilane Medium Attachment Unit (MAU)";\r
774     }\r
775     leaf pmd-negotiation-state {\r
776       type pmd-negotiation-state-type;\r
777       default "PMD_NEGOTIATION_STATE_TYPE_NOT_YET_DEFINED";\r
778       config false;\r
779       description\r
780         "Source: 802.3. Status of the Physical Medium Dependent (PMD) negotiation process (auto-neg)";\r
781     }\r
782     leaf pmd-is-up {\r
783       type boolean;\r
784       default "false";\r
785       config false;\r
786       description\r
787         "Source: Inverse of 802.3 45.2.1.2.3 Fault (1.1.7). If (interfaceIsUp==1) BUT (pmdIsUp==0) : there is a fault in either transmit or receive path";\r
788     }\r
789     leaf pmd-kind-cur {\r
790       type leafref {\r
791         path "/core-model:control-construct/core-model:logical-termination-point/core-model:layer-protocol/wire-interface:wire-interface-pac/wire-interface:wire-interface-capability/wire-interface:supported-pmd-kind-list/wire-interface:pmd-name";\r
792         require-instance false;\r
793       }\r
794       config false;\r
795       description\r
796         "Indicates the kind of Physical Medium Dependent (PMD) currently operated at this interface";\r
797     }\r
798     leaf signal-ordering-kind-cur {\r
799       type signal-ordering-kind-type;\r
800       default "SIGNAL_ORDERING_KIND_TYPE_NOT_YET_DEFINED";\r
801       config false;\r
802       description\r
803         "Reference on a SignalOrderingType for expressing the currently active way of ordering the signals on the physical medium.";\r
804     }\r
805     leaf rx-sync-role {\r
806       type rx-sync-role-type;\r
807       default "RX_SYNC_ROLE_TYPE_NOT_YET_DEFINED";\r
808       config false;\r
809       description\r
810         "Indicates the result of the negotiation of the wire interface (master), which is sending a continuous stream of symbols for the remote site (slave) synchronizing its receiver on it";\r
811     }\r
812     leaf eee-is-up {\r
813       type boolean;\r
814       default "false";\r
815       config false;\r
816       description\r
817         "1 = Energy Efficient Ethernet is supported at both ends of the link and it is activated";\r
818     }\r
819     leaf link-is-up {\r
820       type boolean;\r
821       default "false";\r
822       config false;\r
823       description\r
824         "If (transceiverIsUp==1) AND (linkIsUp==1) : communication is established to the remote site";\r
825     }\r
826     leaf link-is-idle {\r
827       type boolean;\r
828       default "false";\r
829       config false;\r
830       description\r
831         "If (linkIsUp==1) AND (eeeIsAvail==1) AND (eeeIsOn==1) AND (linkIsIdle==1) : link is currently in idle mode. If Energy Efficient Ethernet is not supported or switched off, this attribute must be 0.";\r
832     }\r
833     leaf loop-back-kind-up {\r
834       type loop-back-type;\r
835       default "LOOP_BACK_TYPE_NONE";\r
836       config false;\r
837       description\r
838         "The currently active (not just configured) type of looping back of the wire interface header shall be expressed here. The received header is returned to the remote site.";\r
839     }\r
840     leaf tx-level-cur {\r
841       type int8;\r
842       units "dBm";\r
843       default "99";\r
844       config false;\r
845       description\r
846         "Current transmit power";\r
847     }\r
848     leaf-list rx-level-cur-list {\r
849       type int8;\r
850       units "dBm";\r
851       default "99";\r
852       config false;\r
853       max-elements 4;\r
854       description\r
855         "Current receive power; Also used for receive signal power measured at the Medium Dependent Interface (MDI) of 10GBASE-T during training as described in 802.3 55.4.3.1";\r
856     }\r
857     leaf performance-monitoring-is-up {\r
858       type boolean;\r
859       default "false";\r
860       config false;\r
861       description\r
862         "1 = Performance values are currently collected and aggregated.";\r
863     }\r
864     description\r
865       "none";\r
866   }\r
867 \r
868   grouping wire-interface-current-problems {\r
869     list current-problem-list {\r
870       key "sequence-number";\r
871       config false;\r
872       uses wire-interface-current-problem-type;\r
873       description\r
874         "none";\r
875     }\r
876     leaf number-of-current-problems {\r
877       type int8;\r
878       default "-1";\r
879       config false;\r
880       description\r
881         "Number of alarms, which are currently active on this interface.";\r
882     }\r
883     leaf time-of-latest-change {\r
884       type yang:date-and-time;\r
885       default "2010-11-20T14:00:00+01:00";\r
886       config false;\r
887       description\r
888         "Date and time when the list of alarms has been changed for the last time.";\r
889     }\r
890     description\r
891       "none";\r
892   }\r
893 \r
894   grouping wire-interface-current-performance {\r
895     list current-performance-data-list {\r
896       key "granularity-period";\r
897       config false;\r
898       min-elements 1;\r
899       max-elements 2;\r
900       uses wire-interface-current-performance-type;\r
901       description\r
902         "At least values of the counters, which are reset every 15 minutes, are to be provided. If available, the current values of the counters, which are reset every 24 hour, can be provided, too.";\r
903     }\r
904     leaf number-of-current-performance-sets {\r
905       type int8;\r
906       default "-1";\r
907       config false;\r
908       description\r
909         "Number of sets of current performance values, which are provided in the list.";\r
910     }\r
911     description\r
912       "Aggregated performance information of the air interface at a particular moment.";\r
913   }\r
914 \r
915   grouping wire-interface-historical-performances {\r
916     list historical-performance-data-list {\r
917       key "granularity-period period-end-time";\r
918       config false;\r
919       uses wire-interface-historical-performance-type;\r
920       description\r
921         "none";\r
922     }\r
923     leaf number-of-historical-performance-sets {\r
924       type int16;\r
925       default "-1";\r
926       config false;\r
927       description\r
928         "Number of sets of historical performance values, which are provided in the list.";\r
929     }\r
930     leaf time-of-latest-change {\r
931       type yang:date-and-time;\r
932       default "2010-11-20T14:00:00+01:00";\r
933       config false;\r
934       description\r
935         "Date and time when the list of sets of historical performance values has been changed for the last time (e.g. new one added or existing one deleted).";\r
936     }\r
937     description\r
938       "Aggregated performance information of the air interface for a pre-defined measurement interval.";\r
939   }\r
940 \r
941   grouping pmd-kind {\r
942     leaf pmd-name {\r
943       type string;\r
944       config false;\r
945       description\r
946         "To be chosen from the following list of PMD names according to IEEE 802.3 '10BASE5', 'FOIRL', '10BASE2', '10BROAD36', '10BASE-T', '10BASE-FP', '10BASE-FB', '10BASE-FL', '100BASE-T4', '100BASE-TX', '100BASE-BX10D', '100BASE-BX10U', '100BASE-FX', '100BASE-LX10', '100BASE-T2', '1000BASE-X', '1000BASE-BX10D', '1000BASE-BX10U', '1000BASE-LX', '1000BASE-LX10', '1000BASE-SX', '1000BASE-CX', '1000BASE-KX', '1000BASE-T', '10GBASE-X', '10GBASE-LX4', '10GBASE-KX4', '10GBASE-R', '10GBASE-ER', '10GBASE-LR', '10GBASE-SR', '10GBASE-LRM', '10GBASE-KR', '10GBASE-T', '10GBASE-PR-D1', '10GBASE-PR-D2', '10GBASE-PR-D3', '10GBASE-PR-D4', '10GBASE-PR-U1', '10GBASE-PR-U2', '10GBASE-PR-U3', '10GBASE-PR-U4', '40GBASE-R', '40GBASE-KR4', '40GBASE-CR4', '40GBASE-SR4', '4x10GBASE-SR', '40GBASE-LR4', '40GBASE-ER4', '40GBASE-FR', '100GBASE-R', '100GBASE-CR4', '100GBASE-KR4', '100GBASE-KP4', '100GBASE-CR10', '100GBASE-SR4', '100GBASE-SR10', '2x40GBASE-SR', '10x10GBASE-SR', '12x10GBASE-SR', '100GBASE-LR4', '100GBASE-ER4' and 'NOT_YET_DEFINED'. Some PMDs are distinguishing Full Duplex and Half Duplex. '_FD' and '_HD' are to be attached to the respective PMD name accordingly.";\r
947     }\r
948     leaf speed {\r
949       type string;\r
950       default "NOT_YET_DEFINED";\r
951       description\r
952         "Line speed of the PMD. Value to be chosen from '2Mbit/s', '10Mbit/s', '100Mbit/s', '1000Mbit/s', '10Gbit/s', '40Gbit/s', '100Gbit/s' or 'NOT_YET_DEFINED'. This field is not for calculation purposes, but for supporting selection of the correct PMD on application layer.";\r
953     }\r
954     leaf duplex {\r
955       type duplex-type;\r
956       default "DUPLEX_TYPE_NOT_YET_DEFINED";\r
957       description\r
958         "To be expressed, whether the PMD is full duplex or just half duplex. This field is not for configuration purposes, but for supporting selection of the correct PMD on application layer.";\r
959     }\r
960     description\r
961       "none";\r
962   }\r
963 \r
964   /****************************************\r
965    * typedef statements\r
966    **************************************/ \r
967 \r
968   typedef loop-back-type {\r
969     type identityref {\r
970       base LOOP_BACK_TYPE;\r
971     }\r
972     description\r
973       "none";\r
974   }\r
975 \r
976   typedef rx-sync-preference-type {\r
977     type identityref {\r
978       base RX_SYNC_PREFERENCE_TYPE;\r
979     }\r
980     description\r
981       "none";\r
982   }\r
983 \r
984   typedef rx-sync-role-type {\r
985     type identityref {\r
986       base RX_SYNC_ROLE_TYPE;\r
987     }\r
988     description\r
989       "none";\r
990   }\r
991 \r
992   typedef mii-kind-type {\r
993     type identityref {\r
994       base MII_KIND_TYPE;\r
995     }\r
996     description\r
997       "none";\r
998   }\r
999 \r
1000   typedef mdi-kind-type {\r
1001     type identityref {\r
1002       base MDI_KIND_TYPE;\r
1003     }\r
1004     description\r
1005       "none";\r
1006   }\r
1007 \r
1008   typedef medium-kind-type {\r
1009     type identityref {\r
1010       base MEDIUM_KIND_TYPE;\r
1011     }\r
1012     description\r
1013       "none";\r
1014   }\r
1015 \r
1016   typedef duplex-type {\r
1017     type identityref {\r
1018       base DUPLEX_TYPE;\r
1019     }\r
1020     description\r
1021       "none";\r
1022   }\r
1023 \r
1024   typedef signal-ordering-kind-type {\r
1025     type identityref {\r
1026       base SIGNAL_ORDERING_KIND_TYPE;\r
1027     }\r
1028     description\r
1029       "none";\r
1030   }\r
1031 \r
1032   typedef pmd-negotiation-state-type {\r
1033     type identityref {\r
1034       base PMD_NEGOTIATION_STATE_TYPE;\r
1035     }\r
1036     description\r
1037       "none";\r
1038   }\r
1039 \r
1040   /*********************************************\r
1041    * grouping statements for complex data types\r
1042    *******************************************/ \r
1043 \r
1044   identity LOOP_BACK_TYPE {\r
1045     description\r
1046       "none";\r
1047   }\r
1048 \r
1049   identity LOOP_BACK_TYPE_NONE {\r
1050     base LOOP_BACK_TYPE;\r
1051     description\r
1052       "none";\r
1053   }\r
1054 \r
1055   identity LOOP_BACK_TYPE_EXTERNAL {\r
1056     base LOOP_BACK_TYPE;\r
1057     description\r
1058       "Parameter\r
1059        If the internal loopback test succeeds but the external loopback fails, the Medium Attachment Unit (MAU) is faulty (e.g. SFP has to be replaced)";\r
1060   }\r
1061 \r
1062   identity LOOP_BACK_TYPE_INTERNAL {\r
1063     base LOOP_BACK_TYPE;\r
1064     description\r
1065       "Parameter\r
1066        If the internal loopback test fails, the Data Terminal Equipment (DTE) is faulty (e.g. board has to be replaced)";\r
1067   }\r
1068 \r
1069   identity LOOP_BACK_TYPE_NOT_YET_DEFINED {\r
1070     base LOOP_BACK_TYPE;\r
1071     description\r
1072       "none";\r
1073   }\r
1074 \r
1075   identity RX_SYNC_PREFERENCE_TYPE {\r
1076     description\r
1077       "none";\r
1078   }\r
1079 \r
1080   identity RX_SYNC_PREFERENCE_TYPE_AUTO_MULTIPORT_DEVICE {\r
1081     base RX_SYNC_PREFERENCE_TYPE;\r
1082     description\r
1083       "Master/Slave relation is determined by auto-negotiation and this device has a preference for being Master";\r
1084   }\r
1085 \r
1086   identity RX_SYNC_PREFERENCE_TYPE_AUTO_SINGLE_PORT_DEVICE {\r
1087     base RX_SYNC_PREFERENCE_TYPE;\r
1088     description\r
1089       "Master/Slave relation is determined by auto-negotiation and this device has a preference for being Slave";\r
1090   }\r
1091 \r
1092   identity RX_SYNC_PREFERENCE_TYPE_MANUAL_MASTER {\r
1093     base RX_SYNC_PREFERENCE_TYPE;\r
1094     description\r
1095       "Master/Slave relation is determined by manual configuration and this device shall be Master";\r
1096   }\r
1097 \r
1098   identity RX_SYNC_PREFERENCE_TYPE_MANUAL_SLAVE {\r
1099     base RX_SYNC_PREFERENCE_TYPE;\r
1100     description\r
1101       "Master/Slave relation is determined by manual configuration and this device shall be Slave";\r
1102   }\r
1103 \r
1104   identity RX_SYNC_PREFERENCE_TYPE_NOT_YET_DEFINED {\r
1105     base RX_SYNC_PREFERENCE_TYPE;\r
1106     description\r
1107       "none";\r
1108   }\r
1109 \r
1110   identity RX_SYNC_ROLE_TYPE {\r
1111     description\r
1112       "none";\r
1113   }\r
1114 \r
1115   identity RX_SYNC_ROLE_TYPE_MASTER {\r
1116     base RX_SYNC_ROLE_TYPE;\r
1117     description\r
1118       "none";\r
1119   }\r
1120 \r
1121   identity RX_SYNC_ROLE_TYPE_SLAVE {\r
1122     base RX_SYNC_ROLE_TYPE;\r
1123     description\r
1124       "none";\r
1125   }\r
1126 \r
1127   identity RX_SYNC_ROLE_TYPE_FAULT {\r
1128     base RX_SYNC_ROLE_TYPE;\r
1129     description\r
1130       "none";\r
1131   }\r
1132 \r
1133   identity RX_SYNC_ROLE_TYPE_NOT_YET_DEFINED {\r
1134     base RX_SYNC_ROLE_TYPE;\r
1135     description\r
1136       "none";\r
1137   }\r
1138 \r
1139   identity MII_KIND_TYPE {\r
1140     description\r
1141       "none";\r
1142   }\r
1143 \r
1144   identity MII_KIND_TYPE_GBIC {\r
1145     base MII_KIND_TYPE;\r
1146     description\r
1147       "none";\r
1148   }\r
1149 \r
1150   identity MII_KIND_TYPE_SOLDERED_CONNECTOR {\r
1151     base MII_KIND_TYPE;\r
1152     description\r
1153       "none";\r
1154   }\r
1155 \r
1156   identity MII_KIND_TYPE_SFP_SFP_PLUS_SFP28 {\r
1157     base MII_KIND_TYPE;\r
1158     description\r
1159       "none";\r
1160   }\r
1161 \r
1162   identity MII_KIND_TYPE_XBI_300_PIN {\r
1163     base MII_KIND_TYPE;\r
1164     description\r
1165       "none";\r
1166   }\r
1167 \r
1168   identity MII_KIND_TYPE_XENPAK {\r
1169     base MII_KIND_TYPE;\r
1170     description\r
1171       "none";\r
1172   }\r
1173 \r
1174   identity MII_KIND_TYPE_XFP {\r
1175     base MII_KIND_TYPE;\r
1176     description\r
1177       "none";\r
1178   }\r
1179 \r
1180   identity MII_KIND_TYPE_XFP_E {\r
1181     base MII_KIND_TYPE;\r
1182     description\r
1183       "none";\r
1184   }\r
1185 \r
1186   identity MII_KIND_TYPE_XPAK {\r
1187     base MII_KIND_TYPE;\r
1188     description\r
1189       "none";\r
1190   }\r
1191 \r
1192   identity MII_KIND_TYPE_X2 {\r
1193     base MII_KIND_TYPE;\r
1194     description\r
1195       "none";\r
1196   }\r
1197 \r
1198   identity MII_KIND_TYPE_DWDM_SFP_SFP_PLUS {\r
1199     base MII_KIND_TYPE;\r
1200     description\r
1201       "none";\r
1202   }\r
1203 \r
1204   identity MII_KIND_TYPE_QSFP {\r
1205     base MII_KIND_TYPE;\r
1206     description\r
1207       "none";\r
1208   }\r
1209 \r
1210   identity MII_KIND_TYPE_QSFP_PLUS {\r
1211     base MII_KIND_TYPE;\r
1212     description\r
1213       "none";\r
1214   }\r
1215 \r
1216   identity MII_KIND_TYPE_CXP {\r
1217     base MII_KIND_TYPE;\r
1218     description\r
1219       "none";\r
1220   }\r
1221 \r
1222   identity MII_KIND_TYPE_SHIELDED_MINI_MULTILANE_HD_4X {\r
1223     base MII_KIND_TYPE;\r
1224     description\r
1225       "none";\r
1226   }\r
1227 \r
1228   identity MII_KIND_TYPE_SHIELDED_MINI_MULTILANE_HD__X {\r
1229     base MII_KIND_TYPE;\r
1230     description\r
1231       "none";\r
1232   }\r
1233 \r
1234   identity MII_KIND_TYPE_QSFP28 {\r
1235     base MII_KIND_TYPE;\r
1236     description\r
1237       "none";\r
1238   }\r
1239 \r
1240   identity MII_KIND_TYPE_CXP2 {\r
1241     base MII_KIND_TYPE;\r
1242     description\r
1243       "none";\r
1244   }\r
1245 \r
1246   identity MII_KIND_TYPE_CDFP_STYLE1_STYLE2 {\r
1247     base MII_KIND_TYPE;\r
1248     description\r
1249       "none";\r
1250   }\r
1251 \r
1252   identity MII_KIND_TYPE_SHIELDED_MINI_MULTILANE_HD_4X_FAN_OUT {\r
1253     base MII_KIND_TYPE;\r
1254     description\r
1255       "none";\r
1256   }\r
1257 \r
1258   identity MII_KIND_TYPE_SHIELDED_MINI_MULTILANE_HD_8X_FAN_OUT {\r
1259     base MII_KIND_TYPE;\r
1260     description\r
1261       "none";\r
1262   }\r
1263 \r
1264   identity MII_KIND_TYPE_CDFP_STYLE3 {\r
1265     base MII_KIND_TYPE;\r
1266     description\r
1267       "none";\r
1268   }\r
1269 \r
1270   identity MII_KIND_TYPE_QSFP_MICRO {\r
1271     base MII_KIND_TYPE;\r
1272     description\r
1273       "none";\r
1274   }\r
1275 \r
1276   identity MII_KIND_TYPE_QSFP_DD {\r
1277     base MII_KIND_TYPE;\r
1278     description\r
1279       "none";\r
1280   }\r
1281 \r
1282   identity MII_KIND_TYPE_QSFP_PLUS_RATE_SELECT_V1 {\r
1283     base MII_KIND_TYPE;\r
1284     description\r
1285       "none";\r
1286   }\r
1287 \r
1288   identity MII_KIND_TYPE_QSFP_PLUS_RATE_SELECT_V2 {\r
1289     base MII_KIND_TYPE;\r
1290     description\r
1291       "none";\r
1292   }\r
1293 \r
1294   identity MII_KIND_TYPE_NOT_YET_DEFINED {\r
1295     base MII_KIND_TYPE;\r
1296     description\r
1297       "none";\r
1298   }\r
1299 \r
1300   identity MDI_KIND_TYPE {\r
1301     description\r
1302       "none";\r
1303   }\r
1304 \r
1305   identity MDI_KIND_TYPE_SC {\r
1306     base MDI_KIND_TYPE;\r
1307     description\r
1308       "Subscriber Connector";\r
1309   }\r
1310 \r
1311   identity MDI_KIND_TYPE_FIBRE_CHANNEL_STYLE_1 {\r
1312     base MDI_KIND_TYPE;\r
1313     description\r
1314       "Copper connector";\r
1315   }\r
1316 \r
1317   identity MDI_KIND_TYPE_FIBRE_CHANNEL_STYLE_2 {\r
1318     base MDI_KIND_TYPE;\r
1319     description\r
1320       "Copper connector";\r
1321   }\r
1322 \r
1323   identity MDI_KIND_TYPE_BNC_TNC {\r
1324     base MDI_KIND_TYPE;\r
1325     description\r
1326       "Bayonet/Threaded Neill-Concelman";\r
1327   }\r
1328 \r
1329   identity MDI_KIND_TYPE_FC {\r
1330     base MDI_KIND_TYPE;\r
1331     description\r
1332       "Fibre Channel coax headers";\r
1333   }\r
1334 \r
1335   identity MDI_KIND_TYPE_FIBER_JACK {\r
1336     base MDI_KIND_TYPE;\r
1337     description\r
1338       "none";\r
1339   }\r
1340 \r
1341   identity MDI_KIND_TYPE_LC {\r
1342     base MDI_KIND_TYPE;\r
1343     description\r
1344       "Lucent Connector";\r
1345   }\r
1346 \r
1347   identity MDI_KIND_TYPE_MT_RJ {\r
1348     base MDI_KIND_TYPE;\r
1349     description\r
1350       "Mechanical Transfer - Registered Jack";\r
1351   }\r
1352 \r
1353   identity MDI_KIND_TYPE_MU {\r
1354     base MDI_KIND_TYPE;\r
1355     description\r
1356       "Multiple Optical";\r
1357   }\r
1358 \r
1359   identity MDI_KIND_TYPE_SG {\r
1360     base MDI_KIND_TYPE;\r
1361     description\r
1362       "none";\r
1363   }\r
1364 \r
1365   identity MDI_KIND_TYPE_OPTICAL_PIGTAIL {\r
1366     base MDI_KIND_TYPE;\r
1367     description\r
1368       "none";\r
1369   }\r
1370 \r
1371   identity MDI_KIND_TYPE_MPO1x12 {\r
1372     base MDI_KIND_TYPE;\r
1373     description\r
1374       "Multifiber Parallel Optic";\r
1375   }\r
1376 \r
1377   identity MDI_KIND_TYPE_MPO2x16 {\r
1378     base MDI_KIND_TYPE;\r
1379     description\r
1380       "Multifiber Parallel Optic";\r
1381   }\r
1382 \r
1383   identity MDI_KIND_TYPE_HSSDC_II {\r
1384     base MDI_KIND_TYPE;\r
1385     description\r
1386       "High Speed Serial Data Connector";\r
1387   }\r
1388 \r
1389   identity MDI_KIND_TYPE_COPPER_PIGTAIL {\r
1390     base MDI_KIND_TYPE;\r
1391     description\r
1392       "none";\r
1393   }\r
1394 \r
1395   identity MDI_KIND_TYPE_RJ45 {\r
1396     base MDI_KIND_TYPE;\r
1397     description\r
1398       "8P8C, according to Clause 3 and Figures 1 through 5 of IEC 60603-7";\r
1399   }\r
1400 \r
1401   identity MDI_KIND_TYPE_NO_SEPERABLE_CONNECTOR {\r
1402     base MDI_KIND_TYPE;\r
1403     description\r
1404       "none";\r
1405   }\r
1406 \r
1407   identity MDI_KIND_TYPE_MXC2x16 {\r
1408     base MDI_KIND_TYPE;\r
1409     description\r
1410       "none";\r
1411   }\r
1412 \r
1413   identity MDI_KIND_TYPE_ST {\r
1414     base MDI_KIND_TYPE;\r
1415     description\r
1416       "according to IEC 60874-10:1992, also often called BFOC/2.5";\r
1417   }\r
1418 \r
1419   identity MDI_KIND_TYPE_NOT_YET_DEFINED {\r
1420     base MDI_KIND_TYPE;\r
1421     description\r
1422       "none";\r
1423   }\r
1424 \r
1425   identity MEDIUM_KIND_TYPE {\r
1426     description\r
1427       "none";\r
1428   }\r
1429 \r
1430   identity MEDIUM_KIND_TYPE_TP_CAT3 {\r
1431     base MEDIUM_KIND_TYPE;\r
1432     description\r
1433       "none";\r
1434   }\r
1435 \r
1436   identity MEDIUM_KIND_TYPE_TP_CAT5 {\r
1437     base MEDIUM_KIND_TYPE;\r
1438     description\r
1439       "none";\r
1440   }\r
1441 \r
1442   identity MEDIUM_KIND_TYPE_TP_CAT6 {\r
1443     base MEDIUM_KIND_TYPE;\r
1444     description\r
1445       "none";\r
1446   }\r
1447 \r
1448   identity MEDIUM_KIND_TYPE_TP_CAT8 {\r
1449     base MEDIUM_KIND_TYPE;\r
1450     description\r
1451       "none";\r
1452   }\r
1453 \r
1454   identity MEDIUM_KIND_TYPE_SINGLE_MODE {\r
1455     base MEDIUM_KIND_TYPE;\r
1456     description\r
1457       "none";\r
1458   }\r
1459 \r
1460   identity MEDIUM_KIND_TYPE_MULTI_MODE {\r
1461     base MEDIUM_KIND_TYPE;\r
1462     description\r
1463       "none";\r
1464   }\r
1465 \r
1466   identity MEDIUM_KIND_TYPE_NOT_YET_DEFINED {\r
1467     base MEDIUM_KIND_TYPE;\r
1468     description\r
1469       "none";\r
1470   }\r
1471 \r
1472   identity DUPLEX_TYPE {\r
1473     description\r
1474       "none";\r
1475   }\r
1476 \r
1477   identity DUPLEX_TYPE_HALF_DUPLEX {\r
1478     base DUPLEX_TYPE;\r
1479     description\r
1480       "none";\r
1481   }\r
1482 \r
1483   identity DUPLEX_TYPE_FULL_DUPLEX {\r
1484     base DUPLEX_TYPE;\r
1485     description\r
1486       "none";\r
1487   }\r
1488 \r
1489   identity DUPLEX_TYPE_NOT_YET_DEFINED {\r
1490     base DUPLEX_TYPE;\r
1491     description\r
1492       "none";\r
1493   }\r
1494 \r
1495   identity SIGNAL_ORDERING_KIND_TYPE {\r
1496     description\r
1497       "none";\r
1498   }\r
1499 \r
1500   identity SIGNAL_ORDERING_KIND_TYPE_MDI {\r
1501     base SIGNAL_ORDERING_KIND_TYPE;\r
1502     description\r
1503       "none";\r
1504   }\r
1505 \r
1506   identity SIGNAL_ORDERING_KIND_TYPE_MDI_X {\r
1507     base SIGNAL_ORDERING_KIND_TYPE;\r
1508     description\r
1509       "none";\r
1510   }\r
1511 \r
1512   identity SIGNAL_ORDERING_KIND_TYPE_NOT_YET_DEFINED {\r
1513     base SIGNAL_ORDERING_KIND_TYPE;\r
1514     description\r
1515       "none";\r
1516   }\r
1517 \r
1518   identity PMD_NEGOTIATION_STATE_TYPE {\r
1519     description\r
1520       "none";\r
1521   }\r
1522 \r
1523   identity PMD_NEGOTIATION_STATE_TYPE_NONE {\r
1524     base PMD_NEGOTIATION_STATE_TYPE;\r
1525     description\r
1526       "Device does not support auto negotiation";\r
1527   }\r
1528 \r
1529   identity PMD_NEGOTIATION_STATE_TYPE_DISABLED {\r
1530     base PMD_NEGOTIATION_STATE_TYPE;\r
1531     description\r
1532       "Auto negotiation is disabled.";\r
1533   }\r
1534 \r
1535   identity PMD_NEGOTIATION_STATE_TYPE_ENABLED {\r
1536     base PMD_NEGOTIATION_STATE_TYPE;\r
1537     description\r
1538       "Auto negotiation is enabled, but currently nothing is connected";\r
1539   }\r
1540 \r
1541   identity PMD_NEGOTIATION_STATE_TYPE_IN_PROGRESS {\r
1542     base PMD_NEGOTIATION_STATE_TYPE;\r
1543     description\r
1544       "The auto-negotiation protocol is running and negotiation is currently in-progress";\r
1545   }\r
1546 \r
1547   identity PMD_NEGOTIATION_STATE_TYPE_COMPLETE {\r
1548     base PMD_NEGOTIATION_STATE_TYPE;\r
1549     description\r
1550       "The auto-negotation protocol has completed successfully";\r
1551   }\r
1552 \r
1553   identity PMD_NEGOTIATION_STATE_TYPE_FAILED {\r
1554     base PMD_NEGOTIATION_STATE_TYPE;\r
1555     description\r
1556       "The auto-negotation protocol has failed";\r
1557   }\r
1558 \r
1559   identity PMD_NEGOTIATION_STATE_TYPE_NOT_YET_DEFINED {\r
1560     base PMD_NEGOTIATION_STATE_TYPE;\r
1561     description\r
1562       "Device supports autonegotiation, but state is currently unknown, e.g. because device just booted";\r
1563   }\r
1564 \r
1565   identity GRANULARITY_PERIOD_TYPE {\r
1566     description\r
1567       "none";\r
1568   }\r
1569 \r
1570   identity GRANULARITY_PERIOD_TYPE_UNKNOWN {\r
1571     base GRANULARITY_PERIOD_TYPE;\r
1572     description\r
1573       "none";\r
1574   }\r
1575 \r
1576   identity GRANULARITY_PERIOD_TYPE_PERIOD-15-MIN {\r
1577     base GRANULARITY_PERIOD_TYPE;\r
1578     description\r
1579       "none";\r
1580   }\r
1581 \r
1582   identity GRANULARITY_PERIOD_TYPE_PERIOD-24-HOURS {\r
1583     base GRANULARITY_PERIOD_TYPE;\r
1584     description\r
1585       "none";\r
1586   }\r
1587 \r
1588   identity GRANULARITY_PERIOD_TYPE_NOT_YET_DEFINED {\r
1589     base GRANULARITY_PERIOD_TYPE;\r
1590     description\r
1591       "none";\r
1592   }\r
1593 \r
1594   identity SEVERITY_TYPE {\r
1595     description\r
1596       "none";\r
1597   }\r
1598 \r
1599   identity SEVERITY_TYPE_NON_ALARMED {\r
1600     base SEVERITY_TYPE;\r
1601     description\r
1602       "none";\r
1603   }\r
1604 \r
1605   identity SEVERITY_TYPE_WARNING {\r
1606     base SEVERITY_TYPE;\r
1607     description\r
1608       "none";\r
1609   }\r
1610 \r
1611   identity SEVERITY_TYPE_MINOR {\r
1612     base SEVERITY_TYPE;\r
1613     description\r
1614       "none";\r
1615   }\r
1616 \r
1617   identity SEVERITY_TYPE_MAJOR {\r
1618     base SEVERITY_TYPE;\r
1619     description\r
1620       "none";\r
1621   }\r
1622 \r
1623   identity SEVERITY_TYPE_CRITICAL {\r
1624     base SEVERITY_TYPE;\r
1625     description\r
1626       "none";\r
1627   }\r
1628 \r
1629   identity SEVERITY_TYPE_NOT_YET_DEFINED {\r
1630     base SEVERITY_TYPE;\r
1631     description\r
1632       "none";\r
1633   }\r
1634 \r
1635   identity INTERFACE_STATUS_TYPE {\r
1636     description\r
1637       "none";\r
1638   }\r
1639 \r
1640   identity INTERFACE_STATUS_TYPE_UP {\r
1641     base INTERFACE_STATUS_TYPE;\r
1642     description\r
1643       "Ready to pass packets.";\r
1644   }\r
1645 \r
1646   identity INTERFACE_STATUS_TYPE_DOWN {\r
1647     base INTERFACE_STATUS_TYPE;\r
1648     description\r
1649       "The interface does not pass any packets.";\r
1650   }\r
1651 \r
1652   identity INTERFACE_STATUS_TYPE_TESTING {\r
1653     base INTERFACE_STATUS_TYPE;\r
1654     description\r
1655       "In some test mode.  No operational packets can be passed.";\r
1656   }\r
1657 \r
1658   identity INTERFACE_STATUS_TYPE_UNKNOWN {\r
1659     base INTERFACE_STATUS_TYPE;\r
1660     description\r
1661       "Status cannot be determined for some reason.";\r
1662   }\r
1663 \r
1664   identity INTERFACE_STATUS_TYPE_DORMANT {\r
1665     base INTERFACE_STATUS_TYPE;\r
1666     description\r
1667       "Waiting for some external event.";\r
1668   }\r
1669 \r
1670   identity INTERFACE_STATUS_TYPE_NOT_PRESENT {\r
1671     base INTERFACE_STATUS_TYPE;\r
1672     description\r
1673       "Some component (typically hardware) is missing.";\r
1674   }\r
1675 \r
1676   identity INTERFACE_STATUS_TYPE_LOWER_LAYER_DOWN {\r
1677     base INTERFACE_STATUS_TYPE;\r
1678     description\r
1679       "Down due to state of lower-layer interface(s).";\r
1680   }\r
1681 \r
1682   identity INTERFACE_STATUS_TYPE_ADMIN_DOWN {\r
1683     base INTERFACE_STATUS_TYPE;\r
1684     description\r
1685       "Down due to configuration.";\r
1686   }\r
1687 \r
1688   identity INTERFACE_STATUS_TYPE_NOT_YET_DEFINED {\r
1689     base INTERFACE_STATUS_TYPE;\r
1690     description\r
1691       "none";\r
1692   }\r
1693 \r
1694   /****************************************\r
1695    * package super-types\r
1696    **************************************/ \r
1697 \r
1698   typedef granularity-period-type {\r
1699     type identityref {\r
1700       base GRANULARITY_PERIOD_TYPE;\r
1701     }\r
1702     description\r
1703       "The enumeration with the options for granularity period of the performance data.";\r
1704   }\r
1705 \r
1706   typedef severity-type {\r
1707     type identityref {\r
1708       base SEVERITY_TYPE;\r
1709     }\r
1710     description\r
1711       "According to ITU-T M.3160";\r
1712   }\r
1713 \r
1714   typedef interface-status-type {\r
1715     type identityref {\r
1716       base INTERFACE_STATUS_TYPE;\r
1717     }\r
1718     description\r
1719       "Current Interface Status";\r
1720   }\r
1721 \r
1722   grouping problem-kind-severity-type {\r
1723     leaf problem-kind-name {\r
1724       type string;\r
1725       description\r
1726         "Name of the alarm according to supportedAlarmList";\r
1727     }\r
1728     leaf problem-kind-severity {\r
1729       type severity-type;\r
1730       default "SEVERITY_TYPE_NOT_YET_DEFINED";\r
1731       description\r
1732         "Severity of this type of alarm.";\r
1733     }\r
1734     description\r
1735       "none";\r
1736   }\r
1737 \r
1738   grouping wire-interface-current-problem-type {\r
1739     leaf problem-name {\r
1740       type string;\r
1741       default "Problem name not specified.";\r
1742       config false;\r
1743       description\r
1744         "Name of the alarm according to supportedAlarmList attribute in MauType datatype";\r
1745     }\r
1746     uses current-problem;\r
1747     description\r
1748       "none";\r
1749   }\r
1750 \r
1751   grouping wire-interface-performance-type {\r
1752     leaf es {\r
1753       type int32;\r
1754       units "s";\r
1755       default "-1";\r
1756       config false;\r
1757       description\r
1758         "Number of errored seconds according to 802.3 30.8.1.1.13 aLineESs";\r
1759     }\r
1760     leaf ses {\r
1761       type int32;\r
1762       units "s";\r
1763       default "-1";\r
1764       config false;\r
1765       description\r
1766         "Number of severely errored seconds according to 802.3 30.8.1.1.12 aLineSESs";\r
1767     }\r
1768     leaf symbol-error-during-carrier {\r
1769       type int32;\r
1770       units "symbol";\r
1771       default "-1";\r
1772       config false;\r
1773       description\r
1774         "Source: 802.3 according to 30.3.2.1.5 aSymbolErrorDuringCarrier. Number of times when valid carrier was present and an invalid data symbol occured.";\r
1775     }\r
1776     leaf low-power-idle-transmitter-ms {\r
1777       type int32;\r
1778       units "ms";\r
1779       default "-1";\r
1780       config false;\r
1781       description\r
1782         "Source: 802.3 similar to 30.3.2.1.8 aTransmitLPIMicroseconds. Number of milliseconds (original counter expresses microseconds), during which the transmitter was in power save mode";\r
1783     }\r
1784     leaf low-power-idle-receiver-ms {\r
1785       type int32;\r
1786       units "ms";\r
1787       default "-1";\r
1788       config false;\r
1789       description\r
1790         "Source: 802.3 similar to 30.3.2.1.9 aReceiveLPIMicroseconds. Number of milliseconds (original counter expresses microseconds), during which the receiver was in power save mode";\r
1791     }\r
1792     description\r
1793       "none";\r
1794   }\r
1795 \r
1796   grouping wire-interface-current-performance-type {\r
1797     container performance-data {\r
1798       config false;\r
1799       uses wire-interface-performance-type;\r
1800       description\r
1801         "none";\r
1802     }\r
1803     uses current-performance;\r
1804     description\r
1805       "Turns performance information into current performance information by inheriting from OTN_CurrentData.";\r
1806   }\r
1807 \r
1808   grouping wire-interface-historical-performance-type {\r
1809     container performance-data {\r
1810       config false;\r
1811       uses wire-interface-performance-type;\r
1812       description\r
1813         "none";\r
1814     }\r
1815     uses historical-performance;\r
1816     description\r
1817       "Turns performance information into historical performance information by inheriting from OTN_HistoryData.";\r
1818   }\r
1819 }\r