100 lines
2.8 KiB
Diff
100 lines
2.8 KiB
Diff
|
Add support for SMBIOS 2.7.1:
|
||
|
* 6 new AMD processor families
|
||
|
* 1 new cache associativity value
|
||
|
* PCI Express 3 slot types
|
||
|
|
||
|
---
|
||
|
dmidecode.c | 38 +++++++++++++++++++++++++++++++-------
|
||
|
1 file changed, 31 insertions(+), 7 deletions(-)
|
||
|
|
||
|
--- dmidecode.orig/dmidecode.c 2011-01-25 17:10:05.000000000 +0100
|
||
|
+++ dmidecode/dmidecode.c 2011-04-13 16:10:39.000000000 +0200
|
||
|
@@ -707,6 +707,8 @@ static const char *dmi_processor_family(
|
||
|
{ 0x3A, "Athlon II Dual-Core M" },
|
||
|
{ 0x3B, "Opteron 6100" },
|
||
|
{ 0x3C, "Opteron 4100" },
|
||
|
+ { 0x3D, "Opteron 6200" },
|
||
|
+ { 0x3E, "Opteron 4200" },
|
||
|
|
||
|
{ 0x40, "MIPS" },
|
||
|
{ 0x41, "MIPS R4000" },
|
||
|
@@ -714,6 +716,10 @@ static const char *dmi_processor_family(
|
||
|
{ 0x43, "MIPS R4400" },
|
||
|
{ 0x44, "MIPS R4600" },
|
||
|
{ 0x45, "MIPS R10000" },
|
||
|
+ { 0x46, "C-Series" },
|
||
|
+ { 0x47, "E-Series" },
|
||
|
+ { 0x48, "S-Series" },
|
||
|
+ { 0x49, "G-Series" },
|
||
|
|
||
|
{ 0x50, "SPARC" },
|
||
|
{ 0x51, "SuperSPARC" },
|
||
|
@@ -997,7 +1003,8 @@ static void dmi_processor_id(u8 type, co
|
||
|
sig = 1;
|
||
|
else if ((type >= 0x18 && type <= 0x1D) /* AMD */
|
||
|
|| type == 0x1F /* AMD */
|
||
|
- || (type >= 0x38 && type <= 0x3C) /* AMD */
|
||
|
+ || (type >= 0x38 && type <= 0x3E) /* AMD */
|
||
|
+ || (type >= 0x46 && type <= 0x49) /* AMD */
|
||
|
|| (type >= 0x83 && type <= 0x8F) /* AMD */
|
||
|
|| (type >= 0xB6 && type <= 0xB7) /* AMD */
|
||
|
|| (type >= 0xE6 && type <= 0xEF)) /* AMD */
|
||
|
@@ -1143,10 +1150,20 @@ static const char *dmi_processor_upgrade
|
||
|
"Socket LGA1156",
|
||
|
"Socket LGA1567",
|
||
|
"Socket PGA988A",
|
||
|
- "Socket BGA1288" /* 0x20 */
|
||
|
+ "Socket BGA1288",
|
||
|
+ "Socket rPGA988B",
|
||
|
+ "Socket BGA1023",
|
||
|
+ "Socket BGA1024",
|
||
|
+ "Socket BGA1155",
|
||
|
+ "Socket LGA1356",
|
||
|
+ "Socket LGA2011",
|
||
|
+ "Socket FS1",
|
||
|
+ "Socket FS2",
|
||
|
+ "Socket FM1",
|
||
|
+ "Socket FM2" /* 0x2A */
|
||
|
};
|
||
|
|
||
|
- if (code >= 0x01 && code <= 0x20)
|
||
|
+ if (code >= 0x01 && code <= 0x2A)
|
||
|
return upgrade[code - 0x01];
|
||
|
return out_of_spec;
|
||
|
}
|
||
|
@@ -1493,10 +1510,11 @@ static const char *dmi_cache_associativi
|
||
|
"24-way Set-associative",
|
||
|
"32-way Set-associative",
|
||
|
"48-way Set-associative",
|
||
|
- "64-way Set-associative" /* 0x0D */
|
||
|
+ "64-way Set-associative",
|
||
|
+ "20-way Set-associative" /* 0x0E */
|
||
|
};
|
||
|
|
||
|
- if (code >= 0x01 && code <= 0x0D)
|
||
|
+ if (code >= 0x01 && code <= 0x0E)
|
||
|
return type[code - 0x01];
|
||
|
return out_of_spec;
|
||
|
}
|
||
|
@@ -1660,12 +1678,18 @@ static const char *dmi_slot_type(u8 code
|
||
|
"PCI Express 2 x2",
|
||
|
"PCI Express 2 x4",
|
||
|
"PCI Express 2 x8",
|
||
|
- "PCI Express 2 x16", /* 0xB0 */
|
||
|
+ "PCI Express 2 x16",
|
||
|
+ "PCI Express 3",
|
||
|
+ "PCI Express 3 x1",
|
||
|
+ "PCI Express 3 x2",
|
||
|
+ "PCI Express 3 x4",
|
||
|
+ "PCI Express 3 x8",
|
||
|
+ "PCI Express 3 x16" /* 0xB6 */
|
||
|
};
|
||
|
|
||
|
if (code >= 0x01 && code <= 0x13)
|
||
|
return type[code - 0x01];
|
||
|
- if (code >= 0xA0 && code <= 0xB0)
|
||
|
+ if (code >= 0xA0 && code <= 0xB6)
|
||
|
return type_0xA0[code - 0xA0];
|
||
|
return out_of_spec;
|
||
|
}
|