xref: /linux/Documentation/netlink/specs/ethtool.yaml (revision 860a9bed265146b10311bcadbbcef59c3af4454d)
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: coalesce
419    attributes:
420      -
421        name: header
422        type: nest
423        nested-attributes: header
424      -
425        name: rx-usecs
426        type: u32
427      -
428        name: rx-max-frames
429        type: u32
430      -
431        name: rx-usecs-irq
432        type: u32
433      -
434        name: rx-max-frames-irq
435        type: u32
436      -
437        name: tx-usecs
438        type: u32
439      -
440        name: tx-max-frames
441        type: u32
442      -
443        name: tx-usecs-irq
444        type: u32
445      -
446        name: tx-max-frames-irq
447        type: u32
448      -
449        name: stats-block-usecs
450        type: u32
451      -
452        name: use-adaptive-rx
453        type: u8
454      -
455        name: use-adaptive-tx
456        type: u8
457      -
458        name: pkt-rate-low
459        type: u32
460      -
461        name: rx-usecs-low
462        type: u32
463      -
464        name: rx-max-frames-low
465        type: u32
466      -
467        name: tx-usecs-low
468        type: u32
469      -
470        name: tx-max-frames-low
471        type: u32
472      -
473        name: pkt-rate-high
474        type: u32
475      -
476        name: rx-usecs-high
477        type: u32
478      -
479        name: rx-max-frames-high
480        type: u32
481      -
482        name: tx-usecs-high
483        type: u32
484      -
485        name: tx-max-frames-high
486        type: u32
487      -
488        name: rate-sample-interval
489        type: u32
490      -
491        name: use-cqe-mode-tx
492        type: u8
493      -
494        name: use-cqe-mode-rx
495        type: u8
496      -
497        name: tx-aggr-max-bytes
498        type: u32
499      -
500        name: tx-aggr-max-frames
501        type: u32
502      -
503        name: tx-aggr-time-usecs
504        type: u32
505  -
506    name: pause-stat
507    attributes:
508      -
509        name: pad
510        type: pad
511      -
512        name: tx-frames
513        type: u64
514      -
515        name: rx-frames
516        type: u64
517  -
518    name: pause
519    attributes:
520      -
521        name: header
522        type: nest
523        nested-attributes: header
524      -
525        name: autoneg
526        type: u8
527      -
528        name: rx
529        type: u8
530      -
531        name: tx
532        type: u8
533      -
534        name: stats
535        type: nest
536        nested-attributes: pause-stat
537      -
538        name: stats-src
539        type: u32
540  -
541    name: eee
542    attributes:
543      -
544        name: header
545        type: nest
546        nested-attributes: header
547      -
548        name: modes-ours
549        type: nest
550        nested-attributes: bitset
551      -
552        name: modes-peer
553        type: nest
554        nested-attributes: bitset
555      -
556        name: active
557        type: u8
558      -
559        name: enabled
560        type: u8
561      -
562        name: tx-lpi-enabled
563        type: u8
564      -
565        name: tx-lpi-timer
566        type: u32
567  -
568    name: ts-stat
569    attributes:
570      -
571        name: tx-pkts
572        type: uint
573      -
574        name: tx-lost
575        type: uint
576      -
577        name: tx-err
578        type: uint
579  -
580    name: tsinfo
581    attributes:
582      -
583        name: header
584        type: nest
585        nested-attributes: header
586      -
587        name: timestamping
588        type: nest
589        nested-attributes: bitset
590      -
591        name: tx-types
592        type: nest
593        nested-attributes: bitset
594      -
595        name: rx-filters
596        type: nest
597        nested-attributes: bitset
598      -
599        name: phc-index
600        type: u32
601      -
602        name: stats
603        type: nest
604        nested-attributes: ts-stat
605  -
606    name: cable-result
607    attributes:
608      -
609        name: pair
610        type: u8
611      -
612        name: code
613        type: u8
614  -
615    name: cable-fault-length
616    attributes:
617      -
618        name: pair
619        type: u8
620      -
621        name: cm
622        type: u32
623  -
624    name: cable-nest
625    attributes:
626      -
627        name: result
628        type: nest
629        nested-attributes: cable-result
630      -
631        name: fault-length
632        type: nest
633        nested-attributes: cable-fault-length
634  -
635    name: cable-test
636    attributes:
637      -
638        name: header
639        type: nest
640        nested-attributes: header
641  -
642    name: cable-test-ntf
643    attributes:
644      -
645        name: header
646        type: nest
647        nested-attributes: header
648      -
649        name: status
650        type: u8
651      -
652        name: nest
653        type: nest
654        nested-attributes: cable-nest
655  -
656    name: cable-test-tdr-cfg
657    attributes:
658      -
659        name: first
660        type: u32
661      -
662        name: last
663        type: u32
664      -
665        name: step
666        type: u32
667      -
668        name: pair
669        type: u8
670  -
671    name: cable-test-tdr-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
686    attributes:
687      -
688        name: header
689        type: nest
690        nested-attributes: header
691      -
692        name: cfg
693        type: nest
694        nested-attributes: cable-test-tdr-cfg
695  -
696    name: tunnel-udp-entry
697    attributes:
698      -
699        name: port
700        type: u16
701        byte-order: big-endian
702      -
703        name: type
704        type: u32
705        enum: udp-tunnel-type
706  -
707    name: tunnel-udp-table
708    attributes:
709      -
710        name: size
711        type: u32
712      -
713        name: types
714        type: nest
715        nested-attributes: bitset
716      -
717        name: entry
718        type: nest
719        multi-attr: true
720        nested-attributes: tunnel-udp-entry
721  -
722    name: tunnel-udp
723    attributes:
724      -
725        name: table
726        type: nest
727        nested-attributes: tunnel-udp-table
728  -
729    name: tunnel-info
730    attributes:
731      -
732        name: header
733        type: nest
734        nested-attributes: header
735      -
736        name: udp-ports
737        type: nest
738        nested-attributes: tunnel-udp
739  -
740    name: fec-stat
741    attributes:
742      -
743        name: pad
744        type: pad
745      -
746        name: corrected
747        type: binary
748        sub-type: u64
749      -
750        name: uncorr
751        type: binary
752        sub-type: u64
753      -
754        name: corr-bits
755        type: binary
756        sub-type: u64
757  -
758    name: fec
759    attributes:
760      -
761        name: header
762        type: nest
763        nested-attributes: header
764      -
765        name: modes
766        type: nest
767        nested-attributes: bitset
768      -
769        name: auto
770        type: u8
771      -
772        name: active
773        type: u32
774      -
775        name: stats
776        type: nest
777        nested-attributes: fec-stat
778  -
779    name: module-eeprom
780    attributes:
781      -
782        name: header
783        type: nest
784        nested-attributes: header
785      -
786        name: offset
787        type: u32
788      -
789        name: length
790        type: u32
791      -
792        name: page
793        type: u8
794      -
795        name: bank
796        type: u8
797      -
798        name: i2c-address
799        type: u8
800      -
801        name: data
802        type: binary
803  -
804    name: stats-grp
805    attributes:
806      -
807        name: pad
808        type: pad
809      -
810        name: id
811        type: u32
812      -
813        name: ss-id
814        type: u32
815      -
816        name: stat
817        type: u64
818        type-value: [ id ]
819      -
820        name: hist-rx
821        type: nest
822        nested-attributes: stats-grp-hist
823      -
824        name: hist-tx
825        type: nest
826        nested-attributes: stats-grp-hist
827      -
828        name: hist-bkt-low
829        type: u32
830      -
831        name: hist-bkt-hi
832        type: u32
833      -
834        name: hist-val
835        type: u64
836  -
837    name: stats-grp-hist
838    subset-of: stats-grp
839    attributes:
840      -
841        name: hist-bkt-low
842      -
843        name: hist-bkt-hi
844      -
845        name: hist-val
846  -
847    name: stats
848    attributes:
849      -
850        name: pad
851        type: pad
852      -
853        name: header
854        type: nest
855        nested-attributes: header
856      -
857        name: groups
858        type: nest
859        nested-attributes: bitset
860      -
861        name: grp
862        type: nest
863        nested-attributes: stats-grp
864      -
865        name: src
866        type: u32
867  -
868    name: phc-vclocks
869    attributes:
870      -
871        name: header
872        type: nest
873        nested-attributes: header
874      -
875        name: num
876        type: u32
877      -
878        name: index
879        type: binary
880        sub-type: s32
881  -
882    name: module
883    attributes:
884      -
885        name: header
886        type: nest
887        nested-attributes: header
888      -
889        name: power-mode-policy
890        type: u8
891      -
892        name: power-mode
893        type: u8
894  -
895    name: pse
896    attributes:
897      -
898        name: header
899        type: nest
900        nested-attributes: header
901      -
902        name: admin-state
903        type: u32
904        name-prefix: ethtool-a-podl-pse-
905      -
906        name: admin-control
907        type: u32
908        name-prefix: ethtool-a-podl-pse-
909      -
910        name: pw-d-status
911        type: u32
912        name-prefix: ethtool-a-podl-pse-
913  -
914    name: rss
915    attributes:
916      -
917        name: header
918        type: nest
919        nested-attributes: header
920      -
921        name: context
922        type: u32
923      -
924        name: hfunc
925        type: u32
926      -
927        name: indir
928        type: binary
929      -
930        name: hkey
931        type: binary
932      -
933        name: input_xfrm
934        type: u32
935  -
936    name: plca
937    attributes:
938      -
939        name: header
940        type: nest
941        nested-attributes: header
942      -
943        name: version
944        type: u16
945      -
946        name: enabled
947        type: u8
948      -
949        name: status
950        type: u8
951      -
952        name: node-cnt
953        type: u32
954      -
955        name: node-id
956        type: u32
957      -
958        name: to-tmr
959        type: u32
960      -
961        name: burst-cnt
962        type: u32
963      -
964        name: burst-tmr
965        type: u32
966
967operations:
968  enum-model: directional
969  name-prefix: ethtool-msg-
970  list:
971    -
972      name: strset-get
973      doc: Get string set from the kernel.
974
975      attribute-set: strset
976
977      do: &strset-get-op
978        request:
979          attributes:
980            - header
981            - stringsets
982            - counts-only
983        reply:
984          attributes:
985            - header
986            - stringsets
987      dump: *strset-get-op
988    -
989      name: linkinfo-get
990      doc: Get link info.
991
992      attribute-set: linkinfo
993
994      do: &linkinfo-get-op
995        request:
996          attributes:
997            - header
998        reply:
999          attributes: &linkinfo
1000            - header
1001            - port
1002            - phyaddr
1003            - tp-mdix
1004            - tp-mdix-ctrl
1005            - transceiver
1006      dump: *linkinfo-get-op
1007    -
1008      name: linkinfo-set
1009      doc: Set link info.
1010
1011      attribute-set: linkinfo
1012
1013      do:
1014        request:
1015          attributes: *linkinfo
1016    -
1017      name: linkinfo-ntf
1018      doc: Notification for change in link info.
1019      notify: linkinfo-get
1020    -
1021      name: linkmodes-get
1022      doc: Get link modes.
1023
1024      attribute-set: linkmodes
1025
1026      do: &linkmodes-get-op
1027        request:
1028          attributes:
1029            - header
1030        reply:
1031          attributes: &linkmodes
1032            - header
1033            - autoneg
1034            - ours
1035            - peer
1036            - speed
1037            - duplex
1038            - master-slave-cfg
1039            - master-slave-state
1040            - lanes
1041            - rate-matching
1042      dump: *linkmodes-get-op
1043    -
1044      name: linkmodes-set
1045      doc: Set link modes.
1046
1047      attribute-set: linkmodes
1048
1049      do:
1050        request:
1051          attributes: *linkmodes
1052    -
1053      name: linkmodes-ntf
1054      doc: Notification for change in link modes.
1055      notify: linkmodes-get
1056    -
1057      name: linkstate-get
1058      doc: Get link state.
1059
1060      attribute-set: linkstate
1061
1062      do: &linkstate-get-op
1063        request:
1064          attributes:
1065            - header
1066        reply:
1067          attributes:
1068            - header
1069            - link
1070            - sqi
1071            - sqi-max
1072            - ext-state
1073            - ext-substate
1074            - ext-down-cnt
1075      dump: *linkstate-get-op
1076    -
1077      name: debug-get
1078      doc: Get debug message mask.
1079
1080      attribute-set: debug
1081
1082      do: &debug-get-op
1083        request:
1084          attributes:
1085            - header
1086        reply:
1087          attributes: &debug
1088            - header
1089            - msgmask
1090      dump: *debug-get-op
1091    -
1092      name: debug-set
1093      doc: Set debug message mask.
1094
1095      attribute-set: debug
1096
1097      do:
1098        request:
1099          attributes: *debug
1100    -
1101      name: debug-ntf
1102      doc: Notification for change in debug message mask.
1103      notify: debug-get
1104    -
1105      name: wol-get
1106      doc: Get WOL params.
1107
1108      attribute-set: wol
1109
1110      do: &wol-get-op
1111        request:
1112          attributes:
1113            - header
1114        reply:
1115          attributes: &wol
1116            - header
1117            - modes
1118            - sopass
1119      dump: *wol-get-op
1120    -
1121      name: wol-set
1122      doc: Set WOL params.
1123
1124      attribute-set: wol
1125
1126      do:
1127        request:
1128          attributes: *wol
1129    -
1130      name: wol-ntf
1131      doc: Notification for change in WOL params.
1132      notify: wol-get
1133    -
1134      name: features-get
1135      doc: Get features.
1136
1137      attribute-set: features
1138
1139      do: &feature-get-op
1140        request:
1141          attributes:
1142            - header
1143        reply:
1144          attributes: &feature
1145            - header
1146            # User-changeable features.
1147            - hw
1148            # User-requested features.
1149            - wanted
1150            # Currently active features.
1151            - active
1152            # Unchangeable features.
1153            - nochange
1154      dump: *feature-get-op
1155    -
1156      name: features-set
1157      doc: Set features.
1158
1159      attribute-set: features
1160
1161      do: &feature-set-op
1162        request:
1163          attributes: *feature
1164        reply:
1165          attributes: *feature
1166    -
1167      name: features-ntf
1168      doc: Notification for change in features.
1169      notify: features-get
1170    -
1171      name: privflags-get
1172      doc: Get device private flags.
1173
1174      attribute-set: privflags
1175
1176      do: &privflag-get-op
1177        request:
1178          attributes:
1179            - header
1180        reply:
1181          attributes: &privflag
1182            - header
1183            - flags
1184      dump: *privflag-get-op
1185    -
1186      name: privflags-set
1187      doc: Set device private flags.
1188
1189      attribute-set: privflags
1190
1191      do:
1192        request:
1193          attributes: *privflag
1194    -
1195      name: privflags-ntf
1196      doc: Notification for change in device private flags.
1197      notify: privflags-get
1198
1199    -
1200      name: rings-get
1201      doc: Get ring params.
1202
1203      attribute-set: rings
1204
1205      do: &ring-get-op
1206        request:
1207          attributes:
1208            - header
1209        reply:
1210          attributes: &ring
1211            - header
1212            - rx-max
1213            - rx-mini-max
1214            - rx-jumbo-max
1215            - tx-max
1216            - rx
1217            - rx-mini
1218            - rx-jumbo
1219            - tx
1220            - rx-buf-len
1221            - tcp-data-split
1222            - cqe-size
1223            - tx-push
1224            - rx-push
1225            - tx-push-buf-len
1226            - tx-push-buf-len-max
1227      dump: *ring-get-op
1228    -
1229      name: rings-set
1230      doc: Set ring params.
1231
1232      attribute-set: rings
1233
1234      do:
1235        request:
1236          attributes: *ring
1237    -
1238      name: rings-ntf
1239      doc: Notification for change in ring params.
1240      notify: rings-get
1241    -
1242      name: channels-get
1243      doc: Get channel params.
1244
1245      attribute-set: channels
1246
1247      do: &channel-get-op
1248        request:
1249          attributes:
1250            - header
1251        reply:
1252          attributes: &channel
1253            - header
1254            - rx-max
1255            - tx-max
1256            - other-max
1257            - combined-max
1258            - rx-count
1259            - tx-count
1260            - other-count
1261            - combined-count
1262      dump: *channel-get-op
1263    -
1264      name: channels-set
1265      doc: Set channel params.
1266
1267      attribute-set: channels
1268
1269      do:
1270        request:
1271          attributes: *channel
1272    -
1273      name: channels-ntf
1274      doc: Notification for change in channel params.
1275      notify: channels-get
1276    -
1277      name: coalesce-get
1278      doc: Get coalesce params.
1279
1280      attribute-set: coalesce
1281
1282      do: &coalesce-get-op
1283        request:
1284          attributes:
1285            - header
1286        reply:
1287          attributes: &coalesce
1288            - header
1289            - rx-usecs
1290            - rx-max-frames
1291            - rx-usecs-irq
1292            - rx-max-frames-irq
1293            - tx-usecs
1294            - tx-max-frames
1295            - tx-usecs-irq
1296            - tx-max-frames-irq
1297            - stats-block-usecs
1298            - use-adaptive-rx
1299            - use-adaptive-tx
1300            - pkt-rate-low
1301            - rx-usecs-low
1302            - rx-max-frames-low
1303            - tx-usecs-low
1304            - tx-max-frames-low
1305            - pkt-rate-high
1306            - rx-usecs-high
1307            - rx-max-frames-high
1308            - tx-usecs-high
1309            - tx-max-frames-high
1310            - rate-sample-interval
1311            - use-cqe-mode-tx
1312            - use-cqe-mode-rx
1313            - tx-aggr-max-bytes
1314            - tx-aggr-max-frames
1315            - tx-aggr-time-usecs
1316      dump: *coalesce-get-op
1317    -
1318      name: coalesce-set
1319      doc: Set coalesce params.
1320
1321      attribute-set: coalesce
1322
1323      do:
1324        request:
1325          attributes: *coalesce
1326    -
1327      name: coalesce-ntf
1328      doc: Notification for change in coalesce params.
1329      notify: coalesce-get
1330    -
1331      name: pause-get
1332      doc: Get pause params.
1333
1334      attribute-set: pause
1335
1336      do: &pause-get-op
1337        request:
1338          attributes:
1339            - header
1340        reply:
1341          attributes: &pause
1342            - header
1343            - autoneg
1344            - rx
1345            - tx
1346            - stats
1347            - stats-src
1348      dump: *pause-get-op
1349    -
1350      name: pause-set
1351      doc: Set pause params.
1352
1353      attribute-set: pause
1354
1355      do:
1356        request:
1357          attributes: *pause
1358    -
1359      name: pause-ntf
1360      doc: Notification for change in pause params.
1361      notify: pause-get
1362    -
1363      name: eee-get
1364      doc: Get eee params.
1365
1366      attribute-set: eee
1367
1368      do: &eee-get-op
1369        request:
1370          attributes:
1371            - header
1372        reply:
1373          attributes: &eee
1374            - header
1375            - modes-ours
1376            - modes-peer
1377            - active
1378            - enabled
1379            - tx-lpi-enabled
1380            - tx-lpi-timer
1381      dump: *eee-get-op
1382    -
1383      name: eee-set
1384      doc: Set eee params.
1385
1386      attribute-set: eee
1387
1388      do:
1389        request:
1390          attributes: *eee
1391    -
1392      name: eee-ntf
1393      doc: Notification for change in eee params.
1394      notify: eee-get
1395    -
1396      name: tsinfo-get
1397      doc: Get tsinfo params.
1398
1399      attribute-set: tsinfo
1400
1401      do: &tsinfo-get-op
1402        request:
1403          attributes:
1404            - header
1405        reply:
1406          attributes:
1407            - header
1408            - timestamping
1409            - tx-types
1410            - rx-filters
1411            - phc-index
1412            - stats
1413      dump: *tsinfo-get-op
1414    -
1415      name: cable-test-act
1416      doc: Cable test.
1417
1418      attribute-set: cable-test
1419
1420      do:
1421        request:
1422          attributes:
1423            - header
1424    -
1425      name: cable-test-ntf
1426      doc: Cable test notification.
1427
1428      attribute-set: cable-test-ntf
1429
1430      event:
1431        attributes:
1432          - header
1433          - status
1434    -
1435      name: cable-test-tdr-act
1436      doc: Cable test TDR.
1437
1438      attribute-set: cable-test-tdr
1439
1440      do:
1441        request:
1442          attributes:
1443            - header
1444    -
1445      name: cable-test-tdr-ntf
1446      doc: Cable test TDR notification.
1447
1448      attribute-set: cable-test-tdr-ntf
1449
1450      event:
1451        attributes:
1452          - header
1453          - status
1454          - nest
1455    -
1456      name: tunnel-info-get
1457      doc: Get tsinfo params.
1458
1459      attribute-set: tunnel-info
1460
1461      do: &tunnel-info-get-op
1462        request:
1463          attributes:
1464            - header
1465        reply:
1466          attributes:
1467            - header
1468            - udp-ports
1469      dump: *tunnel-info-get-op
1470    -
1471      name: fec-get
1472      doc: Get FEC params.
1473
1474      attribute-set: fec
1475
1476      do: &fec-get-op
1477        request:
1478          attributes:
1479            - header
1480        reply:
1481          attributes: &fec
1482            - header
1483            - modes
1484            - auto
1485            - active
1486            - stats
1487      dump: *fec-get-op
1488    -
1489      name: fec-set
1490      doc: Set FEC params.
1491
1492      attribute-set: fec
1493
1494      do:
1495        request:
1496          attributes: *fec
1497    -
1498      name: fec-ntf
1499      doc: Notification for change in FEC params.
1500      notify: fec-get
1501    -
1502      name: module-eeprom-get
1503      doc: Get module EEPROM params.
1504
1505      attribute-set: module-eeprom
1506
1507      do: &module-eeprom-get-op
1508        request:
1509          attributes:
1510            - header
1511        reply:
1512          attributes:
1513            - header
1514            - offset
1515            - length
1516            - page
1517            - bank
1518            - i2c-address
1519            - data
1520      dump: *module-eeprom-get-op
1521    -
1522      name: stats-get
1523      doc: Get statistics.
1524
1525      attribute-set: stats
1526
1527      do: &stats-get-op
1528        request:
1529          attributes:
1530            - header
1531            - groups
1532        reply:
1533          attributes:
1534            - header
1535            - groups
1536            - grp
1537            - src
1538      dump: *stats-get-op
1539    -
1540      name: phc-vclocks-get
1541      doc: Get PHC VCLOCKs.
1542
1543      attribute-set: phc-vclocks
1544
1545      do: &phc-vclocks-get-op
1546        request:
1547          attributes:
1548            - header
1549        reply:
1550          attributes:
1551            - header
1552            - num
1553      dump: *phc-vclocks-get-op
1554    -
1555      name: module-get
1556      doc: Get module params.
1557
1558      attribute-set: module
1559
1560      do: &module-get-op
1561        request:
1562          attributes:
1563            - header
1564        reply:
1565          attributes: &module
1566            - header
1567            - power-mode-policy
1568            - power-mode
1569      dump: *module-get-op
1570    -
1571      name: module-set
1572      doc: Set module params.
1573
1574      attribute-set: module
1575
1576      do:
1577        request:
1578          attributes: *module
1579    -
1580      name: module-ntf
1581      doc: Notification for change in module params.
1582      notify: module-get
1583    -
1584      name: pse-get
1585      doc: Get Power Sourcing Equipment params.
1586
1587      attribute-set: pse
1588
1589      do: &pse-get-op
1590        request:
1591          attributes:
1592            - header
1593        reply:
1594          attributes: &pse
1595            - header
1596            - admin-state
1597            - admin-control
1598            - pw-d-status
1599      dump: *pse-get-op
1600    -
1601      name: pse-set
1602      doc: Set Power Sourcing Equipment params.
1603
1604      attribute-set: pse
1605
1606      do:
1607        request:
1608          attributes: *pse
1609    -
1610      name: rss-get
1611      doc: Get RSS params.
1612
1613      attribute-set: rss
1614
1615      do: &rss-get-op
1616        request:
1617          attributes:
1618            - header
1619        reply:
1620          attributes:
1621            - header
1622            - context
1623            - hfunc
1624            - indir
1625            - hkey
1626            - input_xfrm
1627      dump: *rss-get-op
1628    -
1629      name: plca-get-cfg
1630      doc: Get PLCA params.
1631
1632      attribute-set: plca
1633
1634      do: &plca-get-op
1635        request:
1636          attributes:
1637            - header
1638        reply:
1639          attributes: &plca
1640            - header
1641            - version
1642            - enabled
1643            - status
1644            - node-cnt
1645            - node-id
1646            - to-tmr
1647            - burst-cnt
1648            - burst-tmr
1649      dump: *plca-get-op
1650    -
1651      name: plca-set-cfg
1652      doc: Set PLCA params.
1653
1654      attribute-set: plca
1655
1656      do:
1657        request:
1658          attributes: *plca
1659    -
1660      name: plca-get-status
1661      doc: Get PLCA status params.
1662
1663      attribute-set: plca
1664
1665      do: &plca-get-status-op
1666        request:
1667          attributes:
1668            - header
1669        reply:
1670          attributes: *plca
1671      dump: *plca-get-status-op
1672    -
1673      name: plca-ntf
1674      doc: Notification for change in PLCA params.
1675      notify: plca-get-cfg
1676    -
1677      name: mm-get
1678      doc: Get MAC Merge configuration and state
1679
1680      attribute-set: mm
1681
1682      do: &mm-get-op
1683        request:
1684          attributes:
1685            - header
1686        reply:
1687          attributes:
1688            - header
1689            - pmac-enabled
1690            - tx-enabled
1691            - tx-active
1692            - tx-min-frag-size
1693            - rx-min-frag-size
1694            - verify-enabled
1695            - verify-time
1696            - max-verify-time
1697            - stats
1698      dump: *mm-get-op
1699    -
1700      name: mm-set
1701      doc: Set MAC Merge configuration
1702
1703      attribute-set: mm
1704
1705      do:
1706        request:
1707          attributes:
1708            - header
1709            - verify-enabled
1710            - verify-time
1711            - tx-enabled
1712            - pmac-enabled
1713            - tx-min-frag-size
1714    -
1715      name: mm-ntf
1716      doc: Notification for change in MAC Merge configuration.
1717      notify: mm-get
1718