I want to create a firmware inventory for all HCA's connected to a fabric. I don't want to run commands on all hosts as they belong to several different administrative domains, hence I depend on a tool like ibdiagnet which queries the data using IB calls.
Basically I get the data in the file ibdiagnet2.db_csv in hex, I wonder whether there is some tool or script to reformat the output. Especially I don't know how to reliably translate FW versions and Hardware types from hex to ascii or decimal. What I would like to get is a list with something similar to the output of ibstat
CA type: MT4099 <<< plain text and not just a number >>>
Number of ports: 2
Firmware version: 2.40.5030 <<< no hex values but human readable >>>
Hardware version: 1
Node GUID: 0x24be05ffff90ed40 <<< useful to cross-reference to the output of other tools >>>
System image GUID: 0x24be05ffff90ed43
PSID: HP_0160000009 <<< useful for later firmware updates, the fw image must match the psid >>>>
Additionally an attribute like hardware-family with values ConnecX-3, ConnectX-4, ... would be helpful to check if we have consistent firmware levels.
We have a mix of HPE, IBM and native Mellanox HCAs.
Thank you, any comment or remark is welcom.