xref: /linux/Documentation/netlink/specs/ethtool.yaml (revision a6a6a98094116b60e5523a571d9443c53325f5b1)
1# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
2
3name: ethtool
4
5protocol: genetlink-legacy
6
7doc: Partial family for Ethtool Netlink.
8
9definitions:
10  -
11    name: udp-tunnel-type
12    enum-name:
13    type: enum
14    entries: [ vxlan, geneve, vxlan-gpe ]
15  -
16    name: stringset
17    type: enum
18    entries: []
19  -
20    name: header-flags
21    type: flags
22    entries: [ compact-bitsets, omit-reply, stats ]
23
24attribute-sets:
25  -
26    name: header
27    attributes:
28      -
29        name: dev-index
30        type: u32
31      -
32        name: dev-name
33        type: string
34      -
35        name: flags
36        type: u32
37        enum: header-flags
38
39  -
40    name: bitset-bit
41    attributes:
42      -
43        name: index
44        type: u32
45      -
46        name: name
47        type: string
48      -
49        name: value
50        type: flag
51  -
52    name: bitset-bits
53    attributes:
54      -
55        name: bit
56        type: nest
57        multi-attr: true
58        nested-attributes: bitset-bit
59  -
60    name: bitset
61    attributes:
62      -
63        name: nomask
64        type: flag
65      -
66        name: size
67        type: u32
68      -
69        name: bits
70        type: nest
71        nested-attributes: bitset-bits
72
73  -
74    name: string
75    attributes:
76      -
77        name: index
78        type: u32
79      -
80        name: value
81        type: string
82  -
83    name: strings
84    attributes:
85      -
86        name: string
87        type: nest
88        multi-attr: true
89        nested-attributes: string
90  -
91    name: stringset
92    attributes:
93      -
94        name: id
95        type: u32
96      -
97        name: count
98        type: u32
99      -
100        name: strings
101        type: nest
102        multi-attr: true
103        nested-attributes: strings
104  -
105    name: stringsets
106    attributes:
107      -
108        name: stringset
109        type: nest
110        multi-attr: true
111        nested-attributes: stringset
112  -
113    name: strset
114    attributes:
115      -
116        name: header
117        type: nest
118        nested-attributes: header
119      -
120        name: stringsets
121        type: nest
122        nested-attributes: stringsets
123      -
124        name: counts-only
125        type: flag
126
127  -
128    name: privflags
129    attributes:
130      -
131        name: header
132        type: nest
133        nested-attributes: header
134      -
135        name: flags
136        type: nest
137        nested-attributes: bitset
138
139  -
140    name: rings
141    attributes:
142      -
143        name: header
144        type: nest
145        nested-attributes: header
146      -
147        name: rx-max
148        type: u32
149      -
150        name: rx-mini-max
151        type: u32
152      -
153        name: rx-jumbo-max
154        type: u32
155      -
156        name: tx-max
157        type: u32
158      -
159        name: rx
160        type: u32
161      -
162        name: rx-mini
163        type: u32
164      -
165        name: rx-jumbo
166        type: u32
167      -
168        name: tx
169        type: u32
170      -
171        name: rx-buf-len
172        type: u32
173      -
174        name: tcp-data-split
175        type: u8
176      -
177        name: cqe-size
178        type: u32
179      -
180        name: tx-push
181        type: u8
182      -
183        name: rx-push
184        type: u8
185      -
186        name: tx-push-buf-len
187        type: u32
188      -
189        name: tx-push-buf-len-max
190        type: u32
191
192  -
193    name: mm-stat
194    attributes:
195      -
196        name: pad
197        type: pad
198      -
199        name: reassembly-errors
200        type: u64
201      -
202        name: smd-errors
203        type: u64
204      -
205        name: reassembly-ok
206        type: u64
207      -
208        name: rx-frag-count
209        type: u64
210      -
211        name: tx-frag-count
212        type: u64
213      -
214        name: hold-count
215        type: u64
216  -
217    name: mm
218    attributes:
219      -
220        name: header
221        type: nest
222        nested-attributes: header
223      -
224        name: pmac-enabled
225        type: u8
226      -
227        name: tx-enabled
228        type: u8
229      -
230        name: tx-active
231        type: u8
232      -
233        name: tx-min-frag-size
234        type: u32
235      -
236        name: rx-min-frag-size
237        type: u32
238      -
239        name: verify-enabled
240        type: u8
241      -
242        name: verify-status
243        type: u8
244      -
245        name: verify-time
246        type: u32
247      -
248        name: max-verify-time
249        type: u32
250      -
251        name: stats
252        type: nest
253        nested-attributes: mm-stat
254  -
255    name: linkinfo
256    attributes:
257      -
258        name: header
259        type: nest
260        nested-attributes: header
261      -
262        name: port
263        type: u8
264      -
265        name: phyaddr
266        type: u8
267      -
268        name: tp-mdix
269        type: u8
270      -
271        name: tp-mdix-ctrl
272        type: u8
273      -
274        name: transceiver
275        type: u8
276  -
277    name: linkmodes
278    attributes:
279      -
280        name: header
281        type: nest
282        nested-attributes: header
283      -
284        name: autoneg
285        type: u8
286      -
287        name: ours
288        type: nest
289        nested-attributes: bitset
290      -
291        name: peer
292        type: nest
293        nested-attributes: bitset
294      -
295        name: speed
296        type: u32
297      -
298        name: duplex
299        type: u8
300      -
301        name: master-slave-cfg
302        type: u8
303      -
304        name: master-slave-state
305        type: u8
306      -
307        name: lanes
308        type: u32
309      -
310        name: rate-matching
311        type: u8
312  -
313    name: linkstate
314    attributes:
315      -
316        name: header
317        type: nest
318        nested-attributes: header
319      -
320        name: link
321        type: u8
322      -
323        name: sqi
324        type: u32
325      -
326        name: sqi-max
327        type: u32
328      -
329        name: ext-state
330        type: u8
331      -
332        name: ext-substate
333        type: u8
334      -
335        name: ext-down-cnt
336        type: u32
337  -
338    name: debug
339    attributes:
340      -
341        name: header
342        type: nest
343        nested-attributes: header
344      -
345        name: msgmask
346        type: nest
347        nested-attributes: bitset
348  -
349    name: wol
350    attributes:
351      -
352        name: header
353        type: nest
354        nested-attributes: header
355      -
356        name: modes
357        type: nest
358        nested-attributes: bitset
359      -
360        name: sopass
361        type: binary
362  -
363    name: features
364    attributes:
365      -
366        name: header
367        type: nest
368        nested-attributes: header
369      -
370        name: hw
371        type: nest
372        nested-attributes: bitset
373      -
374        name: wanted
375        type: nest
376        nested-attributes: bitset
377      -
378        name: active
379        type: nest
380        nested-attributes: bitset
381      -
382        name: nochange
383        type: nest
384        nested-attributes: bitset
385  -
386    name: channels
387    attributes:
388      -
389        name: header
390        type: nest
391        nested-attributes: header
392      -
393        name: rx-max
394        type: u32
395      -
396        name: tx-max
397        type: u32
398      -
399        name: other-max
400        type: u32
401      -
402        name: combined-max
403        type: u32
404      -
405        name: rx-count
406        type: u32
407      -
408        name: tx-count
409        type: u32
410      -
411        name: other-count
412        type: u32
413      -
414        name: combined-count
415        type: u32
416
417  -
418    name: irq-moderation
419    attributes:
420      -
421        name: usec
422        type: u32
423      -
424        name: pkts
425        type: u32
426      -
427        name: comps
428        type: u32
429  -
430    name: profile
431    attributes:
432      -
433        name: irq-moderation
434        type: nest
435        multi-attr: true
436        nested-attributes: irq-moderation
437  -
438    name: coalesce
439    attributes:
440      -
441        name: header
442        type: nest
443        nested-attributes: header
444      -
445        name: rx-usecs
446        type: u32
447      -
448        name: rx-max-frames
449        type: u32
450      -
451        name: rx-usecs-irq
452        type: u32
453      -
454        name: rx-max-frames-irq
455        type: u32
456      -
457        name: tx-usecs
458        type: u32
459      -
460        name: tx-max-frames
461        type: u32
462      -
463        name: tx-usecs-irq
464        type: u32
465      -
466        name: tx-max-frames-irq
467        type: u32
468      -
469        name: stats-block-usecs
470        type: u32
471      -
472        name: use-adaptive-rx
473        type: u8
474      -
475        name: use-adaptive-tx
476        type: u8
477      -
478        name: pkt-rate-low
479        type: u32
480      -
481        name: rx-usecs-low
482        type: u32
483      -
484        name: rx-max-frames-low
485        type: u32
486      -
487        name: tx-usecs-low
488        type: u32
489      -
490        name: tx-max-frames-low
491        type: u32
492      -
493        name: pkt-rate-high
494        type: u32
495      -
496        name: rx-usecs-high
497        type: u32
498      -
499        name: rx-max-frames-high
500        type: u32
501      -
502        name: tx-usecs-high
503        type: u32
504      -
505        name: tx-max-frames-high
506        type: u32
507      -
508        name: rate-sample-interval
509        type: u32
510      -
511        name: use-cqe-mode-tx
512        type: u8
513      -
514        name: use-cqe-mode-rx
515        type: u8
516      -
517        name: tx-aggr-max-bytes
518        type: u32
519      -
520        name: tx-aggr-max-frames
521        type: u32
522      -
523        name: tx-aggr-time-usecs
524        type: u32
525      -
526        name: rx-profile
527        type: nest
528        nested-attributes: profile
529      -
530        name: tx-profile
531        type: nest
532        nested-attributes: profile
533
534  -
535    name: pause-stat
536    attributes:
537      -
538        name: pad
539        type: pad
540      -
541        name: tx-frames
542        type: u64
543      -
544        name: rx-frames
545        type: u64
546  -
547    name: pause
548    attributes:
549      -
550        name: header
551        type: nest
552        nested-attributes: header
553      -
554        name: autoneg
555        type: u8
556      -
557        name: rx
558        type: u8
559      -
560        name: tx
561        type: u8
562      -
563        name: stats
564        type: nest
565        nested-attributes: pause-stat
566      -
567        name: stats-src
568        type: u32
569  -
570    name: eee
571    attributes:
572      -
573        name: header
574        type: nest
575        nested-attributes: header
576      -
577        name: modes-ours
578        type: nest
579        nested-attributes: bitset
580      -
581        name: modes-peer
582        type: nest
583        nested-attributes: bitset
584      -
585        name: active
586        type: u8
587      -
588        name: enabled
589        type: u8
590      -
591        name: tx-lpi-enabled
592        type: u8
593      -
594        name: tx-lpi-timer
595        type: u32
596  -
597    name: ts-stat
598    attributes:
599      -
600        name: tx-pkts
601        type: uint
602      -
603        name: tx-lost
604        type: uint
605      -
606        name: tx-err
607        type: uint
608  -
609    name: tsinfo
610    attributes:
611      -
612        name: header
613        type: nest
614        nested-attributes: header
615      -
616        name: timestamping
617        type: nest
618        nested-attributes: bitset
619      -
620        name: tx-types
621        type: nest
622        nested-attributes: bitset
623      -
624        name: rx-filters
625        type: nest
626        nested-attributes: bitset
627      -
628        name: phc-index
629        type: u32
630      -
631        name: stats
632        type: nest
633        nested-attributes: ts-stat
634  -
635    name: cable-result
636    attributes:
637      -
638        name: pair
639        type: u8
640      -
641        name: code
642        type: u8
643  -
644    name: cable-fault-length
645    attributes:
646      -
647        name: pair
648        type: u8
649      -
650        name: cm
651        type: u32
652  -
653    name: cable-nest
654    attributes:
655      -
656        name: result
657        type: nest
658        nested-attributes: cable-result
659      -
660        name: fault-length
661        type: nest
662        nested-attributes: cable-fault-length
663  -
664    name: cable-test
665    attributes:
666      -
667        name: header
668        type: nest
669        nested-attributes: header
670  -
671    name: cable-test-ntf
672    attributes:
673      -
674        name: header
675        type: nest
676        nested-attributes: header
677      -
678        name: status
679        type: u8
680      -
681        name: nest
682        type: nest
683        nested-attributes: cable-nest
684  -
685    name: cable-test-tdr-cfg
686    attributes:
687      -
688        name: first
689        type: u32
690      -
691        name: last
692        type: u32
693      -
694        name: step
695        type: u32
696      -
697        name: pair
698        type: u8
699  -
700    name: cable-test-tdr-ntf
701    attributes:
702      -
703        name: header
704        type: nest
705        nested-attributes: header
706      -
707        name: status
708        type: u8
709      -
710        name: nest
711        type: nest
712        nested-attributes: cable-nest
713  -
714    name: cable-test-tdr
715    attributes:
716      -
717        name: header
718        type: nest
719        nested-attributes: header
720      -
721        name: cfg
722        type: nest
723        nested-attributes: cable-test-tdr-cfg
724  -
725    name: tunnel-udp-entry
726    attributes:
727      -
728        name: port
729        type: u16
730        byte-order: big-endian
731      -
732        name: type
733        type: u32
734        enum: udp-tunnel-type
735  -
736    name: tunnel-udp-table
737    attributes:
738      -
739        name: size
740        type: u32
741      -
742        name: types
743        type: nest
744        nested-attributes: bitset
745      -
746        name: entry
747        type: nest
748        multi-attr: true
749        nested-attributes: tunnel-udp-entry
750  -
751    name: tunnel-udp
752    attributes:
753      -
754        name: table
755        type: nest
756        nested-attributes: tunnel-udp-table
757  -
758    name: tunnel-info
759    attributes:
760      -
761        name: header
762        type: nest
763        nested-attributes: header
764      -
765        name: udp-ports
766        type: nest
767        nested-attributes: tunnel-udp
768  -
769    name: fec-stat
770    attributes:
771      -
772        name: pad
773        type: pad
774      -
775        name: corrected
776        type: binary
777        sub-type: u64
778      -
779        name: uncorr
780        type: binary
781        sub-type: u64
782      -
783        name: corr-bits
784        type: binary
785        sub-type: u64
786  -
787    name: fec
788    attributes:
789      -
790        name: header
791        type: nest
792        nested-attributes: header
793      -
794        name: modes
795        type: nest
796        nested-attributes: bitset
797      -
798        name: auto
799        type: u8
800      -
801        name: active
802        type: u32
803      -
804        name: stats
805        type: nest
806        nested-attributes: fec-stat
807  -
808    name: module-eeprom
809    attributes:
810      -
811        name: header
812        type: nest
813        nested-attributes: header
814      -
815        name: offset
816        type: u32
817      -
818        name: length
819        type: u32
820      -
821        name: page
822        type: u8
823      -
824        name: bank
825        type: u8
826      -
827        name: i2c-address
828        type: u8
829      -
830        name: data
831        type: binary
832  -
833    name: stats-grp
834    attributes:
835      -
836        name: pad
837        type: pad
838      -
839        name: id
840        type: u32
841      -
842        name: ss-id
843        type: u32
844      -
845        name: stat
846        type: u64
847        type-value: [ id ]
848      -
849        name: hist-rx
850        type: nest
851        nested-attributes: stats-grp-hist
852      -
853        name: hist-tx
854        type: nest
855        nested-attributes: stats-grp-hist
856      -
857        name: hist-bkt-low
858        type: u32
859      -
860        name: hist-bkt-hi
861        type: u32
862      -
863        name: hist-val
864        type: u64
865  -
866    name: stats-grp-hist
867    subset-of: stats-grp
868    attributes:
869      -
870        name: hist-bkt-low
871      -
872        name: hist-bkt-hi
873      -
874        name: hist-val
875  -
876    name: stats
877    attributes:
878      -
879        name: pad
880        type: pad
881      -
882        name: header
883        type: nest
884        nested-attributes: header
885      -
886        name: groups
887        type: nest
888        nested-attributes: bitset
889      -
890        name: grp
891        type: nest
892        nested-attributes: stats-grp
893      -
894        name: src
895        type: u32
896  -
897    name: phc-vclocks
898    attributes:
899      -
900        name: header
901        type: nest
902        nested-attributes: header
903      -
904        name: num
905        type: u32
906      -
907        name: index
908        type: binary
909        sub-type: s32
910  -
911    name: module
912    attributes:
913      -
914        name: header
915        type: nest
916        nested-attributes: header
917      -
918        name: power-mode-policy
919        type: u8
920      -
921        name: power-mode
922        type: u8
923  -
924    name: pse
925    attributes:
926      -
927        name: header
928        type: nest
929        nested-attributes: header
930      -
931        name: podl-pse-admin-state
932        type: u32
933        name-prefix: ethtool-a-
934      -
935        name: podl-pse-admin-control
936        type: u32
937        name-prefix: ethtool-a-
938      -
939        name: podl-pse-pw-d-status
940        type: u32
941        name-prefix: ethtool-a-
942      -
943        name: c33-pse-admin-state
944        type: u32
945        name-prefix: ethtool-a-
946      -
947        name: c33-pse-admin-control
948        type: u32
949        name-prefix: ethtool-a-
950      -
951        name: c33-pse-pw-d-status
952        type: u32
953        name-prefix: ethtool-a-
954  -
955    name: rss
956    attributes:
957      -
958        name: header
959        type: nest
960        nested-attributes: header
961      -
962        name: context
963        type: u32
964      -
965        name: hfunc
966        type: u32
967      -
968        name: indir
969        type: binary
970      -
971        name: hkey
972        type: binary
973      -
974        name: input_xfrm
975        type: u32
976  -
977    name: plca
978    attributes:
979      -
980        name: header
981        type: nest
982        nested-attributes: header
983      -
984        name: version
985        type: u16
986      -
987        name: enabled
988        type: u8
989      -
990        name: status
991        type: u8
992      -
993        name: node-cnt
994        type: u32
995      -
996        name: node-id
997        type: u32
998      -
999        name: to-tmr
1000        type: u32
1001      -
1002        name: burst-cnt
1003        type: u32
1004      -
1005        name: burst-tmr
1006        type: u32
1007
1008operations:
1009  enum-model: directional
1010  name-prefix: ethtool-msg-
1011  list:
1012    -
1013      name: strset-get
1014      doc: Get string set from the kernel.
1015
1016      attribute-set: strset
1017
1018      do: &strset-get-op
1019        request:
1020          attributes:
1021            - header
1022            - stringsets
1023            - counts-only
1024        reply:
1025          attributes:
1026            - header
1027            - stringsets
1028      dump: *strset-get-op
1029    -
1030      name: linkinfo-get
1031      doc: Get link info.
1032
1033      attribute-set: linkinfo
1034
1035      do: &linkinfo-get-op
1036        request:
1037          attributes:
1038            - header
1039        reply:
1040          attributes: &linkinfo
1041            - header
1042            - port
1043            - phyaddr
1044            - tp-mdix
1045            - tp-mdix-ctrl
1046            - transceiver
1047      dump: *linkinfo-get-op
1048    -
1049      name: linkinfo-set
1050      doc: Set link info.
1051
1052      attribute-set: linkinfo
1053
1054      do:
1055        request:
1056          attributes: *linkinfo
1057    -
1058      name: linkinfo-ntf
1059      doc: Notification for change in link info.
1060      notify: linkinfo-get
1061    -
1062      name: linkmodes-get
1063      doc: Get link modes.
1064
1065      attribute-set: linkmodes
1066
1067      do: &linkmodes-get-op
1068        request:
1069          attributes:
1070            - header
1071        reply:
1072          attributes: &linkmodes
1073            - header
1074            - autoneg
1075            - ours
1076            - peer
1077            - speed
1078            - duplex
1079            - master-slave-cfg
1080            - master-slave-state
1081            - lanes
1082            - rate-matching
1083      dump: *linkmodes-get-op
1084    -
1085      name: linkmodes-set
1086      doc: Set link modes.
1087
1088      attribute-set: linkmodes
1089
1090      do:
1091        request:
1092          attributes: *linkmodes
1093    -
1094      name: linkmodes-ntf
1095      doc: Notification for change in link modes.
1096      notify: linkmodes-get
1097    -
1098      name: linkstate-get
1099      doc: Get link state.
1100
1101      attribute-set: linkstate
1102
1103      do: &linkstate-get-op
1104        request:
1105          attributes:
1106            - header
1107        reply:
1108          attributes:
1109            - header
1110            - link
1111            - sqi
1112            - sqi-max
1113            - ext-state
1114            - ext-substate
1115            - ext-down-cnt
1116      dump: *linkstate-get-op
1117    -
1118      name: debug-get
1119      doc: Get debug message mask.
1120
1121      attribute-set: debug
1122
1123      do: &debug-get-op
1124        request:
1125          attributes:
1126            - header
1127        reply:
1128          attributes: &debug
1129            - header
1130            - msgmask
1131      dump: *debug-get-op
1132    -
1133      name: debug-set
1134      doc: Set debug message mask.
1135
1136      attribute-set: debug
1137
1138      do:
1139        request:
1140          attributes: *debug
1141    -
1142      name: debug-ntf
1143      doc: Notification for change in debug message mask.
1144      notify: debug-get
1145    -
1146      name: wol-get
1147      doc: Get WOL params.
1148
1149      attribute-set: wol
1150
1151      do: &wol-get-op
1152        request:
1153          attributes:
1154            - header
1155        reply:
1156          attributes: &wol
1157            - header
1158            - modes
1159            - sopass
1160      dump: *wol-get-op
1161    -
1162      name: wol-set
1163      doc: Set WOL params.
1164
1165      attribute-set: wol
1166
1167      do:
1168        request:
1169          attributes: *wol
1170    -
1171      name: wol-ntf
1172      doc: Notification for change in WOL params.
1173      notify: wol-get
1174    -
1175      name: features-get
1176      doc: Get features.
1177
1178      attribute-set: features
1179
1180      do: &feature-get-op
1181        request:
1182          attributes:
1183            - header
1184        reply:
1185          attributes: &feature
1186            - header
1187            # User-changeable features.
1188            - hw
1189            # User-requested features.
1190            - wanted
1191            # Currently active features.
1192            - active
1193            # Unchangeable features.
1194            - nochange
1195      dump: *feature-get-op
1196    -
1197      name: features-set
1198      doc: Set features.
1199
1200      attribute-set: features
1201
1202      do: &feature-set-op
1203        request:
1204          attributes: *feature
1205        reply:
1206          attributes: *feature
1207    -
1208      name: features-ntf
1209      doc: Notification for change in features.
1210      notify: features-get
1211    -
1212      name: privflags-get
1213      doc: Get device private flags.
1214
1215      attribute-set: privflags
1216
1217      do: &privflag-get-op
1218        request:
1219          attributes:
1220            - header
1221        reply:
1222          attributes: &privflag
1223            - header
1224            - flags
1225      dump: *privflag-get-op
1226    -
1227      name: privflags-set
1228      doc: Set device private flags.
1229
1230      attribute-set: privflags
1231
1232      do:
1233        request:
1234          attributes: *privflag
1235    -
1236      name: privflags-ntf
1237      doc: Notification for change in device private flags.
1238      notify: privflags-get
1239
1240    -
1241      name: rings-get
1242      doc: Get ring params.
1243
1244      attribute-set: rings
1245
1246      do: &ring-get-op
1247        request:
1248          attributes:
1249            - header
1250        reply:
1251          attributes: &ring
1252            - header
1253            - rx-max
1254            - rx-mini-max
1255            - rx-jumbo-max
1256            - tx-max
1257            - rx
1258            - rx-mini
1259            - rx-jumbo
1260            - tx
1261            - rx-buf-len
1262            - tcp-data-split
1263            - cqe-size
1264            - tx-push
1265            - rx-push
1266            - tx-push-buf-len
1267            - tx-push-buf-len-max
1268      dump: *ring-get-op
1269    -
1270      name: rings-set
1271      doc: Set ring params.
1272
1273      attribute-set: rings
1274
1275      do:
1276        request:
1277          attributes: *ring
1278    -
1279      name: rings-ntf
1280      doc: Notification for change in ring params.
1281      notify: rings-get
1282    -
1283      name: channels-get
1284      doc: Get channel params.
1285
1286      attribute-set: channels
1287
1288      do: &channel-get-op
1289        request:
1290          attributes:
1291            - header
1292        reply:
1293          attributes: &channel
1294            - header
1295            - rx-max
1296            - tx-max
1297            - other-max
1298            - combined-max
1299            - rx-count
1300            - tx-count
1301            - other-count
1302            - combined-count
1303      dump: *channel-get-op
1304    -
1305      name: channels-set
1306      doc: Set channel params.
1307
1308      attribute-set: channels
1309
1310      do:
1311        request:
1312          attributes: *channel
1313    -
1314      name: channels-ntf
1315      doc: Notification for change in channel params.
1316      notify: channels-get
1317    -
1318      name: coalesce-get
1319      doc: Get coalesce params.
1320
1321      attribute-set: coalesce
1322
1323      do: &coalesce-get-op
1324        request:
1325          attributes:
1326            - header
1327        reply:
1328          attributes: &coalesce
1329            - header
1330            - rx-usecs
1331            - rx-max-frames
1332            - rx-usecs-irq
1333            - rx-max-frames-irq
1334            - tx-usecs
1335            - tx-max-frames
1336            - tx-usecs-irq
1337            - tx-max-frames-irq
1338            - stats-block-usecs
1339            - use-adaptive-rx
1340            - use-adaptive-tx
1341            - pkt-rate-low
1342            - rx-usecs-low
1343            - rx-max-frames-low
1344            - tx-usecs-low
1345            - tx-max-frames-low
1346            - pkt-rate-high
1347            - rx-usecs-high
1348            - rx-max-frames-high
1349            - tx-usecs-high
1350            - tx-max-frames-high
1351            - rate-sample-interval
1352            - use-cqe-mode-tx
1353            - use-cqe-mode-rx
1354            - tx-aggr-max-bytes
1355            - tx-aggr-max-frames
1356            - tx-aggr-time-usecs
1357            - rx-profile
1358            - tx-profile
1359      dump: *coalesce-get-op
1360    -
1361      name: coalesce-set
1362      doc: Set coalesce params.
1363
1364      attribute-set: coalesce
1365
1366      do:
1367        request:
1368          attributes: *coalesce
1369    -
1370      name: coalesce-ntf
1371      doc: Notification for change in coalesce params.
1372      notify: coalesce-get
1373    -
1374      name: pause-get
1375      doc: Get pause params.
1376
1377      attribute-set: pause
1378
1379      do: &pause-get-op
1380        request:
1381          attributes:
1382            - header
1383        reply:
1384          attributes: &pause
1385            - header
1386            - autoneg
1387            - rx
1388            - tx
1389            - stats
1390            - stats-src
1391      dump: *pause-get-op
1392    -
1393      name: pause-set
1394      doc: Set pause params.
1395
1396      attribute-set: pause
1397
1398      do:
1399        request:
1400          attributes: *pause
1401    -
1402      name: pause-ntf
1403      doc: Notification for change in pause params.
1404      notify: pause-get
1405    -
1406      name: eee-get
1407      doc: Get eee params.
1408
1409      attribute-set: eee
1410
1411      do: &eee-get-op
1412        request:
1413          attributes:
1414            - header
1415        reply:
1416          attributes: &eee
1417            - header
1418            - modes-ours
1419            - modes-peer
1420            - active
1421            - enabled
1422            - tx-lpi-enabled
1423            - tx-lpi-timer
1424      dump: *eee-get-op
1425    -
1426      name: eee-set
1427      doc: Set eee params.
1428
1429      attribute-set: eee
1430
1431      do:
1432        request:
1433          attributes: *eee
1434    -
1435      name: eee-ntf
1436      doc: Notification for change in eee params.
1437      notify: eee-get
1438    -
1439      name: tsinfo-get
1440      doc: Get tsinfo params.
1441
1442      attribute-set: tsinfo
1443
1444      do: &tsinfo-get-op
1445        request:
1446          attributes:
1447            - header
1448        reply:
1449          attributes:
1450            - header
1451            - timestamping
1452            - tx-types
1453            - rx-filters
1454            - phc-index
1455            - stats
1456      dump: *tsinfo-get-op
1457    -
1458      name: cable-test-act
1459      doc: Cable test.
1460
1461      attribute-set: cable-test
1462
1463      do:
1464        request:
1465          attributes:
1466            - header
1467    -
1468      name: cable-test-ntf
1469      doc: Cable test notification.
1470
1471      attribute-set: cable-test-ntf
1472
1473      event:
1474        attributes:
1475          - header
1476          - status
1477    -
1478      name: cable-test-tdr-act
1479      doc: Cable test TDR.
1480
1481      attribute-set: cable-test-tdr
1482
1483      do:
1484        request:
1485          attributes:
1486            - header
1487    -
1488      name: cable-test-tdr-ntf
1489      doc: Cable test TDR notification.
1490
1491      attribute-set: cable-test-tdr-ntf
1492
1493      event:
1494        attributes:
1495          - header
1496          - status
1497          - nest
1498    -
1499      name: tunnel-info-get
1500      doc: Get tsinfo params.
1501
1502      attribute-set: tunnel-info
1503
1504      do: &tunnel-info-get-op
1505        request:
1506          attributes:
1507            - header
1508        reply:
1509          attributes:
1510            - header
1511            - udp-ports
1512      dump: *tunnel-info-get-op
1513    -
1514      name: fec-get
1515      doc: Get FEC params.
1516
1517      attribute-set: fec
1518
1519      do: &fec-get-op
1520        request:
1521          attributes:
1522            - header
1523        reply:
1524          attributes: &fec
1525            - header
1526            - modes
1527            - auto
1528            - active
1529            - stats
1530      dump: *fec-get-op
1531    -
1532      name: fec-set
1533      doc: Set FEC params.
1534
1535      attribute-set: fec
1536
1537      do:
1538        request:
1539          attributes: *fec
1540    -
1541      name: fec-ntf
1542      doc: Notification for change in FEC params.
1543      notify: fec-get
1544    -
1545      name: module-eeprom-get
1546      doc: Get module EEPROM params.
1547
1548      attribute-set: module-eeprom
1549
1550      do: &module-eeprom-get-op
1551        request:
1552          attributes:
1553            - header
1554        reply:
1555          attributes:
1556            - header
1557            - offset
1558            - length
1559            - page
1560            - bank
1561            - i2c-address
1562            - data
1563      dump: *module-eeprom-get-op
1564    -
1565      name: stats-get
1566      doc: Get statistics.
1567
1568      attribute-set: stats
1569
1570      do: &stats-get-op
1571        request:
1572          attributes:
1573            - header
1574            - groups
1575        reply:
1576          attributes:
1577            - header
1578            - groups
1579            - grp
1580            - src
1581      dump: *stats-get-op
1582    -
1583      name: phc-vclocks-get
1584      doc: Get PHC VCLOCKs.
1585
1586      attribute-set: phc-vclocks
1587
1588      do: &phc-vclocks-get-op
1589        request:
1590          attributes:
1591            - header
1592        reply:
1593          attributes:
1594            - header
1595            - num
1596      dump: *phc-vclocks-get-op
1597    -
1598      name: module-get
1599      doc: Get module params.
1600
1601      attribute-set: module
1602
1603      do: &module-get-op
1604        request:
1605          attributes:
1606            - header
1607        reply:
1608          attributes: &module
1609            - header
1610            - power-mode-policy
1611            - power-mode
1612      dump: *module-get-op
1613    -
1614      name: module-set
1615      doc: Set module params.
1616
1617      attribute-set: module
1618
1619      do:
1620        request:
1621          attributes: *module
1622    -
1623      name: module-ntf
1624      doc: Notification for change in module params.
1625      notify: module-get
1626    -
1627      name: pse-get
1628      doc: Get Power Sourcing Equipment params.
1629
1630      attribute-set: pse
1631
1632      do: &pse-get-op
1633        request:
1634          attributes:
1635            - header
1636        reply:
1637          attributes: &pse
1638            - header
1639            - podl-pse-admin-state
1640            - podl-pse-admin-control
1641            - podl-pse-pw-d-status
1642            - c33-pse-admin-state
1643            - c33-pse-admin-control
1644            - c33-pse-pw-d-status
1645      dump: *pse-get-op
1646    -
1647      name: pse-set
1648      doc: Set Power Sourcing Equipment params.
1649
1650      attribute-set: pse
1651
1652      do:
1653        request:
1654          attributes: *pse
1655    -
1656      name: rss-get
1657      doc: Get RSS params.
1658
1659      attribute-set: rss
1660
1661      do: &rss-get-op
1662        request:
1663          attributes:
1664            - header
1665        reply:
1666          attributes:
1667            - header
1668            - context
1669            - hfunc
1670            - indir
1671            - hkey
1672            - input_xfrm
1673      dump: *rss-get-op
1674    -
1675      name: plca-get-cfg
1676      doc: Get PLCA params.
1677
1678      attribute-set: plca
1679
1680      do: &plca-get-op
1681        request:
1682          attributes:
1683            - header
1684        reply:
1685          attributes: &plca
1686            - header
1687            - version
1688            - enabled
1689            - status
1690            - node-cnt
1691            - node-id
1692            - to-tmr
1693            - burst-cnt
1694            - burst-tmr
1695      dump: *plca-get-op
1696    -
1697      name: plca-set-cfg
1698      doc: Set PLCA params.
1699
1700      attribute-set: plca
1701
1702      do:
1703        request:
1704          attributes: *plca
1705    -
1706      name: plca-get-status
1707      doc: Get PLCA status params.
1708
1709      attribute-set: plca
1710
1711      do: &plca-get-status-op
1712        request:
1713          attributes:
1714            - header
1715        reply:
1716          attributes: *plca
1717      dump: *plca-get-status-op
1718    -
1719      name: plca-ntf
1720      doc: Notification for change in PLCA params.
1721      notify: plca-get-cfg
1722    -
1723      name: mm-get
1724      doc: Get MAC Merge configuration and state
1725
1726      attribute-set: mm
1727
1728      do: &mm-get-op
1729        request:
1730          attributes:
1731            - header
1732        reply:
1733          attributes:
1734            - header
1735            - pmac-enabled
1736            - tx-enabled
1737            - tx-active
1738            - tx-min-frag-size
1739            - rx-min-frag-size
1740            - verify-enabled
1741            - verify-time
1742            - max-verify-time
1743            - stats
1744      dump: *mm-get-op
1745    -
1746      name: mm-set
1747      doc: Set MAC Merge configuration
1748
1749      attribute-set: mm
1750
1751      do:
1752        request:
1753          attributes:
1754            - header
1755            - verify-enabled
1756            - verify-time
1757            - tx-enabled
1758            - pmac-enabled
1759            - tx-min-frag-size
1760    -
1761      name: mm-ntf
1762      doc: Notification for change in MAC Merge configuration.
1763      notify: mm-get
1764