dmidecode-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dmidecode] [PATCH v3 0/1] dmioem: Decode HPE OEM Records 199


From: Jerry Hoemann
Subject: [dmidecode] [PATCH v3 0/1] dmioem: Decode HPE OEM Records 199
Date: Mon, 15 Mar 2021 23:00:41 -0600

Decode the following HPE OEM records:
        199: CPU Microcode Patch.

The 199 record contains a variable number of the tuple:

        { <DWORD: Patch ID, DWORD Date, DWORD CPU ID> ... }

Which are taken from the patch header and describe the revision
of the microcode patch.

The CPU ID cooreponds to the "ID" field of type 4 records.

As a given BIOS can support multiple CPU SKUs, the BIOS may contain
patches for CPUs not present on the system.


===== Changes for v2 =====


o Depends upon the in progress patch to create function dmi_print_cpuid()
  so we can print the CPU ID in human friendly form.
o Print date in ISO 8601 format: YYYY-MM-DD
o Use pr_attr/pr_subattr to visually group the individual ucode patches.
o Print patch id in 0x%x format to be consistent with intel documentation.
o Change order of fields to have CPU ID 1st, then date, then patchid.


===== Changes for v3 =====

o The CPUID field on AMD patches isn't the output of the CPUID instruction
  to match against like Intel.  Rather for AMD one compares against:

        ((Extended Family ID | Extended Model Id) >> 8) | (Model ID|Stepping ID)

  In general, this would not be invertiable, except in the decode of 199:
     a. We know that the chip is either Intel or AMD.

     b. Proliant that we're decoding the OEM 199 record on don't have the
        older AMD processors which have family <= 15.  This allows us to
        reconstruct the CPUID by suppling the base family.


o restrict to Gen9 and later.


Jerry Hoemann (1):
  dmioem:  HPE OEM Record 199

 dmioem.c | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

-- 
2.26.2




reply via email to

[Prev in Thread] Current Thread [Next in Thread]