clang-format: re-format for clang-19

clang-format-19 isn't compatible with the clang-format-18 output, so we
need to reformat the code with the latest version.  A few parameters
in clang-tidy have been deprecated, so adjust the style file
accordingly.

See Ie2f6eb3b043f2d655c9df806815afd7971fd0947 for updated style.
See I88192b41ab7a95599a90915013579608af7bc56f for clang-19 enablement.

Change-Id: If08d21ecb3a52f1817ee7b3c7faae77cd527a34a
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
1 file changed
tree: 5801e0dcdee1723c03563335e8e657df81ea8165
  1. subprojects/
  2. test/
  3. .clang-format
  4. .gitignore
  5. .lcovrc
  6. ethstats.cpp
  7. ethstats.hpp
  8. handler.cpp
  9. handler.hpp
  10. LICENSE
  11. main.cpp
  12. meson.build
  13. meson.options
  14. OWNERS
  15. README.md
README.md

Ethernet Statistics Command (0x30)

There is the need to read a specific ethernet-level statistic value from the BMC. This is driven primarily to detect link errors that require hardware swaps during manufacturing.

This command will be well structured such that there is a request and response which mirror to some extent.

The request will specify the ethernet interface by name, as a length-prepended string, and the field they're requesting by identifier (an unsigned byte).

If the command is not supported, the IPMI OEM handler will respond accordingly, however, if the field is not supported or not recognized, the command will return 0xcc (invalid field).

The current ethernet statistics available (all future additions must append):

IdentifierHuman Readable Name
0rx_bytes
1rx_compressed
2rx_crc_errors
3rx_dropped
4rx_errors
5rx_fifo_errors
6rx_frame_errors
7rx_length_errors
8rx_missed_errors
9rx_nohandler
10rx_over_errors
11rx_packets
12tx_aborted_errors
13tx_bytes
14tx_carrier_errors
15tx_compressed
16tx_dropped
17tx_errors
18tx_fifo_errors
19tx_heartbeat_errors
20tx_packets
21tx_window_errors

Request

Byte(s)ValueData
0x00Statistic IDThe identifier of the desired statistic.
0x01LengthLength of string (not including null termination).
0x02..The nameThe string, not null-terminated.

Response

Byte(s)ValueData
0x00Stat IDThe identifier of the desired statistic.
0x01....Uint64The value. Because these are counters we don't anticipate negative values, and we don't expect overflow.