1# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) 2 3name: devlink 4 5protocol: genetlink-legacy 6 7doc: Partial family for Devlink. 8 9definitions: 10 - 11 type: enum 12 name: sb-pool-type 13 entries: 14 - 15 name: ingress 16 - 17 name: egress 18 - 19 type: enum 20 name: port-type 21 entries: 22 - 23 name: notset 24 - 25 name: auto 26 - 27 name: eth 28 - 29 name: ib 30 - 31 type: enum 32 name: port-flavour 33 entries: 34 - 35 name: physical 36 - 37 name: cpu 38 - 39 name: dsa 40 - 41 name: pci_pf 42 - 43 name: pci_vf 44 - 45 name: virtual 46 - 47 name: unused 48 - 49 name: pci_sf 50 - 51 type: enum 52 name: port-fn-state 53 entries: 54 - 55 name: inactive 56 - 57 name: active 58 - 59 type: enum 60 name: port-fn-opstate 61 entries: 62 - 63 name: detached 64 - 65 name: attached 66 - 67 type: enum 68 name: port-fn-attr-cap 69 entries: 70 - 71 name: roce-bit 72 - 73 name: migratable-bit 74 - 75 type: enum 76 name: sb-threshold-type 77 entries: 78 - 79 name: static 80 - 81 name: dynamic 82 - 83 type: enum 84 name: eswitch-mode 85 entries: 86 - 87 name: legacy 88 - 89 name: switchdev 90 - 91 type: enum 92 name: eswitch-inline-mode 93 entries: 94 - 95 name: none 96 - 97 name: link 98 - 99 name: network 100 - 101 name: transport 102 - 103 type: enum 104 name: eswitch-encap-mode 105 entries: 106 - 107 name: none 108 - 109 name: basic 110 - 111 type: enum 112 name: dpipe-match-type 113 entries: 114 - 115 name: field-exact 116 - 117 type: enum 118 name: dpipe-action-type 119 entries: 120 - 121 name: field-modify 122 - 123 type: enum 124 name: dpipe-field-mapping-type 125 entries: 126 - 127 name: none 128 - 129 name: ifindex 130 - 131 type: enum 132 name: resource-unit 133 entries: 134 - 135 name: entry 136 - 137 type: enum 138 name: reload-action 139 entries: 140 - 141 name: driver-reinit 142 value: 1 143 - 144 name: fw-activate 145 - 146 type: enum 147 name: param-cmode 148 entries: 149 - 150 name: runtime 151 - 152 name: driverinit 153 - 154 name: permanent 155 - 156 type: enum 157 name: flash-overwrite 158 entries: 159 - 160 name: settings-bit 161 - 162 name: identifiers-bit 163 - 164 type: enum 165 name: trap-action 166 entries: 167 - 168 name: drop 169 - 170 name: trap 171 - 172 name: mirror 173 174attribute-sets: 175 - 176 name: devlink 177 name-prefix: devlink-attr- 178 attributes: 179 - 180 name: bus-name 181 type: string 182 value: 1 183 - 184 name: dev-name 185 type: string 186 - 187 name: port-index 188 type: u32 189 - 190 name: port-type 191 type: u16 192 enum: port-type 193 194 # TODO: fill in the attributes in between 195 196 - 197 name: port-split-count 198 type: u32 199 value: 9 200 201 # TODO: fill in the attributes in between 202 203 - 204 name: sb-index 205 type: u32 206 value: 11 207 208 # TODO: fill in the attributes in between 209 210 - 211 name: sb-pool-index 212 type: u16 213 value: 17 214 - 215 name: sb-pool-type 216 type: u8 217 enum: sb-pool-type 218 - 219 name: sb-pool-size 220 type: u32 221 - 222 name: sb-pool-threshold-type 223 type: u8 224 enum: sb-threshold-type 225 - 226 name: sb-threshold 227 type: u32 228 - 229 name: sb-tc-index 230 type: u16 231 value: 22 232 233 # TODO: fill in the attributes in between 234 235 - 236 name: eswitch-mode 237 type: u16 238 value: 25 239 enum: eswitch-mode 240 241 - 242 name: eswitch-inline-mode 243 type: u16 244 enum: eswitch-inline-mode 245 - 246 name: dpipe-tables 247 type: nest 248 nested-attributes: dl-dpipe-tables 249 - 250 name: dpipe-table 251 type: nest 252 multi-attr: true 253 nested-attributes: dl-dpipe-table 254 - 255 name: dpipe-table-name 256 type: string 257 - 258 name: dpipe-table-size 259 type: u64 260 - 261 name: dpipe-table-matches 262 type: nest 263 nested-attributes: dl-dpipe-table-matches 264 - 265 name: dpipe-table-actions 266 type: nest 267 nested-attributes: dl-dpipe-table-actions 268 - 269 name: dpipe-table-counters-enabled 270 type: u8 271 - 272 name: dpipe-entries 273 type: nest 274 nested-attributes: dl-dpipe-entries 275 - 276 name: dpipe-entry 277 type: nest 278 multi-attr: true 279 nested-attributes: dl-dpipe-entry 280 - 281 name: dpipe-entry-index 282 type: u64 283 - 284 name: dpipe-entry-match-values 285 type: nest 286 nested-attributes: dl-dpipe-entry-match-values 287 - 288 name: dpipe-entry-action-values 289 type: nest 290 nested-attributes: dl-dpipe-entry-action-values 291 - 292 name: dpipe-entry-counter 293 type: u64 294 - 295 name: dpipe-match 296 type: nest 297 multi-attr: true 298 nested-attributes: dl-dpipe-match 299 - 300 name: dpipe-match-value 301 type: nest 302 multi-attr: true 303 nested-attributes: dl-dpipe-match-value 304 - 305 name: dpipe-match-type 306 type: u32 307 enum: dpipe-match-type 308 - 309 name: dpipe-action 310 type: nest 311 multi-attr: true 312 nested-attributes: dl-dpipe-action 313 - 314 name: dpipe-action-value 315 type: nest 316 multi-attr: true 317 nested-attributes: dl-dpipe-action-value 318 - 319 name: dpipe-action-type 320 type: u32 321 enum: dpipe-action-type 322 - 323 name: dpipe-value 324 type: binary 325 - 326 name: dpipe-value-mask 327 type: binary 328 - 329 name: dpipe-value-mapping 330 type: u32 331 - 332 name: dpipe-headers 333 type: nest 334 nested-attributes: dl-dpipe-headers 335 - 336 name: dpipe-header 337 type: nest 338 multi-attr: true 339 nested-attributes: dl-dpipe-header 340 - 341 name: dpipe-header-name 342 type: string 343 - 344 name: dpipe-header-id 345 type: u32 346 - 347 name: dpipe-header-fields 348 type: nest 349 nested-attributes: dl-dpipe-header-fields 350 - 351 name: dpipe-header-global 352 type: u8 353 - 354 name: dpipe-header-index 355 type: u32 356 - 357 name: dpipe-field 358 type: nest 359 multi-attr: true 360 nested-attributes: dl-dpipe-field 361 - 362 name: dpipe-field-name 363 type: string 364 - 365 name: dpipe-field-id 366 type: u32 367 - 368 name: dpipe-field-bitwidth 369 type: u32 370 - 371 name: dpipe-field-mapping-type 372 type: u32 373 enum: dpipe-field-mapping-type 374 - 375 name: pad 376 type: pad 377 - 378 name: eswitch-encap-mode 379 type: u8 380 value: 62 381 enum: eswitch-encap-mode 382 - 383 name: resource-list 384 type: nest 385 nested-attributes: dl-resource-list 386 - 387 name: resource 388 type: nest 389 multi-attr: true 390 nested-attributes: dl-resource 391 - 392 name: resource-name 393 type: string 394 - 395 name: resource-id 396 type: u64 397 - 398 name: resource-size 399 type: u64 400 - 401 name: resource-size-new 402 type: u64 403 - 404 name: resource-size-valid 405 type: u8 406 - 407 name: resource-size-min 408 type: u64 409 - 410 name: resource-size-max 411 type: u64 412 - 413 name: resource-size-gran 414 type: u64 415 - 416 name: resource-unit 417 type: u8 418 enum: resource-unit 419 - 420 name: resource-occ 421 type: u64 422 - 423 name: dpipe-table-resource-id 424 type: u64 425 - 426 name: dpipe-table-resource-units 427 type: u64 428 - 429 name: port-flavour 430 type: u16 431 enum: port-flavour 432 433 # TODO: fill in the attributes in between 434 435 - 436 name: param-name 437 type: string 438 value: 81 439 440 # TODO: fill in the attributes in between 441 442 - 443 name: param-type 444 type: u8 445 value: 83 446 447 # TODO: fill in the attributes in between 448 449 - 450 name: param-value-cmode 451 type: u8 452 enum: param-cmode 453 value: 87 454 - 455 name: region-name 456 type: string 457 458 # TODO: fill in the attributes in between 459 460 - 461 name: region-snapshot-id 462 type: u32 463 value: 92 464 465 # TODO: fill in the attributes in between 466 467 - 468 name: region-chunk-addr 469 type: u64 470 value: 96 471 - 472 name: region-chunk-len 473 type: u64 474 - 475 name: info-driver-name 476 type: string 477 - 478 name: info-serial-number 479 type: string 480 - 481 name: info-version-fixed 482 type: nest 483 multi-attr: true 484 nested-attributes: dl-info-version 485 - 486 name: info-version-running 487 type: nest 488 multi-attr: true 489 nested-attributes: dl-info-version 490 - 491 name: info-version-stored 492 type: nest 493 multi-attr: true 494 nested-attributes: dl-info-version 495 - 496 name: info-version-name 497 type: string 498 - 499 name: info-version-value 500 type: string 501 502 # TODO: fill in the attributes in between 503 504 - 505 name: fmsg 506 type: nest 507 nested-attributes: dl-fmsg 508 value: 106 509 - 510 name: fmsg-obj-nest-start 511 type: flag 512 - 513 name: fmsg-pair-nest-start 514 type: flag 515 - 516 name: fmsg-arr-nest-start 517 type: flag 518 - 519 name: fmsg-nest-end 520 type: flag 521 - 522 name: fmsg-obj-name 523 type: string 524 525 # TODO: fill in the attributes in between 526 527 - 528 name: health-reporter-name 529 type: string 530 value: 115 531 532 # TODO: fill in the attributes in between 533 534 - 535 name: health-reporter-graceful-period 536 type: u64 537 value: 120 538 - 539 name: health-reporter-auto-recover 540 type: u8 541 - 542 name: flash-update-file-name 543 type: string 544 - 545 name: flash-update-component 546 type: string 547 548 # TODO: fill in the attributes in between 549 550 - 551 name: port-pci-pf-number 552 type: u16 553 value: 127 554 555 # TODO: fill in the attributes in between 556 557 - 558 name: trap-name 559 type: string 560 value: 130 561 - 562 name: trap-action 563 type: u8 564 enum: trap-action 565 566 # TODO: fill in the attributes in between 567 568 - 569 name: trap-group-name 570 type: string 571 value: 135 572 573 - 574 name: reload-failed 575 type: u8 576 577 # TODO: fill in the attributes in between 578 579 - 580 name: netns-fd 581 type: u32 582 value: 138 583 - 584 name: netns-pid 585 type: u32 586 - 587 name: netns-id 588 type: u32 589 590 # TODO: fill in the attributes in between 591 592 - 593 name: health-reporter-auto-dump 594 type: u8 595 value: 141 596 - 597 name: trap-policer-id 598 type: u32 599 - 600 name: trap-policer-rate 601 type: u64 602 - 603 name: trap-policer-burst 604 type: u64 605 - 606 name: port-function 607 type: nest 608 nested-attributes: dl-port-function 609 610 # TODO: fill in the attributes in between 611 612 - 613 name: port-controller-number 614 type: u32 615 value: 150 616 617 # TODO: fill in the attributes in between 618 619 - 620 name: flash-update-overwrite-mask 621 type: bitfield32 622 enum: flash-overwrite 623 enum-as-flags: True 624 value: 152 625 - 626 name: reload-action 627 type: u8 628 enum: reload-action 629 - 630 name: reload-actions-performed 631 type: bitfield32 632 enum: reload-action 633 enum-as-flags: True 634 - 635 name: reload-limits 636 type: bitfield32 637 enum: reload-action 638 enum-as-flags: True 639 - 640 name: dev-stats 641 type: nest 642 nested-attributes: dl-dev-stats 643 - 644 name: reload-stats 645 type: nest 646 nested-attributes: dl-reload-stats 647 - 648 name: reload-stats-entry 649 type: nest 650 multi-attr: true 651 nested-attributes: dl-reload-stats-entry 652 - 653 name: reload-stats-limit 654 type: u8 655 - 656 name: reload-stats-value 657 type: u32 658 - 659 name: remote-reload-stats 660 type: nest 661 nested-attributes: dl-reload-stats 662 - 663 name: reload-action-info 664 type: nest 665 multi-attr: true 666 nested-attributes: dl-reload-act-info 667 - 668 name: reload-action-stats 669 type: nest 670 multi-attr: true 671 nested-attributes: dl-reload-act-stats 672 673 # TODO: fill in the attributes in between 674 675 - 676 name: port-pci-sf-number 677 type: u32 678 value: 164 679 680 # TODO: fill in the attributes in between 681 682 - 683 name: rate-tx-share 684 type: u64 685 value: 166 686 - 687 name: rate-tx-max 688 type: u64 689 - 690 name: rate-node-name 691 type: string 692 - 693 name: rate-parent-node-name 694 type: string 695 696 # TODO: fill in the attributes in between 697 698 - 699 name: linecard-index 700 type: u32 701 value: 171 702 703 # TODO: fill in the attributes in between 704 705 - 706 name: linecard-type 707 type: string 708 value: 173 709 710 # TODO: fill in the attributes in between 711 712 - 713 name: selftests 714 type: nest 715 value: 176 716 nested-attributes: dl-selftest-id 717 - 718 name: rate-tx-priority 719 type: u32 720 - 721 name: rate-tx-weight 722 type: u32 723 - 724 name: region-direct 725 type: flag 726 727 - 728 name: dl-dev-stats 729 subset-of: devlink 730 attributes: 731 - 732 name: reload-stats 733 - 734 name: remote-reload-stats 735 - 736 name: dl-reload-stats 737 subset-of: devlink 738 attributes: 739 - 740 name: reload-action-info 741 - 742 name: dl-reload-act-info 743 subset-of: devlink 744 attributes: 745 - 746 name: reload-action 747 - 748 name: reload-action-stats 749 - 750 name: dl-reload-act-stats 751 subset-of: devlink 752 attributes: 753 - 754 name: reload-stats-entry 755 - 756 name: dl-reload-stats-entry 757 subset-of: devlink 758 attributes: 759 - 760 name: reload-stats-limit 761 - 762 name: reload-stats-value 763 - 764 name: dl-info-version 765 subset-of: devlink 766 attributes: 767 - 768 name: info-version-name 769 - 770 name: info-version-value 771 - 772 name: dl-port-function 773 name-prefix: devlink-port-fn-attr- 774 attr-max-name: devlink-port-function-attr-max 775 attributes: 776 - 777 name-prefix: devlink-port-function-attr- 778 name: hw-addr 779 type: binary 780 value: 1 781 - 782 name: state 783 type: u8 784 enum: port-fn-state 785 - 786 name: opstate 787 type: u8 788 enum: port-fn-opstate 789 - 790 name: caps 791 type: bitfield32 792 enum: port-fn-attr-cap 793 enum-as-flags: True 794 795 - 796 name: dl-dpipe-tables 797 subset-of: devlink 798 attributes: 799 - 800 name: dpipe-table 801 802 - 803 name: dl-dpipe-table 804 subset-of: devlink 805 attributes: 806 - 807 name: dpipe-table-name 808 - 809 name: dpipe-table-size 810 - 811 name: dpipe-table-name 812 - 813 name: dpipe-table-size 814 - 815 name: dpipe-table-matches 816 - 817 name: dpipe-table-actions 818 - 819 name: dpipe-table-counters-enabled 820 - 821 name: dpipe-table-resource-id 822 - 823 name: dpipe-table-resource-units 824 825 - 826 name: dl-dpipe-table-matches 827 subset-of: devlink 828 attributes: 829 - 830 name: dpipe-match 831 832 - 833 name: dl-dpipe-table-actions 834 subset-of: devlink 835 attributes: 836 - 837 name: dpipe-action 838 839 - 840 name: dl-dpipe-entries 841 subset-of: devlink 842 attributes: 843 - 844 name: dpipe-entry 845 846 - 847 name: dl-dpipe-entry 848 subset-of: devlink 849 attributes: 850 - 851 name: dpipe-entry-index 852 - 853 name: dpipe-entry-match-values 854 - 855 name: dpipe-entry-action-values 856 - 857 name: dpipe-entry-counter 858 859 - 860 name: dl-dpipe-entry-match-values 861 subset-of: devlink 862 attributes: 863 - 864 name: dpipe-match-value 865 866 - 867 name: dl-dpipe-entry-action-values 868 subset-of: devlink 869 attributes: 870 - 871 name: dpipe-action-value 872 873 - 874 name: dl-dpipe-match 875 subset-of: devlink 876 attributes: 877 - 878 name: dpipe-match-type 879 - 880 name: dpipe-header-id 881 - 882 name: dpipe-header-global 883 - 884 name: dpipe-header-index 885 - 886 name: dpipe-field-id 887 888 - 889 name: dl-dpipe-match-value 890 subset-of: devlink 891 attributes: 892 - 893 name: dpipe-match 894 - 895 name: dpipe-value 896 - 897 name: dpipe-value-mask 898 - 899 name: dpipe-value-mapping 900 901 - 902 name: dl-dpipe-action 903 subset-of: devlink 904 attributes: 905 - 906 name: dpipe-action-type 907 - 908 name: dpipe-header-id 909 - 910 name: dpipe-header-global 911 - 912 name: dpipe-header-index 913 - 914 name: dpipe-field-id 915 916 - 917 name: dl-dpipe-action-value 918 subset-of: devlink 919 attributes: 920 - 921 name: dpipe-action 922 - 923 name: dpipe-value 924 - 925 name: dpipe-value-mask 926 - 927 name: dpipe-value-mapping 928 929 - 930 name: dl-dpipe-headers 931 subset-of: devlink 932 attributes: 933 - 934 name: dpipe-header 935 936 - 937 name: dl-dpipe-header 938 subset-of: devlink 939 attributes: 940 - 941 name: dpipe-header-name 942 - 943 name: dpipe-header-id 944 - 945 name: dpipe-header-global 946 - 947 name: dpipe-header-fields 948 949 - 950 name: dl-dpipe-header-fields 951 subset-of: devlink 952 attributes: 953 - 954 name: dpipe-field 955 956 - 957 name: dl-dpipe-field 958 subset-of: devlink 959 attributes: 960 - 961 name: dpipe-field-name 962 - 963 name: dpipe-field-id 964 - 965 name: dpipe-field-bitwidth 966 - 967 name: dpipe-field-mapping-type 968 969 - 970 name: dl-resource 971 subset-of: devlink 972 attributes: 973 # - 974 # name: resource-list 975 # This is currently unsupported due to circular dependency 976 - 977 name: resource-name 978 - 979 name: resource-id 980 - 981 name: resource-size 982 - 983 name: resource-size-new 984 - 985 name: resource-size-valid 986 - 987 name: resource-size-min 988 - 989 name: resource-size-max 990 - 991 name: resource-size-gran 992 - 993 name: resource-unit 994 - 995 name: resource-occ 996 997 - 998 name: dl-resource-list 999 subset-of: devlink 1000 attributes: 1001 - 1002 name: resource 1003 1004 - 1005 name: dl-fmsg 1006 subset-of: devlink 1007 attributes: 1008 - 1009 name: fmsg-obj-nest-start 1010 - 1011 name: fmsg-pair-nest-start 1012 - 1013 name: fmsg-arr-nest-start 1014 - 1015 name: fmsg-nest-end 1016 - 1017 name: fmsg-obj-name 1018 1019 - 1020 name: dl-selftest-id 1021 name-prefix: devlink-attr-selftest-id- 1022 attributes: 1023 - 1024 name: flash 1025 type: flag 1026 1027operations: 1028 enum-model: directional 1029 list: 1030 - 1031 name: get 1032 doc: Get devlink instances. 1033 attribute-set: devlink 1034 dont-validate: [ strict, dump ] 1035 do: 1036 pre: devlink-nl-pre-doit 1037 post: devlink-nl-post-doit 1038 request: 1039 value: 1 1040 attributes: &dev-id-attrs 1041 - bus-name 1042 - dev-name 1043 reply: &get-reply 1044 value: 3 1045 attributes: 1046 - bus-name 1047 - dev-name 1048 - reload-failed 1049 - dev-stats 1050 dump: 1051 reply: *get-reply 1052 1053 - 1054 name: port-get 1055 doc: Get devlink port instances. 1056 attribute-set: devlink 1057 dont-validate: [ strict ] 1058 do: 1059 pre: devlink-nl-pre-doit-port 1060 post: devlink-nl-post-doit 1061 request: 1062 value: 5 1063 attributes: &port-id-attrs 1064 - bus-name 1065 - dev-name 1066 - port-index 1067 reply: 1068 value: 7 1069 attributes: *port-id-attrs 1070 dump: 1071 request: 1072 attributes: *dev-id-attrs 1073 reply: 1074 value: 3 # due to a bug, port dump returns DEVLINK_CMD_NEW 1075 attributes: *port-id-attrs 1076 - 1077 name: port-set 1078 doc: Set devlink port instances. 1079 attribute-set: devlink 1080 dont-validate: [ strict ] 1081 flags: [ admin-perm ] 1082 do: 1083 pre: devlink-nl-pre-doit-port 1084 post: devlink-nl-post-doit 1085 request: 1086 attributes: 1087 - bus-name 1088 - dev-name 1089 - port-index 1090 - port-type 1091 - port-function 1092 1093 - 1094 name: port-new 1095 doc: Create devlink port instances. 1096 attribute-set: devlink 1097 dont-validate: [ strict ] 1098 flags: [ admin-perm ] 1099 do: 1100 pre: devlink-nl-pre-doit 1101 post: devlink-nl-post-doit 1102 request: 1103 attributes: 1104 - bus-name 1105 - dev-name 1106 - port-index 1107 - port-flavour 1108 - port-pci-pf-number 1109 - port-pci-sf-number 1110 - port-controller-number 1111 reply: 1112 value: 7 1113 attributes: *port-id-attrs 1114 1115 - 1116 name: port-del 1117 doc: Delete devlink port instances. 1118 attribute-set: devlink 1119 dont-validate: [ strict ] 1120 flags: [ admin-perm ] 1121 do: 1122 pre: devlink-nl-pre-doit-port 1123 post: devlink-nl-post-doit 1124 request: 1125 attributes: *port-id-attrs 1126 1127 - 1128 name: port-split 1129 doc: Split devlink port instances. 1130 attribute-set: devlink 1131 dont-validate: [ strict ] 1132 flags: [ admin-perm ] 1133 do: 1134 pre: devlink-nl-pre-doit-port 1135 post: devlink-nl-post-doit 1136 request: 1137 attributes: 1138 - bus-name 1139 - dev-name 1140 - port-index 1141 - port-split-count 1142 1143 - 1144 name: port-unsplit 1145 doc: Unplit devlink port instances. 1146 attribute-set: devlink 1147 dont-validate: [ strict ] 1148 flags: [ admin-perm ] 1149 do: 1150 pre: devlink-nl-pre-doit-port 1151 post: devlink-nl-post-doit 1152 request: 1153 attributes: *port-id-attrs 1154 1155 - 1156 name: sb-get 1157 doc: Get shared buffer instances. 1158 attribute-set: devlink 1159 dont-validate: [ strict ] 1160 do: 1161 pre: devlink-nl-pre-doit 1162 post: devlink-nl-post-doit 1163 request: 1164 value: 11 1165 attributes: &sb-id-attrs 1166 - bus-name 1167 - dev-name 1168 - sb-index 1169 reply: &sb-get-reply 1170 value: 13 1171 attributes: *sb-id-attrs 1172 dump: 1173 request: 1174 attributes: *dev-id-attrs 1175 reply: *sb-get-reply 1176 1177 - 1178 name: sb-pool-get 1179 doc: Get shared buffer pool instances. 1180 attribute-set: devlink 1181 dont-validate: [ strict ] 1182 do: 1183 pre: devlink-nl-pre-doit 1184 post: devlink-nl-post-doit 1185 request: 1186 value: 15 1187 attributes: &sb-pool-id-attrs 1188 - bus-name 1189 - dev-name 1190 - sb-index 1191 - sb-pool-index 1192 reply: &sb-pool-get-reply 1193 value: 17 1194 attributes: *sb-pool-id-attrs 1195 dump: 1196 request: 1197 attributes: *dev-id-attrs 1198 reply: *sb-pool-get-reply 1199 1200 - 1201 name: sb-pool-set 1202 doc: Set shared buffer pool instances. 1203 attribute-set: devlink 1204 dont-validate: [ strict ] 1205 flags: [ admin-perm ] 1206 do: 1207 pre: devlink-nl-pre-doit 1208 post: devlink-nl-post-doit 1209 request: 1210 attributes: 1211 - bus-name 1212 - dev-name 1213 - sb-index 1214 - sb-pool-index 1215 - sb-pool-threshold-type 1216 - sb-pool-size 1217 1218 - 1219 name: sb-port-pool-get 1220 doc: Get shared buffer port-pool combinations and threshold. 1221 attribute-set: devlink 1222 dont-validate: [ strict ] 1223 do: 1224 pre: devlink-nl-pre-doit-port 1225 post: devlink-nl-post-doit 1226 request: 1227 value: 19 1228 attributes: &sb-port-pool-id-attrs 1229 - bus-name 1230 - dev-name 1231 - port-index 1232 - sb-index 1233 - sb-pool-index 1234 reply: &sb-port-pool-get-reply 1235 value: 21 1236 attributes: *sb-port-pool-id-attrs 1237 dump: 1238 request: 1239 attributes: *dev-id-attrs 1240 reply: *sb-port-pool-get-reply 1241 1242 - 1243 name: sb-port-pool-set 1244 doc: Set shared buffer port-pool combinations and threshold. 1245 attribute-set: devlink 1246 dont-validate: [ strict ] 1247 flags: [ admin-perm ] 1248 do: 1249 pre: devlink-nl-pre-doit-port 1250 post: devlink-nl-post-doit 1251 request: 1252 attributes: 1253 - bus-name 1254 - dev-name 1255 - port-index 1256 - sb-index 1257 - sb-pool-index 1258 - sb-threshold 1259 1260 - 1261 name: sb-tc-pool-bind-get 1262 doc: Get shared buffer port-TC to pool bindings and threshold. 1263 attribute-set: devlink 1264 dont-validate: [ strict ] 1265 do: 1266 pre: devlink-nl-pre-doit-port 1267 post: devlink-nl-post-doit 1268 request: 1269 value: 23 1270 attributes: &sb-tc-pool-bind-id-attrs 1271 - bus-name 1272 - dev-name 1273 - port-index 1274 - sb-index 1275 - sb-pool-type 1276 - sb-tc-index 1277 reply: &sb-tc-pool-bind-get-reply 1278 value: 25 1279 attributes: *sb-tc-pool-bind-id-attrs 1280 dump: 1281 request: 1282 attributes: *dev-id-attrs 1283 reply: *sb-tc-pool-bind-get-reply 1284 1285 - 1286 name: sb-tc-pool-bind-set 1287 doc: Set shared buffer port-TC to pool bindings and threshold. 1288 attribute-set: devlink 1289 dont-validate: [ strict ] 1290 flags: [ admin-perm ] 1291 do: 1292 pre: devlink-nl-pre-doit-port 1293 post: devlink-nl-post-doit 1294 request: 1295 attributes: 1296 - bus-name 1297 - dev-name 1298 - port-index 1299 - sb-index 1300 - sb-pool-index 1301 - sb-pool-type 1302 - sb-tc-index 1303 - sb-threshold 1304 1305 - 1306 name: sb-occ-snapshot 1307 doc: Take occupancy snapshot of shared buffer. 1308 attribute-set: devlink 1309 dont-validate: [ strict ] 1310 flags: [ admin-perm ] 1311 do: 1312 pre: devlink-nl-pre-doit 1313 post: devlink-nl-post-doit 1314 request: 1315 value: 27 1316 attributes: 1317 - bus-name 1318 - dev-name 1319 - sb-index 1320 1321 - 1322 name: sb-occ-max-clear 1323 doc: Clear occupancy watermarks of shared buffer. 1324 attribute-set: devlink 1325 dont-validate: [ strict ] 1326 flags: [ admin-perm ] 1327 do: 1328 pre: devlink-nl-pre-doit 1329 post: devlink-nl-post-doit 1330 request: 1331 attributes: 1332 - bus-name 1333 - dev-name 1334 - sb-index 1335 1336 - 1337 name: eswitch-get 1338 doc: Get eswitch attributes. 1339 attribute-set: devlink 1340 dont-validate: [ strict ] 1341 flags: [ admin-perm ] 1342 do: 1343 pre: devlink-nl-pre-doit 1344 post: devlink-nl-post-doit 1345 request: 1346 attributes: *dev-id-attrs 1347 reply: 1348 value: 29 1349 attributes: &eswitch-attrs 1350 - bus-name 1351 - dev-name 1352 - eswitch-mode 1353 - eswitch-inline-mode 1354 - eswitch-encap-mode 1355 1356 - 1357 name: eswitch-set 1358 doc: Set eswitch attributes. 1359 attribute-set: devlink 1360 dont-validate: [ strict ] 1361 flags: [ admin-perm ] 1362 do: 1363 pre: devlink-nl-pre-doit 1364 post: devlink-nl-post-doit 1365 request: 1366 attributes: *eswitch-attrs 1367 1368 - 1369 name: dpipe-table-get 1370 doc: Get dpipe table attributes. 1371 attribute-set: devlink 1372 dont-validate: [ strict ] 1373 do: 1374 pre: devlink-nl-pre-doit 1375 post: devlink-nl-post-doit 1376 request: 1377 attributes: 1378 - bus-name 1379 - dev-name 1380 - dpipe-table-name 1381 reply: 1382 value: 31 1383 attributes: 1384 - bus-name 1385 - dev-name 1386 - dpipe-tables 1387 1388 - 1389 name: dpipe-entries-get 1390 doc: Get dpipe entries attributes. 1391 attribute-set: devlink 1392 dont-validate: [ strict ] 1393 do: 1394 pre: devlink-nl-pre-doit 1395 post: devlink-nl-post-doit 1396 request: 1397 attributes: 1398 - bus-name 1399 - dev-name 1400 - dpipe-table-name 1401 reply: 1402 attributes: 1403 - bus-name 1404 - dev-name 1405 - dpipe-entries 1406 1407 - 1408 name: dpipe-headers-get 1409 doc: Get dpipe headers attributes. 1410 attribute-set: devlink 1411 dont-validate: [ strict ] 1412 do: 1413 pre: devlink-nl-pre-doit 1414 post: devlink-nl-post-doit 1415 request: 1416 attributes: 1417 - bus-name 1418 - dev-name 1419 reply: 1420 attributes: 1421 - bus-name 1422 - dev-name 1423 - dpipe-headers 1424 1425 - 1426 name: dpipe-table-counters-set 1427 doc: Set dpipe counter attributes. 1428 attribute-set: devlink 1429 dont-validate: [ strict ] 1430 flags: [ admin-perm ] 1431 do: 1432 pre: devlink-nl-pre-doit 1433 post: devlink-nl-post-doit 1434 request: 1435 attributes: 1436 - bus-name 1437 - dev-name 1438 - dpipe-table-name 1439 - dpipe-table-counters-enabled 1440 1441 - 1442 name: resource-set 1443 doc: Set resource attributes. 1444 attribute-set: devlink 1445 dont-validate: [ strict ] 1446 flags: [ admin-perm ] 1447 do: 1448 pre: devlink-nl-pre-doit 1449 post: devlink-nl-post-doit 1450 request: 1451 attributes: 1452 - bus-name 1453 - dev-name 1454 - resource-id 1455 - resource-size 1456 1457 - 1458 name: resource-dump 1459 doc: Get resource attributes. 1460 attribute-set: devlink 1461 dont-validate: [ strict ] 1462 do: 1463 pre: devlink-nl-pre-doit 1464 post: devlink-nl-post-doit 1465 request: 1466 attributes: 1467 - bus-name 1468 - dev-name 1469 reply: 1470 value: 36 1471 attributes: 1472 - bus-name 1473 - dev-name 1474 - resource-list 1475 1476 - 1477 name: reload 1478 doc: Reload devlink. 1479 attribute-set: devlink 1480 dont-validate: [ strict ] 1481 flags: [ admin-perm ] 1482 do: 1483 pre: devlink-nl-pre-doit 1484 post: devlink-nl-post-doit 1485 request: 1486 attributes: 1487 - bus-name 1488 - dev-name 1489 - reload-action 1490 - reload-limits 1491 - netns-pid 1492 - netns-fd 1493 - netns-id 1494 reply: 1495 attributes: 1496 - bus-name 1497 - dev-name 1498 - reload-actions-performed 1499 1500 - 1501 name: param-get 1502 doc: Get param instances. 1503 attribute-set: devlink 1504 dont-validate: [ strict ] 1505 do: 1506 pre: devlink-nl-pre-doit 1507 post: devlink-nl-post-doit 1508 request: 1509 attributes: ¶m-id-attrs 1510 - bus-name 1511 - dev-name 1512 - param-name 1513 reply: ¶m-get-reply 1514 attributes: *param-id-attrs 1515 dump: 1516 request: 1517 attributes: *dev-id-attrs 1518 reply: *param-get-reply 1519 1520 - 1521 name: param-set 1522 doc: Set param instances. 1523 attribute-set: devlink 1524 dont-validate: [ strict ] 1525 flags: [ admin-perm ] 1526 do: 1527 pre: devlink-nl-pre-doit 1528 post: devlink-nl-post-doit 1529 request: 1530 attributes: 1531 - bus-name 1532 - dev-name 1533 - param-name 1534 - param-type 1535 # param-value-data is missing here as the type is variable 1536 - param-value-cmode 1537 1538 - 1539 name: region-get 1540 doc: Get region instances. 1541 attribute-set: devlink 1542 dont-validate: [ strict ] 1543 do: 1544 pre: devlink-nl-pre-doit-port-optional 1545 post: devlink-nl-post-doit 1546 request: 1547 value: 42 1548 attributes: ®ion-id-attrs 1549 - bus-name 1550 - dev-name 1551 - port-index 1552 - region-name 1553 reply: ®ion-get-reply 1554 value: 42 1555 attributes: *region-id-attrs 1556 dump: 1557 request: 1558 attributes: *dev-id-attrs 1559 reply: *region-get-reply 1560 1561 - 1562 name: region-new 1563 doc: Create region snapshot. 1564 attribute-set: devlink 1565 dont-validate: [ strict ] 1566 flags: [ admin-perm ] 1567 do: 1568 pre: devlink-nl-pre-doit-port-optional 1569 post: devlink-nl-post-doit 1570 request: 1571 value: 44 1572 attributes: ®ion-snapshot-id-attrs 1573 - bus-name 1574 - dev-name 1575 - port-index 1576 - region-name 1577 - region-snapshot-id 1578 reply: 1579 value: 44 1580 attributes: *region-snapshot-id-attrs 1581 1582 - 1583 name: region-del 1584 doc: Delete region snapshot. 1585 attribute-set: devlink 1586 dont-validate: [ strict ] 1587 flags: [ admin-perm ] 1588 do: 1589 pre: devlink-nl-pre-doit-port-optional 1590 post: devlink-nl-post-doit 1591 request: 1592 attributes: *region-snapshot-id-attrs 1593 1594 - 1595 name: region-read 1596 doc: Read region data. 1597 attribute-set: devlink 1598 dont-validate: [ dump-strict ] 1599 flags: [ admin-perm ] 1600 dump: 1601 request: 1602 attributes: 1603 - bus-name 1604 - dev-name 1605 - port-index 1606 - region-name 1607 - region-snapshot-id 1608 - region-direct 1609 - region-chunk-addr 1610 - region-chunk-len 1611 reply: 1612 value: 46 1613 attributes: 1614 - bus-name 1615 - dev-name 1616 - port-index 1617 - region-name 1618 1619 - 1620 name: port-param-get 1621 doc: Get port param instances. 1622 attribute-set: devlink 1623 dont-validate: [ strict, dump-strict ] 1624 do: 1625 pre: devlink-nl-pre-doit-port 1626 post: devlink-nl-post-doit 1627 request: 1628 attributes: *port-id-attrs 1629 reply: 1630 attributes: *port-id-attrs 1631 dump: 1632 reply: 1633 attributes: *port-id-attrs 1634 1635 - 1636 name: port-param-set 1637 doc: Set port param instances. 1638 attribute-set: devlink 1639 dont-validate: [ strict ] 1640 flags: [ admin-perm ] 1641 do: 1642 pre: devlink-nl-pre-doit-port 1643 post: devlink-nl-post-doit 1644 request: 1645 attributes: *port-id-attrs 1646 1647 - 1648 name: info-get 1649 doc: Get device information, like driver name, hardware and firmware versions etc. 1650 attribute-set: devlink 1651 dont-validate: [ strict, dump ] 1652 do: 1653 pre: devlink-nl-pre-doit 1654 post: devlink-nl-post-doit 1655 request: 1656 value: 51 1657 attributes: *dev-id-attrs 1658 reply: &info-get-reply 1659 value: 51 1660 attributes: 1661 - bus-name 1662 - dev-name 1663 - info-driver-name 1664 - info-serial-number 1665 - info-version-fixed 1666 - info-version-running 1667 - info-version-stored 1668 dump: 1669 reply: *info-get-reply 1670 1671 - 1672 name: health-reporter-get 1673 doc: Get health reporter instances. 1674 attribute-set: devlink 1675 dont-validate: [ strict ] 1676 do: 1677 pre: devlink-nl-pre-doit-port-optional 1678 post: devlink-nl-post-doit 1679 request: 1680 attributes: &health-reporter-id-attrs 1681 - bus-name 1682 - dev-name 1683 - port-index 1684 - health-reporter-name 1685 reply: &health-reporter-get-reply 1686 attributes: *health-reporter-id-attrs 1687 dump: 1688 request: 1689 attributes: *port-id-attrs 1690 reply: *health-reporter-get-reply 1691 1692 - 1693 name: health-reporter-set 1694 doc: Set health reporter instances. 1695 attribute-set: devlink 1696 dont-validate: [ strict ] 1697 flags: [ admin-perm ] 1698 do: 1699 pre: devlink-nl-pre-doit-port-optional 1700 post: devlink-nl-post-doit 1701 request: 1702 attributes: 1703 - bus-name 1704 - dev-name 1705 - port-index 1706 - health-reporter-name 1707 - health-reporter-graceful-period 1708 - health-reporter-auto-recover 1709 - health-reporter-auto-dump 1710 1711 - 1712 name: health-reporter-recover 1713 doc: Recover health reporter instances. 1714 attribute-set: devlink 1715 dont-validate: [ strict ] 1716 flags: [ admin-perm ] 1717 do: 1718 pre: devlink-nl-pre-doit-port-optional 1719 post: devlink-nl-post-doit 1720 request: 1721 attributes: *health-reporter-id-attrs 1722 1723 - 1724 name: health-reporter-diagnose 1725 doc: Diagnose health reporter instances. 1726 attribute-set: devlink 1727 dont-validate: [ strict ] 1728 flags: [ admin-perm ] 1729 do: 1730 pre: devlink-nl-pre-doit-port-optional 1731 post: devlink-nl-post-doit 1732 request: 1733 attributes: *health-reporter-id-attrs 1734 1735 - 1736 name: health-reporter-dump-get 1737 doc: Dump health reporter instances. 1738 attribute-set: devlink 1739 dont-validate: [ dump-strict ] 1740 flags: [ admin-perm ] 1741 dump: 1742 request: 1743 attributes: *health-reporter-id-attrs 1744 reply: 1745 value: 56 1746 attributes: 1747 - fmsg 1748 1749 - 1750 name: health-reporter-dump-clear 1751 doc: Clear dump of health reporter instances. 1752 attribute-set: devlink 1753 dont-validate: [ strict ] 1754 flags: [ admin-perm ] 1755 do: 1756 pre: devlink-nl-pre-doit-port-optional 1757 post: devlink-nl-post-doit 1758 request: 1759 attributes: *health-reporter-id-attrs 1760 1761 - 1762 name: flash-update 1763 doc: Flash update devlink instances. 1764 attribute-set: devlink 1765 dont-validate: [ strict ] 1766 flags: [ admin-perm ] 1767 do: 1768 pre: devlink-nl-pre-doit 1769 post: devlink-nl-post-doit 1770 request: 1771 attributes: 1772 - bus-name 1773 - dev-name 1774 - flash-update-file-name 1775 - flash-update-component 1776 - flash-update-overwrite-mask 1777 1778 - 1779 name: trap-get 1780 doc: Get trap instances. 1781 attribute-set: devlink 1782 dont-validate: [ strict ] 1783 do: 1784 pre: devlink-nl-pre-doit 1785 post: devlink-nl-post-doit 1786 request: 1787 value: 61 1788 attributes: &trap-id-attrs 1789 - bus-name 1790 - dev-name 1791 - trap-name 1792 reply: &trap-get-reply 1793 value: 63 1794 attributes: *trap-id-attrs 1795 dump: 1796 request: 1797 attributes: *dev-id-attrs 1798 reply: *trap-get-reply 1799 1800 - 1801 name: trap-set 1802 doc: Set trap instances. 1803 attribute-set: devlink 1804 dont-validate: [ strict ] 1805 flags: [ admin-perm ] 1806 do: 1807 pre: devlink-nl-pre-doit 1808 post: devlink-nl-post-doit 1809 request: 1810 attributes: 1811 - bus-name 1812 - dev-name 1813 - trap-name 1814 - trap-action 1815 1816 - 1817 name: trap-group-get 1818 doc: Get trap group instances. 1819 attribute-set: devlink 1820 dont-validate: [ strict ] 1821 do: 1822 pre: devlink-nl-pre-doit 1823 post: devlink-nl-post-doit 1824 request: 1825 value: 65 1826 attributes: &trap-group-id-attrs 1827 - bus-name 1828 - dev-name 1829 - trap-group-name 1830 reply: &trap-group-get-reply 1831 value: 67 1832 attributes: *trap-group-id-attrs 1833 dump: 1834 request: 1835 attributes: *dev-id-attrs 1836 reply: *trap-group-get-reply 1837 1838 - 1839 name: trap-group-set 1840 doc: Set trap group instances. 1841 attribute-set: devlink 1842 dont-validate: [ strict ] 1843 flags: [ admin-perm ] 1844 do: 1845 pre: devlink-nl-pre-doit 1846 post: devlink-nl-post-doit 1847 request: 1848 attributes: 1849 - bus-name 1850 - dev-name 1851 - trap-group-name 1852 - trap-action 1853 - trap-policer-id 1854 1855 - 1856 name: trap-policer-get 1857 doc: Get trap policer instances. 1858 attribute-set: devlink 1859 dont-validate: [ strict ] 1860 do: 1861 pre: devlink-nl-pre-doit 1862 post: devlink-nl-post-doit 1863 request: 1864 value: 69 1865 attributes: &trap-policer-id-attrs 1866 - bus-name 1867 - dev-name 1868 - trap-policer-id 1869 reply: &trap-policer-get-reply 1870 value: 71 1871 attributes: *trap-policer-id-attrs 1872 dump: 1873 request: 1874 attributes: *dev-id-attrs 1875 reply: *trap-policer-get-reply 1876 1877 - 1878 name: trap-policer-set 1879 doc: Get trap policer instances. 1880 attribute-set: devlink 1881 dont-validate: [ strict ] 1882 flags: [ admin-perm ] 1883 do: 1884 pre: devlink-nl-pre-doit 1885 post: devlink-nl-post-doit 1886 request: 1887 attributes: 1888 - bus-name 1889 - dev-name 1890 - trap-policer-id 1891 - trap-policer-rate 1892 - trap-policer-burst 1893 1894 - 1895 name: health-reporter-test 1896 doc: Test health reporter instances. 1897 attribute-set: devlink 1898 dont-validate: [ strict ] 1899 flags: [ admin-perm ] 1900 do: 1901 pre: devlink-nl-pre-doit-port-optional 1902 post: devlink-nl-post-doit 1903 request: 1904 value: 73 1905 attributes: *health-reporter-id-attrs 1906 1907 - 1908 name: rate-get 1909 doc: Get rate instances. 1910 attribute-set: devlink 1911 dont-validate: [ strict ] 1912 do: 1913 pre: devlink-nl-pre-doit 1914 post: devlink-nl-post-doit 1915 request: 1916 value: 74 1917 attributes: &rate-id-attrs 1918 - bus-name 1919 - dev-name 1920 - port-index 1921 - rate-node-name 1922 reply: &rate-get-reply 1923 value: 76 1924 attributes: *rate-id-attrs 1925 dump: 1926 request: 1927 attributes: *dev-id-attrs 1928 reply: *rate-get-reply 1929 1930 - 1931 name: rate-set 1932 doc: Set rate instances. 1933 attribute-set: devlink 1934 dont-validate: [ strict ] 1935 flags: [ admin-perm ] 1936 do: 1937 pre: devlink-nl-pre-doit 1938 post: devlink-nl-post-doit 1939 request: 1940 attributes: 1941 - bus-name 1942 - dev-name 1943 - rate-node-name 1944 - rate-tx-share 1945 - rate-tx-max 1946 - rate-tx-priority 1947 - rate-tx-weight 1948 - rate-parent-node-name 1949 1950 - 1951 name: rate-new 1952 doc: Create rate instances. 1953 attribute-set: devlink 1954 dont-validate: [ strict ] 1955 flags: [ admin-perm ] 1956 do: 1957 pre: devlink-nl-pre-doit 1958 post: devlink-nl-post-doit 1959 request: 1960 attributes: 1961 - bus-name 1962 - dev-name 1963 - rate-node-name 1964 - rate-tx-share 1965 - rate-tx-max 1966 - rate-tx-priority 1967 - rate-tx-weight 1968 - rate-parent-node-name 1969 1970 - 1971 name: rate-del 1972 doc: Delete rate instances. 1973 attribute-set: devlink 1974 dont-validate: [ strict ] 1975 flags: [ admin-perm ] 1976 do: 1977 pre: devlink-nl-pre-doit 1978 post: devlink-nl-post-doit 1979 request: 1980 attributes: 1981 - bus-name 1982 - dev-name 1983 - rate-node-name 1984 1985 - 1986 name: linecard-get 1987 doc: Get line card instances. 1988 attribute-set: devlink 1989 dont-validate: [ strict ] 1990 do: 1991 pre: devlink-nl-pre-doit 1992 post: devlink-nl-post-doit 1993 request: 1994 value: 78 1995 attributes: &linecard-id-attrs 1996 - bus-name 1997 - dev-name 1998 - linecard-index 1999 reply: &linecard-get-reply 2000 value: 80 2001 attributes: *linecard-id-attrs 2002 dump: 2003 request: 2004 attributes: *dev-id-attrs 2005 reply: *linecard-get-reply 2006 2007 - 2008 name: linecard-set 2009 doc: Set line card instances. 2010 attribute-set: devlink 2011 dont-validate: [ strict ] 2012 flags: [ admin-perm ] 2013 do: 2014 pre: devlink-nl-pre-doit 2015 post: devlink-nl-post-doit 2016 request: 2017 attributes: 2018 - bus-name 2019 - dev-name 2020 - linecard-index 2021 - linecard-type 2022 2023 - 2024 name: selftests-get 2025 doc: Get device selftest instances. 2026 attribute-set: devlink 2027 dont-validate: [ strict, dump ] 2028 do: 2029 pre: devlink-nl-pre-doit 2030 post: devlink-nl-post-doit 2031 request: 2032 value: 82 2033 attributes: *dev-id-attrs 2034 reply: &selftests-get-reply 2035 value: 82 2036 attributes: *dev-id-attrs 2037 dump: 2038 reply: *selftests-get-reply 2039 2040 - 2041 name: selftests-run 2042 doc: Run device selftest instances. 2043 attribute-set: devlink 2044 dont-validate: [ strict ] 2045 flags: [ admin-perm ] 2046 do: 2047 pre: devlink-nl-pre-doit 2048 post: devlink-nl-post-doit 2049 request: 2050 attributes: 2051 - bus-name 2052 - dev-name 2053 - selftests 2054