xref: /linux/Documentation/netlink/specs/ethtool.yaml (revision c5288cda69ee2d8607f5026bd599a5cebf0ee783)
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: podl-pse-admin-state
903        type: u32
904        name-prefix: ethtool-a-
905      -
906        name: podl-pse-admin-control
907        type: u32
908        name-prefix: ethtool-a-
909      -
910        name: podl-pse-pw-d-status
911        type: u32
912        name-prefix: ethtool-a-
913      -
914        name: c33-pse-admin-state
915        type: u32
916        name-prefix: ethtool-a-
917      -
918        name: c33-pse-admin-control
919        type: u32
920        name-prefix: ethtool-a-
921      -
922        name: c33-pse-pw-d-status
923        type: u32
924        name-prefix: ethtool-a-
925  -
926    name: rss
927    attributes:
928      -
929        name: header
930        type: nest
931        nested-attributes: header
932      -
933        name: context
934        type: u32
935      -
936        name: hfunc
937        type: u32
938      -
939        name: indir
940        type: binary
941      -
942        name: hkey
943        type: binary
944      -
945        name: input_xfrm
946        type: u32
947  -
948    name: plca
949    attributes:
950      -
951        name: header
952        type: nest
953        nested-attributes: header
954      -
955        name: version
956        type: u16
957      -
958        name: enabled
959        type: u8
960      -
961        name: status
962        type: u8
963      -
964        name: node-cnt
965        type: u32
966      -
967        name: node-id
968        type: u32
969      -
970        name: to-tmr
971        type: u32
972      -
973        name: burst-cnt
974        type: u32
975      -
976        name: burst-tmr
977        type: u32
978
979operations:
980  enum-model: directional
981  name-prefix: ethtool-msg-
982  list:
983    -
984      name: strset-get
985      doc: Get string set from the kernel.
986
987      attribute-set: strset
988
989      do: &strset-get-op
990        request:
991          attributes:
992            - header
993            - stringsets
994            - counts-only
995        reply:
996          attributes:
997            - header
998            - stringsets
999      dump: *strset-get-op
1000    -
1001      name: linkinfo-get
1002      doc: Get link info.
1003
1004      attribute-set: linkinfo
1005
1006      do: &linkinfo-get-op
1007        request:
1008          attributes:
1009            - header
1010        reply:
1011          attributes: &linkinfo
1012            - header
1013            - port
1014            - phyaddr
1015            - tp-mdix
1016            - tp-mdix-ctrl
1017            - transceiver
1018      dump: *linkinfo-get-op
1019    -
1020      name: linkinfo-set
1021      doc: Set link info.
1022
1023      attribute-set: linkinfo
1024
1025      do:
1026        request:
1027          attributes: *linkinfo
1028    -
1029      name: linkinfo-ntf
1030      doc: Notification for change in link info.
1031      notify: linkinfo-get
1032    -
1033      name: linkmodes-get
1034      doc: Get link modes.
1035
1036      attribute-set: linkmodes
1037
1038      do: &linkmodes-get-op
1039        request:
1040          attributes:
1041            - header
1042        reply:
1043          attributes: &linkmodes
1044            - header
1045            - autoneg
1046            - ours
1047            - peer
1048            - speed
1049            - duplex
1050            - master-slave-cfg
1051            - master-slave-state
1052            - lanes
1053            - rate-matching
1054      dump: *linkmodes-get-op
1055    -
1056      name: linkmodes-set
1057      doc: Set link modes.
1058
1059      attribute-set: linkmodes
1060
1061      do:
1062        request:
1063          attributes: *linkmodes
1064    -
1065      name: linkmodes-ntf
1066      doc: Notification for change in link modes.
1067      notify: linkmodes-get
1068    -
1069      name: linkstate-get
1070      doc: Get link state.
1071
1072      attribute-set: linkstate
1073
1074      do: &linkstate-get-op
1075        request:
1076          attributes:
1077            - header
1078        reply:
1079          attributes:
1080            - header
1081            - link
1082            - sqi
1083            - sqi-max
1084            - ext-state
1085            - ext-substate
1086            - ext-down-cnt
1087      dump: *linkstate-get-op
1088    -
1089      name: debug-get
1090      doc: Get debug message mask.
1091
1092      attribute-set: debug
1093
1094      do: &debug-get-op
1095        request:
1096          attributes:
1097            - header
1098        reply:
1099          attributes: &debug
1100            - header
1101            - msgmask
1102      dump: *debug-get-op
1103    -
1104      name: debug-set
1105      doc: Set debug message mask.
1106
1107      attribute-set: debug
1108
1109      do:
1110        request:
1111          attributes: *debug
1112    -
1113      name: debug-ntf
1114      doc: Notification for change in debug message mask.
1115      notify: debug-get
1116    -
1117      name: wol-get
1118      doc: Get WOL params.
1119
1120      attribute-set: wol
1121
1122      do: &wol-get-op
1123        request:
1124          attributes:
1125            - header
1126        reply:
1127          attributes: &wol
1128            - header
1129            - modes
1130            - sopass
1131      dump: *wol-get-op
1132    -
1133      name: wol-set
1134      doc: Set WOL params.
1135
1136      attribute-set: wol
1137
1138      do:
1139        request:
1140          attributes: *wol
1141    -
1142      name: wol-ntf
1143      doc: Notification for change in WOL params.
1144      notify: wol-get
1145    -
1146      name: features-get
1147      doc: Get features.
1148
1149      attribute-set: features
1150
1151      do: &feature-get-op
1152        request:
1153          attributes:
1154            - header
1155        reply:
1156          attributes: &feature
1157            - header
1158            # User-changeable features.
1159            - hw
1160            # User-requested features.
1161            - wanted
1162            # Currently active features.
1163            - active
1164            # Unchangeable features.
1165            - nochange
1166      dump: *feature-get-op
1167    -
1168      name: features-set
1169      doc: Set features.
1170
1171      attribute-set: features
1172
1173      do: &feature-set-op
1174        request:
1175          attributes: *feature
1176        reply:
1177          attributes: *feature
1178    -
1179      name: features-ntf
1180      doc: Notification for change in features.
1181      notify: features-get
1182    -
1183      name: privflags-get
1184      doc: Get device private flags.
1185
1186      attribute-set: privflags
1187
1188      do: &privflag-get-op
1189        request:
1190          attributes:
1191            - header
1192        reply:
1193          attributes: &privflag
1194            - header
1195            - flags
1196      dump: *privflag-get-op
1197    -
1198      name: privflags-set
1199      doc: Set device private flags.
1200
1201      attribute-set: privflags
1202
1203      do:
1204        request:
1205          attributes: *privflag
1206    -
1207      name: privflags-ntf
1208      doc: Notification for change in device private flags.
1209      notify: privflags-get
1210
1211    -
1212      name: rings-get
1213      doc: Get ring params.
1214
1215      attribute-set: rings
1216
1217      do: &ring-get-op
1218        request:
1219          attributes:
1220            - header
1221        reply:
1222          attributes: &ring
1223            - header
1224            - rx-max
1225            - rx-mini-max
1226            - rx-jumbo-max
1227            - tx-max
1228            - rx
1229            - rx-mini
1230            - rx-jumbo
1231            - tx
1232            - rx-buf-len
1233            - tcp-data-split
1234            - cqe-size
1235            - tx-push
1236            - rx-push
1237            - tx-push-buf-len
1238            - tx-push-buf-len-max
1239      dump: *ring-get-op
1240    -
1241      name: rings-set
1242      doc: Set ring params.
1243
1244      attribute-set: rings
1245
1246      do:
1247        request:
1248          attributes: *ring
1249    -
1250      name: rings-ntf
1251      doc: Notification for change in ring params.
1252      notify: rings-get
1253    -
1254      name: channels-get
1255      doc: Get channel params.
1256
1257      attribute-set: channels
1258
1259      do: &channel-get-op
1260        request:
1261          attributes:
1262            - header
1263        reply:
1264          attributes: &channel
1265            - header
1266            - rx-max
1267            - tx-max
1268            - other-max
1269            - combined-max
1270            - rx-count
1271            - tx-count
1272            - other-count
1273            - combined-count
1274      dump: *channel-get-op
1275    -
1276      name: channels-set
1277      doc: Set channel params.
1278
1279      attribute-set: channels
1280
1281      do:
1282        request:
1283          attributes: *channel
1284    -
1285      name: channels-ntf
1286      doc: Notification for change in channel params.
1287      notify: channels-get
1288    -
1289      name: coalesce-get
1290      doc: Get coalesce params.
1291
1292      attribute-set: coalesce
1293
1294      do: &coalesce-get-op
1295        request:
1296          attributes:
1297            - header
1298        reply:
1299          attributes: &coalesce
1300            - header
1301            - rx-usecs
1302            - rx-max-frames
1303            - rx-usecs-irq
1304            - rx-max-frames-irq
1305            - tx-usecs
1306            - tx-max-frames
1307            - tx-usecs-irq
1308            - tx-max-frames-irq
1309            - stats-block-usecs
1310            - use-adaptive-rx
1311            - use-adaptive-tx
1312            - pkt-rate-low
1313            - rx-usecs-low
1314            - rx-max-frames-low
1315            - tx-usecs-low
1316            - tx-max-frames-low
1317            - pkt-rate-high
1318            - rx-usecs-high
1319            - rx-max-frames-high
1320            - tx-usecs-high
1321            - tx-max-frames-high
1322            - rate-sample-interval
1323            - use-cqe-mode-tx
1324            - use-cqe-mode-rx
1325            - tx-aggr-max-bytes
1326            - tx-aggr-max-frames
1327            - tx-aggr-time-usecs
1328      dump: *coalesce-get-op
1329    -
1330      name: coalesce-set
1331      doc: Set coalesce params.
1332
1333      attribute-set: coalesce
1334
1335      do:
1336        request:
1337          attributes: *coalesce
1338    -
1339      name: coalesce-ntf
1340      doc: Notification for change in coalesce params.
1341      notify: coalesce-get
1342    -
1343      name: pause-get
1344      doc: Get pause params.
1345
1346      attribute-set: pause
1347
1348      do: &pause-get-op
1349        request:
1350          attributes:
1351            - header
1352        reply:
1353          attributes: &pause
1354            - header
1355            - autoneg
1356            - rx
1357            - tx
1358            - stats
1359            - stats-src
1360      dump: *pause-get-op
1361    -
1362      name: pause-set
1363      doc: Set pause params.
1364
1365      attribute-set: pause
1366
1367      do:
1368        request:
1369          attributes: *pause
1370    -
1371      name: pause-ntf
1372      doc: Notification for change in pause params.
1373      notify: pause-get
1374    -
1375      name: eee-get
1376      doc: Get eee params.
1377
1378      attribute-set: eee
1379
1380      do: &eee-get-op
1381        request:
1382          attributes:
1383            - header
1384        reply:
1385          attributes: &eee
1386            - header
1387            - modes-ours
1388            - modes-peer
1389            - active
1390            - enabled
1391            - tx-lpi-enabled
1392            - tx-lpi-timer
1393      dump: *eee-get-op
1394    -
1395      name: eee-set
1396      doc: Set eee params.
1397
1398      attribute-set: eee
1399
1400      do:
1401        request:
1402          attributes: *eee
1403    -
1404      name: eee-ntf
1405      doc: Notification for change in eee params.
1406      notify: eee-get
1407    -
1408      name: tsinfo-get
1409      doc: Get tsinfo params.
1410
1411      attribute-set: tsinfo
1412
1413      do: &tsinfo-get-op
1414        request:
1415          attributes:
1416            - header
1417        reply:
1418          attributes:
1419            - header
1420            - timestamping
1421            - tx-types
1422            - rx-filters
1423            - phc-index
1424            - stats
1425      dump: *tsinfo-get-op
1426    -
1427      name: cable-test-act
1428      doc: Cable test.
1429
1430      attribute-set: cable-test
1431
1432      do:
1433        request:
1434          attributes:
1435            - header
1436    -
1437      name: cable-test-ntf
1438      doc: Cable test notification.
1439
1440      attribute-set: cable-test-ntf
1441
1442      event:
1443        attributes:
1444          - header
1445          - status
1446    -
1447      name: cable-test-tdr-act
1448      doc: Cable test TDR.
1449
1450      attribute-set: cable-test-tdr
1451
1452      do:
1453        request:
1454          attributes:
1455            - header
1456    -
1457      name: cable-test-tdr-ntf
1458      doc: Cable test TDR notification.
1459
1460      attribute-set: cable-test-tdr-ntf
1461
1462      event:
1463        attributes:
1464          - header
1465          - status
1466          - nest
1467    -
1468      name: tunnel-info-get
1469      doc: Get tsinfo params.
1470
1471      attribute-set: tunnel-info
1472
1473      do: &tunnel-info-get-op
1474        request:
1475          attributes:
1476            - header
1477        reply:
1478          attributes:
1479            - header
1480            - udp-ports
1481      dump: *tunnel-info-get-op
1482    -
1483      name: fec-get
1484      doc: Get FEC params.
1485
1486      attribute-set: fec
1487
1488      do: &fec-get-op
1489        request:
1490          attributes:
1491            - header
1492        reply:
1493          attributes: &fec
1494            - header
1495            - modes
1496            - auto
1497            - active
1498            - stats
1499      dump: *fec-get-op
1500    -
1501      name: fec-set
1502      doc: Set FEC params.
1503
1504      attribute-set: fec
1505
1506      do:
1507        request:
1508          attributes: *fec
1509    -
1510      name: fec-ntf
1511      doc: Notification for change in FEC params.
1512      notify: fec-get
1513    -
1514      name: module-eeprom-get
1515      doc: Get module EEPROM params.
1516
1517      attribute-set: module-eeprom
1518
1519      do: &module-eeprom-get-op
1520        request:
1521          attributes:
1522            - header
1523        reply:
1524          attributes:
1525            - header
1526            - offset
1527            - length
1528            - page
1529            - bank
1530            - i2c-address
1531            - data
1532      dump: *module-eeprom-get-op
1533    -
1534      name: stats-get
1535      doc: Get statistics.
1536
1537      attribute-set: stats
1538
1539      do: &stats-get-op
1540        request:
1541          attributes:
1542            - header
1543            - groups
1544        reply:
1545          attributes:
1546            - header
1547            - groups
1548            - grp
1549            - src
1550      dump: *stats-get-op
1551    -
1552      name: phc-vclocks-get
1553      doc: Get PHC VCLOCKs.
1554
1555      attribute-set: phc-vclocks
1556
1557      do: &phc-vclocks-get-op
1558        request:
1559          attributes:
1560            - header
1561        reply:
1562          attributes:
1563            - header
1564            - num
1565      dump: *phc-vclocks-get-op
1566    -
1567      name: module-get
1568      doc: Get module params.
1569
1570      attribute-set: module
1571
1572      do: &module-get-op
1573        request:
1574          attributes:
1575            - header
1576        reply:
1577          attributes: &module
1578            - header
1579            - power-mode-policy
1580            - power-mode
1581      dump: *module-get-op
1582    -
1583      name: module-set
1584      doc: Set module params.
1585
1586      attribute-set: module
1587
1588      do:
1589        request:
1590          attributes: *module
1591    -
1592      name: module-ntf
1593      doc: Notification for change in module params.
1594      notify: module-get
1595    -
1596      name: pse-get
1597      doc: Get Power Sourcing Equipment params.
1598
1599      attribute-set: pse
1600
1601      do: &pse-get-op
1602        request:
1603          attributes:
1604            - header
1605        reply:
1606          attributes: &pse
1607            - header
1608            - podl-pse-admin-state
1609            - podl-pse-admin-control
1610            - podl-pse-pw-d-status
1611            - c33-pse-admin-state
1612            - c33-pse-admin-control
1613            - c33-pse-pw-d-status
1614      dump: *pse-get-op
1615    -
1616      name: pse-set
1617      doc: Set Power Sourcing Equipment params.
1618
1619      attribute-set: pse
1620
1621      do:
1622        request:
1623          attributes: *pse
1624    -
1625      name: rss-get
1626      doc: Get RSS params.
1627
1628      attribute-set: rss
1629
1630      do: &rss-get-op
1631        request:
1632          attributes:
1633            - header
1634        reply:
1635          attributes:
1636            - header
1637            - context
1638            - hfunc
1639            - indir
1640            - hkey
1641            - input_xfrm
1642      dump: *rss-get-op
1643    -
1644      name: plca-get-cfg
1645      doc: Get PLCA params.
1646
1647      attribute-set: plca
1648
1649      do: &plca-get-op
1650        request:
1651          attributes:
1652            - header
1653        reply:
1654          attributes: &plca
1655            - header
1656            - version
1657            - enabled
1658            - status
1659            - node-cnt
1660            - node-id
1661            - to-tmr
1662            - burst-cnt
1663            - burst-tmr
1664      dump: *plca-get-op
1665    -
1666      name: plca-set-cfg
1667      doc: Set PLCA params.
1668
1669      attribute-set: plca
1670
1671      do:
1672        request:
1673          attributes: *plca
1674    -
1675      name: plca-get-status
1676      doc: Get PLCA status params.
1677
1678      attribute-set: plca
1679
1680      do: &plca-get-status-op
1681        request:
1682          attributes:
1683            - header
1684        reply:
1685          attributes: *plca
1686      dump: *plca-get-status-op
1687    -
1688      name: plca-ntf
1689      doc: Notification for change in PLCA params.
1690      notify: plca-get-cfg
1691    -
1692      name: mm-get
1693      doc: Get MAC Merge configuration and state
1694
1695      attribute-set: mm
1696
1697      do: &mm-get-op
1698        request:
1699          attributes:
1700            - header
1701        reply:
1702          attributes:
1703            - header
1704            - pmac-enabled
1705            - tx-enabled
1706            - tx-active
1707            - tx-min-frag-size
1708            - rx-min-frag-size
1709            - verify-enabled
1710            - verify-time
1711            - max-verify-time
1712            - stats
1713      dump: *mm-get-op
1714    -
1715      name: mm-set
1716      doc: Set MAC Merge configuration
1717
1718      attribute-set: mm
1719
1720      do:
1721        request:
1722          attributes:
1723            - header
1724            - verify-enabled
1725            - verify-time
1726            - tx-enabled
1727            - pmac-enabled
1728            - tx-min-frag-size
1729    -
1730      name: mm-ntf
1731      doc: Notification for change in MAC Merge configuration.
1732      notify: mm-get
1733