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 - 176 name: mm-stat 177 attributes: 178 - 179 name: pad 180 value: 1 181 type: pad 182 - 183 name: reassembly-errors 184 type: u64 185 - 186 name: smd-errors 187 type: u64 188 - 189 name: reassembly-ok 190 type: u64 191 - 192 name: rx-frag-count 193 type: u64 194 - 195 name: tx-frag-count 196 type: u64 197 - 198 name: hold-count 199 type: u64 200 - 201 name: mm 202 attributes: 203 - 204 name: header 205 value: 1 206 type: nest 207 nested-attributes: header 208 - 209 name: pmac-enabled 210 type: u8 211 - 212 name: tx-enabled 213 type: u8 214 - 215 name: tx-active 216 type: u8 217 - 218 name: tx-min-frag-size 219 type: u32 220 - 221 name: tx-min-frag-size 222 type: u32 223 - 224 name: verify-enabled 225 type: u8 226 - 227 name: verify-status 228 type: u8 229 - 230 name: verify-time 231 type: u32 232 - 233 name: max-verify-time 234 type: u32 235 - 236 name: stats 237 type: nest 238 nested-attributes: mm-stat 239 240operations: 241 enum-model: directional 242 list: 243 - 244 name: strset-get 245 doc: Get string set from the kernel. 246 247 attribute-set: strset 248 249 do: &strset-get-op 250 request: 251 value: 1 252 attributes: 253 - header 254 - stringsets 255 - counts-only 256 reply: 257 value: 1 258 attributes: 259 - header 260 - stringsets 261 dump: *strset-get-op 262 263 # TODO: fill in the requests in between 264 265 - 266 name: privflags-get 267 doc: Get device private flags. 268 269 attribute-set: privflags 270 271 do: &privflag-get-op 272 request: 273 value: 13 274 attributes: 275 - header 276 reply: 277 value: 14 278 attributes: 279 - header 280 - flags 281 dump: *privflag-get-op 282 - 283 name: privflags-set 284 doc: Set device private flags. 285 286 attribute-set: privflags 287 288 do: 289 request: 290 attributes: 291 - header 292 - flags 293 - 294 name: privflags-ntf 295 doc: Notification for change in device private flags. 296 notify: privflags-get 297 298 - 299 name: rings-get 300 doc: Get ring params. 301 302 attribute-set: rings 303 304 do: &ring-get-op 305 request: 306 attributes: 307 - header 308 reply: 309 attributes: 310 - header 311 - rx-max 312 - rx-mini-max 313 - rx-jumbo-max 314 - tx-max 315 - rx 316 - rx-mini 317 - rx-jumbo 318 - tx 319 - rx-buf-len 320 - tcp-data-split 321 - cqe-size 322 - tx-push 323 dump: *ring-get-op 324 - 325 name: rings-set 326 doc: Set ring params. 327 328 attribute-set: rings 329 330 do: 331 request: 332 attributes: 333 - header 334 - rx 335 - rx-mini 336 - rx-jumbo 337 - tx 338 - rx-buf-len 339 - tcp-data-split 340 - cqe-size 341 - tx-push 342 - 343 name: rings-ntf 344 doc: Notification for change in ring params. 345 notify: rings-get 346 347 # TODO: fill in the requests in between 348 349 - 350 name: mm-get 351 doc: Get MAC Merge configuration and state 352 353 attribute-set: mm 354 355 do: &mm-get-op 356 request: 357 value: 42 358 attributes: 359 - header 360 reply: 361 value: 42 362 attributes: 363 - header 364 - pmac-enabled 365 - tx-enabled 366 - tx-active 367 - tx-min-frag-size 368 - rx-min-frag-size 369 - verify-enabled 370 - verify-time 371 - max-verify-time 372 - stats 373 dump: *mm-get-op 374 - 375 name: mm-set 376 doc: Set MAC Merge configuration 377 378 attribute-set: mm 379 380 do: 381 request: 382 attributes: 383 - header 384 - verify-enabled 385 - verify-time 386 - tx-enabled 387 - pmac-enabled 388 - tx-min-frag-size 389 - 390 name: mm-ntf 391 doc: Notification for change in MAC Merge configuration. 392 notify: mm-get 393