1 # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
5 protocol: genetlink-legacy
7 doc: Partial family for Devlink.
22 name-prefix: devlink-attr-
35 # TODO: fill in the attributes in between
42 # TODO: fill in the attributes in between
54 # TODO: fill in the attributes in between
61 # TODO: fill in the attributes in between
68 # TODO: fill in the attributes in between
75 # TODO: fill in the attributes in between
78 name: info-driver-name
82 name: info-serial-number
85 name: info-version-fixed
88 nested-attributes: dl-info-version
90 name: info-version-running
93 nested-attributes: dl-info-version
95 name: info-version-stored
98 nested-attributes: dl-info-version
100 name: info-version-name
103 name: info-version-value
106 # TODO: fill in the attributes in between
109 name: health-reporter-name
113 # TODO: fill in the attributes in between
120 # TODO: fill in the attributes in between
123 name: trap-group-name
131 # TODO: fill in the attributes in between
134 name: trap-policer-id
138 # TODO: fill in the attributes in between
145 # TODO: fill in the attributes in between
151 nested-attributes: dl-dev-stats
155 nested-attributes: dl-reload-stats
157 name: reload-stats-entry
160 nested-attributes: dl-reload-stats-entry
162 name: reload-stats-limit
165 name: reload-stats-value
168 name: remote-reload-stats
170 nested-attributes: dl-reload-stats
172 name: reload-action-info
175 nested-attributes: dl-reload-act-info
177 name: reload-action-stats
180 nested-attributes: dl-reload-act-stats
182 # TODO: fill in the attributes in between
189 # TODO: fill in the attributes in between
203 name: remote-reload-stats
205 name: dl-reload-stats
209 name: reload-action-info
211 name: dl-reload-act-info
217 name: reload-action-stats
219 name: dl-reload-act-stats
223 name: reload-stats-entry
225 name: dl-reload-stats-entry
229 name: reload-stats-limit
231 name: reload-stats-value
233 name: dl-info-version
237 name: info-version-name
239 name: info-version-value
242 enum-model: directional
246 doc: Get devlink instances.
247 attribute-set: devlink
253 pre: devlink-nl-pre-doit
254 post: devlink-nl-post-doit
257 attributes: &dev-id-attrs
273 doc: Get devlink port instances.
274 attribute-set: devlink
279 pre: devlink-nl-pre-doit-port
280 post: devlink-nl-post-doit
283 attributes: &port-id-attrs
289 attributes: *port-id-attrs
292 attributes: *dev-id-attrs
294 value: 3 # due to a bug, port dump returns DEVLINK_CMD_NEW
295 attributes: *port-id-attrs
297 # TODO: fill in the operations in between
301 doc: Get shared buffer instances.
302 attribute-set: devlink
307 pre: devlink-nl-pre-doit
308 post: devlink-nl-post-doit
311 attributes: &sb-id-attrs
317 attributes: *sb-id-attrs
320 attributes: *dev-id-attrs
323 # TODO: fill in the operations in between
327 doc: Get shared buffer pool instances.
328 attribute-set: devlink
333 pre: devlink-nl-pre-doit
334 post: devlink-nl-post-doit
337 attributes: &sb-pool-id-attrs
342 reply: &sb-pool-get-reply
344 attributes: *sb-pool-id-attrs
347 attributes: *dev-id-attrs
348 reply: *sb-pool-get-reply
350 # TODO: fill in the operations in between
353 name: sb-port-pool-get
354 doc: Get shared buffer port-pool combinations and threshold.
355 attribute-set: devlink
360 pre: devlink-nl-pre-doit-port
361 post: devlink-nl-post-doit
364 attributes: &sb-port-pool-id-attrs
370 reply: &sb-port-pool-get-reply
372 attributes: *sb-port-pool-id-attrs
375 attributes: *dev-id-attrs
376 reply: *sb-port-pool-get-reply
378 # TODO: fill in the operations in between
381 name: sb-tc-pool-bind-get
382 doc: Get shared buffer port-TC to pool bindings and threshold.
383 attribute-set: devlink
388 pre: devlink-nl-pre-doit-port
389 post: devlink-nl-post-doit
392 attributes: &sb-tc-pool-bind-id-attrs
399 reply: &sb-tc-pool-bind-get-reply
401 attributes: *sb-tc-pool-bind-id-attrs
404 attributes: *dev-id-attrs
405 reply: *sb-tc-pool-bind-get-reply
407 # TODO: fill in the operations in between
411 doc: Get param instances.
412 attribute-set: devlink
417 pre: devlink-nl-pre-doit
418 post: devlink-nl-post-doit
421 attributes: ¶m-id-attrs
425 reply: ¶m-get-reply
427 attributes: *param-id-attrs
430 attributes: *dev-id-attrs
431 reply: *param-get-reply
433 # TODO: fill in the operations in between
437 doc: Get region instances.
438 attribute-set: devlink
443 pre: devlink-nl-pre-doit-port-optional
444 post: devlink-nl-post-doit
447 attributes: ®ion-id-attrs
452 reply: ®ion-get-reply
454 attributes: *region-id-attrs
457 attributes: *dev-id-attrs
458 reply: *region-get-reply
460 # TODO: fill in the operations in between
464 doc: Get device information, like driver name, hardware and firmware versions etc.
465 attribute-set: devlink
471 pre: devlink-nl-pre-doit
472 post: devlink-nl-post-doit
475 attributes: *dev-id-attrs
476 reply: &info-get-reply
484 - info-version-running
485 - info-version-stored
487 reply: *info-get-reply
490 name: health-reporter-get
491 doc: Get health reporter instances.
492 attribute-set: devlink
497 pre: devlink-nl-pre-doit-port-optional
498 post: devlink-nl-post-doit
500 attributes: &health-reporter-id-attrs
504 - health-reporter-name
505 reply: &health-reporter-get-reply
506 attributes: *health-reporter-id-attrs
509 attributes: *port-id-attrs
510 reply: *health-reporter-get-reply
512 # TODO: fill in the operations in between
516 doc: Get trap instances.
517 attribute-set: devlink
522 pre: devlink-nl-pre-doit
523 post: devlink-nl-post-doit
526 attributes: &trap-id-attrs
530 reply: &trap-get-reply
532 attributes: *trap-id-attrs
535 attributes: *dev-id-attrs
536 reply: *trap-get-reply
538 # TODO: fill in the operations in between
542 doc: Get trap group instances.
543 attribute-set: devlink
548 pre: devlink-nl-pre-doit
549 post: devlink-nl-post-doit
552 attributes: &trap-group-id-attrs
556 reply: &trap-group-get-reply
558 attributes: *trap-group-id-attrs
561 attributes: *dev-id-attrs
562 reply: *trap-group-get-reply
564 # TODO: fill in the operations in between
567 name: trap-policer-get
568 doc: Get trap policer instances.
569 attribute-set: devlink
574 pre: devlink-nl-pre-doit
575 post: devlink-nl-post-doit
578 attributes: &trap-policer-id-attrs
582 reply: &trap-policer-get-reply
584 attributes: *trap-policer-id-attrs
587 attributes: *dev-id-attrs
588 reply: *trap-policer-get-reply
590 # TODO: fill in the operations in between
594 doc: Get rate instances.
595 attribute-set: devlink
600 pre: devlink-nl-pre-doit
601 post: devlink-nl-post-doit
604 attributes: &rate-id-attrs
609 reply: &rate-get-reply
611 attributes: *rate-id-attrs
614 attributes: *dev-id-attrs
615 reply: *rate-get-reply
617 # TODO: fill in the operations in between
621 doc: Get line card instances.
622 attribute-set: devlink
627 pre: devlink-nl-pre-doit
628 post: devlink-nl-post-doit
631 attributes: &linecard-id-attrs
635 reply: &linecard-get-reply
637 attributes: *linecard-id-attrs
640 attributes: *dev-id-attrs
641 reply: *linecard-get-reply
643 # TODO: fill in the operations in between
647 doc: Get device selftest instances.
648 attribute-set: devlink
654 pre: devlink-nl-pre-doit
655 post: devlink-nl-post-doit
658 attributes: *dev-id-attrs
659 reply: &selftests-get-reply
661 attributes: *dev-id-attrs
663 reply: *selftests-get-reply