The registers can be dumped through the API rte_eth_dev_get_reg_info. However, only register values are exported, which is inconvenient for users to interpret. Therefore, an extension of the structure "rte_dev_reg_info" and a new API rte_eth_dev_get_reg_info_ext is added to support the capability of exporting the name of the corresponding register and filtering by module names.
The hns3 driver and telemetry are examples for that. Jie Hai (8): ethdev: support report register names and filter ethdev: add telemetry cmd for registers net/hns3: remove some basic address dump net/hns3: fix dump counter of registers net/hns3: remove separators between register module net/hns3: refactor register dump net/hns3: support report names of registers net/hns3: support filter registers by module names doc/guides/rel_notes/release_24_07.rst | 8 + drivers/net/hns3/hns3_regs.c | 1394 +++++++++++++++++++----- lib/ethdev/ethdev_trace.h | 2 + lib/ethdev/rte_dev_info.h | 11 + lib/ethdev/rte_ethdev.c | 38 + lib/ethdev/rte_ethdev.h | 29 + lib/ethdev/rte_ethdev_telemetry.c | 128 +++ lib/ethdev/version.map | 3 + 8 files changed, 1347 insertions(+), 266 deletions(-) -- 2.33.0