diff --git a/plugins/ocp/ocp-telemetry-decode.c b/plugins/ocp/ocp-telemetry-decode.c index 62738c8b45..2cba1c7db1 100644 --- a/plugins/ocp/ocp-telemetry-decode.c +++ b/plugins/ocp/ocp-telemetry-decode.c @@ -262,7 +262,89 @@ struct statistic_entry statistic_identifiers_map[] = { { 0x1A, "PERST Events Count"}, { 0x1B, "Max Die Bad Block"}, { 0x1C, "Max NAND Channel Bad Block"}, - { 0x1D, "Minimum NAND Channel Bad Block"} + { 0x1D, "Minimum NAND Channel Bad Block"}, + { 0x1E, "Physical Media Units Written"}, + { 0x1F, "Physical Media Units Read"}, + { 0x20, "Bad User NAND Blocks"}, + { 0x21, "Bad System NAND Blocks"}, + { 0x22, "XOR Recovery Count"}, + { 0x23, "Uncorrectable Read Error Count"}, + { 0x24, "Soft ECC Error Count"}, + { 0x25, "End to End Correction Counts"}, + { 0x26, "System Data % Used"}, + { 0x27, "Refresh Counts"}, + { 0x28, "User Data Erase Counts"}, + { 0x29, "Thermal Throttling Status and Count"}, + { 0x2A, "DSSD Specification Version"}, + { 0x2B, "PCIe Correctable Error Count"}, + { 0x2C, "Incomplete Shutdowns"}, + { 0x2D, "% Free Blocks"}, + { 0x2E, "Capacitor Health"}, + { 0x2F, "NVM Express Base Errata Version"}, + { 0x30, "NVM Command Set Errata Version"}, + { 0x31, "NVM Express Management Interface Errata Version"}, + { 0x32, "Unaligned I/O"}, + { 0x33, "Security Version Number"}, + { 0x34, "Total NUSE"}, + { 0x35, "PLP Start Count"}, + { 0x36, "Endurance Estimate"}, + { 0x37, "PCIe Link Retraining Count"}, + { 0x38, "Power State Change Count"}, + { 0x39, "Lowest Permitted Firmware Revision"}, + { 0x3A, "Log Page Version"}, + { 0x3B, "Media Dies Offline"}, + { 0x3C, "Max Temperature Recorded"}, + { 0x3D, "NAND Avg. Erase Count"}, + { 0x3E, "Command Timeouts"}, + { 0x3F, "System Area Program Fail Count"}, + { 0x40, "System Area Read Fail Count"}, + { 0x41, "System Area Erase Fail Count"}, + { 0x42, "Max Peak Power Capability"}, + { 0x43, "Current Average Power"}, + { 0x44, "Lifetime Power Consumed"}, + { 0x45, "Error / Assert Count"}, + { 0x46, "Device Busy Time"}, + { 0x47, "Critical Warning"}, + { 0x48, "Composite Temperature"}, + { 0x49, "Available Spare"}, + { 0x4A, "Available Spare Threshold"}, + { 0x4B, "Percentage Used"}, + { 0x4C, "Endurance Group Critical Warning Summary"}, + { 0x4D, "Data Units Read"}, + { 0x4E, "Data Units Written"}, + { 0x4F, "Host Read Commands"}, + { 0x50, "Host Write Commands"}, + { 0x51, "Controller Busy Time"}, + { 0x52, "Power Cycles"}, + { 0x53, "Power On Hours"}, + { 0x54, "Unsafe Shutdowns"}, + { 0x55, "Media and Data Integrity Errors"}, + { 0x56, "Number of Error Information Log Entries"}, + { 0x57, "Warning Composite Temperature Time"}, + { 0x58, "Critical Composite Temperature Time"}, + { 0x59, "Temperature Sensor 1"}, + { 0x5A, "Temperature Sensor 2"}, + { 0x5B, "Temperature Sensor 3"}, + { 0x5C, "Temperature Sensor 4"}, + { 0x5D, "Temperature Sensor 5"}, + { 0x5E, "Temperature Sensor 6"}, + { 0x5F, "Temperature Sensor 7"}, + { 0x60, "Temperature Sensor 8"}, + { 0x61, "Thermal Management Temperature 1 Transition Count"}, + { 0x62, "Thermal Management Temperature 2 Transition Count"}, + { 0x63, "Total Time For Thermal Management Temperature 1"}, + { 0x64, "Total Time For Thermal Management Temperature 2"}, + { 0x65, "Endurance Estimate"}, + { 0x66, "Data Units Read"}, + { 0x67, "Data Units Written"}, + { 0x68, "Media Units Written"}, + { 0x69, "Number of Error Information Log Entries"}, + { 0x6A, "Form Factor"}, + { 0x6B, "Dies In Use Bad NAND Blocks"}, + { 0x6C, "Proactive Bad Die Retirement"}, + { 0x6D, "Namespace ID Context Statistic Descriptor"}, + { 0x6E, "Controller ID Context Statistic Descriptor"}, + { 0x6F, "Queue ID Context Statistic Descriptor"} }; struct request_data host_log_page_header[] = { @@ -562,7 +644,7 @@ int get_statistic_id_ascii_string(int identifier, char *description) // If ASCII string isn't found, see in our internal Map // for 2.5 Spec defined strings - if (identifier <= 0x1D) { + if (identifier <= 0x6F) { strcpy(description, statistic_identifiers_map[identifier].description); return 0; }