dmidecode-devel
[Top][All Lists]
Advanced

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

Re: [dmidecode] [PATCH] dmidecode: Add enumerated values from SMBIOS 3.3


From: Jerry Hoemann
Subject: Re: [dmidecode] [PATCH] dmidecode: Add enumerated values from SMBIOS 3.3.0
Date: Thu, 17 Oct 2019 16:25:32 -0600
User-agent: Mutt/1.12.1 (2019-06-15)

On Wed, Oct 16, 2019 at 03:35:04PM +0200, Jean Delvare wrote:
> Add all the enumerated values from the SMBIOS 3.3.0 specification
> update that was released last month.
> 
> Signed-off-by: Jean Delvare <address@hidden>
> ---
> Support for new structure type 44 still needs to be implemented for
> full SMBIOS 3.3.0 support.
> 
>  dmidecode.c |   44 +++++++++++++++++++++++++++++++++++---------
>  1 file changed, 35 insertions(+), 9 deletions(-)


Jean,

These changes all look good to me.

Quesiton: do you derive changes in the SPEC by diffing the pdf,
or by reviewing the "ANNEX C: Change log", or something else?

Thanks

Reviewed-by: Jerry Hoemann <address@hidden>


> 
> --- dmidecode.orig/dmidecode.c        2019-10-15 14:24:46.517465808 +0200
> +++ dmidecode/dmidecode.c     2019-10-16 15:29:30.036734954 +0200
> @@ -936,6 +936,10 @@ static const char *dmi_processor_family(
>               { 0x140, "WinChip" },
>               { 0x15E, "DSP" },
>               { 0x1F4, "Video Processor" },
> +
> +             { 0x200, "RV32" },
> +             { 0x201, "RV64" },
> +             { 0x202, "RV128" },
>       };
>       /*
>        * Note to developers: when adding entries to this list, check if
> @@ -1821,6 +1825,9 @@ static const char *dmi_slot_type(u8 code
>               "PCI Express Mini 52-pin without bottom-side keep-outs",
>               "PCI Express Mini 76-pin" /* 0x23 */
>       };
> +     static const char *type_0x30[] = {
> +             "CXL FLexbus 1.0" /* 0x30 */
> +     };
>       static const char *type_0xA0[] = {
>               "PC-98/C20", /* 0xA0 */
>               "PC-98/C24",
> @@ -1844,7 +1851,14 @@ static const char *dmi_slot_type(u8 code
>               "PCI Express 3 x2",
>               "PCI Express 3 x4",
>               "PCI Express 3 x8",
> -             "PCI Express 3 x16" /* 0xB6 */
> +             "PCI Express 3 x16",
> +             out_of_spec, /* 0xB7 */
> +             "PCI Express 4",
> +             "PCI Express 4 x1",
> +             "PCI Express 4 x2",
> +             "PCI Express 4 x4",
> +             "PCI Express 4 x8",
> +             "PCI Express 4 x16" /* 0xBD */
>       };
>       /*
>        * Note to developers: when adding entries to these lists, check if
> @@ -1853,7 +1867,9 @@ static const char *dmi_slot_type(u8 code
>  
>       if (code >= 0x01 && code <= 0x23)
>               return type[code - 0x01];
> -     if (code >= 0xA0 && code <= 0xB6)
> +     if (code == 0x30)
> +             return type_0x30[code - 0x30];
> +     if (code >= 0xA0 && code <= 0xBD)
>               return type_0xA0[code - 0xA0];
>       return out_of_spec;
>  }
> @@ -1957,6 +1973,12 @@ static void dmi_slot_id(u8 code1, u8 cod
>               case 0xB4: /* PCI Express 3 */
>               case 0xB5: /* PCI Express 3 */
>               case 0xB6: /* PCI Express 3 */
> +             case 0xB8: /* PCI Express 4 */
> +             case 0xB9: /* PCI Express 4 */
> +             case 0xBA: /* PCI Express 4 */
> +             case 0xBB: /* PCI Express 4 */
> +             case 0xBC: /* PCI Express 4 */
> +             case 0xBD: /* PCI Express 4 */
>                       printf("%sID: %u\n", prefix, code1);
>                       break;
>               case 0x07: /* PCMCIA */
> @@ -2298,12 +2320,13 @@ static const char *dmi_memory_array_loca
>               "PC-98/C20 Add-on Card", /* 0xA0 */
>               "PC-98/C24 Add-on Card",
>               "PC-98/E Add-on Card",
> -             "PC-98/Local Bus Add-on Card" /* 0xA3 */
> +             "PC-98/Local Bus Add-on Card",
> +             "CXL Flexbus 1.0" /* 0xA4 */
>       };
>  
>       if (code >= 0x01 && code <= 0x0A)
>               return location[code - 0x01];
> -     if (code >= 0xA0 && code <= 0xA3)
> +     if (code >= 0xA0 && code <= 0xA4)
>               return location_0xA0[code - 0xA0];
>       return out_of_spec;
>  }
> @@ -2426,10 +2449,11 @@ static const char *dmi_memory_device_for
>               "RIMM",
>               "SODIMM",
>               "SRIMM",
> -             "FB-DIMM" /* 0x0F */
> +             "FB-DIMM",
> +             "Die" /* 0x10 */
>       };
>  
> -     if (code >= 0x01 && code <= 0x0F)
> +     if (code >= 0x01 && code <= 0x10)
>               return form_factor[code - 0x01];
>       return out_of_spec;
>  }
> @@ -2478,10 +2502,12 @@ static const char *dmi_memory_device_typ
>               "LPDDR2",
>               "LPDDR3",
>               "LPDDR4",
> -             "Logical non-volatile device" /* 0x1F */
> +             "Logical non-volatile device",
> +             "HBM",
> +             "HBM2" /* 0x21 */
>       };
>  
> -     if (code >= 0x01 && code <= 0x1F)
> +     if (code >= 0x01 && code <= 0x21)
>               return type[code - 0x01];
>       return out_of_spec;
>  }
> @@ -2537,7 +2563,7 @@ static void dmi_memory_technology(u8 cod
>               "NVDIMM-N",
>               "NVDIMM-F",
>               "NVDIMM-P",
> -             "Intel persistent memory" /* 0x07 */
> +             "Intel Optane DC persistent memory" /* 0x07 */
>       };
>       if (code >= 0x01 && code <= 0x07)
>               printf(" %s", technology[code - 0x01]);
> 
> 
> -- 
> Jean Delvare
> SUSE L3 Support
> 
> _______________________________________________
> https://lists.nongnu.org/mailman/listinfo/dmidecode-devel

-- 

-----------------------------------------------------------------------------
Jerry Hoemann                  Software Engineer   Hewlett Packard Enterprise
-----------------------------------------------------------------------------



reply via email to

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