1name: ethtool 2 3protocol: genetlink-legacy 4 5doc: Partial family for Ethtool Netlink. 6 7attribute-sets: 8 - 9 name: header 10 attributes: 11 - 12 name: dev-index 13 type: u32 14 value: 1 15 - 16 name: dev-name 17 type: string 18 - 19 name: flags 20 type: u32 21 22 - 23 name: bitset-bit 24 attributes: 25 - 26 name: index 27 type: u32 28 value: 1 29 - 30 name: name 31 type: string 32 - 33 name: value 34 type: flag 35 - 36 name: bitset-bits 37 attributes: 38 - 39 name: bit 40 type: nest 41 nested-attributes: bitset-bit 42 value: 1 43 - 44 name: bitset 45 attributes: 46 - 47 name: nomask 48 type: flag 49 value: 1 50 - 51 name: size 52 type: u32 53 - 54 name: bits 55 type: nest 56 nested-attributes: bitset-bits 57 58 - 59 name: string 60 attributes: 61 - 62 name: index 63 type: u32 64 value: 1 65 - 66 name: value 67 type: string 68 - 69 name: strings 70 attributes: 71 - 72 name: string 73 type: nest 74 value: 1 75 multi-attr: true 76 nested-attributes: string 77 - 78 name: stringset 79 attributes: 80 - 81 name: id 82 type: u32 83 value: 1 84 - 85 name: count 86 type: u32 87 - 88 name: strings 89 type: nest 90 multi-attr: true 91 nested-attributes: strings 92 - 93 name: stringsets 94 attributes: 95 - 96 name: stringset 97 type: nest 98 multi-attr: true 99 value: 1 100 nested-attributes: stringset 101 - 102 name: strset 103 attributes: 104 - 105 name: header 106 value: 1 107 type: nest 108 nested-attributes: header 109 - 110 name: stringsets 111 type: nest 112 nested-attributes: stringsets 113 - 114 name: counts-only 115 type: flag 116 117 - 118 name: privflags 119 attributes: 120 - 121 name: header 122 value: 1 123 type: nest 124 nested-attributes: header 125 - 126 name: flags 127 type: nest 128 nested-attributes: bitset 129 130 - 131 name: rings 132 attributes: 133 - 134 name: header 135 value: 1 136 type: nest 137 nested-attributes: header 138 - 139 name: rx-max 140 type: u32 141 - 142 name: rx-mini-max 143 type: u32 144 - 145 name: rx-jumbo-max 146 type: u32 147 - 148 name: tx-max 149 type: u32 150 - 151 name: rx 152 type: u32 153 - 154 name: rx-mini 155 type: u32 156 - 157 name: rx-jumbo 158 type: u32 159 - 160 name: tx 161 type: u32 162 - 163 name: rx-buf-len 164 type: u32 165 - 166 name: tcp-data-split 167 type: u8 168 - 169 name: cqe-size 170 type: u32 171 - 172 name: tx-push 173 type: u8 174 - 175 name: rx-push 176 type: u8 177 178 - 179 name: mm-stat 180 attributes: 181 - 182 name: pad 183 value: 1 184 type: pad 185 - 186 name: reassembly-errors 187 type: u64 188 - 189 name: smd-errors 190 type: u64 191 - 192 name: reassembly-ok 193 type: u64 194 - 195 name: rx-frag-count 196 type: u64 197 - 198 name: tx-frag-count 199 type: u64 200 - 201 name: hold-count 202 type: u64 203 - 204 name: mm 205 attributes: 206 - 207 name: header 208 value: 1 209 type: nest 210 nested-attributes: header 211 - 212 name: pmac-enabled 213 type: u8 214 - 215 name: tx-enabled 216 type: u8 217 - 218 name: tx-active 219 type: u8 220 - 221 name: tx-min-frag-size 222 type: u32 223 - 224 name: tx-min-frag-size 225 type: u32 226 - 227 name: verify-enabled 228 type: u8 229 - 230 name: verify-status 231 type: u8 232 - 233 name: verify-time 234 type: u32 235 - 236 name: max-verify-time 237 type: u32 238 - 239 name: stats 240 type: nest 241 nested-attributes: mm-stat 242 243operations: 244 enum-model: directional 245 list: 246 - 247 name: strset-get 248 doc: Get string set from the kernel. 249 250 attribute-set: strset 251 252 do: &strset-get-op 253 request: 254 value: 1 255 attributes: 256 - header 257 - stringsets 258 - counts-only 259 reply: 260 value: 1 261 attributes: 262 - header 263 - stringsets 264 dump: *strset-get-op 265 266 # TODO: fill in the requests in between 267 268 - 269 name: privflags-get 270 doc: Get device private flags. 271 272 attribute-set: privflags 273 274 do: &privflag-get-op 275 request: 276 value: 13 277 attributes: 278 - header 279 reply: 280 value: 14 281 attributes: 282 - header 283 - flags 284 dump: *privflag-get-op 285 - 286 name: privflags-set 287 doc: Set device private flags. 288 289 attribute-set: privflags 290 291 do: 292 request: 293 attributes: 294 - header 295 - flags 296 - 297 name: privflags-ntf 298 doc: Notification for change in device private flags. 299 notify: privflags-get 300 301 - 302 name: rings-get 303 doc: Get ring params. 304 305 attribute-set: rings 306 307 do: &ring-get-op 308 request: 309 attributes: 310 - header 311 reply: 312 attributes: 313 - header 314 - rx-max 315 - rx-mini-max 316 - rx-jumbo-max 317 - tx-max 318 - rx 319 - rx-mini 320 - rx-jumbo 321 - tx 322 - rx-buf-len 323 - tcp-data-split 324 - cqe-size 325 - tx-push 326 - rx-push 327 dump: *ring-get-op 328 - 329 name: rings-set 330 doc: Set ring params. 331 332 attribute-set: rings 333 334 do: 335 request: 336 attributes: 337 - header 338 - rx 339 - rx-mini 340 - rx-jumbo 341 - tx 342 - rx-buf-len 343 - tcp-data-split 344 - cqe-size 345 - tx-push 346 - rx-push 347 - 348 name: rings-ntf 349 doc: Notification for change in ring params. 350 notify: rings-get 351 352 # TODO: fill in the requests in between 353 354 - 355 name: mm-get 356 doc: Get MAC Merge configuration and state 357 358 attribute-set: mm 359 360 do: &mm-get-op 361 request: 362 value: 42 363 attributes: 364 - header 365 reply: 366 value: 42 367 attributes: 368 - header 369 - pmac-enabled 370 - tx-enabled 371 - tx-active 372 - tx-min-frag-size 373 - rx-min-frag-size 374 - verify-enabled 375 - verify-time 376 - max-verify-time 377 - stats 378 dump: *mm-get-op 379 - 380 name: mm-set 381 doc: Set MAC Merge configuration 382 383 attribute-set: mm 384 385 do: 386 request: 387 attributes: 388 - header 389 - verify-enabled 390 - verify-time 391 - tx-enabled 392 - pmac-enabled 393 - tx-min-frag-size 394 - 395 name: mm-ntf 396 doc: Notification for change in MAC Merge configuration. 397 notify: mm-get 398