dmidecode-devel
[Top][All Lists]
Advanced

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

[PATCH 1/4] dmidecode: Add processor support from SMBIOS 3.6.0


From: Jean Delvare
Subject: [PATCH 1/4] dmidecode: Add processor support from SMBIOS 3.6.0
Date: Mon, 22 May 2023 17:11:27 +0200

SMBIOS 3.6.0 adds the following to the Processor Information
structure (type 4):
* 9 socket types
* 1 processor family
* 1 field (Thread Enabled)

Signed-off-by: Jean Delvare <jdelvare@suse.de>
---
 dmidecode.c |   19 ++++++++++++++++---
 1 file changed, 16 insertions(+), 3 deletions(-)

--- dmidecode.orig/dmidecode.c
+++ dmidecode/dmidecode.c
@@ -974,6 +974,7 @@ static const char *dmi_processor_family(
 
                { 0x100, "ARMv7" },
                { 0x101, "ARMv8" },
+               { 0x102, "ARMv9" },
                { 0x104, "SH-3" },
                { 0x105, "SH-4" },
                { 0x118, "ARM" },
@@ -1073,7 +1074,7 @@ static enum cpuid_type dmi_get_cpuid_typ
                else
                        return cpuid_80486;
        }
-       else if ((type >= 0x100 && type <= 0x101) /* ARM */
+       else if ((type >= 0x100 && type <= 0x102) /* ARM */
              || (type >= 0x118 && type <= 0x119)) /* ARM */
        {
                /*
@@ -1415,10 +1416,19 @@ static const char *dmi_processor_upgrade
                "Socket BGA1528",
                "Socket LGA4189",
                "Socket LGA1200",
-               "Socket LGA4677" /* 0x3F */
+               "Socket LGA4677",
+               "Socket LGA1700",
+               "Socket BGA1744",
+               "Socket BGA1781",
+               "Socket BGA1211",
+               "Socket BGA2422",
+               "Socket LGA1211",
+               "Socket LGA2422",
+               "Socket LGA5773",
+               "Socket BGA5773" /* 0x48 */
        };
 
-       if (code >= 0x01 && code <= 0x3F)
+       if (code >= 0x01 && code <= 0x48)
                return upgrade[code - 0x01];
        return out_of_spec;
 }
@@ -4451,6 +4461,9 @@ static void dmi_decode(const struct dmi_
                                pr_attr("Thread Count", "%u",
                                        h->length >= 0x30 && data[0x25] == 0xFF 
?
                                        WORD(data + 0x2E) : data[0x25]);
+                       if (h->length >= 0x32 && WORD(data + 0x30) != 0)
+                               pr_attr("Thread Enabled", "%u",
+                                       WORD(data + 0x30));
                        dmi_processor_characteristics("Characteristics",
                                                      WORD(data + 0x26));
                        break;

-- 
Jean Delvare
SUSE L3 Support



reply via email to

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